    

 ## On this page

  

 

 # Class BallScrewBuilder

 Last update: 16.07.2025 

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

```csharp
public class BallScrewBuilder : BuilderNamed<BallScrew>, IBuilder

```

#### Inheritance

[object](https://learn.microsoft.com/dotnet/api/system.object) ← BuilderBase&lt;BallScrew&gt; ← BuilderSymmetric&lt;BallScrew&gt; ← BuilderNamed&lt;BallScrew&gt; ← [BallScrewBuilder](VM.Managed.DAFUL.Builder.BallScrewBuilder.md)

#### Implements

IBuilder

#### Inherited Members

BuilderNamed&lt;BallScrew&gt;.OnPostBuild(ObjectBase, Document), BuilderNamed&lt;BallScrew&gt;.CheckUnit(Document3D, Document3D, string), BuilderNamed&lt;BallScrew&gt;.Name, BuilderSymmetric&lt;BallScrew&gt;.Build(Document), BuilderSymmetric&lt;BallScrew&gt;.Symmetric, BuilderSymmetric&lt;BallScrew&gt;.CurrentSymmetric, BuilderBase&lt;BallScrew&gt;.m\_bSuccess, BuilderBase&lt;BallScrew&gt;.Build(Document), BuilderBase&lt;BallScrew&gt;.Build(Document, List&lt;string&gt;), BuilderBase&lt;BallScrew&gt;.Validate(IList&lt;string&gt;), BuilderBase&lt;BallScrew&gt;.Success(), BuilderBase&lt;BallScrew&gt;.OnPostBuild(ObjectBase, Document), BuilderBase&lt;BallScrew&gt;.OnFinalBuild(string, Document), BuilderBase&lt;BallScrew&gt;.OnObjectChangeBuild(string, Document), BuilderBase&lt;BallScrew&gt;.OnPostAddDoc(ObjectBase), BuilderBase&lt;BallScrew&gt;.Parameters, BuilderBase&lt;BallScrew&gt;.AddToDoc, BuilderBase&lt;BallScrew&gt;.UseChangedObject, BuilderBase&lt;BallScrew&gt;.SetPointKey, BuilderBase&lt;BallScrew&gt;.BuildObject, BuilderBase&lt;BallScrew&gt;.BuildDocument, BuilderBase&lt;BallScrew&gt;.UseInterface, BuilderBase&lt;BallScrew&gt;.ErrorMessage

#### 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

### BallScrewBuilder()

```csharp
public BallScrewBuilder()

```

## Properties

### BallDiameter

```csharp
public Variable BallDiameter { get; set; }

```

#### Property Value

Variable

### DirectionX

```csharp
public DirectionBase DirectionX { get; }

```

#### Property Value

DirectionBase

### DirectionZ

```csharp
public DirectionBase DirectionZ { get; }

```

#### Property Value

DirectionBase

### HandOfScrew

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

```

#### Property Value

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

### Lead

```csharp
public Variable Lead { get; set; }

```

#### Property Value

Variable

### NutLength

```csharp
public Variable NutLength { get; set; }

```

#### Property Value

Variable

### NutOD

```csharp
public Variable NutOD { get; set; }

```

#### Property Value

Variable

### NutPCD

```csharp
public Variable NutPCD { get; set; }

```

#### Property Value

Variable

### NutScrewEndLength

```csharp
public Variable NutScrewEndLength { get; set; }

```

#### Property Value

Variable

### NutScrewStartLength

```csharp
public Variable NutScrewStartLength { get; set; }

```

#### Property Value

Variable

### NutStartLength

```csharp
public Variable NutStartLength { get; set; }

```

#### Property Value

Variable

### ShaftLength

```csharp
public Variable ShaftLength { get; set; }

```

#### Property Value

Variable

### ShaftPCD

```csharp
public Variable ShaftPCD { get; set; }

```

#### Property Value

Variable

### ShaftReferencePosition

```csharp
public PointBase ShaftReferencePosition { get; }

```

#### Property Value

PointBase

### ShaftScrewEndLength

```csharp
public Variable ShaftScrewEndLength { get; set; }

```

#### Property Value

Variable

### ShaftScrewStartAngle

```csharp
public Variable ShaftScrewStartAngle { get; set; }

```

#### Property Value

Variable

### ShaftScrewStartLength

```csharp
public Variable ShaftScrewStartLength { get; set; }

```

#### Property Value

Variable

## Methods

### OnPostBuild(ObjectBase, Document)

```csharp
protected override bool OnPostBuild(ObjectBase created, Document doc)

```

#### Parameters

`created` ObjectBase

`doc` Document

#### Returns

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

### Validate(IList&lt;string&gt;)

```csharp
public override bool Validate(IList<string> lstErrorMessage)

```

#### Parameters

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

#### Returns

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