Class GaussNewtonMinimizer
Inheritance
System.Object
GaussNewtonMinimizer
Inherited Members
System.Object.Equals(System.Object)
System.Object.Equals(System.Object, System.Object)
System.Object.GetHashCode()
System.Object.GetType()
System.Object.MemberwiseClone()
System.Object.ReferenceEquals(System.Object, System.Object)
System.Object.ToString()
Assembly: CADability.dll
Syntax
public class GaussNewtonMinimizer
Constructors
|
Improve this Doc
View Source
GaussNewtonMinimizer(GaussNewtonMinimizer.ErrorFunction, GaussNewtonMinimizer.JacobiFunction, GaussNewtonMinimizer.CheckParameterFunction, GaussNewtonMinimizer.CurtailParameterFunction)
Declaration
public GaussNewtonMinimizer(GaussNewtonMinimizer.ErrorFunction eFunction, GaussNewtonMinimizer.JacobiFunction jFunction, GaussNewtonMinimizer.CheckParameterFunction checkParameter = null, GaussNewtonMinimizer.CurtailParameterFunction curtailParameter = null)
Parameters
Methods
|
Improve this Doc
View Source
CircleFit(IArray<GeoPoint>, GeoPoint, Double, Double, out Ellipse)
Declaration
public static double CircleFit(IArray<GeoPoint> points, GeoPoint center, double radius, double precision, out Ellipse elli)
Parameters
Returns
| Type |
Description |
| System.Double |
|
|
Improve this Doc
View Source
ConeFit(IArray<GeoPoint>, GeoPoint, GeoVector, Double, Double, out ConicalSurface)
Declaration
public static double ConeFit(IArray<GeoPoint> points, GeoPoint apex, GeoVector axis, double theta, double precision, out ConicalSurface cs)
Parameters
Returns
| Type |
Description |
| System.Double |
|
|
Improve this Doc
View Source
ConeFitNew(IArray<GeoPoint>, GeoPoint, GeoVector, Double, Double, out ConicalSurface)
Declaration
public static double ConeFitNew(IArray<GeoPoint> points, GeoPoint apex, GeoVector axis, double theta, double precision, out ConicalSurface cs)
Parameters
Returns
| Type |
Description |
| System.Double |
|
|
Improve this Doc
View Source
ConeFitOld(GeoPoint[], GeoPoint, GeoVector, Double, out ConicalSurface)
Declaration
public static double ConeFitOld(GeoPoint[] points, GeoPoint apex, GeoVector axis, double theta, out ConicalSurface cs)
Parameters
Returns
| Type |
Description |
| System.Double |
|
|
Improve this Doc
View Source
CylinderFit(IArray<GeoPoint>, GeoPoint, GeoVector, Double, Double, out CylindricalSurface)
Declaration
public static double CylinderFit(IArray<GeoPoint> pnts, GeoPoint center, GeoVector axis, double radius, double precision, out CylindricalSurface cs)
Parameters
Returns
| Type |
Description |
| System.Double |
|
|
Improve this Doc
View Source
CylinderFitOld(IArray<GeoPoint>, GeoPoint, GeoVector, Double, Double, out CylindricalSurface)
Declaration
public static double CylinderFitOld(IArray<GeoPoint> pnts, GeoPoint center, GeoVector axis, double radius, double precision, out CylindricalSurface cs)
Parameters
Returns
| Type |
Description |
| System.Double |
|
|
Improve this Doc
View Source
Ellipse2DFit(IArray<GeoPoint2D>, GeoPoint2D, Double, Double, Double, Double, out Ellipse2D)
Declaration
public static double Ellipse2DFit(IArray<GeoPoint2D> points2d, GeoPoint2D center2d, double majrad, double minrad, double angle, double precision, out Ellipse2D ellipse)
Parameters
Returns
| Type |
Description |
| System.Double |
|
|
Improve this Doc
View Source
LineConnection(GeoPoint, GeoVector, GeoPoint, GeoVector, Double, Double, out Double, out Double)
p1,d1 and p2,d2 define two lines. Find a point on each line (s1,s2) so that the connection of these two points has the angle a1 to the first and a2 to the second line.
a1 and a2 are provided as cosinus of the angles
Declaration
public static double LineConnection(GeoPoint p1, GeoVector d1, GeoPoint p2, GeoVector d2, double a1, double a2, out double s1, out double s2)
Parameters
Returns
| Type |
Description |
| System.Double |
|
|
Improve this Doc
View Source
LineFit(IArray<GeoPoint>, Double, out GeoPoint, out GeoVector)
Calculates the closest line approximating the provided points.
Declaration
public static double LineFit(IArray<GeoPoint> points, double precision, out GeoPoint location, out GeoVector direction)
Parameters
| Type |
Name |
Description |
| IArray<GeoPoint> |
points |
Points to be approximated by the line
|
| System.Double |
precision |
|
| GeoPoint |
location |
Location of the line
|
| GeoVector |
direction |
direction of the line
|
Returns
| Type |
Description |
| System.Double |
maximum distance to the line
|
|
Improve this Doc
View Source
PlaneFit(IArray<GeoPoint>, Double, out Plane)
Declaration
public static double PlaneFit(IArray<GeoPoint> points, double precision, out Plane plane)
Parameters
Returns
| Type |
Description |
| System.Double |
|
|
Improve this Doc
View Source
QuadricFit(IArray<GeoPoint>)
Declaration
public static double QuadricFit(IArray<GeoPoint> pnts)
Parameters
Returns
| Type |
Description |
| System.Double |
|
|
Improve this Doc
View Source
Solve(Double[], Int32, Double, Double, out Double, out Int32, out Double[])
Solves the Gauss Newton approximation with the given startParameters and the error function and Jacobi matrix as specified in the constructor.
Returns the result in parameters and returns true, if the error function of the result is less than errorTolerance.
The iteration doesn't stop when errorTolerance is reached, but goes on until no more improvement of the result ocurres.
Declaration
public bool Solve(double[] startParameters, int maxIterations, double updateLengthTolerance, double errorTolerance, out double minError, out int numIterations, out double[] parameters)
Parameters
| Type |
Name |
Description |
| System.Double[] |
startParameters |
start parameters
|
| System.Int32 |
maxIterations |
maximum number of iterations
|
| System.Double |
updateLengthTolerance |
not used
|
| System.Double |
errorTolerance |
maximum error for positiv result
|
| System.Double |
minError |
effective error
|
| System.Int32 |
numIterations |
number of iterations used
|
| System.Double[] |
parameters |
resulting parameters
|
Returns
| Type |
Description |
| System.Boolean |
|
|
Improve this Doc
View Source
SphereFit(IArray<GeoPoint>, GeoPoint, Double, Double, out SphericalSurface)
Declaration
public static double SphereFit(IArray<GeoPoint> pnts, GeoPoint center, double radius, double precision, out SphericalSurface ss)
Parameters
Returns
| Type |
Description |
| System.Double |
|
|
Improve this Doc
View Source
SphereRadiusFit(IArray<GeoPoint>, GeoPoint, Double, Double, out SphericalSurface)
Declaration
public static double SphereRadiusFit(IArray<GeoPoint> pnts, GeoPoint center, double radius, double precision, out SphericalSurface ss)
Parameters
Returns
| Type |
Description |
| System.Double |
|
|
Improve this Doc
View Source
SurfaceCurveExtrema(ISurface, BoundingRect, ICurve, Double, Double, ref GeoPoint2D, ref Double)
Declaration
public static double SurfaceCurveExtrema(ISurface surface1, BoundingRect bounds1, ICurve curve2, double curveUmin, double curveUmax, ref GeoPoint2D uv1, ref double u2)
Parameters
Returns
| Type |
Description |
| System.Double |
|
|
Improve this Doc
View Source
SurfaceExtrema(ISurface, BoundingRect, ISurface, BoundingRect, ref GeoPoint2D, ref GeoPoint2D)
Calculates a uv points on each provided surface, so that the connection of the two points is perpendicular to the surfaces at these points.
Starts a GaussNewton approximation in the center of the provided parameter bounds
Declaration
public static double SurfaceExtrema(ISurface surface1, BoundingRect bounds1, ISurface surface2, BoundingRect bounds2, ref GeoPoint2D uv1, ref GeoPoint2D uv2)
Parameters
Returns
| Type |
Description |
| System.Double |
|
|
Improve this Doc
View Source
ThreeCurveIntersection(ICurve, ICurve, ICurve, ref Double, ref Double, ref Double)
Declaration
public static double ThreeCurveIntersection(ICurve crv1, ICurve crv2, ICurve crv3, ref double u1, ref double u2, ref double u3)
Parameters
| Type |
Name |
Description |
| ICurve |
crv1 |
|
| ICurve |
crv2 |
|
| ICurve |
crv3 |
|
| System.Double |
u1 |
|
| System.Double |
u2 |
|
| System.Double |
u3 |
|
Returns
| Type |
Description |
| System.Double |
|
|
Improve this Doc
View Source
TorusFit(IArray<GeoPoint>, GeoPoint, GeoVector, Double, Double, out ToroidalSurface)
Declaration
public static double TorusFit(IArray<GeoPoint> points, GeoPoint center, GeoVector axis, double minrad, double precision, out ToroidalSurface ts)
Parameters
Returns
| Type |
Description |
| System.Double |
|