[mxcad_3d API Document](../README. md)/Mx3dGeomConicalSurface
Class: Mx3dGeomConicalSurface 
Represents a conical surface in three-dimensional space. A conical surface is defined by its vertex half angle, reference radius, and coordinate system.
Hierarchy 
- ↳ - Mx3dGeomConicalSurface
Table of contents 
Constructors 
Methods 
- Apex
- Axis
- Bounds
- Coefficients
- Continuity
- Copy
- D0
- D1
- D2
- D3
- DN
- DynamicType
- Face
- IsCNu
- IsCNv
- IsUClosed
- IsUPeriodic
- IsVClosed
- IsVPeriodic
- Location
- MirrorByAxis
- MirrorByCSYSR
- MirrorByPoint
- MirroredByAxis
- MirroredByCSYSR
- MirroredByPoint
- Position
- RefRadius
- Rotate
- Rotated
- Scale
- Scaled
- SemiAngle
- SetAxis
- SetLocation
- SetPosition
- SetRadius
- SetSemiAngle
- Transform
- TransformParameters
- Transformed
- TranslateBy2Points
- TranslateByVec
- TranslatedBy2Points
- TranslatedByVec
- UPeriod
- UReverse
- UReversed
- UReversedParameter
- VPeriod
- VReverse
- VReversed
- VReversedParameter
- Value
- DownCast
Constructors 
constructor 
• new Mx3dGeomConicalSurface(A3, Ang, Radius)
Construct a conical surface with a specified coordinate system, half angle, and radius.
Parameters 
| Name | Type | Description | 
|---|---|---|
| A3 | [Mx3dGeCSYSR] (Mx3dGeCSYSR. md) | The local coordinate system of a conical surface | 
| Ang | number | Half angle of a conical surface. Its absolute value should be within the range of [0, PI/2] | 
| Radius | number | The radius of a circle on the reference plane of a conical surface | 
Overrides 
Mx3dGeomElementarySurface.constructor
Methods 
Apex 
▸ Apex(): Mx3dGePoint
Calculate and return the vertices of a cone. The vertex is located on the negative side (positive half angle) or positive side (negative half angle) of the rotation axis of the cone.
Returns 
The vertex of a cone.
Axis 
▸ Axis(): Mx3dGeAxis
Obtain the main axis (Z-axis) of the surface.
Returns 
Definition of the main axis on the surface.
Inherited from 
Mx3dGeomElementarySurface.Axis
Bounds 
▸ Bounds(U1U2V1V2): void
Return the parameter range of the conical surface.
Parameters 
| Name | Type | Description | 
|---|---|---|
| U1U2V1V2 | [dU1: number, dU2: number, dV1: number, dV2: number] | Parameter range array [dU1, dU2, dV1, dV2] | 
Returns 
void
Coefficients 
▸ Coefficients(A1A2A3B1B2B3C1C2C3D): void
Return the coefficients of the implicit equation for a conical surface. Equation form: A1.X^2 + A2.Y^2 + A3.Z^2 + 2*(B1.X.Y + B2.X.Z + B3.Y.Z) + 2*(C1.X + C2.Y + C3.Z) + D = 0
Parameters 
| Name | Type | Description | 
|---|---|---|
| A1A2A3B1B2B3C1C2C3D | [A1: number, A2: number, A3: number, B1: number, B2: number, B3: number, C1: number, C2: number, C3: number, D: number] | Coefficient array [A1, A2, A3, B1, B2, B3, C1, C2, C3, D] | 
Returns 
void
Continuity 
▸ Continuity(): MxGAShapeEnum
Return the global continuity of the surface (MxGAShapeenum).
Returns 
The continuity of the surface on a global scale.
Inherited from 
Mx3dGeomElementarySurface.Continuity
Copy 
▸ Copy(): Mx3dGeomObject
Create and return a copy of this conical surface.
Returns 
A copy of a conical surface.
D0 
▸ D0(U, V, P): void
Calculate and return the point on the surface at the given parameter (U, V).
Parameters 
| Name | Type | Description | 
|---|---|---|
| The 'U' | 'number' | U parameter | 
| V | number | V parameter | 
| P | [Mx3dGePoint] (Mx3dGePoint. md) | Result point | 
Returns 
void
D1 
▸ D1(U, V, P, D1U, D1V): void
Calculate and return the points on the surface at the given parameters (U, V) and their first derivatives in the U and V directions.
Parameters 
| Name | Type | Description | 
|---|---|---|
| The 'U' | 'number' | U parameter | 
| V | number | V parameter | 
| P | [Mx3dGePoint] (Mx3dGePoint. md) | Result point | 
| D1U | [Mx3dGeVec] (Mx3dGeVec. md) | First derivative in the U direction | 
| D1V | [Mx3dGeVec] (Mx3dGeVec. md) | First derivative in the V direction | 
Returns 
void
D2 
▸ D2(U, V, P, D1U, D1V, D2U, D2V, D2UV): void
Calculate and return the points on the surface at the given parameters (U, V) and their first and second derivatives in the U and V directions.
Parameters 
| Name | Type | Description | 
|---|---|---|
| The 'U' | 'number' | U parameter | 
| V | number | V parameter | 
| P | [Mx3dGePoint] (Mx3dGePoint. md) | Result point | 
| D1U | [Mx3dGeVec] (Mx3dGeVec. md) | First derivative in the U direction | 
| D1V | [Mx3dGeVec] (Mx3dGeVec. md) | First derivative in the V direction | 
| D2U | [Mx3dGeVec] (Mx3dGeVec. md) | Second derivative in the U direction | 
| D2V | [Mx3dGeVec] (Mx3dGeVec. md) | Second derivative in the V direction | 
| D2UV | [Mx3dGeVec] (Mx3dGeVec. md) | Mixed derivative in the UV direction | 
Returns 
void
D3 
▸ D3(U, V, P, D1U, D1V, D2U, D2V, D2UV, D3U, D3V, D3UUV, D3UVV): void
Calculate and return the points on the surface at the given parameters (U, V) and their first, second, and third derivatives in the U and V directions.
Parameters 
| Name | Type | Description | 
|---|---|---|
| The 'U' | 'number' | U parameter | 
| V | number | V parameter | 
| P | [Mx3dGePoint] (Mx3dGePoint. md) | Result point | 
| D1U | [Mx3dGeVec] (Mx3dGeVec. md) | First derivative in the U direction | 
| D1V | [Mx3dGeVec] (Mx3dGeVec. md) | First derivative in the V direction | 
| D2U | [Mx3dGeVec] (Mx3dGeVec. md) | Second derivative in the U direction | 
| D2V | [Mx3dGeVec] (Mx3dGeVec. md) | Second derivative in the V direction | 
| D2UV | [Mx3dGeVec] (Mx3dGeVec. md) | Mixed derivative in the UV direction | 
| D3U | [Mx3dGeVec] (Mx3dGeVec. md) | Third derivative in the U direction | 
| D3V | [Mx3dGeVec] (Mx3dGeVec. md) | Third derivative in the V direction | 
| D3UUV | [Mx3dGeVec] (Mx3dGeVec. md) | Mixed derivative in the UU direction | 
| D3UVV | [Mx3dGeVec] (Mx3dGeVec. md) | Mixed derivative in the UV direction | 
Returns 
void
DN 
▸ DN(U, V, Nu, Nv): Mx3dGeVec
Calculate and return the derivative of the specified order at the given parameter (U, V).
Parameters 
| Name | Type | Description | 
|---|---|---|
| The 'U' | 'number' | U parameter | 
| V | number | V parameter | 
| Nu | number | derivative order in the U direction | 
| Nv | number | derivative order in the V direction | 
Returns 
The derivative vector of a specified order.
Throws
If Nu+Nv is less than 1, or Nu or Nv is negative, throw an exception.
DynamicType 
▸ DynamicType(): string
Return the dynamic type of the object.
Returns 
string
A dynamically typed string representation.
Overrides 
Mx3dGeomElementarySurface.DynamicType
Face 
▸ Face(TolDegen): Mx3dShapeFace
Create a face based on a conical surface.
Parameters 
| Name | Type | Description | 
|---|---|---|
| TolDegen | number | Simplify surface tolerance | 
Returns 
The created face object.
▸ Face(W, Inside): Mx3dShapeFace
Create a face based on the given lines and directions.
Parameters 
| Name | Type | Description | 
|---|---|---|
| W | [Mx3dShapeWire] (Mx3dShapeWire. md) | Given line | 
| Inside | boolean | Internal directional marker | 
Returns 
The created face object.
▸ Face(UMin, UMax, VMin, VMax, TolDegen): Mx3dShapeFace
Create a face based on the specified parameter range.
Parameters 
| Name | Type | Description | 
|---|---|---|
| UMin | number | The minimum value of the U parameter | 
| UMax | number | The maximum value of the U parameter | 
| The minimum value of the VMin | number | V parameter | 
| The maximum value of the VMax | number | V parameter | 
| TolDegen | number | Simplify surface tolerance | 
Returns 
The created face object.
IsCNu 
▸ IsCNu(N): boolean
Check if the continuity of the surface in the U parameter direction meets the specified level.
Parameters 
| Name | Type | Description | 
|---|---|---|
| N | number | The continuity level to be checked | 
Returns 
boolean
If the continuity level meets the condition, return true; Otherwise, return false.
Inherited from 
Mx3dGeomElementarySurface.IsCNu
IsCNv 
▸ IsCNv(N): boolean
Check if the continuity of the surface in the V-parameter direction meets the specified level.
Parameters 
| Name | Type | Description | 
|---|---|---|
| N | number | The continuity level to be checked | 
Returns 
boolean
If the continuity level meets the condition, return true; Otherwise, return false.
Inherited from 
Mx3dGeomElementarySurface.IsCNv
IsUClosed 
▸ IsUClosed(): boolean
Check if the U parameter is closed.
Returns 
boolean
Always return true.
IsUPeriodic 
▸ IsUPeriodic(): boolean
Check if the U parameter is periodic.
Returns 
boolean
Always return true.
IsVClosed 
▸ IsVClosed(): boolean
Check if the V parameter is closed.
Returns 
boolean
Always return false.
IsVPeriodic 
▸ IsVPeriodic(): boolean
Check if the V parameter is periodic.
Returns 
boolean
Always return false.
Location 
▸ Location(): Mx3dGePoint
Obtain the position points of the local coordinate system on the surface.
Returns 
Surface location points.
Inherited from 
Mx3dGeomElementarySurface.Location
MirrorByAxis 
▸ MirrorByAxis(A1): void
Mirror transform geometric objects through axes.
Parameters 
| Name | Type | Description | 
|---|---|---|
| A1 | [Mx3dGeAxis] (Mx3dGeAxis. md) | Axis object | 
Returns 
void
Inherited from 
Mx3dGeomElementarySurface.MirrorByAxis
MirrorByCSYSR 
▸ MirrorByCSYSR(A2): void
Mirror transform geometric objects using a right-handed coordinate system.
Parameters 
| Name | Type | Description | 
|---|---|---|
| A2 | [Mx3dGeCSYSR] (Mx3dGeCSYSR. md) | Right hand coordinate system object | 
Returns 
void
Inherited from 
Mx3dGeomElementarySurface.MirrorByCSYSR
MirrorByPoint 
▸ MirrorByPoint(P): void
Mirror transform geometric objects through points.
Parameters 
| Name | Type | Description | 
|---|---|---|
| P | [Mx3dGePoint] (Mx3dGePoint. md) | Point object | 
Returns 
void
Inherited from 
Mx3dGeomElementarySurface.MirrorByPoint
MirroredByAxis 
▸ MirroredByAxis(A1): Mx3dGeomConicalSurface
Return the new geometric object transformed through axis mirroring.
Parameters 
| Name | Type | Description | 
|---|---|---|
| A1 | [Mx3dGeAxis] (Mx3dGeAxis. md) | Axis object | 
Returns 
New geometric objects.
Inherited from 
Mx3dGeomElementarySurface.MirroredByAxis
MirroredByCSYSR 
▸ MirroredByCSYSR(A2): Mx3dGeomConicalSurface
Return the new geometric object after mirror transformation through the right-handed coordinate system.
Parameters 
| Name | Type | Description | 
|---|---|---|
| A2 | [Mx3dGeCSYSR] (Mx3dGeCSYSR. md) | Right hand coordinate system object | 
Returns 
New geometric objects.
Inherited from 
Mx3dGeomElementarySurface.MirroredByCSYSR
MirroredByPoint 
▸ MirroredByPoint(P): Mx3dGeomConicalSurface
Return the new geometric object after point mirror transformation.
Parameters 
| Name | Type | Description | 
|---|---|---|
| P | [Mx3dGePoint] (Mx3dGePoint. md) | Point object | 
Returns 
New geometric objects.
Inherited from 
Mx3dGeomElementarySurface.MirroredByPoint
Position 
▸ Position(): Mx3dGeCSYSR
Obtain the local coordinate system of the surface.
Returns 
The local coordinate system of the surface.
Inherited from 
Mx3dGeomElementarySurface.Position
RefRadius 
▸ RefRadius(): number
Return the reference radius of the conical surface.
Returns 
number
Reference radius.
Rotate 
▸ Rotate(A1, Ang): void
Rotate geometric objects.
Parameters 
| Name | Type | Description | 
|---|---|---|
| A1 | [Mx3dGeAxis] (Mx3dGeAxis. md) | Axis object | 
| Ang | number | Rotation angle | 
Returns 
void
Inherited from 
Mx3dGeomElementarySurface.Rotate
Rotated 
▸ Rotated(A1, Ang): Mx3dGeomConicalSurface
Return the rotated new geometric object.
Parameters 
| Name | Type | Description | 
|---|---|---|
| A1 | [Mx3dGeAxis] (Mx3dGeAxis. md) | Axis object | 
| Ang | number | Rotation angle | 
Returns 
New geometric objects.
Inherited from 
Mx3dGeomElementarySurface.Rotated
Scale 
▸ Scale(P, S): void
Scale geometric objects.
Parameters 
| Name | Type | Description | 
|---|---|---|
| P | [Mx3dGePoint] (Mx3dGePoint. md) | Point object | 
| S | number | scaling ratio | 
Returns 
void
Inherited from 
Mx3dGeomElementarySurface.Scale
Scaled 
▸ Scaled(P, S): Mx3dGeomConicalSurface
Return the scaled new geometric object.
Parameters 
| Name | Type | Description | 
|---|---|---|
| P | [Mx3dGePoint] (Mx3dGePoint. md) | Point object | 
| S | number | scaling ratio | 
Returns 
New geometric objects.
Inherited from 
Mx3dGeomElementarySurface.Scaled
SemiAngle 
▸ SemiAngle(): number
Return the half angle of the cone vertex.
Returns 
number
The half angle of a cone.
SetAxis 
▸ SetAxis(theA1): void
Set the main axis (Z-axis) of the surface.
Parameters 
| Name | Type | Description | 
|---|---|---|
| TheA1 | [Mx3dGeAxis] (Mx3dGeAxis. md) | Definition of the principal axis of the surface | 
Returns 
void
Inherited from 
Mx3dGeomElementarySurface.SetAxis
SetLocation 
▸ SetLocation(theLoc): void
Set the position points of the surface local coordinate system.
Parameters 
| Name | Type | Description | 
|---|---|---|
| TheLoc | [Mx3dGePoint] (Mx3dGePoint. md) | New location point | 
Returns 
void
Inherited from 
Mx3dGeomElementarySurface.SetLocation
SetPosition 
▸ SetPosition(theAx3): void
Set the local coordinate system of the surface.
Parameters 
| Name | Type | Description | 
|---|---|---|
| TheAx3 | [Mx3dGeCSYSR] (Mx3dGeCSYSR. md) | A new coordinate system that includes position and orientation | 
Returns 
void
Inherited from 
Mx3dGeomElementarySurface.SetPosition
SetRadius 
▸ SetRadius(R): void
Set the radius of the conical surface in the placement plane.
Parameters 
| Name | Type | Description | 
|---|---|---|
| R | number | New radius. It must be a non negative value | 
Returns 
void
SetSemiAngle 
▸ SetSemiAngle(Ang): void
Set the half angle of the conical surface.
Parameters 
| Name | Type | Description | 
|---|---|---|
| Ang | number | new half corner. Its absolute value should be [0], Within the scope of PI/2 | 
Returns 
void
Transform 
▸ Transform(T): void
Apply transformations to conical surfaces.
Parameters 
| Name | Type | Description | 
|---|---|---|
| T | [Mx3dGetStrf] (Mx3dGetStrf. md) | Transform | 
Returns 
void
TransformParameters 
▸ TransformParameters(UV, T): void
Transform parameters.
Parameters 
| Name | Type | Description | 
|---|---|---|
| UV | [dU: number, dV: number] | Parameter array [dU, dV] | 
| T | [Mx3dGetStrf] (Mx3dGetStrf. md) | Transform | 
Returns 
void
Overrides 
Mx3dGeomElementarySurface.TransformParameters
Transformed 
▸ Transformed(T): Mx3dGeomConicalSurface
Return the transformed new geometric object.
Parameters 
| Name | Type | Description | 
|---|---|---|
| T | [Mx3dGetStrf] (Mx3dGetStrf. md) | Transform the object | 
Returns 
New geometric objects.
Inherited from 
Mx3dGeomElementarySurface.Transformed
TranslateBy2Points 
▸ TranslateBy2Points(P1, P2): void
Translate geometric objects through two points.
Parameters 
| Name | Type | Description | 
|---|---|---|
| P1 | [Mx3dGePoint] (Mx3dGePoint. md) | Starting point object | 
| P2 | [Mx3dGePoint] (Mx3dGePoint. md) | End point object | 
Returns 
void
Inherited from 
Mx3dGeomElementarySurface.TranslateBy2Points
TranslateByVec 
▸ TranslateByVec(V): void
Translate geometric objects through vectors.
Parameters 
| Name | Type | Description | 
|---|---|---|
| V | [Mx3dGeVec] (Mx3dGeVec. md) | Vector object | 
Returns 
void
Inherited from 
Mx3dGeomElementarySurface.TranslateByVec
TranslatedBy2Points 
▸ TranslatedBy2Points(P1, P2): Mx3dGeomConicalSurface
Return the new geometric object after translating through two points.
Parameters 
| Name | Type | Description | 
|---|---|---|
| P1 | [Mx3dGePoint] (Mx3dGePoint. md) | Starting point object | 
| P2 | [Mx3dGePoint] (Mx3dGePoint. md) | End point object | 
Returns 
New geometric objects.
Inherited from 
Mx3dGeomElementarySurface.TranslatedBy2Points
TranslatedByVec 
▸ TranslatedByVec(V): Mx3dGeomConicalSurface
Return the new geometric object after vector translation.
Parameters 
| Name | Type | Description | 
|---|---|---|
| V | [Mx3dGeVec] (Mx3dGeVec. md) | Vector object | 
Returns 
New geometric objects.
Inherited from 
Mx3dGeomElementarySurface.TranslatedByVec
UPeriod 
▸ UPeriod(): number
Return the period of the surface in the U direction.
Returns 
number
The period of the surface in the U direction.
Inherited from 
Mx3dGeomElementarySurface.UPeriod
UReverse 
▸ UReverse(): void
Reverse the parameterization direction of the surface in the U parameter direction.
Returns 
void
Inherited from 
Mx3dGeomElementarySurface.UReverse
UReversed 
▸ UReversed(): Mx3dGeomConicalSurface
Parameterization of reversing the U direction.
Returns 
Return the current object to implement a chain call.
Inherited from 
Mx3dGeomElementarySurface.UReversed
UReversedParameter 
▸ UReversedParameter(U): number
Return the inverted U parameter.
Parameters 
| Name | Type | Description | 
|---|---|---|
| U | number | Original U parameter | 
Returns 
number
The inverted U parameter.
VPeriod 
▸ VPeriod(): number
Return the period of the surface in the V direction.
Returns 
number
The period of the surface in the V direction.
Inherited from 
Mx3dGeomElementarySurface.VPeriod
VReverse 
▸ VReverse(): void
Reverse the direction of the V parameter.
Returns 
void
Overrides 
Mx3dGeomElementarySurface.VReverse
VReversed 
▸ VReversed(): Mx3dGeomConicalSurface
Parameterization of reversing the V direction.
Returns 
Return the current object to implement a chain call.
Inherited from 
Mx3dGeomElementarySurface.VReversed
VReversedParameter 
▸ VReversedParameter(V): number
Return the inverted V parameter.
Parameters 
| Name | Type | Description | 
|---|---|---|
| V | number | Original V parameter | 
Returns 
number
The inverted V parameter.
Value 
▸ Value(U, V): Mx3dGePoint
Calculate the points on the surface corresponding to the parameters (U, V).
Parameters 
| Name | Type | Description | 
|---|---|---|
| U | number | Surface parameter U | 
| V | number | Surface parameter V | 
Returns 
Corresponding point.
Inherited from 
Mx3dGeomElementarySurface.Value
DownCast 
▸ Static DownCast(theObject): Mx3dGeomConicalSurface
Convert parent object to Mx3dGeomConicalSurface class object
Parameters 
| Name | Type | Description | 
|---|---|---|
| TheObject | [Mx3dGeomObject] (Mx3dGeomObject. md) | Parent class object | 
Returns 
Mx3dGeomConicalSurface class object