    

 ## On this page

  

 

 # Class BuilderRollerShaft

 Last update: 16.07.2025 

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

The abstract class of roller builder

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

```

#### Inheritance

[object](https://learn.microsoft.com/dotnet/api/system.object) ← ObservableObject ← LinkableBase ← ObjectBase ← Object&lt;ObjectEventCore&gt; ← Builder ← BuilderTransform ← BuilderColorGeom ← BuilderHasTransform ← [BuilderRollerBase](VM.Managed.CAD.Roller.BuilderRollerBase.md) ← [BuilderRollerTread](VM.Managed.CAD.Roller.BuilderRollerTread.md) ← [BuilderRollerShaft](VM.Managed.CAD.Roller.BuilderRollerShaft.md)

#### Derived

[BuilderRollerFlange](VM.Managed.CAD.Roller.BuilderRollerFlange.md)

#### Implements

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

#### Inherited Members

[BuilderRollerTread.CheckValidationAboutBuild()](VM.Managed.CAD.Roller.BuilderRollerTread.md#VM_Managed_CAD_Roller_BuilderRollerTread_CheckValidationAboutBuild), [BuilderRollerTread.LinkRequestUpdate(object, LinkEventArgs)](VM.Managed.CAD.Roller.BuilderRollerTread.md#VM_Managed_CAD_Roller_BuilderRollerTread_LinkRequestUpdate_System_Object_VM_Managed_LinkEventArgs_), [BuilderRollerTread.TreadWidth](VM.Managed.CAD.Roller.BuilderRollerTread.md#VM_Managed_CAD_Roller_BuilderRollerTread_TreadWidth), [BuilderRollerTread.TreadDiameter](VM.Managed.CAD.Roller.BuilderRollerTread.md#VM_Managed_CAD_Roller_BuilderRollerTread_TreadDiameter), [BuilderRollerBase.m\_enRollerType](VM.Managed.CAD.Roller.BuilderRollerBase.md#VM_Managed_CAD_Roller_BuilderRollerBase_m_enRollerType), [BuilderRollerBase.m\_LinkEventReason](VM.Managed.CAD.Roller.BuilderRollerBase.md#VM_Managed_CAD_Roller_BuilderRollerBase_m_LinkEventReason), [BuilderRollerBase.SetApplyToFileProperty(bool)](VM.Managed.CAD.Roller.BuilderRollerBase.md#VM_Managed_CAD_Roller_BuilderRollerBase_SetApplyToFileProperty_System_Boolean_), [BuilderRollerBase.SetTransform(TMatrix)](VM.Managed.CAD.Roller.BuilderRollerBase.md#VM_Managed_CAD_Roller_BuilderRollerBase_SetTransform_VM_Managed_TMatrix_), [BuilderRollerBase.CreateParameter()](VM.Managed.CAD.Roller.BuilderRollerBase.md#VM_Managed_CAD_Roller_BuilderRollerBase_CreateParameter), [BuilderRollerBase.FillParameter(BuilderParamBase)](VM.Managed.CAD.Roller.BuilderRollerBase.md#VM_Managed_CAD_Roller_BuilderRollerBase_FillParameter_VM_CAD_Builders_BuilderParamBase_), [BuilderRollerBase.Transform](VM.Managed.CAD.Roller.BuilderRollerBase.md#VM_Managed_CAD_Roller_BuilderRollerBase_Transform), [BuilderRollerBase.ApplyToFileProperty](VM.Managed.CAD.Roller.BuilderRollerBase.md#VM_Managed_CAD_Roller_BuilderRollerBase_ApplyToFileProperty), [BuilderRollerBase.Uneditable](VM.Managed.CAD.Roller.BuilderRollerBase.md#VM_Managed_CAD_Roller_BuilderRollerBase_Uneditable), BuilderHasTransform.TransformationMatrix, BuilderHasTransform.Transform, BuilderHasTransform.IsParameterized, BuilderColorGeom.m\_color, BuilderColorGeom.CheckValidationAboutBuild(), BuilderColorGeom.OnDeserialization(object), BuilderColorGeom.FillParameter(BuilderParamBase), BuilderColorGeom.Color, BuilderColorGeom.DrawingColor, BuilderTransform.SetTransform(TMatrix), BuilderTransform.IsParameterized, Builder.CheckValidationAboutBuild(), Builder.CheckCircularReference(ObjectBase), Builder.ChangeDataForCircularReference(), Builder.GetUnnamedObjectName(object), Builder.FindLocal(string), Builder.CopyFilePathWhenImportBuilder(Builder), Builder.Contains(Type), Builder.GetBodyType(), Builder.ReplaceData(string, object), Builder.GetNameAttribute(string, ref List&lt;string&gt;), Builder.AddUneditableAttribute(), Builder.GetParentBody(), Builder.Clone(), Builder.Initialize(Unit.ConvertFactor), Builder.OnDeserialization(object), Builder.CreateParameter(), Builder.FillParameter(BuilderParamBase), Builder.LinkRequestUpdate(object, LinkEventArgs), Builder.PostWorkWhenFailedToGetXmlString(), Builder.GetFilledParameter(), Builder.GetXmlString(), Builder.GetFactorForLength(), Builder.CheckCircularReferenceForPoint(PointBase, ObjectBase), Builder.CheckCircularReferenceForDirection(DirectionBase, ObjectBase), Builder.CheckCircularReferenceForOrientation(OrientationBase, ObjectBase), Builder.CheckCircularReferenceForTransform(TransformBase, ObjectBase), Builder.GetUnitScale(), Builder.InitialKernelLengthUnit, Builder.IsExternable, Builder.Uneditable, Builder.TypeOfBuilder, Builder.Transparency, Object&lt;ObjectEventCore&gt;.GetKey(), Object&lt;ObjectEventCore&gt;.Initialize(Unit.ConvertFactor), Object&lt;ObjectEventCore&gt;.SetIconColor(Canvas), Object&lt;ObjectEventCore&gt;.OnDeserialization(object), Object&lt;ObjectEventCore&gt;.CustomGetObjectData(SerializationInfo, StreamingContext), Object&lt;ObjectEventCore&gt;.RollbackEvent(), Object&lt;ObjectEventCore&gt;.OnDeserializedCore(object), Object&lt;ObjectEventCore&gt;.Key, Object&lt;ObjectEventCore&gt;.UntypedEventCore, Object&lt;ObjectEventCore&gt;.EventCore, Object&lt;ObjectEventCore&gt;.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&lt;ObjectBase&gt;), ObjectBase.ResetInvalidEntity(), ObjectBase.OnDeserialization(object), ObjectBase.IsSerializableEvent(Delegate), ObjectBase.CustomGetObjectData(SerializationInfo, StreamingContext), ObjectBase.CheckAndUpdateLink(HashSet&lt;ObjectBase&gt;), 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&lt;T&gt;(T\[\], T\[\]), ObjectBase.IsEqualList(List&lt;double&gt;, List&lt;double&gt;), 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&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

### BuilderRollerShaft()

Initializes a new instance of the  class.

```csharp
public BuilderRollerShaft()

