Show / Hide Table of Contents

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()
Namespace: CADability
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
Type Name Description
GaussNewtonMinimizer.ErrorFunction eFunction
GaussNewtonMinimizer.JacobiFunction jFunction
GaussNewtonMinimizer.CheckParameterFunction checkParameter
GaussNewtonMinimizer.CurtailParameterFunction curtailParameter

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
Type Name Description
IArray<GeoPoint> points
GeoPoint center
System.Double radius
System.Double precision
Ellipse elli
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
Type Name Description
IArray<GeoPoint> points
GeoPoint apex
GeoVector axis
System.Double theta
System.Double precision
ConicalSurface cs
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
Type Name Description
IArray<GeoPoint> points
GeoPoint apex
GeoVector axis
System.Double theta
System.Double precision
ConicalSurface cs
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
Type Name Description
GeoPoint[] points
GeoPoint apex
GeoVector axis
System.Double theta
ConicalSurface cs
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
Type Name Description
IArray<GeoPoint> pnts
GeoPoint center
GeoVector axis
System.Double radius
System.Double precision
CylindricalSurface cs
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
Type Name Description
IArray<GeoPoint> pnts
GeoPoint center
GeoVector axis
System.Double radius
System.Double precision
CylindricalSurface cs
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
Type Name Description
IArray<GeoPoint2D> points2d
GeoPoint2D center2d
System.Double majrad
System.Double minrad
System.Double angle
System.Double precision
Ellipse2D ellipse
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
Type Name Description
GeoPoint p1
GeoVector d1
GeoPoint p2
GeoVector d2
System.Double a1
System.Double a2
System.Double s1
System.Double s2
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
Type Name Description
IArray<GeoPoint> points
System.Double precision
Plane plane
Returns
Type Description
System.Double
| Improve this Doc View Source

QuadricFit(IArray<GeoPoint>)

Declaration
public static double QuadricFit(IArray<GeoPoint> pnts)
Parameters
Type Name Description
IArray<GeoPoint> pnts
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
Type Name Description
IArray<GeoPoint> pnts
GeoPoint center
System.Double radius
System.Double precision
SphericalSurface ss
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
Type Name Description
IArray<GeoPoint> pnts
GeoPoint center
System.Double radius
System.Double precision
SphericalSurface ss
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
Type Name Description
ISurface surface1
BoundingRect bounds1
ICurve curve2
System.Double curveUmin
System.Double curveUmax
GeoPoint2D uv1
System.Double u2
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
Type Name Description
ISurface surface1
BoundingRect bounds1
ISurface surface2
BoundingRect bounds2
GeoPoint2D uv1
GeoPoint2D uv2
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
Type Name Description
IArray<GeoPoint> points
GeoPoint center
GeoVector axis
System.Double minrad
System.Double precision
ToroidalSurface ts
Returns
Type Description
System.Double
  • Improve this Doc
  • View Source
In This Article
Back to top Generated by DocFX