Hello everybody,

Thanks to you and to Jerome Mutterer I succeed in using the public method (Jerome Mutterer give me the code):

- I save this javascript ( with the name “EllipseFit.js”) in the macro directory:

```
// javascript
importClass(Packages.org.doube.geometry.FitEllipse);
imp = IJ.getImage();
roi = imp.getRoi();
p = roi.getPolygon();
points = [[],[]];
for (i=0; i<p.npoints; i++) { x = p.xpoints[i]; y = p.ypoints[i]; points[i] = [x,y];}
//@mdoube put a fonction to calculate the geometric parameters from the algebraic one
//so I apply varTo Dimensions to FitEllipse which contains the algebraic parameters
ellipse = FitEllipse.varToDimensions(FitEllipse.direct (points));
res = '';for(i in ellipse) res+=ellipse[i]+";";
Prefs.set("ellipse.params",res);
// fin du javascript.
```

2.I run this macro code after doing a multi selection point on my image :

```
runMacro("EllipseFit.js");
params = call('ij.Prefs.get','ellipse.params','n/a');
geometric = split (params,';');
x0=geometric[0];y0=geometric[1];
a=geometric[2];b=geometric[3];
phi=geometric[4];
//I finally get the point of the ellipse:
drawEllipse(x0,y0,a,b, phi);
```

I found an old post where Arttu Miettinen said that the dggev.f subroutine used in LAPACK could do that. Is that true ?

Cheers,

Lionel