```

## Fields

### lstBottom

The list of cylinder bottom position.

```csharp
protected List<VectorBase> lstBottom

```

#### Field Value

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

### lstPosition

The list of position.

```csharp
protected List<VectorBase> lstPosition

```

#### Field Value

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

### lstRadius

The list of cylinder radius.

```csharp
protected List<double> lstRadius

```

#### Field Value

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

### lstTop

The list of cylinder top position.

```csharp
protected List<VectorBase> lstTop

```

#### Field Value

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

### m\_bCreateShaft

The boolean whether shaft creation or not.

```csharp
protected bool m_bCreateShaft

```

#### Field Value

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

### m\_enShaftType

The shaft type.

```csharp
protected ShaftType m_enShaftType

```

#### Field Value

[ShaftType](VM.Managed.CAD.Roller.ShaftType.md)

## Properties

### CreateShaft

Gets and sets a value indicating whether \[creation shaft\]

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

```

#### Property Value

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

### ShaftDiameter

Gets and sets shaft diameter.

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

```

#### Property Value

ExpressionValueVariable

### ShaftType

Gets and sets the shaft type.

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

```

#### Property Value

[ShaftType](VM.Managed.CAD.Roller.ShaftType.md)

### ShaftWidth

Gets and sets shaft width.

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

```

#### Property Value

ExpressionValueVariable

## Methods

### CheckValidationAboutBuild()

Checks the validation about build.

```csharp
public override void CheckValidationAboutBuild()

```

### Initialize(ConvertFactor)

Initializes member through unit convert factor.

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

```

#### Parameters

`factor` Unit.ConvertFactor

The unit convert factor.

### LinkRequestUpdate(object, LinkEventArgs)

Links the request update.

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

```

#### Parameters

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

The obj notifier.

`arg` LinkEventArgs

The  instance containing the event data.