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
SphericalSurfaceNP
Implements
System.Runtime.Serialization.ISerializable
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
[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
|
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
|
Improve this Doc
View Source
IsVPeriodic
Declaration
public override bool IsVPeriodic { get; }
Property Value
| Type |
Description |
| System.Boolean |
|
Overrides
|
Improve this Doc
View Source
UvChangesWithModification
Declaration
public override bool UvChangesWithModification { get; }
Property Value
| Type |
Description |
| System.Boolean |
|
Overrides
Methods
|
Improve this Doc
View Source
Clone()
Declaration
public override ISurface Clone()
Returns
Overrides
|
Improve this Doc
View Source
CopyData(ISurface)
Declaration
public override void CopyData(ISurface CopyFrom)
Parameters
Overrides
|
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
Overrides
|
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
Overrides
|
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
Overrides
|
Improve this Doc
View Source
GetExtrema()
Declaration
public override GeoPoint2D[] GetExtrema()
Returns
Overrides
|
Improve this Doc
View Source
GetImplicitPolynomial()
Declaration
public override Polynom GetImplicitPolynomial()
Returns
Overrides
|
Improve this Doc
View Source
GetModified(ModOp)
Declaration
public override ISurface GetModified(ModOp m)
Parameters
| Type |
Name |
Description |
| ModOp |
m |
|
Returns
Overrides
|
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
|
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
Overrides
|
Improve this Doc
View Source
GetPropertyEntry(IFrame)
Declaration
public override IPropertyEntry GetPropertyEntry(IFrame frame)
Parameters
| Type |
Name |
Description |
| IFrame |
frame |
|
Returns
Overrides
|
Improve this Doc
View Source
PointAt(GeoPoint2D)
Declaration
public override GeoPoint PointAt(GeoPoint2D uv)
Parameters
Returns
Overrides
|
Improve this Doc
View Source
PositionOf(GeoPoint)
Declaration
public override GeoPoint2D PositionOf(GeoPoint p)
Parameters
Returns
Overrides
|
Improve this Doc
View Source
ReverseOrientation()
Declaration
public override ModOp2D ReverseOrientation()
Returns
Overrides
|
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
Returns
| Type |
Description |
| System.Boolean |
|
Overrides
|
Improve this Doc
View Source
UDirection(GeoPoint2D)
Declaration
public override GeoVector UDirection(GeoPoint2D uv)
Parameters
Returns
Overrides
|
Improve this Doc
View Source
VDirection(GeoPoint2D)
Declaration
public override GeoVector VDirection(GeoPoint2D uv)
Parameters
Returns
Overrides
Explicit Interface Implementations
|
Improve this Doc
View Source
IJsonSerialize.GetObjectData(IJsonWriteData)
Declaration
void IJsonSerialize.GetObjectData(IJsonWriteData data)
Parameters
|
Improve this Doc
View Source
IJsonSerialize.SetObjectData(IJsonReadData)
Declaration
void IJsonSerialize.SetObjectData(IJsonReadData data)
Parameters
|
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
System.Runtime.Serialization.ISerializable