    

 ## On this page

  

 

 # Class Body

 Last update: 16.07.2025 

Namespace: [VM.Managed.CAD](VM.Managed.CAD.md)  
Assembly: VMAppCore.dll

This class is to represent the body(solid).

```csharp
public class Body : Object<ObjectEventCore>, IObservableObject, IDisposableObject, ILinkable, IObjectBase, IObject, IEventProvider, IHasKeyObject, ILinkContainerEvent, IVerifiable, IHistoryObjectSerializable, IAttributeContainer, IReferencable, ITransformable, INavigatorItem, IContainer, ILinkContainer, IOwned, IHasID, IVisible, IMultiChangable, IEnabled, ITransparentable, IPartMarkerParent, IDrawFacet, IPostDeserialized

```

#### Inheritance

[object](https://learn.microsoft.com/dotnet/api/system.object) ← ObservableObject ← LinkableBase ← [ObjectBase](VM.Managed.ObjectBase.md) ← [Object&lt;ObjectEventCore&gt;](VM.Managed.Object-1.md) ← [Body](VM.Managed.CAD.Body.md)

#### Implements

IObservableObject, IDisposableObject, ILinkable, IObjectBase, IObject, IEventProvider, IHasKeyObject, [ILinkContainerEvent](VM.Managed.ILinkContainerEvent.md), [IVerifiable](VM.Managed.IVerifiable.md), IHistoryObjectSerializable, [IAttributeContainer](VM.Managed.IAttributeContainer.md), [IReferencable](VM.Managed.IReferencable.md), [ITransformable](VM.Managed.ITransformable.md), [INavigatorItem](VM.Managed.INavigatorItem.md), IContainer, ILinkContainer, IOwned, IHasID, [IVisible](VM.Managed.IVisible.md), [IMultiChangable](VM.Managed.IMultiChangable.md), IEnabled, [ITransparentable](VM.Managed.ITransparentable.md), [IPartMarkerParent](VM.Managed.IPartMarkerParent.md), [IDrawFacet](VM.Managed.IDrawFacet.md), IPostDeserialized

#### Inherited Members

[Object&lt;ObjectEventCore&gt;.GetKey()](VM.Managed.Object-1.md#VM_Managed_Object_1_GetKey), [Object&lt;ObjectEventCore&gt;.Initialize(Unit.ConvertFactor)](VM.Managed.Object-1.md#VM_Managed_Object_1_Initialize_VM_Unit_ConvertFactor_), [Object&lt;ObjectEventCore&gt;.SetIconColor(Canvas)](VM.Managed.Object-1.md#VM_Managed_Object_1_SetIconColor_VM_CAD_Kernel_Render_Canvas_), [Object&lt;ObjectEventCore&gt;.OnDeserialization(object)](VM.Managed.Object-1.md#VM_Managed_Object_1_OnDeserialization_System_Object_), [Object&lt;ObjectEventCore&gt;.CustomGetObjectData(SerializationInfo, StreamingContext)](VM.Managed.Object-1.md#VM_Managed_Object_1_CustomGetObjectData_System_Runtime_Serialization_SerializationInfo_System_Runtime_Serialization_StreamingContext_), [Object&lt;ObjectEventCore&gt;.RollbackEvent()](VM.Managed.Object-1.md#VM_Managed_Object_1_RollbackEvent), [Object&lt;ObjectEventCore&gt;.OnDeserializedCore(object)](VM.Managed.Object-1.md#VM_Managed_Object_1_OnDeserializedCore_System_Object_), [Object&lt;ObjectEventCore&gt;.Key](VM.Managed.Object-1.md#VM_Managed_Object_1_Key), [Object&lt;ObjectEventCore&gt;.UntypedEventCore](VM.Managed.Object-1.md#VM_Managed_Object_1_UntypedEventCore), [Object&lt;ObjectEventCore&gt;.EventCore](VM.Managed.Object-1.md#VM_Managed_Object_1_EventCore), [Object&lt;ObjectEventCore&gt;.Attributes](VM.Managed.Object-1.md#VM_Managed_Object_1_Attributes), [ObjectBase.ReplaceEventCore(ObjectEventCore)](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_ReplaceEventCore_VM_Managed_ObjectEventCore_), [ObjectBase.SetModifiedCore(ModifiedResult.ModifiedType)](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_SetModifiedCore_VM_Managed_ModifiedResult_ModifiedType_), [ObjectBase.AddPostDeserialize(StreamingContext)](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_AddPostDeserialize_System_Runtime_Serialization_StreamingContext_), [ObjectBase.LinkAddedToDocumentCore(IOwned, bool)](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_LinkAddedToDocumentCore_VM_Models_Pre_IOwned_System_Boolean_), [ObjectBase.SetModified(ModifiedResult.ModifiedType)](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_SetModified_VM_Managed_ModifiedResult_ModifiedType_), [ObjectBase.SetModified()](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_SetModified), [ObjectBase.SetModified(ModifiedResult.ModifiedType, IDocument)](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_SetModified_VM_Managed_ModifiedResult_ModifiedType_VM_Models_Pre_IDocument_), [ObjectBase.DestroyObject(object, LinkEventArgs)](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_DestroyObject_System_Object_VM_Managed_LinkEventArgs_), [ObjectBase.DestroyObject(DestroyEventArgs)](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_DestroyObject_VM_Managed_DestroyEventArgs_), [ObjectBase.DestroyObject()](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_DestroyObject), [ObjectBase.Initialize(Unit.ConvertFactor)](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_Initialize_VM_Unit_ConvertFactor_), [ObjectBase.FixUp(ObjectBase)](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_FixUp_VM_Managed_ObjectBase_), [ObjectBase.DoWorkAfterUpdateContents()](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_DoWorkAfterUpdateContents), [ObjectBase.SetOldNameWithNewEntity(ObjectBase, ObjectBase)](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_SetOldNameWithNewEntity_VM_Managed_ObjectBase_VM_Managed_ObjectBase_), [ObjectBase.SetIconColor(Canvas)](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_SetIconColor_VM_CAD_Kernel_Render_Canvas_), [ObjectBase.RemoveFromCreatedList()](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_RemoveFromCreatedList), [ObjectBase.PostAddToDocument()](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_PostAddToDocument), [ObjectBase.PostRemoveFromDocument(Document)](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_PostRemoveFromDocument_VM_Managed_Document_), [ObjectBase.GetArgumentList(LinkedList&lt;ObjectBase&gt;)](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_GetArgumentList_System_Collections_Generic_LinkedList_VM_Managed_ObjectBase__), [ObjectBase.ResetInvalidEntity()](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_ResetInvalidEntity), [ObjectBase.OnDeserialization(object)](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_OnDeserialization_System_Object_), [ObjectBase.IsSerializableEvent(Delegate)](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_IsSerializableEvent_System_Delegate_), [ObjectBase.CustomGetObjectData(SerializationInfo, StreamingContext)](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_CustomGetObjectData_System_Runtime_Serialization_SerializationInfo_System_Runtime_Serialization_StreamingContext_), [ObjectBase.CheckAndUpdateLink(HashSet&lt;ObjectBase&gt;)](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_CheckAndUpdateLink_System_Collections_Generic_HashSet_VM_Managed_ObjectBase__), [ObjectBase.Verify(VerifiedResult)](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_Verify_VM_Managed_VerifiedResult_), [ObjectBase.ConnectProxy()](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_ConnectProxy), [ObjectBase.RollbackEvent()](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_RollbackEvent), [ObjectBase.LinkRequestUpdating(object, LinkEventArgs)](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_LinkRequestUpdating_System_Object_VM_Managed_LinkEventArgs_), [ObjectBase.LinkRequestUpdate(object, LinkEventArgs)](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_LinkRequestUpdate_System_Object_VM_Managed_LinkEventArgs_), [ObjectBase.LinkRequestDestroying(object, LinkEventArgs)](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_LinkRequestDestroying_System_Object_VM_Managed_LinkEventArgs_), [ObjectBase.LinkRequestDestroy(object, LinkEventArgs)](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_LinkRequestDestroy_System_Object_VM_Managed_LinkEventArgs_), [ObjectBase.LinkAddedToDocument(object, AddToDocEventArgs)](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_LinkAddedToDocument_System_Object_VM_Managed_AddToDocEventArgs_), [ObjectBase.LinkRemovedFromDocument(object, RemoveFromDocEventArgs)](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_LinkRemovedFromDocument_System_Object_VM_Managed_RemoveFromDocEventArgs_), [ObjectBase.DisposeManagedResources()](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_DisposeManagedResources), [ObjectBase.GetDestroyEventExtraData()](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_GetDestroyEventExtraData), [ObjectBase.OnLinkReserved(ILink, object, EventArgs)](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_OnLinkReserved_VM_Managed_ILink_System_Object_System_EventArgs_), [ObjectBase.CreateEntityWhenUpdateContents(Action)](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_CreateEntityWhenUpdateContents_System_Action_), [ObjectBase.GetObjectByKey(UIntPtr)](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_GetObjectByKey_System_UIntPtr_), [ObjectBase.FindObjectOnXmlDeserialize(string)](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_FindObjectOnXmlDeserialize_System_String_), [ObjectBase.UpdateContents(XmlReader, ObjectBase, string)](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_UpdateContents_System_Xml_XmlReader_VM_Managed_ObjectBase_System_String_), [ObjectBase.UpdateContents(XmlReader, ObjectBase)](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_UpdateContents_System_Xml_XmlReader_VM_Managed_ObjectBase_), [ObjectBase.UpdateContents(string, string)](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_UpdateContents_System_String_System_String_), [ObjectBase.UpdateContents(string)](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_UpdateContents_System_String_), [ObjectBase.SetFlagWhenXMLFile(string, bool)](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_SetFlagWhenXMLFile_System_String_System_Boolean_), [ObjectBase.IsEqualArray&lt;T&gt;(T\[\], T\[\])](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_IsEqualArray__1___0_____0___), [ObjectBase.IsEqualList(List&lt;double&gt;, List&lt;double&gt;)](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_IsEqualList_System_Collections_Generic_List_System_Double__System_Collections_Generic_List_System_Double__), [ObjectBase.SetContainer(IOwned, bool)](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_SetContainer_VM_Models_Pre_IOwned_System_Boolean_), [ObjectBase.GetTargetListForUpdate()](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_GetTargetListForUpdate), [ObjectBase.SkipUpdateObjectImpl()](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_SkipUpdateObjectImpl), [ObjectBase.raise\_OnUpdating(object, LinkEventArgs)](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_raise_OnUpdating_System_Object_VM_Managed_LinkEventArgs_), [ObjectBase.raise\_OnUpdate(object, LinkEventArgs)](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_raise_OnUpdate_System_Object_VM_Managed_LinkEventArgs_), [ObjectBase.raise\_OnDestroying(object, LinkEventArgs)](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_raise_OnDestroying_System_Object_VM_Managed_LinkEventArgs_), [ObjectBase.raise\_OnDestroy(object, LinkEventArgs)](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_raise_OnDestroy_System_Object_VM_Managed_LinkEventArgs_), [ObjectBase.raise\_Destroying(object, Identifier)](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_raise_Destroying_System_Object_VM_Identifier_), [ObjectBase.raise\_OnAdded(object, AddToDocEventArgs)](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_raise_OnAdded_System_Object_VM_Managed_AddToDocEventArgs_), [ObjectBase.raise\_OnRemoved(object, RemoveFromDocEventArgs)](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_raise_OnRemoved_System_Object_VM_Managed_RemoveFromDocEventArgs_), [ObjectBase.raise\_OnContentsUpdated(object, EventArgs)](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_raise_OnContentsUpdated_System_Object_System_EventArgs_), [ObjectBase.Dispose(bool)](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_Dispose_System_Boolean_), [ObjectBase.SkipModified](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_SkipModified), [ObjectBase.ClearChildInfoBeforeDeserialize](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_ClearChildInfoBeforeDeserialize), [ObjectBase.KeyImpl](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_KeyImpl), [ObjectBase.ID](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_ID), [ObjectBase.TopologyEntityTypeName](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_TopologyEntityTypeName), [ObjectBase.ObjectStateForCircularError](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_ObjectStateForCircularError), [ObjectBase.ObjectState](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_ObjectState), [ObjectBase.IsChildExternable](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_IsChildExternable), [ObjectBase.IsExternable](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_IsExternable), [ObjectBase.Container](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_Container), [ObjectBase.Owner](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_Owner), [ObjectBase.Document](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_Document), [ObjectBase.UntypedEventCore](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_UntypedEventCore), [ObjectBase.KernelKey](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_KernelKey), [ObjectBase.Key](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_Key), [ObjectBase.OnContentsUpdated](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_OnContentsUpdated), [ObjectBase.OnRemoved](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_OnRemoved), [ObjectBase.OnAdded](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_OnAdded), [ObjectBase.Destroying](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_Destroying), [ObjectBase.OnDestroy](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_OnDestroy), [ObjectBase.OnDestroying](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_OnDestroying), [ObjectBase.OnUpdate](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_OnUpdate), [ObjectBase.OnUpdating](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_OnUpdating), LinkableBase.OnDeserialization(object), ObservableObject.Dispose(), ObservableObject.RaisePropertyChanged(string), ObservableObject.RaisePropertyChanged(string, object, object), ObservableObject.Dispose(bool), ObservableObject.DisposeManagedResources(), ObservableObject.DisposeUnmanagedResources(), ObservableObject.IsDisposed, ObservableObject.TryDisposing, ObservableObject.Disposed, ObservableObject.Disposing, ObservableObject.PropertyChanged

#### Extension Methods

[LinkPropertyItemCache.GetLinkProperties(object, LinkPropertyType)](VM.Models.Pre.Cache.LinkPropertyItemCache.md#VM_Models_Pre_Cache_LinkPropertyItemCache_GetLinkProperties_System_Object_VM_Models_Pre_LinkPropertyType_), [LinkPropertyItemCache.GetLinkPropertiesAndValues(object, LinkPropertyType)](VM.Models.Pre.Cache.LinkPropertyItemCache.md#VM_Models_Pre_Cache_LinkPropertyItemCache_GetLinkPropertiesAndValues_System_Object_VM_Models_Pre_LinkPropertyType_), [LinkPropertyItemCache.GetLinkedObjects&lt;T&gt;(object, LinkPropertyType)](VM.Models.Pre.Cache.LinkPropertyItemCache.md#VM_Models_Pre_Cache_LinkPropertyItemCache_GetLinkedObjects__1_System_Object_VM_Models_Pre_LinkPropertyType_)

## Constructors

### Body(Builder)

Initializes a new instance of the  class.

```csharp
public Body(Builder builder)

```

#### Parameters

`builder` [Builder](VM.Managed.CAD.Builder.md)

The body's builder.

### Body()

Initializes a new instance of the  class.

```csharp
public Body()

```

## Fields

### g\_dAccuracyForCADImportMassCalculate

This value is accuracy for \[cad import mass calculate\].

```csharp
public static double g_dAccuracyForCADImportMassCalculate

```

#### Field Value

[double](https://learn.microsoft.com/dotnet/api/system.double)

### g\_dAccuracyForMassCalculate

This value is accuracy for \[mass calculate\].

```csharp
public static double g_dAccuracyForMassCalculate

```

#### Field Value

[double](https://learn.microsoft.com/dotnet/api/system.double)

## Properties

### AccuracyForMassCalc

Gets or sets the accuracy for \[mass calculate\].

```csharp
public double AccuracyForMassCalc { get; set; }

```

#### Property Value

[double](https://learn.microsoft.com/dotnet/api/system.double)

### Builder

Gets or sets the builder.

```csharp
public Builder Builder { get; set; }

```

#### Property Value

[Builder](VM.Managed.CAD.Builder.md)

### Edges

Gets or sets the edges.

```csharp
public Body.EdgeContainer Edges { get; set; }

```

#### Property Value

[Body](VM.Managed.CAD.Body.md).[EdgeContainer](VM.Managed.CAD.Body.EdgeContainer.md)

### Faces

Gets or sets the faces.

```csharp
public Body.FaceContainer Faces { get; set; }

```

#### Property Value

[Body](VM.Managed.CAD.Body.md).[FaceContainer](VM.Managed.CAD.Body.FaceContainer.md)

### FacetAspectRatio

Gets or sets the facet aspect ratio.

```csharp
public ExpressionValueVariable FacetAspectRatio { get; set; }

```

#### Property Value

ExpressionValueVariable

### IndexCont

Gets the index container.

```csharp
public Body.IndexContainer IndexCont { get; set; }

```

#### Property Value

[Body](VM.Managed.CAD.Body.md).[IndexContainer](VM.Managed.CAD.Body.IndexContainer.md)

### Invalid

```csharp
public bool Invalid { get; set; }

```

#### Property Value

[bool](https://learn.microsoft.com/dotnet/api/system.boolean)

### IsEnabled

Gets or sets IsEnabled state.

```csharp
bool IsEnabled { get; set; }

```

#### Property Value

[bool](https://learn.microsoft.com/dotnet/api/system.boolean)

### IsVisible

Gets or sets the layer.

```csharp
bool IsVisible { get; set; }

```

#### Property Value

[bool](https://learn.microsoft.com/dotnet/api/system.boolean)

### Layer

Gets or sets the layer.

```csharp
Layer Layer { get; set; }

```

#### Property Value

[Layer](VM.Managed.Layer.md)

### Material

Gets or sets the material.

```csharp
public IMaterial Material { get; set; }

```

#### Property Value

[IMaterial](VM.Managed.Material.IMaterial.md)

### MaximumFacetSize

Gets or sets the maximum facet size.

```csharp
public ExpressionValueVariable MaximumFacetSize { get; set; }

```

#### Property Value

ExpressionValueVariable

### MaximumGridLine

Gets or sets the maximum grid line.

```csharp
public ExpressionValueVariable MaximumGridLine { get; set; }

```

#### Property Value

ExpressionValueVariable

### NameAttribute

Gets or sets the attribute of name.

```csharp
public string NameAttribute { get; set; }

```

#### Property Value

[string](https://learn.microsoft.com/dotnet/api/system.string)

### SkipCalcMassProp

Gets or sets a value indicating whether skip \[Calculate mass property\].

```csharp
public bool SkipCalcMassProp { get; set; }

```

#### Property Value

[bool](https://learn.microsoft.com/dotnet/api/system.boolean)

### SkipRebuildGeometry

Gets or sets a value indicating whether skip \[Rebuild Geometry\].

```csharp
public bool SkipRebuildGeometry { get; set; }

```

#### Property Value

[bool](https://learn.microsoft.com/dotnet/api/system.boolean)

### SurfaceAngularTolerance

Gets or sets the surface angular tolerance.

```csharp
public ExpressionValueVariable SurfaceAngularTolerance { get; set; }

```

#### Property Value

ExpressionValueVariable

### TransparentObject

Gets the transparent object.

```csharp
ObjectBase TransparentObject { get; }

```

#### Property Value

[ObjectBase](VM.Managed.ObjectBase.md)

### TransparentObjects

Gets the transparent objects.

```csharp
ObjectBase[] TransparentObjects { get; }

```

#### Property Value

[ObjectBase](VM.Managed.ObjectBase.md)\[\]

### UseApprox\_eval

Gets or sets a value indicating whether use \[Approx\_eval\].

```csharp
public bool UseApprox_eval { get; set; }

```

#### Property Value

[bool](https://learn.microsoft.com/dotnet/api/system.boolean)

### UseFacetAspectRatio

Gets or sets a value indicating whether use \[facet aspect ratio\].

```csharp
public bool UseFacetAspectRatio { get; set; }

```

#### Property Value

[bool](https://learn.microsoft.com/dotnet/api/system.boolean)

### UseGRID\_TO\_EDGES

Gets or sets a value indicating whether use \[GRID\_TO\_EDGES\].

```csharp
public bool UseGRID_TO_EDGES { get; set; }

```

#### Property Value

[bool](https://learn.microsoft.com/dotnet/api/system.boolean)

### UseMaximumFacetSize

Gets or sets a value indicating whether use \[maximum facet size\].

```csharp
public bool UseMaximumFacetSize { get; set; }

```

#### Property Value

[bool](https://learn.microsoft.com/dotnet/api/system.boolean)

### UseMaximumGridLine

Gets or sets a value indicating whether use \[maximum grid line\].

```csharp
public bool UseMaximumGridLine { get; set; }

```

#### Property Value

[bool](https://learn.microsoft.com/dotnet/api/system.boolean)

### UseRepairPatch

Gets or sets a value indicating whether use \[RepairPatch\].

```csharp
public bool UseRepairPatch { get; set; }

```

#### Property Value

[bool](https://learn.microsoft.com/dotnet/api/system.boolean)

### UseSurfaceAngularTolerance

Gets or sets a value indicating whether use \[surface angular tolerance\].

```csharp
public bool UseSurfaceAngularTolerance { get; set; }

```

#### Property Value

[bool](https://learn.microsoft.com/dotnet/api/system.boolean)

### Vertices

Gets or sets the vertices.

```csharp
public Body.VertexContainer Vertices { get; set; }

```

#### Property Value

[Body](VM.Managed.CAD.Body.md).[VertexContainer](VM.Managed.CAD.Body.VertexContainer.md)

### \_Material

Gets or sets the material.

```csharp
public Linker<IMaterial> _Material { get; set; }

```

#### Property Value

[Linker](VM.Managed.Linker-1.md)&lt;[IMaterial](VM.Managed.Material.IMaterial.md)&gt;

## Methods

### AddBodyCreatedList()

Add body to kernal's create list.

```csharp
[Obsolete]
public void AddBodyCreatedList()

```

### AddNameAttribute(string)

Add name attribute.

```csharp
public void AddNameAttribute(string strNameAttribute)

```

#### Parameters

`strNameAttribute` [string](https://learn.microsoft.com/dotnet/api/system.string)

The name attribute

### CalculateMassProperty(ref double, ref double, ref TMatrix, ref double\[\], ref bool, double, bool)

Calculate mass property.

```csharp
public void CalculateMassProperty(ref double dMass, ref double dVolume, ref TMatrix matTransform, ref double[] arInertia, ref bool bRegularized, double dDensity, bool bGlobal)

```

#### Parameters

`dMass` [double](https://learn.microsoft.com/dotnet/api/system.double)

The mass.

`dVolume` [double](https://learn.microsoft.com/dotnet/api/system.double)

The volume.

`matTransform` [TMatrix](VM.Managed.TMatrix.md)

The transformation.

`arInertia` [double](https://learn.microsoft.com/dotnet/api/system.double)\[\]

The inertia.

`bRegularized` [bool](https://learn.microsoft.com/dotnet/api/system.boolean)

whether calculate from regularized body.

`dDensity` [double](https://learn.microsoft.com/dotnet/api/system.double)

The density.

`bGlobal` [bool](https://learn.microsoft.com/dotnet/api/system.boolean)

whether inertia is global

### CalculateMassProperty(ref double, ref double, ref TMatrix, ref double\[\], ref bool, bool, double)

Calculate mass property.

```csharp
[Obsolete]
public void CalculateMassProperty(ref double dMass, ref double dVolume, ref TMatrix matTransform, ref double[] arInertia, ref bool bRegularized, bool bUpdate, double dDensity)

```

#### Parameters

`dMass` [double](https://learn.microsoft.com/dotnet/api/system.double)

The mass.

`dVolume` [double](https://learn.microsoft.com/dotnet/api/system.double)

The volume.

`matTransform` [TMatrix](VM.Managed.TMatrix.md)

The transformation.

`arInertia` [double](https://learn.microsoft.com/dotnet/api/system.double)\[\]

The inertia.

`bRegularized` [bool](https://learn.microsoft.com/dotnet/api/system.boolean)

whether calculate from regularized body.

`bUpdate` [bool](https://learn.microsoft.com/dotnet/api/system.boolean)

update flag.

`dDensity` [double](https://learn.microsoft.com/dotnet/api/system.double)

The density.

### CalculateMassProperty(ref double, ref double, ref TMatrix, ref double\[\], ref bool, double)

Calculate mass property.

```csharp
public void CalculateMassProperty(ref double dMass, ref double dVolume, ref TMatrix matTransform, ref double[] arInertia, ref bool bRegularized, double dDensity)

```

#### Parameters

`dMass` [double](https://learn.microsoft.com/dotnet/api/system.double)

The mass.

`dVolume` [double](https://learn.microsoft.com/dotnet/api/system.double)

The volume.

`matTransform` [TMatrix](VM.Managed.TMatrix.md)

The transformation.

`arInertia` [double](https://learn.microsoft.com/dotnet/api/system.double)\[\]

The inertia.

`bRegularized` [bool](https://learn.microsoft.com/dotnet/api/system.boolean)

whether calculate from regularized body.

`dDensity` [double](https://learn.microsoft.com/dotnet/api/system.double)

The density.

### CalculateMassProperty(ref double, ref double, ref TMatrix, ref double\[\], ref bool, bool)

Calculate mass property.

```csharp
[Obsolete]
public void CalculateMassProperty(ref double dMass, ref double dVolume, ref TMatrix matTransform, ref double[] arInertia, ref bool bRegularized, bool bUpdate)

```

#### Parameters

`dMass` [double](https://learn.microsoft.com/dotnet/api/system.double)

The mass.

`dVolume` [double](https://learn.microsoft.com/dotnet/api/system.double)

The volume.

`matTransform` [TMatrix](VM.Managed.TMatrix.md)

The transformation.

`arInertia` [double](https://learn.microsoft.com/dotnet/api/system.double)\[\]

The inertia.

`bRegularized` [bool](https://learn.microsoft.com/dotnet/api/system.boolean)

whether calculate from regularized body.

`bUpdate` [bool](https://learn.microsoft.com/dotnet/api/system.boolean)

update flag.

### CalculateMassProperty(ref double, ref double, ref TMatrix, ref double\[\], ref bool)

Calculate mass property.

```csharp
public void CalculateMassProperty(ref double dMass, ref double dVolume, ref TMatrix matTransform, ref double[] arInertia, ref bool bRegularized)

```

#### Parameters

`dMass` [double](https://learn.microsoft.com/dotnet/api/system.double)

The mass.

`dVolume` [double](https://learn.microsoft.com/dotnet/api/system.double)

The volume.

`matTransform` [TMatrix](VM.Managed.TMatrix.md)

The transformation.

`arInertia` [double](https://learn.microsoft.com/dotnet/api/system.double)\[\]

The inertia.

`bRegularized` [bool](https://learn.microsoft.com/dotnet/api/system.boolean)

whether calculate from regularized body.

### CalculateMassProperty(ref double, ref double, ref TMatrix, ref double\[\], ref bool, double, double, bool)

Calculate mass property.

```csharp
public void CalculateMassProperty(ref double dMass, ref double dVolume, ref TMatrix matTransform, ref double[] arInertia, ref bool bRegularized, double dDensity, double dAccuracy, bool bGlobal)

```

#### Parameters

`dMass` [double](https://learn.microsoft.com/dotnet/api/system.double)

The mass.

`dVolume` [double](https://learn.microsoft.com/dotnet/api/system.double)

The volume.

`matTransform` [TMatrix](VM.Managed.TMatrix.md)

The transformation.

`arInertia` [double](https://learn.microsoft.com/dotnet/api/system.double)\[\]

The inertia.

`bRegularized` [bool](https://learn.microsoft.com/dotnet/api/system.boolean)

whether calculate from regularized body.

`dDensity` [double](https://learn.microsoft.com/dotnet/api/system.double)

`dAccuracy` [double](https://learn.microsoft.com/dotnet/api/system.double)

The desire accuracy for mass calculate.

`bGlobal` [bool](https://learn.microsoft.com/dotnet/api/system.boolean)

### CalculateMassPropertyForAssembly(ref double, ref double, ref TMatrix, ref double\[\], ref bool, double)

Calculate mass property.

```csharp
public void CalculateMassPropertyForAssembly(ref double dMass, ref double dVolume, ref TMatrix matTransform, ref double[] arInertia, ref bool bRegularized, double dDensity)

```

#### Parameters

`dMass` [double](https://learn.microsoft.com/dotnet/api/system.double)

The mass.

`dVolume` [double](https://learn.microsoft.com/dotnet/api/system.double)

The volume.

`matTransform` [TMatrix](VM.Managed.TMatrix.md)

The transformation.

`arInertia` [double](https://learn.microsoft.com/dotnet/api/system.double)\[\]

The inertia.

`bRegularized` [bool](https://learn.microsoft.com/dotnet/api/system.boolean)

whether calculate from regularized body.

`dDensity` [double](https://learn.microsoft.com/dotnet/api/system.double)

The density.

### CheckValidationAboutBuild(string)

```csharp
public virtual bool CheckValidationAboutBuild(string strXml)

```

#### Parameters

`strXml` [string](https://learn.microsoft.com/dotnet/api/system.string)

#### Returns

[bool](https://learn.microsoft.com/dotnet/api/system.boolean)

### ClearFacetDictionary()

```csharp
public void ClearFacetDictionary()

```

### ConnectProxy()

```csharp
protected override void ConnectProxy()

```

### ConvertUInt32Managed2Native(ref uint\[\], vector&lt;unsigned int,std::allocator&lt;unsigned int&gt; &gt;\*)

```csharp
public void ConvertUInt32Managed2Native(ref uint[] inputAryUInt, vector<unsigned int,std::allocator<unsigned int> >* outputVecUInt)

```

#### Parameters

`inputAryUInt` [uint](https://learn.microsoft.com/dotnet/api/system.uint32)\[\]

`outputVecUInt` \[vector&lt;unsigned int,std::allocator&lt;unsigned int&gt; &gt;\](std.vector&lt;unsigned int,std.md)\*

### ConvertUInt32Native2Managed(vector&lt;unsigned int,std::allocator&lt;unsigned int&gt; &gt;\*, ref uint\[\])

```csharp
public void ConvertUInt32Native2Managed(vector<unsigned int,std::allocator<unsigned int> >* inputVecUInt, ref uint[] outputAryUInt)

```

#### Parameters

`inputVecUInt` \[vector&lt;unsigned int,std::allocator&lt;unsigned int&gt; &gt;\](std.vector&lt;unsigned int,std.md)\*

`outputAryUInt` [uint](https://learn.microsoft.com/dotnet/api/system.uint32)\[\]

### ConvertVectorManaged2Native(ref VectorBase\[\], vector&lt;\_VM\_VECTOR,std::allocator&lt;\_VM\_VECTOR&gt; &gt;\*)

```csharp
public void ConvertVectorManaged2Native(ref VectorBase[] inputAryVec, vector<_VM_VECTOR,std::allocator<_VM_VECTOR> >* outputVecVec)

```

#### Parameters

`inputAryVec` [VectorBase](VM.Managed.VectorBase.md)\[\]

`outputVecVec` [vector&lt;\_VM\_VECTOR,std::allocator&lt;\_VM\_VECTOR&gt; &gt;](std.vector%3C_VM_VECTOR,std.md)\*

### ConvertVectorNative2Managed(vector&lt;\_VM\_VECTOR,std::allocator&lt;\_VM\_VECTOR&gt; &gt;\*, ref VectorBase\[\])

```csharp
public void ConvertVectorNative2Managed(vector<_VM_VECTOR,std::allocator<_VM_VECTOR> >* inputVecVec, ref VectorBase[] outputAryVec)

```

#### Parameters

`inputVecVec` [vector&lt;\_VM\_VECTOR,std::allocator&lt;\_VM\_VECTOR&gt; &gt;](std.vector%3C_VM_VECTOR,std.md)\*

`outputAryVec` [VectorBase](VM.Managed.VectorBase.md)\[\]

### CreateNastranFile(string, VectorBase\[\], uint\[\], uint\[\])

```csharp
public static void CreateNastranFile(string strNastranPath, VectorBase[] aryPos, uint[] aryConTria, uint[] aryConTetra)

```

#### Parameters

`strNastranPath` [string](https://learn.microsoft.com/dotnet/api/system.string)

`aryPos` [VectorBase](VM.Managed.VectorBase.md)\[\]

`aryConTria` [uint](https://learn.microsoft.com/dotnet/api/system.uint32)\[\]

`aryConTetra` [uint](https://learn.microsoft.com/dotnet/api/system.uint32)\[\]

### DoWorkAfterUpdateContents()

After update contents, do work.

```csharp
public override void DoWorkAfterUpdateContents()

```

### DrawEdge(int, double, TMatrix, Canvas)

gets the points that are placed with some interval on edge.

```csharp
public void DrawEdge(int nEdgeIndex, double dDistance, TMatrix matBase, Canvas canvas)

```

#### Parameters

`nEdgeIndex` [int](https://learn.microsoft.com/dotnet/api/system.int32)

the edge index

`dDistance` [double](https://learn.microsoft.com/dotnet/api/system.double)

the point intaval

`matBase` [TMatrix](VM.Managed.TMatrix.md)

the base transform

`canvas` Canvas

The canvas.

### DrawFacet(Canvas)

Draw facet.

The canvas. ```csharp
void DrawFacet(Canvas canvas)

```

#### Parameters

`canvas` Canvas

### DrawFacetByDefaultParameters(Canvas)

Draws facet.

```csharp
void DrawFacetByDefaultParameters(Canvas canvas)

```

#### Parameters

`canvas` Canvas

The canvas has icon information.

### DrawFacetInGlobal(Canvas)

Draw facet in global.

```csharp
void DrawFacetInGlobal(Canvas canvas)

```

#### Parameters

`canvas` Canvas

The canvas.

### DrawFacetsOfFaces(IDrawFacet\[\], string, Canvas)

```csharp
public static void DrawFacetsOfFaces(IDrawFacet[] arFaces, string strFacetOptionsXml, Canvas canvas)

```

#### Parameters

`arFaces` [IDrawFacet](VM.Managed.IDrawFacet.md)\[\]

`strFacetOptionsXml` [string](https://learn.microsoft.com/dotnet/api/system.string)

`canvas` Canvas

### ExistFace(ValueType)

```csharp
public bool ExistFace(ValueType nID)

```

#### Parameters

`nID` [ValueType](https://learn.microsoft.com/dotnet/api/system.valuetype)

#### Returns

[bool](https://learn.microsoft.com/dotnet/api/system.boolean)

### ExportPatch(string, ConvertFactor, string)

```csharp
public void ExportPatch(string strMesherPath, Unit.ConvertFactor factor, string strPath)

```

#### Parameters

`strMesherPath` [string](https://learn.microsoft.com/dotnet/api/system.string)

`factor` Unit.ConvertFactor

`strPath` [string](https://learn.microsoft.com/dotnet/api/system.string)

### ExportSolid(string, ConvertFactor, string)

```csharp
public void ExportSolid(string strMesherPath, Unit.ConvertFactor factor, string strPath)

```

#### Parameters

`strMesherPath` [string](https://learn.microsoft.com/dotnet/api/system.string)

`factor` Unit.ConvertFactor

`strPath` [string](https://learn.microsoft.com/dotnet/api/system.string)

### Find(string)

Find DAFUL object from the container by full name.

```csharp
public virtual IObjectBase Find(string strName)

```

#### Parameters

`strName` [string](https://learn.microsoft.com/dotnet/api/system.string)

The DAFUL object full name.

#### Returns

IObjectBase

The DAFUL object.

### FindLocal(string)

Find DAFUL object from the container by name.

```csharp
public virtual IObjectBase FindLocal(string strName)

```

#### Parameters

`strName` [string](https://learn.microsoft.com/dotnet/api/system.string)

The DAFUL object name.

#### Returns

IObjectBase

The DAFUL object.

### FixUp(ObjectBase)

Before destroy the old object, perform a work.

```csharp
public override bool FixUp(ObjectBase ob)

```

#### Parameters

`ob` [ObjectBase](VM.Managed.ObjectBase.md)

The old object.

#### Returns

[bool](https://learn.microsoft.com/dotnet/api/system.boolean)

`true` if success; otherwise, `false`.

### GenerateMeshInfo(string, AttributeFacetRefinementBase, ConvertFactor, MeshFreeMeshType, ref MeshFreeMeshType, ref VectorBase\[\], ref uint\[\], ref VectorBase\[\], ref uint\[\], bool)

```csharp
public void GenerateMeshInfo(string strMesherPath, AttributeFacetRefinementBase attrGeomOutputProp, Unit.ConvertFactor factor, MeshFreeMeshType reqMeshType, ref MeshFreeMeshType resMeshType, ref VectorBase[] aryPosTria, ref uint[] aryConTria, ref VectorBase[] aryPosTetra, ref uint[] aryConTetra, bool bUseDSDL)

```

#### Parameters

`strMesherPath` [string](https://learn.microsoft.com/dotnet/api/system.string)

`attrGeomOutputProp` [AttributeFacetRefinementBase](VM.Managed.AttributeFacetRefinementBase.md)

`factor` Unit.ConvertFactor

`reqMeshType` [MeshFreeMeshType](VM.Managed.MeshFreeMeshType.md)

`resMeshType` [MeshFreeMeshType](VM.Managed.MeshFreeMeshType.md)

`aryPosTria` [VectorBase](VM.Managed.VectorBase.md)\[\]

`aryConTria` [uint](https://learn.microsoft.com/dotnet/api/system.uint32)\[\]

`aryPosTetra` [VectorBase](VM.Managed.VectorBase.md)\[\]

`aryConTetra` [uint](https://learn.microsoft.com/dotnet/api/system.uint32)\[\]

`bUseDSDL` [bool](https://learn.microsoft.com/dotnet/api/system.boolean)

### GenerateMeshInfo(string, AttributeFacetRefinementBase, ConvertFactor, MeshFreeMeshType, ref MeshFreeMeshType, ref VectorBase\[\], ref uint\[\], ref VectorBase\[\], ref uint\[\])

```csharp
public void GenerateMeshInfo(string strMesherPath, AttributeFacetRefinementBase attrGeomOutputProp, Unit.ConvertFactor factor, MeshFreeMeshType reqMeshType, ref MeshFreeMeshType resMeshType, ref VectorBase[] aryPosTria, ref uint[] aryConTria, ref VectorBase[] aryPosTetra, ref uint[] aryConTetra)

```

#### Parameters

`strMesherPath` [string](https://learn.microsoft.com/dotnet/api/system.string)

`attrGeomOutputProp` [AttributeFacetRefinementBase](VM.Managed.AttributeFacetRefinementBase.md)

`factor` Unit.ConvertFactor

`reqMeshType` [MeshFreeMeshType](VM.Managed.MeshFreeMeshType.md)

`resMeshType` [MeshFreeMeshType](VM.Managed.MeshFreeMeshType.md)

`aryPosTria` [VectorBase](VM.Managed.VectorBase.md)\[\]

`aryConTria` [uint](https://learn.microsoft.com/dotnet/api/system.uint32)\[\]

`aryPosTetra` [VectorBase](VM.Managed.VectorBase.md)\[\]

`aryConTetra` [uint](https://learn.microsoft.com/dotnet/api/system.uint32)\[\]

### GetAllFacePointAndNormal(ref List&lt;VectorBase&gt;, ref List&lt;VectorBase&gt;)

```csharp
public bool GetAllFacePointAndNormal(ref List<VectorBase> lstPositions, ref List<VectorBase> lstDirections)

```

#### Parameters

`lstPositions` [List](https://learn.microsoft.com/dotnet/api/system.collections.generic.list-1)&lt;[VectorBase](VM.Managed.VectorBase.md)&gt;

`lstDirections` [List](https://learn.microsoft.com/dotnet/api/system.collections.generic.list-1)&lt;[VectorBase](VM.Managed.VectorBase.md)&gt;

#### Returns

[bool](https://learn.microsoft.com/dotnet/api/system.boolean)

### GetAnalysisLevelInfo(double, ref List&lt;double&gt;, ref List&lt;uint&gt;)

```csharp
public bool GetAnalysisLevelInfo(double dVolume, ref List<double> lstNodeDistance, ref List<uint> lstNodeCount)

```

#### Parameters

`dVolume` [double](https://learn.microsoft.com/dotnet/api/system.double)

`lstNodeDistance` [List](https://learn.microsoft.com/dotnet/api/system.collections.generic.list-1)&lt;[double](https://learn.microsoft.com/dotnet/api/system.double)&gt;

`lstNodeCount` [List](https://learn.microsoft.com/dotnet/api/system.collections.generic.list-1)&lt;[uint](https://learn.microsoft.com/dotnet/api/system.uint32)&gt;

#### Returns

[bool](https://learn.microsoft.com/dotnet/api/system.boolean)

### GetAnalysisLevelInfo(ref List&lt;double&gt;, ref List&lt;uint&gt;)

```csharp
public bool GetAnalysisLevelInfo(ref List<double> lstNodeDistance, ref List<uint> lstNodeCount)

```

#### Parameters

`lstNodeDistance` [List](https://learn.microsoft.com/dotnet/api/system.collections.generic.list-1)&lt;[double](https://learn.microsoft.com/dotnet/api/system.double)&gt;

`lstNodeCount` [List](https://learn.microsoft.com/dotnet/api/system.collections.generic.list-1)&lt;[uint](https://learn.microsoft.com/dotnet/api/system.uint32)&gt;

#### Returns

[bool](https://learn.microsoft.com/dotnet/api/system.boolean)

### GetAttrFacetRefineBase()

Get Attribute value on Facet Refinement

```csharp
public AttributeFacetRefinementBase GetAttrFacetRefineBase()

```

#### Returns

[AttributeFacetRefinementBase](VM.Managed.AttributeFacetRefinementBase.md)

Facet Refinement Attribute value

### GetBodyGeomInfo(vector&lt;\_VM\_VECTOR,std::allocator&lt;\_VM\_VECTOR&gt; &gt;\*, vector&lt;unsigned int,std::allocator&lt;unsigned int&gt; &gt;\*, AttributeFacetRefinementBase, double, bool)

```csharp
public bool GetBodyGeomInfo(vector<_VM_VECTOR,std::allocator<_VM_VECTOR> >* vectPosTria, vector<unsigned int,std::allocator<unsigned int> >* vecConTria, AttributeFacetRefinementBase attrGeomOutputProp, double dLengthFactor, bool bUseDSDL)

```

#### Parameters

`vectPosTria` [vector&lt;\_VM\_VECTOR,std::allocator&lt;\_VM\_VECTOR&gt; &gt;](std.vector%3C_VM_VECTOR,std.md)\*

`vecConTria` \[vector&lt;unsigned int,std::allocator&lt;unsigned int&gt; &gt;\](std.vector&lt;unsigned int,std.md)\*

`attrGeomOutputProp` [AttributeFacetRefinementBase](VM.Managed.AttributeFacetRefinementBase.md)

`dLengthFactor` [double](https://learn.microsoft.com/dotnet/api/system.double)

`bUseDSDL` [bool](https://learn.microsoft.com/dotnet/api/system.boolean)

#### Returns

[bool](https://learn.microsoft.com/dotnet/api/system.boolean)

### GetBodyGeomInfo(ref VectorBase\[\], ref uint\[\], AttributeFacetRefinementBase, double, bool)

```csharp
public bool GetBodyGeomInfo(ref VectorBase[] aryPosTria, ref uint[] aryConTria, AttributeFacetRefinementBase attrGeomOutputProp, double dLengthFactor, bool bUseDSDL)

```

#### Parameters

`aryPosTria` [VectorBase](VM.Managed.VectorBase.md)\[\]

`aryConTria` [uint](https://learn.microsoft.com/dotnet/api/system.uint32)\[\]

`attrGeomOutputProp` [AttributeFacetRefinementBase](VM.Managed.AttributeFacetRefinementBase.md)

`dLengthFactor` [double](https://learn.microsoft.com/dotnet/api/system.double)

`bUseDSDL` [bool](https://learn.microsoft.com/dotnet/api/system.boolean)

#### Returns

[bool](https://learn.microsoft.com/dotnet/api/system.boolean)

### GetBodyGeomInfo(ref VectorBase\[\], ref uint\[\], AttributeFacetRefinementBase, double)

```csharp
public bool GetBodyGeomInfo(ref VectorBase[] aryPosTria, ref uint[] aryConTria, AttributeFacetRefinementBase attrGeomOutputProp, double dLengthFactor)

```

#### Parameters

`aryPosTria` [VectorBase](VM.Managed.VectorBase.md)\[\]

`aryConTria` [uint](https://learn.microsoft.com/dotnet/api/system.uint32)\[\]

`attrGeomOutputProp` [AttributeFacetRefinementBase](VM.Managed.AttributeFacetRefinementBase.md)

`dLengthFactor` [double](https://learn.microsoft.com/dotnet/api/system.double)

#### Returns

[bool](https://learn.microsoft.com/dotnet/api/system.boolean)

### GetBodyGeomInfoForDFG(AttributeFacetRefinementBase, ref VectorBase\[\], ref uint\[\])

```csharp
public bool GetBodyGeomInfoForDFG(AttributeFacetRefinementBase attrGeomOutputProp, ref VectorBase[] aryPosTria, ref uint[] aryConTria)

```

#### Parameters

`attrGeomOutputProp` [AttributeFacetRefinementBase](VM.Managed.AttributeFacetRefinementBase.md)

`aryPosTria` [VectorBase](VM.Managed.VectorBase.md)\[\]

`aryConTria` [uint](https://learn.microsoft.com/dotnet/api/system.uint32)\[\]

#### Returns

[bool](https://learn.microsoft.com/dotnet/api/system.boolean)

### GetBoundingBox(TMatrix, ref VectorBase, ref VectorBase, BoxingMode)

```csharp
public bool GetBoundingBox(TMatrix matT, ref VectorBase vecMinPt, ref VectorBase vecMaxPt, BoxingMode boxingMode)

```

#### Parameters

`matT` [TMatrix](VM.Managed.TMatrix.md)

`vecMinPt` [VectorBase](VM.Managed.VectorBase.md)

`vecMaxPt` [VectorBase](VM.Managed.VectorBase.md)

`boxingMode` [BoxingMode](VM.Managed.CAD.BoxingMode.md)

#### Returns

[bool](https://learn.microsoft.com/dotnet/api/system.boolean)

### GetBoundingBox(TMatrix, ref VectorBase, ref VectorBase)

```csharp
public bool GetBoundingBox(TMatrix matT, ref VectorBase vecMinPt, ref VectorBase vecMaxPt)

```

#### Parameters

`matT` [TMatrix](VM.Managed.TMatrix.md)

`vecMinPt` [VectorBase](VM.Managed.VectorBase.md)

`vecMaxPt` [VectorBase](VM.Managed.VectorBase.md)

#### Returns

[bool](https://learn.microsoft.com/dotnet/api/system.boolean)

### GetCADGeomNameAttribute(string, ref List&lt;string&gt;)

```csharp
public void GetCADGeomNameAttribute(string strPrefix, ref List<string> lstName)

```

#### Parameters

`strPrefix` [string](https://learn.microsoft.com/dotnet/api/system.string)

`lstName` [List](https://learn.microsoft.com/dotnet/api/system.collections.generic.list-1)&lt;[string](https://learn.microsoft.com/dotnet/api/system.string)&gt;

### GetColor()

Get color. The color

```csharp
public Color GetColor()

```

#### Returns

[Color](https://learn.microsoft.com/dotnet/api/system.drawing.color)

### GetDefaultMaxFacetSize()

Get default maximum facet size

```csharp
public double GetDefaultMaxFacetSize()

```

#### Returns

[double](https://learn.microsoft.com/dotnet/api/system.double)

Default maximum facet size

### GetDefaultMaxPenetration(ref double)

Get default maximum penetration.

The maximum penetration. ```csharp
public bool GetDefaultMaxPenetration(ref double dMaxPenetration)

```

#### Parameters

`dMaxPenetration` [double](https://learn.microsoft.com/dotnet/api/system.double)

#### Returns

[bool](https://learn.microsoft.com/dotnet/api/system.boolean)

### GetEdgeCount()

Get the number of edge. -1 : error

```csharp
public int GetEdgeCount()

```

#### Returns

[int](https://learn.microsoft.com/dotnet/api/system.int32)

The number of edge.

### GetEdgeIndex(ValueType)

```csharp
public int GetEdgeIndex(ValueType nID)

```

#### Parameters

`nID` [ValueType](https://learn.microsoft.com/dotnet/api/system.valuetype)

#### Returns

[int](https://learn.microsoft.com/dotnet/api/system.int32)

### GetEdgePoints(int, double, TMatrix, ref List&lt;VectorBase&gt;)

```csharp
public bool GetEdgePoints(int nEdgeIndex, double dDistance, TMatrix matBase, ref List<VectorBase> lstPoints)

```

#### Parameters

`nEdgeIndex` [int](https://learn.microsoft.com/dotnet/api/system.int32)

`dDistance` [double](https://learn.microsoft.com/dotnet/api/system.double)

`matBase` [TMatrix](VM.Managed.TMatrix.md)

`lstPoints` [List](https://learn.microsoft.com/dotnet/api/system.collections.generic.list-1)&lt;[VectorBase](VM.Managed.VectorBase.md)&gt;

#### Returns

[bool](https://learn.microsoft.com/dotnet/api/system.boolean)

### GetEdges(ICollection&lt;int&gt;)

```csharp
public List<Edge> GetEdges(ICollection<int> Colors)

```

#### Parameters

`Colors` [ICollection](https://learn.microsoft.com/dotnet/api/system.collections.generic.icollection-1)&lt;[int](https://learn.microsoft.com/dotnet/api/system.int32)&gt;

#### Returns

[List](https://learn.microsoft.com/dotnet/api/system.collections.generic.list-1)&lt;[Edge](VM.Managed.CAD.Edge.md)&gt;

### GetEdges()

get all edges.

```csharp
public List<Edge> GetEdges()

```

#### Returns

[List](https://learn.microsoft.com/dotnet/api/system.collections.generic.list-1)&lt;[Edge](VM.Managed.CAD.Edge.md)&gt;

list of all edges

### GetFaceColors()

get all face colors.

```csharp
public List<int> GetFaceColors()

```

#### Returns

[List](https://learn.microsoft.com/dotnet/api/system.collections.generic.list-1)&lt;[int](https://learn.microsoft.com/dotnet/api/system.int32)&gt;

list of all face colors.

### GetFaceIndex(ValueType)

```csharp
public int GetFaceIndex(ValueType nID)

```

#### Parameters

`nID` [ValueType](https://learn.microsoft.com/dotnet/api/system.valuetype)

#### Returns

[int](https://learn.microsoft.com/dotnet/api/system.int32)

### GetFaces(ICollection&lt;int&gt;)

```csharp
public List<Face> GetFaces(ICollection<int> Colors)

```

#### Parameters

`Colors` [ICollection](https://learn.microsoft.com/dotnet/api/system.collections.generic.icollection-1)&lt;[int](https://learn.microsoft.com/dotnet/api/system.int32)&gt;

#### Returns

[List](https://learn.microsoft.com/dotnet/api/system.collections.generic.list-1)&lt;[Face](VM.Managed.CAD.Face.md)&gt;

### GetFaces()

get all faces.

```csharp
public List<Face> GetFaces()

```

#### Returns

[List](https://learn.microsoft.com/dotnet/api/system.collections.generic.list-1)&lt;[Face](VM.Managed.CAD.Face.md)&gt;

list of all faces

### GetFacesInfo\_NormalAndCenterPt(List&lt;Face&gt;, ref Dictionary&lt;Face, VectorBase&gt;, ref Dictionary&lt;Face, VectorBase&gt;)

```csharp
public void GetFacesInfo_NormalAndCenterPt(List<Face> lstFace, ref Dictionary<Face, VectorBase> dic_vecNormal, ref Dictionary<Face, VectorBase> dic_vecCenterPt)

```

#### Parameters

`lstFace` [List](https://learn.microsoft.com/dotnet/api/system.collections.generic.list-1)&lt;[Face](VM.Managed.CAD.Face.md)&gt;

`dic_vecNormal` [Dictionary](https://learn.microsoft.com/dotnet/api/system.collections.generic.dictionary-2)&lt;[Face](VM.Managed.CAD.Face.md), [VectorBase](VM.Managed.VectorBase.md)&gt;

`dic_vecCenterPt` [Dictionary](https://learn.microsoft.com/dotnet/api/system.collections.generic.dictionary-2)&lt;[Face](VM.Managed.CAD.Face.md), [VectorBase](VM.Managed.VectorBase.md)&gt;

### GetFacetInfo(ref VectorBase\[\], ref int\[\])

Get facet information.

facet point information.facet connectivity inforamtion. ```csharp
public void GetFacetInfo(ref VectorBase[] arPt, ref int[] arConnectivity)

```

#### Parameters

`arPt` [VectorBase](VM.Managed.VectorBase.md)\[\]

`arConnectivity` [int](https://learn.microsoft.com/dotnet/api/system.int32)\[\]

### GetFacetPositions(Face\[\], string)

```csharp
public static VectorBase[] GetFacetPositions(Face[] arFaces, string strFacetOptionsXml)

```

#### Parameters

`arFaces` [Face](VM.Managed.CAD.Face.md)\[\]

`strFacetOptionsXml` [string](https://learn.microsoft.com/dotnet/api/system.string)

#### Returns

[VectorBase](VM.Managed.VectorBase.md)\[\]

### GetGeomInfoOfFaces(Body, Face\[\], string, bool, UIntPtr)

```csharp
public static void GetGeomInfoOfFaces(Body body, Face[] arFaces, string strFacetOptionsXml, bool bSkipMidPoints, UIntPtr pGeomInfo)

```

#### Parameters

`body` [Body](VM.Managed.CAD.Body.md)

`arFaces` [Face](VM.Managed.CAD.Face.md)\[\]

`strFacetOptionsXml` [string](https://learn.microsoft.com/dotnet/api/system.string)

`bSkipMidPoints` [bool](https://learn.microsoft.com/dotnet/api/system.boolean)

`pGeomInfo` [UIntPtr](https://learn.microsoft.com/dotnet/api/system.uintptr)

### GetLumpCount()

Get the number of lump. -1 : error

```csharp
public int GetLumpCount()

```

#### Returns

[int](https://learn.microsoft.com/dotnet/api/system.int32)

The number of lump.

### GetModelNavigatorInformationImpl(XmlDocument, XmlElement, bool)

Gets the model navigator information implementation.

```csharp
virtual bool GetModelNavigatorInformationImpl(XmlDocument xmlDom, XmlElement xmlRootEle, bool bHasChild)

```

#### Parameters

`xmlDom` [XmlDocument](https://learn.microsoft.com/dotnet/api/system.xml.xmldocument)

The navigator information xml.

`xmlRootEle` [XmlElement](https://learn.microsoft.com/dotnet/api/system.xml.xmlelement)

The navigator information xml root element.

`bHasChild` [bool](https://learn.microsoft.com/dotnet/api/system.boolean)

`true` if has a child object; otherwise, `false`.

#### Returns

[bool](https://learn.microsoft.com/dotnet/api/system.boolean)

### GetNearest4PointOnFaceWithRange(VectorBase, double, VectorBase, VectorBase, bool, VectorBase\[\])

```csharp
public bool GetNearest4PointOnFaceWithRange(VectorBase vecUserPos, double dRange, VectorBase vecNormalDirection, VectorBase vecShearDirection, bool bBase, VectorBase[] vecNearest4Pos)

```

#### Parameters

`vecUserPos` [VectorBase](VM.Managed.VectorBase.md)

`dRange` [double](https://learn.microsoft.com/dotnet/api/system.double)

`vecNormalDirection` [VectorBase](VM.Managed.VectorBase.md)

`vecShearDirection` [VectorBase](VM.Managed.VectorBase.md)

`bBase` [bool](https://learn.microsoft.com/dotnet/api/system.boolean)

`vecNearest4Pos` [VectorBase](VM.Managed.VectorBase.md)\[\]

#### Returns

[bool](https://learn.microsoft.com/dotnet/api/system.boolean)

### GetNearestPointAndNormalOnFace(VectorBase, VectorBase, VectorBase)

```csharp
public bool GetNearestPointAndNormalOnFace(VectorBase vCenterPoint, VectorBase vecPoint, VectorBase vecNormal)

```

#### Parameters

`vCenterPoint` [VectorBase](VM.Managed.VectorBase.md)

`vecPoint` [VectorBase](VM.Managed.VectorBase.md)

`vecNormal` [VectorBase](VM.Managed.VectorBase.md)

#### Returns

[bool](https://learn.microsoft.com/dotnet/api/system.boolean)

### GetNearestPointOnFace(VectorBase, ref VectorBase)

```csharp
public void GetNearestPointOnFace(VectorBase vecUserPos, ref VectorBase vecNearestPos)

```

#### Parameters

`vecUserPos` [VectorBase](VM.Managed.VectorBase.md)

`vecNearestPos` [VectorBase](VM.Managed.VectorBase.md)

### GetNearestPointOnFaceWithDirection(VectorBase, VectorBase, double, ref VectorBase)

```csharp
public bool GetNearestPointOnFaceWithDirection(VectorBase vecUserPos, VectorBase vecNormalDir, double dRange, ref VectorBase vecNearestPos)

```

#### Parameters

`vecUserPos` [VectorBase](VM.Managed.VectorBase.md)

`vecNormalDir` [VectorBase](VM.Managed.VectorBase.md)

`dRange` [double](https://learn.microsoft.com/dotnet/api/system.double)

`vecNearestPos` [VectorBase](VM.Managed.VectorBase.md)

#### Returns

[bool](https://learn.microsoft.com/dotnet/api/system.boolean)

### GetNewEntityName(string, bool, int, int)

Generate an unique DAFUL object name from the container using the prefix name.

```csharp
public virtual string GetNewEntityName(string strPrefix, bool bUseUnderLine, int nNumFigure, int nStartIndex)

```

#### Parameters

`strPrefix` [string](https://learn.microsoft.com/dotnet/api/system.string)

The DAFUL object prefix name.

`bUseUnderLine` [bool](https://learn.microsoft.com/dotnet/api/system.boolean)

Whether use underline.

`nNumFigure` [int](https://learn.microsoft.com/dotnet/api/system.int32)

The Number of Figure.

`nStartIndex` [int](https://learn.microsoft.com/dotnet/api/system.int32)

The start index.

#### Returns

[string](https://learn.microsoft.com/dotnet/api/system.string)

The DAFUL object name.

### GetNewEntityName(string, bool, int)

Generate an unique DAFUL object name from the container using the prefix name.

```csharp
public virtual string GetNewEntityName(string strPrefix, bool bUseUnderLine, int nNumFigure)

```

#### Parameters

`strPrefix` [string](https://learn.microsoft.com/dotnet/api/system.string)

The DAFUL object prefix name.

`bUseUnderLine` [bool](https://learn.microsoft.com/dotnet/api/system.boolean)

Whether use underline.

`nNumFigure` [int](https://learn.microsoft.com/dotnet/api/system.int32)

The Number of Figure.

#### Returns

[string](https://learn.microsoft.com/dotnet/api/system.string)

The DAFUL object name.

### GetNewEntityName(string)

Generate an unique DAFUL object name from the container using the prefix name.

```csharp
public virtual string GetNewEntityName(string strPrefix)

```

#### Parameters

`strPrefix` [string](https://learn.microsoft.com/dotnet/api/system.string)

The DAFUL object prefix name.

#### Returns

[string](https://learn.microsoft.com/dotnet/api/system.string)

The DAFUL object name.

### GetNormalOnFace(VectorBase, ref VectorBase)

gets the normal direction at some point on face. {1 : kernel api error} {2 : invalid body} {21 : fail to get faces} {22 : kernel function error}

```csharp
public bool GetNormalOnFace(VectorBase vecPosition, ref VectorBase vecNormal)

```

#### Parameters

`vecPosition` [VectorBase](VM.Managed.VectorBase.md)

the point position

`vecNormal` [VectorBase](VM.Managed.VectorBase.md)

result normal direction

#### Returns

[bool](https://learn.microsoft.com/dotnet/api/system.boolean)

if operation success then return true.

### GetPointAndDirection(ref VectorBase, ref VectorBase)

Get point and direction.

```csharp
public bool GetPointAndDirection(ref VectorBase vecPosition, ref VectorBase vecDirection)

```

#### Parameters

`vecPosition` [VectorBase](VM.Managed.VectorBase.md)

The point.

`vecDirection` [VectorBase](VM.Managed.VectorBase.md)

The direction.

#### Returns

[bool](https://learn.microsoft.com/dotnet/api/system.boolean)

`true` if success; otherwise, `false`.

### GetSortOfBody()

Gets type of body.

```csharp
public BodyType GetSortOfBody()

```

#### Returns

[BodyType](VM.Managed.CAD.BodyType.md)

body type

### GetStartPointOfClosedLoop(List&lt;Edge&gt;, ref VectorBase)

```csharp
public bool GetStartPointOfClosedLoop(List<Edge> lstEdges, ref VectorBase vecPosition)

```

#### Parameters

`lstEdges` [List](https://learn.microsoft.com/dotnet/api/system.collections.generic.list-1)&lt;[Edge](VM.Managed.CAD.Edge.md)&gt;

`vecPosition` [VectorBase](VM.Managed.VectorBase.md)

#### Returns

[bool](https://learn.microsoft.com/dotnet/api/system.boolean)

### GetTargetListForUpdate()

Gets the update objects.

```csharp
public override List<IEventProvider> GetTargetListForUpdate()

```

#### Returns

[List](https://learn.microsoft.com/dotnet/api/system.collections.generic.list-1)&lt;IEventProvider&gt;

### GetUnnamedObjectName(object)

Get an unnamed object name.

```csharp
public string GetUnnamedObjectName(object obUnnamed)

```

#### Parameters

`obUnnamed` [object](https://learn.microsoft.com/dotnet/api/system.object)

The unnamed object.

#### Returns

[string](https://learn.microsoft.com/dotnet/api/system.string)

The unnamed object name.

### GetVertexIndex(ValueType)

```csharp
public int GetVertexIndex(ValueType nID)

```

#### Parameters

`nID` [ValueType](https://learn.microsoft.com/dotnet/api/system.valuetype)

#### Returns

[int](https://learn.microsoft.com/dotnet/api/system.int32)

### GetVoidCount()

Gets the void count.

```csharp
public int GetVoidCount()

```

#### Returns

[int](https://learn.microsoft.com/dotnet/api/system.int32)

### GetVoidPoints(double\[\], ref VectorBase\[\])

Get Inner point of void shells.

```csharp
public int GetVoidPoints(double[] ardScale, ref VectorBase[] aryPoints)

```

#### Parameters

`ardScale` [double](https://learn.microsoft.com/dotnet/api/system.double)\[\]

`aryPoints` [VectorBase](VM.Managed.VectorBase.md)\[\]

The list of inner point of void shells.

#### Returns

[int](https://learn.microsoft.com/dotnet/api/system.int32)

-1 : error, 0 : finding successs, positive number : the number of not found case.

### GetWireLastPoint(ref VectorBase)

gets the position of last point on wire body. {1 : kernel api error} {2 : invalid body} {21 : fail to get faces} {22 : kernel function error}

```csharp
public bool GetWireLastPoint(ref VectorBase vecPosition)

```

#### Parameters

`vecPosition` [VectorBase](VM.Managed.VectorBase.md)

the point position

#### Returns

[bool](https://learn.microsoft.com/dotnet/api/system.boolean)

if operation success then return true.

### GetWirePoints(double, ref List&lt;VectorBase&gt;)

```csharp
public bool GetWirePoints(double dDistance, ref List<VectorBase> lstPoints)

```

#### Parameters

`dDistance` [double](https://learn.microsoft.com/dotnet/api/system.double)

`lstPoints` [List](https://learn.microsoft.com/dotnet/api/system.collections.generic.list-1)&lt;[VectorBase](VM.Managed.VectorBase.md)&gt;

#### Returns

[bool](https://learn.microsoft.com/dotnet/api/system.boolean)

### GetWirePointsAndTangents(double, ref List&lt;VectorBase&gt;, ref List&lt;VectorBase&gt;)

```csharp
public bool GetWirePointsAndTangents(double dDistance, ref List<VectorBase> lstPoints, ref List<VectorBase> lstTangents)

```

#### Parameters

`dDistance` [double](https://learn.microsoft.com/dotnet/api/system.double)

`lstPoints` [List](https://learn.microsoft.com/dotnet/api/system.collections.generic.list-1)&lt;[VectorBase](VM.Managed.VectorBase.md)&gt;

`lstTangents` [List](https://learn.microsoft.com/dotnet/api/system.collections.generic.list-1)&lt;[VectorBase](VM.Managed.VectorBase.md)&gt;

#### Returns

[bool](https://learn.microsoft.com/dotnet/api/system.boolean)

### GetWirePointsAndTangentsWithSection(double, VectorBase, VectorBase, ref List&lt;VectorBase&gt;, ref List&lt;VectorBase&gt;)

```csharp
public bool GetWirePointsAndTangentsWithSection(double dDistance, VectorBase vecFirst, VectorBase vecSecond, ref List<VectorBase> lstPoints, ref List<VectorBase> lstTangents)

```

#### Parameters

`dDistance` [double](https://learn.microsoft.com/dotnet/api/system.double)

`vecFirst` [VectorBase](VM.Managed.VectorBase.md)

`vecSecond` [VectorBase](VM.Managed.VectorBase.md)

`lstPoints` [List](https://learn.microsoft.com/dotnet/api/system.collections.generic.list-1)&lt;[VectorBase](VM.Managed.VectorBase.md)&gt;

`lstTangents` [List](https://learn.microsoft.com/dotnet/api/system.collections.generic.list-1)&lt;[VectorBase](VM.Managed.VectorBase.md)&gt;

#### Returns

[bool](https://learn.microsoft.com/dotnet/api/system.boolean)

### HighlightBuilder()

highlignt for body's builder.

```csharp
public void HighlightBuilder()

```

### InitialSetBuildInfo(string)

```csharp
public void InitialSetBuildInfo(string strBuilderXml)

```

#### Parameters

`strBuilderXml` [string](https://learn.microsoft.com/dotnet/api/system.string)

### Initialize(ConvertFactor)

Initializes member through unit convert factor.

```csharp
public override void Initialize(Unit.ConvertFactor factor)

```

#### Parameters

`factor` Unit.ConvertFactor

The unit convert factor.

### IsNonManifold()

determines if a body is a nonmanifold.

```csharp
public bool IsNonManifold()

```

#### Returns

[bool](https://learn.microsoft.com/dotnet/api/system.boolean)

if a body is a nonmanifold then return true.

### IsWireBody()

determines if a body is a wire.

```csharp
public bool IsWireBody()

```

#### Returns

[bool](https://learn.microsoft.com/dotnet/api/system.boolean)

if a body is a wire then return true.

### LinkRequestUpdate(object, LinkEventArgs)

Request for update the linked object.

```csharp
protected override void LinkRequestUpdate(object objNotifier, LinkEventArgs arg)

```

#### Parameters

`objNotifier` [object](https://learn.microsoft.com/dotnet/api/system.object)

The linked object.

`arg` [LinkEventArgs](VM.Managed.LinkEventArgs.md)

The  instance containing the event data.

### OnDeserialization(object)

Called when \[deserialization\].

```csharp
protected override void OnDeserialization(object sender)

```

#### Parameters

`sender` [object](https://learn.microsoft.com/dotnet/api/system.object)

The sender.

### OnPostDeserialized(StreamingContext)

```csharp
public virtual void OnPostDeserialized(StreamingContext context)

```

#### Parameters

`context` [StreamingContext](https://learn.microsoft.com/dotnet/api/system.runtime.serialization.streamingcontext)

### PostRemoveFromDocument(Document)

Call when post \[remove from document\].

```csharp
public override void PostRemoveFromDocument(Document document)

```

#### Parameters

`document` [Document](VM.Managed.Document.md)

The document

### PrepareFacesWithColor()

prepare the face with color

```csharp
public bool PrepareFacesWithColor()

```

#### Returns

[bool](https://learn.microsoft.com/dotnet/api/system.boolean)

if a body has the face color then return true.

### ReDrawChangeFacet()

```csharp
public void ReDrawChangeFacet()

```

### RebuildGeometry(object, LinkEventArgs)

Rebuild geometry.

```csharp
protected virtual void RebuildGeometry(object objBuilder, LinkEventArgs args)

```

#### Parameters

`objBuilder` [object](https://learn.microsoft.com/dotnet/api/system.object)

The builder.

`args` [LinkEventArgs](VM.Managed.LinkEventArgs.md)

The event handler.

### RelationWithPoint(VectorBase)

A point may be in, on, or off the this body. The returned values corresponding to these relationships are: 1 : point in entity 0 : point on entity -1 : point off entity -2 : error

```csharp
public int RelationWithPoint(VectorBase vecPosition)

```

#### Parameters

`vecPosition` [VectorBase](VM.Managed.VectorBase.md)

the point position

#### Returns

[int](https://learn.microsoft.com/dotnet/api/system.int32)

1 or 0 or -1 or -2

### RepairTopology()

repair the invalid topology.

```csharp
public void RepairTopology()

```

### ReplaceCAD(List&lt;ReplaceCADInfo&gt;)

```csharp
public void ReplaceCAD(List<Body.ReplaceCADInfo> lstInfo)

```

#### Parameters

`lstInfo` [List](https://learn.microsoft.com/dotnet/api/system.collections.generic.list-1)&lt;[Body](VM.Managed.CAD.Body.md).[ReplaceCADInfo](VM.Managed.CAD.Body.ReplaceCADInfo.md)&gt;

### ResetBuildInfo(string)

Reset build Information.

build Information. ```csharp
public void ResetBuildInfo(string strInfo)

```

#### Parameters

`strInfo` [string](https://learn.microsoft.com/dotnet/api/system.string)

### RunTetraMesher(string, vector&lt;\_VM\_VECTOR,std::allocator&lt;\_VM\_VECTOR&gt; &gt;\*, vector&lt;unsigned int,std::allocator&lt;unsigned int&gt; &gt;\*, vector&lt;\_VM\_VECTOR,std::allocator&lt;\_VM\_VECTOR&gt; &gt;\*, vector&lt;unsigned int,std::allocator&lt;unsigned int&gt; &gt;\*)

```csharp
public bool RunTetraMesher(string strMesherPath, vector<_VM_VECTOR,std::allocator<_VM_VECTOR> >* vecPosTria, vector<unsigned int,std::allocator<unsigned int> >* vecConTria, vector<_VM_VECTOR,std::allocator<_VM_VECTOR> >* vecPosTetra, vector<unsigned int,std::allocator<unsigned int> >* vecConTetra)

```

#### Parameters

`strMesherPath` [string](https://learn.microsoft.com/dotnet/api/system.string)

`vecPosTria` [vector&lt;\_VM\_VECTOR,std::allocator&lt;\_VM\_VECTOR&gt; &gt;](std.vector%3C_VM_VECTOR,std.md)\*

`vecConTria` \[vector&lt;unsigned int,std::allocator&lt;unsigned int&gt; &gt;\](std.vector&lt;unsigned int,std.md)\*

`vecPosTetra` [vector&lt;\_VM\_VECTOR,std::allocator&lt;\_VM\_VECTOR&gt; &gt;](std.vector%3C_VM_VECTOR,std.md)\*

`vecConTetra` \[vector&lt;unsigned int,std::allocator&lt;unsigned int&gt; &gt;\](std.vector&lt;unsigned int,std.md)\*

#### Returns

[bool](https://learn.microsoft.com/dotnet/api/system.boolean)

### RunTetraMesher(string, ref VectorBase\[\], ref uint\[\], ref VectorBase\[\], ref uint\[\])

```csharp
public bool RunTetraMesher(string strMesherPath, ref VectorBase[] aryPosTria, ref uint[] aryConTria, ref VectorBase[] aryPosTetra, ref uint[] aryConTetra)

```

#### Parameters

`strMesherPath` [string](https://learn.microsoft.com/dotnet/api/system.string)

`aryPosTria` [VectorBase](VM.Managed.VectorBase.md)\[\]

`aryConTria` [uint](https://learn.microsoft.com/dotnet/api/system.uint32)\[\]

`aryPosTetra` [VectorBase](VM.Managed.VectorBase.md)\[\]

`aryConTetra` [uint](https://learn.microsoft.com/dotnet/api/system.uint32)\[\]

#### Returns

[bool](https://learn.microsoft.com/dotnet/api/system.boolean)

### SetColor(Color)

Set color.

The color. ```csharp
public void SetColor(Color color)

```

#### Parameters

`color` [Color](https://learn.microsoft.com/dotnet/api/system.drawing.color)

### SetGeometryRepresentation(string, string, bool)

Set geometry representation.

```csharp
bool SetGeometryRepresentation(string strGeom, string strDefaultGeom, bool bUseRedraw)

```

#### Parameters

`strGeom` [string](https://learn.microsoft.com/dotnet/api/system.string)

The geometry information.

`strDefaultGeom` [string](https://learn.microsoft.com/dotnet/api/system.string)

The geometry information when checked default value.

`bUseRedraw` [bool](https://learn.microsoft.com/dotnet/api/system.boolean)

The redraw flag.

#### Returns

[bool](https://learn.microsoft.com/dotnet/api/system.boolean)

### SetModifiedBody()

```csharp
public void SetModifiedBody()

```

### SetTransparency(double)

Set transparency.

The transparency. ```csharp
public void SetTransparency(double dTransp)

```

#### Parameters

`dTransp` [double](https://learn.microsoft.com/dotnet/api/system.double)

### SortEdges(List&lt;Edge&gt;)

```csharp
public List<Edge> SortEdges(List<Edge> lstEdges)

```

#### Parameters

`lstEdges` [List](https://learn.microsoft.com/dotnet/api/system.collections.generic.list-1)&lt;[Edge](VM.Managed.CAD.Edge.md)&gt;

#### Returns

[List](https://learn.microsoft.com/dotnet/api/system.collections.generic.list-1)&lt;[Edge](VM.Managed.CAD.Edge.md)&gt;

### UpdateBody(bool)

Update body.

The body build flag. ```csharp
public void UpdateBody(bool bBuild)

```

#### Parameters

`bBuild` [bool](https://learn.microsoft.com/dotnet/api/system.boolean)

### UpdateBody()

Update body.

```csharp
public void UpdateBody()

```