Show / Hide Table of Contents

Class ImplicitPSurface

A surface, defined by a polynom in 3 variables. The surface is defined as P(x,y,z)==0.

Inheritance
System.Object
ImplicitPSurface
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 ImplicitPSurface

Constructors

| Improve this Doc View Source

ImplicitPSurface(ISurface, BoundingRect, Int32)

Declaration
public ImplicitPSurface(ISurface surface, BoundingRect uvbounds, int maxdegree)
Parameters
Type Name Description
ISurface surface
BoundingRect uvbounds
System.Int32 maxdegree
| Improve this Doc View Source

ImplicitPSurface(ISurface, BoundingRect, Int32, Boolean, Int32)

Approximate the provided surface with a imlicit polynomial surface. Uses points an normals of the surface. Yields good results for quadrics (degree==2) and for ruled surfaces.

Declaration
public ImplicitPSurface(ISurface surface, BoundingRect uvbounds, int degree, bool useNormal, int nPoints = 0)
Parameters
Type Name Description
ISurface surface
BoundingRect uvbounds
System.Int32 degree
System.Boolean useNormal
System.Int32 nPoints
| Improve this Doc View Source

ImplicitPSurface(ISurface, BoundingRect, Int32, Double)

Declaration
public ImplicitPSurface(ISurface surface, BoundingRect uvbounds, int maxdegree, double precision)
Parameters
Type Name Description
ISurface surface
BoundingRect uvbounds
System.Int32 maxdegree
System.Double precision
| Improve this Doc View Source

ImplicitPSurface(GeoPoint[])

Creates a quadric through these points (needs at least 10 points)

Declaration
public ImplicitPSurface(GeoPoint[] samples)
Parameters
Type Name Description
GeoPoint[] samples
| Improve this Doc View Source

ImplicitPSurface(Polynom)

Declaration
public ImplicitPSurface(Polynom polynom)
Parameters
Type Name Description
Polynom polynom
| Improve this Doc View Source

ImplicitPSurface(Polynom, ModOp)

Declaration
public ImplicitPSurface(Polynom polynom, ModOp m)
Parameters
Type Name Description
Polynom polynom
ModOp m

Properties

| Improve this Doc View Source

Polynom

Returns the implicit polynom of this surface (i.e. polynom(x,y,z)==0 for all points on the surface)

Declaration
public Polynom Polynom { get; }
Property Value
Type Description
Polynom

Methods

| Improve this Doc View Source

FootPoint(GeoPoint)

Declaration
public GeoPoint[] FootPoint(GeoPoint fromHere)
Parameters
Type Name Description
GeoPoint fromHere
Returns
Type Description
GeoPoint[]
| Improve this Doc View Source

Intersect(ExplicitPCurve3D, out Double[])

Returns the intersection points of the provided curve with this surface.

Declaration
public GeoPoint[] Intersect(ExplicitPCurve3D c3d, out double[] u)
Parameters
Type Name Description
ExplicitPCurve3D c3d

curve to intersect with

System.Double[] u

returns the parameter values for the curve of the intersection points

Returns
Type Description
GeoPoint[]

the intersection points

| Improve this Doc View Source

Intersect(GeoPoint, GeoVector, out Double[])

Declaration
public GeoPoint[] Intersect(GeoPoint sp, GeoVector dir, out double[] u)
Parameters
Type Name Description
GeoPoint sp
GeoVector dir
System.Double[] u
Returns
Type Description
GeoPoint[]
| Improve this Doc View Source

LagrangeReduction3()

Modifies the surface into it's "canonical" position. A sphere will be around the origin, a cylinder will be around the z-axis, a cone will be around the z-axis with its apex at the origin. The returned ModOp modifies the canonical form into the original form. Makes only sense for quadrics

Declaration
public ModOp LagrangeReduction3()
Returns
Type Description
ModOp

the modification that transforms the canonical form into the initial form

| Improve this Doc View Source

MinMaxToCurve(ExplicitPCurve3D, out Double[])

Declaration
public GeoPoint[] MinMaxToCurve(ExplicitPCurve3D c3d, out double[] u)
Parameters
Type Name Description
ExplicitPCurve3D c3d
System.Double[] u
Returns
Type Description
GeoPoint[]
| Improve this Doc View Source

MinMaxToPatch(GeoPoint, GeoVector, GeoVector)

Returns a list of all points of the surface, where there is a minimum or maximum distance to the plane, defined by loc, dirx, diry. Returns only those points, which have a (perpendicular) footpoint in the parallelogram, defined by the parameters.

Declaration
public GeoPoint[] MinMaxToPatch(GeoPoint loc, GeoVector dirx, GeoVector diry)
Parameters
Type Name Description
GeoPoint loc
GeoVector dirx
GeoVector diry
Returns
Type Description
GeoPoint[]
| Improve this Doc View Source

Normal(GeoPoint)

Declaration
public GeoVector Normal(GeoPoint fromHere)
Parameters
Type Name Description
GeoPoint fromHere
Returns
Type Description
GeoVector
| Improve this Doc View Source

PerpendicularToGradient(ExplicitPCurve3D)

Declaration
public double[] PerpendicularToGradient(ExplicitPCurve3D curve)
Parameters
Type Name Description
ExplicitPCurve3D curve
Returns
Type Description
System.Double[]
| Improve this Doc View Source

PerpendicularToGradient(GeoPoint, GeoVector)

Declaration
public double[] PerpendicularToGradient(GeoPoint lineStart, GeoVector lineDirection)
Parameters
Type Name Description
GeoPoint lineStart
GeoVector lineDirection
Returns
Type Description
System.Double[]
| Improve this Doc View Source

PolynomialDistance(GeoPoint)

Declaration
public double PolynomialDistance(GeoPoint fromHere)
Parameters
Type Name Description
GeoPoint fromHere
Returns
Type Description
System.Double
  • Improve this Doc
  • View Source
In This Article
Back to top Generated by DocFX