```Inspired by the fantastic answers [here](http://mathematica.stackexchange.com/questions/60779/fitting-ellipse-to-5-given-points-on-the-plane) and [here](http://mathematica.stackexchange.com/questions/16209/how-to-determine-the-center-and-radius-of-a-circle-given-three-points-in-3d?rq=1), I would like to ask a questions along similar lines.

I have 6 curve types

![enter image description here][1]

<ul><li>
Type A: If point 1 is positive and point 2 is negative, the curve will not pass through the origin.</li><li>
Type B: If point 1 is negative and point 2 is positive, the curve will pass through the origin twice.</li><li>
Types C-F: If both points are positive or both points are negative, the curve will pass through the origin once.
</li></ul>

The curves are basically partial (and skewed to some degree) [lima&ccedil;ons][2]:

![enter image description here][3]

What **is** known:

<ul><li>
The coordinates of points 1 and 2.</li><li>
The gradient of tangents at points 1 and 2.</li><li>
The approximate curve type (lima&ccedil;on).
</li></ul>

What **is not** known:

<ul><li>
The arc length.</li><li>
The degree of skew.
</li></ul>

Data for A-F:

(* A *) {{0.000564367, 0.690525}, {-0.000689501, -0.984192}, 3.03065, -1.95699}
(* B *) {{-0.000689501, -0.984192}, {0.000664785, 1.07289}, -1.95699, 1.82419}
(* C *) {{0.000179304, 1.61576}, {0.0000936314, 0.852042}, 1.15014, 3.52804}
(* D *) {{0.000116063, 0.431337}, {0.000443491, 1.70111}, 2.88997, 1.41834}
(* E *) {{0.0000347276, 0.190688}, {0.000190634, 1.06651}, -3.77228, -2.08792}
(* F *) {{-0.000432719, -1.90935}, {-0.000142565, -0.645011}, -1.36691, -1.927}

in format: `{{point 1}, {point 2}, gradient of tangent @ point 1, gradient of tangent at point 2}`

Is it possible to estimate a curve fit (and hence arc length & skew) with only the data given?

#Update#

By adding a point onto the data (one roughly in the middle of the curve, between points 1 & 2), using ybeltukov's code from [here](http://mathematica.stackexchange.com/a/60629/9923) and adjusting the spline tolerance accordingly plots

![enter image description here][4]

for plot A. How would I adjust the red spline angles from points 1 & 2? I think this would make some headway into the problem.

Points on curves A-F (approximately half way around) are as follows:

(* A *) {{2.84516, -0.00214226}}
(* B *) {{0.925243, -0.000607748}}
(* C *) {{2.74249, -0.000302848}}
(* D *) {{1.22693, -0.000324907}}
(* E *) {{2.06, -0.0004197}}
(* F *) {{1.30599, -0.000292263}}}

[1]: http://i.stack.imgur.com/4LV2K.png
[2]: http://en.wikipedia.org/wiki/Lima%C3%A7on
[3]: http://i.stack.imgur.com/cObuQ.png
[4]: http://i.stack.imgur.com/1KXf5.png```