Interface ICamApiBaseSurface
Base surface configuration for engraving / curve-on-surface operations. Wraps the Delphi IBaseSurfaceEditor. The object is a singleton owned by the model former — every call to ICamApiModelFormerWithBaseSurface.BaseSurface returns the same underlying editor. Setting a property mutates the former state immediately; no Apply/Commit is needed.
Namespace: CAMAPI.ModelFormerTypes
Assembly: CAMAPI.ModelFormerTypes.dll
Syntax
[Guid("D40CEB84-4DFD-4177-969E-BD171403E028")]
[InterfaceType(ComInterfaceType.InterfaceIsIUnknown)]
public interface ICamApiBaseSurface
Properties
CurvesProjectMethod
Method used to project curves onto the base surface
Declaration
TModelFormerBaseSurfaceProjectMethod CurvesProjectMethod { get; set; }
Property Value
| Type | Description |
|---|---|
| TModelFormerBaseSurfaceProjectMethod |
CylRadius
Radius of cylinder primitive (only meaningful when PrimitiveType = Cylinder)
Declaration
double CylRadius { get; set; }
Property Value
| Type | Description |
|---|---|
| double |
Enabled
Whether the base surface is active (false = primitive type None in UI)
Declaration
bool Enabled { get; set; }
Property Value
| Type | Description |
|---|---|
| bool |
NormalOrientation
Flip the surface normal orientation (inverse of UI "Alternate normal")
Declaration
bool NormalOrientation { get; set; }
Property Value
| Type | Description |
|---|---|
| bool |
PreserveRatio
Preserve aspect ratio when rescaling the unfolded domain
Declaration
bool PreserveRatio { get; set; }
Property Value
| Type | Description |
|---|---|
| bool |
PrimitiveAxis
Primitive axis (shortcut; equals PrimitiveMatrix.vZ normalized)
Declaration
TST3DPoint PrimitiveAxis { get; set; }
Property Value
| Type | Description |
|---|---|
| TST3DPoint |
PrimitiveMatrix
Full primitive placement matrix (origin + orientation)
Declaration
TST3DMatrix PrimitiveMatrix { get; set; }
Property Value
| Type | Description |
|---|---|
| TST3DMatrix |
PrimitiveOrigin
Primitive origin (shortcut; equals PrimitiveMatrix.vT)
Declaration
TST3DPoint PrimitiveOrigin { get; set; }
Property Value
| Type | Description |
|---|---|
| TST3DPoint |
PrimitiveType
Primitive type (Plane/Cylinder/Revolution)
Declaration
TModelFormerBaseSurfacePrimitiveType PrimitiveType { get; set; }
Property Value
| Type | Description |
|---|---|
| TModelFormerBaseSurfacePrimitiveType |
RotAngle
Rotation angle applied to the unfolded domain (radians)
Declaration
double RotAngle { get; set; }
Property Value
| Type | Description |
|---|---|
| double |
UseRotAngle
Whether RotAngle is applied
Declaration
bool UseRotAngle { get; set; }
Property Value
| Type | Description |
|---|---|
| bool |
UseXMax
Enable the XMax bound
Declaration
bool UseXMax { get; set; }
Property Value
| Type | Description |
|---|---|
| bool |
UseXMin
Enable the XMin bound
Declaration
bool UseXMin { get; set; }
Property Value
| Type | Description |
|---|---|
| bool |
UseYMax
Enable the YMax bound
Declaration
bool UseYMax { get; set; }
Property Value
| Type | Description |
|---|---|
| bool |
UseYMin
Enable the YMin bound
Declaration
bool UseYMin { get; set; }
Property Value
| Type | Description |
|---|---|
| bool |
XMax
Upper X bound of the unfold domain
Declaration
double XMax { get; set; }
Property Value
| Type | Description |
|---|---|
| double |
XMin
Lower X bound of the unfold domain (active only when UseXMin is true)
Declaration
double XMin { get; set; }
Property Value
| Type | Description |
|---|---|
| double |
YMax
Upper Y bound of the unfold domain
Declaration
double YMax { get; set; }
Property Value
| Type | Description |
|---|---|
| double |
YMin
Lower Y bound of the unfold domain
Declaration
double YMin { get; set; }
Property Value
| Type | Description |
|---|---|
| double |