    

 ## On this page

  

 

 #  Class BodyPropertyBase

 Last update: 16.07.2025 

Namespace: [VM.Managed.DAFUL](VM.Managed.DAFUL.md)  
Assembly: VMDFBase.dll

This base class is to represent the body property base properties.

```csharp
public abstract class BodyPropertyBase : Property, IObservableObject, IDisposableObject, ILinkable, IObjectBase, IObject, IEventProvider, IHasKeyObject, ILinkContainerEvent, IVerifiable, IHistoryObjectSerializable, IAttributeContainer, IContainer, ILinkContainer, IOwned, IHasID

```

#### Inheritance

[object](https://learn.microsoft.com/dotnet/api/system.object) ← ObservableObject ← LinkableBase ← ObjectBase ← Object ← ContainerObject ← Property ← [BodyPropertyBase](VM.Managed.DAFUL.BodyPropertyBase.md)

#### Derived

[BodyProperty](VM.Managed.DAFUL.BodyProperty.md)

#### Implements

IObservableObject, IDisposableObject, ILinkable, IObjectBase, IObject, IEventProvider, IHasKeyObject, ILinkContainerEvent, IVerifiable, IHistoryObjectSerializable, IAttributeContainer, IContainer, ILinkContainer, IOwned, IHasID

#### Inherited Members

Property.Initialize(Unit.ConvertFactor), Property.PropertyRequestUpdate(object, LinkEventArgs), Property.OnUpdatePropertyImpl(Property, LinkEventArgs), Property.GetUnnamedObjectName(object), Property.FindLocal(string), Property.Draw(Canvas, TMatrix, TMatrix, bool), ContainerObject.Find(string), ContainerObject.FindLocal(string), ContainerObject.GetUnnamedObjectName(object), ContainerObject.GetNewEntityName(string), ContainerObject.GetNewEntityName(string, bool, int), ContainerObject.GetNewEntityName(string, bool, int, int), Object.GetKey(), Object.Initialize(Unit.ConvertFactor), Object.SetIconColor(Canvas), Object.OnDeserialization(object), Object.CustomGetObjectData(SerializationInfo, StreamingContext), Object.RollbackEvent(), Object.OnDeserializedCore(object), Object.Key, Object.UntypedEventCore, Object.EventCore, Object.Attributes, ObjectBase.ReplaceEventCore(ObjectEventCore), ObjectBase.SetModifiedCore(ModifiedResult.ModifiedType), ObjectBase.AddPostDeserialize(StreamingContext), ObjectBase.LinkAddedToDocumentCore(IOwned, bool), ObjectBase.SetModified(ModifiedResult.ModifiedType), ObjectBase.SetModified(), ObjectBase.SetModified(ModifiedResult.ModifiedType, IDocument), ObjectBase.DestroyObject(object, LinkEventArgs), ObjectBase.DestroyObject(DestroyEventArgs), ObjectBase.DestroyObject(), ObjectBase.Initialize(Unit.ConvertFactor), ObjectBase.FixUp(ObjectBase), ObjectBase.DoWorkAfterUpdateContents(), ObjectBase.SetOldNameWithNewEntity(ObjectBase, ObjectBase), ObjectBase.SetIconColor(Canvas), ObjectBase.RemoveFromCreatedList(), ObjectBase.PostAddToDocument(), ObjectBase.PostRemoveFromDocument(Document), ObjectBase.GetArgumentList(LinkedList), ObjectBase.ResetInvalidEntity(), ObjectBase.OnDeserialization(object), ObjectBase.IsSerializableEvent(Delegate), ObjectBase.CustomGetObjectData(SerializationInfo, StreamingContext), ObjectBase.CheckAndUpdateLink(HashSet), ObjectBase.Verify(VerifiedResult), ObjectBase.ConnectProxy(), ObjectBase.RollbackEvent(), ObjectBase.LinkRequestUpdating(object, LinkEventArgs), ObjectBase.LinkRequestUpdate(object, LinkEventArgs), ObjectBase.LinkRequestDestroying(object, LinkEventArgs), ObjectBase.LinkRequestDestroy(object, LinkEventArgs), ObjectBase.LinkAddedToDocument(object, AddToDocEventArgs), ObjectBase.LinkRemovedFromDocument(object, RemoveFromDocEventArgs), ObjectBase.DisposeManagedResources(), ObjectBase.GetDestroyEventExtraData(), ObjectBase.OnLinkReserved(ILink, object, EventArgs), ObjectBase.CreateEntityWhenUpdateContents(Action), ObjectBase.GetObjectByKey(UIntPtr), ObjectBase.FindObjectOnXmlDeserialize(string), ObjectBase.UpdateContents(XmlReader, ObjectBase, string), ObjectBase.UpdateContents(XmlReader, ObjectBase), ObjectBase.UpdateContents(string, string), ObjectBase.UpdateContents(string), ObjectBase.SetFlagWhenXMLFile(string, bool), ObjectBase.IsEqualArray(T\[\], T\[\]), ObjectBase.IsEqualList(List, List), ObjectBase.SetContainer(IOwned, bool), ObjectBase.GetTargetListForUpdate(), ObjectBase.SkipUpdateObjectImpl(), ObjectBase.raise\_OnUpdating(object, LinkEventArgs), ObjectBase.raise\_OnUpdate(object, LinkEventArgs), ObjectBase.raise\_OnDestroying(object, LinkEventArgs), ObjectBase.raise\_OnDestroy(object, LinkEventArgs), ObjectBase.raise\_Destroying(object, Identifier), ObjectBase.raise\_OnAdded(object, AddToDocEventArgs), ObjectBase.raise\_OnRemoved(object, RemoveFromDocEventArgs), ObjectBase.raise\_OnContentsUpdated(object, EventArgs), ObjectBase.Dispose(bool), ObjectBase.SkipModified, ObjectBase.ClearChildInfoBeforeDeserialize, ObjectBase.KeyImpl, ObjectBase.ID, ObjectBase.TopologyEntityTypeName, ObjectBase.ObjectStateForCircularError, ObjectBase.ObjectState, ObjectBase.IsChildExternable, ObjectBase.IsExternable, ObjectBase.Container, ObjectBase.Owner, ObjectBase.Document, ObjectBase.UntypedEventCore, ObjectBase.KernelKey, ObjectBase.Key, ObjectBase.OnContentsUpdated, ObjectBase.OnRemoved, ObjectBase.OnAdded, ObjectBase.Destroying, ObjectBase.OnDestroy, ObjectBase.OnDestroying, ObjectBase.OnUpdate, 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(object, LinkPropertyType)](VM.Models.Pre.Cache.LinkPropertyItemCache.md#VM_Models_Pre_Cache_LinkPropertyItemCache_GetLinkedObjects__1_System_Object_VM_Models_Pre_LinkPropertyType_)

## Constructors

### <a id="VM_Managed_DAFUL_BodyPropertyBase__ctor"></a> BodyPropertyBase()

Initializes a new instance of the  class.

```csharp
public BodyPropertyBase()

```

## Properties

### <a id="VM_Managed_DAFUL_BodyPropertyBase_CenterMarker"></a> CenterMarker

Gets or sets the center marker.

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

```

#### Property Value

[CenterMarker](VM.Managed.DAFUL.CenterMarker.md)

### <a id="VM_Managed_DAFUL_BodyPropertyBase_InitVel"></a> InitVel

Gets or sets the initial velocity.

```csharp
public BodyPropertyBase.InitialVelocity InitVel { get; set; }

```

#### Property Value

[BodyPropertyBase](VM.Managed.DAFUL.BodyPropertyBase.md).[InitialVelocity](VM.Managed.DAFUL.BodyPropertyBase.InitialVelocity.md)

### <a id="VM_Managed_DAFUL_BodyPropertyBase_IsExternable"></a> IsExternable

Gets a value indicating whether this instance is externable.

```csharp
public override bool IsExternable { get; }

```

#### Property Value

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

### <a id="VM_Managed_DAFUL_BodyPropertyBase_Markers"></a> Markers

Gets or sets marker dictionary.

```csharp
public NamedObjectDictionary<marker> Markers { get; set; }

```

#### Property Value

NamedObjectDictionary[Marker](VM.Managed.DAFUL.Marker.md)&amp;gt;

### <a id="VM_Managed_DAFUL_BodyPropertyBase_MassValue"></a> MassValue

Gets the mass.

```csharp
public abstract double MassValue { get; }

```

#### Property Value

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

### <a id="VM_Managed_DAFUL_BodyPropertyBase_MomentOfInertiaValue"></a> MomentOfInertiaValue

Gets the moment of inertia.

```csharp
public abstract double[] MomentOfInertiaValue { get; }

```

#### Property Value

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

### <a id="VM_Managed_DAFUL_BodyPropertyBase_SymmetricManagers"></a> SymmetricManagers

Gets or sets the symmetric manager dictionary.

```csharp
public NamedObjectDictionary<symmetricmanager> SymmetricManagers { get; set; }

```

#### Property Value

NamedObjectDictionary

## Methods

### <a id="VM_Managed_DAFUL_BodyPropertyBase_AddMarker_VM_Managed_DAFUL_Marker_"></a> AddMarker(Marker)

Add marker

```csharp
public void AddMarker(Marker marker)

```

#### Parameters

`marker` [Marker](VM.Managed.DAFUL.Marker.md)

The marker

### <a id="VM_Managed_DAFUL_BodyPropertyBase_FindLocal_System_String_"></a> FindLocal(string)

Finds an object that matches a specified name in local.

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

```

#### Parameters

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

Name to search for.

#### Returns

IObjectBase

An object that matches a specified name.

### <a id="VM_Managed_DAFUL_BodyPropertyBase_Initialize_VM_Unit_ConvertFactor_"></a> Initialize(ConvertFactor)

Initializes member through unit convert factor.

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

```

#### Parameters

`factor` Unit.ConvertFactor

The unit convert factor.

### <a id="VM_Managed_DAFUL_BodyPropertyBase_LinkRequestUpdate_System_Object_VM_Managed_LinkEventArgs_"></a> 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

The  instance containing the event data.

### <a id="VM_Managed_DAFUL_BodyPropertyBase_OnDeserialization_System_Object_"></a> 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.