Show / Hide Table of Contents

Class SphericalSurfaceNP

A spherical surface with a non periodic u/v system. It also has no poles. It cannot represent a whole sphere, there must be some part which is outside the usable area. The center, xAxis, yAxis and zAxis define a coordinate system. The plane defined by (center, xAxis and yAxis) is the equator plane of the sphere, (center+zAxis) is the north pole. (center-zAxis9 is the south pole, which may not be part of the used area. The u/v system is the u/v system of the equator area. The point of the sphere for a provided u/v point is the projection of this point from the south pole to the surface. All circular arcs on the sphere (e.g. planar intersections) are elliptical arcs in the u/v system (or lines, when they pass the north pole)

Inheritance
System.Object
ISurfaceImpl
SphericalSurfaceNP
Implements
ISurface
IOctTreeInsertable
IJsonSerialize
System.Runtime.Serialization.ISerializable
Inherited Members
ISurfaceImpl.extrema
ISurfaceImpl.InvalidateSecondaryData()
ISurfaceImpl.Make3dCurve(ICurve2D)
ISurfaceImpl.GetNormal(GeoPoint2D)
ISurfaceImpl.DerivationAt(GeoPoint2D, GeoPoint, GeoVector, GeoVector)
ISurfaceImpl.GetPlaneIntersection(PlaneSurface, Double, Double, Double, Double, Double)
ISurfaceImpl.GetLineIntersection(GeoPoint, GeoVector)
ISurfaceImpl.GetSafeParameterSteps(Double, Double, Double, Double, Double[], Double[])
ISurfaceImpl.GetTangentCurves(GeoVector, Double, Double, Double, Double)
ISurfaceImpl.IsVanishingProjection(Projection, Double, Double, Double, Double)
ISurfaceImpl.UPeriod
ISurfaceImpl.VPeriod
ISurfaceImpl.IsUClosed
ISurfaceImpl.IsVClosed
ISurfaceImpl.GetUSingularities()
ISurfaceImpl.GetVSingularities()
ISurfaceImpl.MakeFace(SimpleShape)
ISurfaceImpl.GetZMinMax(Projection, Double, Double, Double, Double, Double, Double)
ISurfaceImpl.MakeCanonicalForm()
ISurfaceImpl.Modify(ModOp)
ISurfaceImpl.Approximate(Double, Double, Double, Double, Double)
ISurfaceImpl.Intersect(ICurve, BoundingRect, GeoPoint[], GeoPoint2D[], Double[])
ISurfaceImpl.Intersect(BoundingRect, ISurface, BoundingRect)
ISurfaceImpl.Intersect(BoundingRect, ISurface, BoundingRect, GeoPoint)
ISurfaceImpl.GetOffsetSurface(Double)
ISurfaceImpl.GetOffsetSurface(Double, ModOp2D)
ISurfaceImpl.HitTest(BoundingCube, Double, Double, Double, Double)
ISurfaceImpl.HitTest(BoundingCube, GeoPoint2D)
ISurfaceImpl.Oriented
ISurfaceImpl.IsRuled
ISurfaceImpl.Orientation(GeoPoint)
ISurfaceImpl.GetSaveUSteps()
ISurfaceImpl.GetSaveVSteps()
ISurfaceImpl.GetPatchExtent(BoundingRect, Boolean)
ISurfaceImpl.GetPolynomialParameters()
ISurfaceImpl.SetBounds(BoundingRect)
ISurfaceImpl.PerpendicularFoot(GeoPoint)
ISurfaceImpl.HasDiscontinuousDerivative(ICurve2D[])
ISurfaceImpl.GetNonPeriodicSurface(ICurve[])
ISurfaceImpl.GetPatchHull(BoundingRect, GeoPoint, GeoVector, GeoVector, GeoVector)
ISurfaceImpl.GetTouchingPoints(BoundingRect, ISurface, BoundingRect)
ISurfaceImpl.GetCanonicalForm(Double, Nullable<BoundingRect>)
ISurfaceImpl.PositionOf(GeoPoint, BoundingRect)
ISurfaceImpl.GetExtremePositions(BoundingRect, ISurface, BoundingRect, List<Tuple<Double, Double, Double, Double>>)
ISurfaceImpl.GetExtremePositions(BoundingRect, ICurve, List<Tuple<Double, Double, Double>>)
ISurfaceImpl.GetDistance(GeoPoint)
ISurfaceImpl.IsExtruded(GeoVector)
ISurfaceImpl.GetContextMenuForParametrics(IFrame, Face)
ISurfaceImpl.sqr(Double)
ISurfaceImpl.cube(Double)
ISurfaceImpl.quad(Double)
ISurfaceImpl.exp32(Double)
ISurfaceImpl.exp52(Double)
ISurfaceImpl.MaxDist(GeoPoint2D, GeoPoint2D, GeoPoint2D)
ISurfaceImpl.Refine(GeoPoint[], Int32, Boolean, PlaneSurface, Double)
ISurfaceImpl.IOctTreeInsertable.GetExtent(Double)
ISurfaceImpl.IOctTreeInsertable.HitTest(BoundingCube, Double)
ISurfaceImpl.IOctTreeInsertable.HitTest(Projection, BoundingRect, Boolean)
ISurfaceImpl.IOctTreeInsertable.HitTest(Projection.PickArea, Boolean)
ISurfaceImpl.IOctTreeInsertable.Position(GeoPoint, GeoVector, Double)
ISurfaceImpl.GetDualSurfaceCurves(BoundingRect, ISurface, BoundingRect, List<GeoPoint>, List<Tuple<Double, Double, Double, Double>>)
ISurfaceImpl.GetSelfIntersections(BoundingRect)
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.GeoObject
Assembly: CADability.dll
Syntax
[Serializable]
public class SphericalSurfaceNP : ISurfaceImpl, ISurface, IOctTreeInsertable, IJsonSerialize, ISerializable

Constructors

| Improve this Doc View Source

SphericalSurfaceNP()

Declaration
protected SphericalSurfaceNP()
| Improve this Doc View Source

SphericalSurfaceNP(GeoPoint, GeoVector, GeoVector, GeoVector)

Declaration
public SphericalSurfaceNP(GeoPoint center, GeoVector xAxis, GeoVector yAxis, GeoVector zAxis)
Parameters
Type Name Description
GeoPoint center
GeoVector xAxis
GeoVector yAxis
GeoVector zAxis
| Improve this Doc View Source

SphericalSurfaceNP(GeoPoint, Double, Boolean, ICurve[])

Constructs a non periodic spherical surface with center and radius. The z-axis will be oriented so that the "south pole" falls into an unused part of the sphere. The edges are orientedCurves bound the sphere so that when you walk along the curve (outwardOriented==true: on the outside, false: on the inside of the sphere), the used surfaces is on the left side of the curve. The curves must all be connected and define one or more closed loops on the surface.

Declaration
public SphericalSurfaceNP(GeoPoint center, double radius, bool outwardOriented, ICurve[] orientedCurves)
Parameters
Type Name Description
GeoPoint center
System.Double radius
System.Boolean outwardOriented

true: the center is on the inside, false: the center is on the outside of the surface

ICurve[] orientedCurves
| Improve this Doc View Source

SphericalSurfaceNP(SerializationInfo, StreamingContext)

Declaration
protected SphericalSurfaceNP(SerializationInfo info, StreamingContext context)
Parameters
Type Name Description
System.Runtime.Serialization.SerializationInfo info
System.Runtime.Serialization.StreamingContext context

Properties

| Improve this Doc View Source

IsUPeriodic

Declaration
public override bool IsUPeriodic { get; }
Property Value
Type Description
System.Boolean
Overrides
ISurfaceImpl.IsUPeriodic
| Improve this Doc View Source

IsVPeriodic

Declaration
public override bool IsVPeriodic { get; }
Property Value
Type Description
System.Boolean
Overrides
ISurfaceImpl.IsVPeriodic
| Improve this Doc View Source

UvChangesWithModification

Declaration
public override bool UvChangesWithModification { get; }
Property Value
Type Description
System.Boolean
Overrides
ISurfaceImpl.UvChangesWithModification

Methods

| Improve this Doc View Source

Clone()

Declaration
public override ISurface Clone()
Returns
Type Description
ISurface
Overrides
ISurfaceImpl.Clone()
| Improve this Doc View Source

CopyData(ISurface)

Declaration
public override void CopyData(ISurface CopyFrom)
Parameters
Type Name Description
ISurface CopyFrom
Overrides
ISurfaceImpl.CopyData(ISurface)
| Improve this Doc View Source

Derivation2At(GeoPoint2D, out GeoPoint, out GeoVector, out GeoVector, out GeoVector, out GeoVector, out GeoVector)

Declaration
public override void Derivation2At(GeoPoint2D uv, out GeoPoint p, out GeoVector du, out GeoVector dv, out GeoVector duu, out GeoVector dvv, out GeoVector duv)
Parameters
Type Name Description
GeoPoint2D uv
GeoPoint p
GeoVector du
GeoVector dv
GeoVector duu
GeoVector dvv
GeoVector duv
Overrides
ISurfaceImpl.Derivation2At(GeoPoint2D, out GeoPoint, out GeoVector, out GeoVector, out GeoVector, out GeoVector, out GeoVector)
| Improve this Doc View Source

FixedU(Double, Double, Double)

Declaration
public override ICurve FixedU(double u, double vmin, double vmax)
Parameters
Type Name Description
System.Double u
System.Double vmin
System.Double vmax
Returns
Type Description
ICurve
Overrides
ISurfaceImpl.FixedU(Double, Double, Double)
| Improve this Doc View Source

FixedV(Double, Double, Double)

Declaration
public override ICurve FixedV(double v, double umin, double umax)
Parameters
Type Name Description
System.Double v
System.Double umin
System.Double umax
Returns
Type Description
ICurve
Overrides
ISurfaceImpl.FixedV(Double, Double, Double)
| Improve this Doc View Source

GetExtrema()

Declaration
public override GeoPoint2D[] GetExtrema()
Returns
Type Description
GeoPoint2D[]
Overrides
ISurfaceImpl.GetExtrema()
| Improve this Doc View Source

GetImplicitPolynomial()

Declaration
public override Polynom GetImplicitPolynomial()
Returns
Type Description
Polynom
Overrides
ISurfaceImpl.GetImplicitPolynomial()
| Improve this Doc View Source

GetModified(ModOp)

Declaration
public override ISurface GetModified(ModOp m)
Parameters
Type Name Description
ModOp m
Returns
Type Description
ISurface
Overrides
ISurfaceImpl.GetModified(ModOp)
| Improve this Doc View Source

GetNaturalBounds(out Double, out Double, out Double, out Double)

Declaration
public override void GetNaturalBounds(out double umin, out double umax, out double vmin, out double vmax)
Parameters
Type Name Description
System.Double umin
System.Double umax
System.Double vmin
System.Double vmax
Overrides
ISurfaceImpl.GetNaturalBounds(out Double, out Double, out Double, out Double)
| Improve this Doc View Source

GetProjectedCurve(ICurve, Double)

Declaration
public override ICurve2D GetProjectedCurve(ICurve curve, double precision)
Parameters
Type Name Description
ICurve curve
System.Double precision
Returns
Type Description
ICurve2D
Overrides
ISurfaceImpl.GetProjectedCurve(ICurve, Double)
| Improve this Doc View Source

GetPropertyEntry(IFrame)

Declaration
public override IPropertyEntry GetPropertyEntry(IFrame frame)
Parameters
Type Name Description
IFrame frame
Returns
Type Description
IPropertyEntry
Overrides
ISurfaceImpl.GetPropertyEntry(IFrame)
| Improve this Doc View Source

PointAt(GeoPoint2D)

Declaration
public override GeoPoint PointAt(GeoPoint2D uv)
Parameters
Type Name Description
GeoPoint2D uv
Returns
Type Description
GeoPoint
Overrides
ISurfaceImpl.PointAt(GeoPoint2D)
| Improve this Doc View Source

PositionOf(GeoPoint)

Declaration
public override GeoPoint2D PositionOf(GeoPoint p)
Parameters
Type Name Description
GeoPoint p
Returns
Type Description
GeoPoint2D
Overrides
ISurfaceImpl.PositionOf(GeoPoint)
| Improve this Doc View Source

ReverseOrientation()

Declaration
public override ModOp2D ReverseOrientation()
Returns
Type Description
ModOp2D
Overrides
ISurfaceImpl.ReverseOrientation()
| Improve this Doc View Source

SameGeometry(BoundingRect, ISurface, BoundingRect, Double, out ModOp2D)

Declaration
public override bool SameGeometry(BoundingRect thisBounds, ISurface other, BoundingRect otherBounds, double precision, out ModOp2D firstToSecond)
Parameters
Type Name Description
BoundingRect thisBounds
ISurface other
BoundingRect otherBounds
System.Double precision
ModOp2D firstToSecond
Returns
Type Description
System.Boolean
Overrides
ISurfaceImpl.SameGeometry(BoundingRect, ISurface, BoundingRect, Double, out ModOp2D)
| Improve this Doc View Source

UDirection(GeoPoint2D)

Declaration
public override GeoVector UDirection(GeoPoint2D uv)
Parameters
Type Name Description
GeoPoint2D uv
Returns
Type Description
GeoVector
Overrides
ISurfaceImpl.UDirection(GeoPoint2D)
| Improve this Doc View Source

VDirection(GeoPoint2D)

Declaration
public override GeoVector VDirection(GeoPoint2D uv)
Parameters
Type Name Description
GeoPoint2D uv
Returns
Type Description
GeoVector
Overrides
ISurfaceImpl.VDirection(GeoPoint2D)

Explicit Interface Implementations

| Improve this Doc View Source

IJsonSerialize.GetObjectData(IJsonWriteData)

Declaration
void IJsonSerialize.GetObjectData(IJsonWriteData data)
Parameters
Type Name Description
IJsonWriteData data
| Improve this Doc View Source

IJsonSerialize.SetObjectData(IJsonReadData)

Declaration
void IJsonSerialize.SetObjectData(IJsonReadData data)
Parameters
Type Name Description
IJsonReadData data
| Improve this Doc View Source

ISerializable.GetObjectData(SerializationInfo, StreamingContext)

Declaration
void ISerializable.GetObjectData(SerializationInfo info, StreamingContext context)
Parameters
Type Name Description
System.Runtime.Serialization.SerializationInfo info
System.Runtime.Serialization.StreamingContext context

Implements

ISurface
IOctTreeInsertable
IJsonSerialize
System.Runtime.Serialization.ISerializable
  • Improve this Doc
  • View Source
In This Article
Back to top Generated by DocFX