    

 ## On this page

  

 

 # Class MotorDesigner.EMForceSection.UserDefinedMethod

 Last update: 16.07.2025 

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

user defined method class

```csharp
public class MotorDesigner.EMForceSection.UserDefinedMethod : MotorDesigner.EMForceSection.MethodBase, IObservableObject, IDisposableObject, ILinkable, IObject, ILinkContainer, IOwned, IHasID, IEventProvider, ILinkContainerEvent, IVerifiable

```

#### Inheritance

[object](https://learn.microsoft.com/dotnet/api/system.object) ← ObservableObject ← LinkableBase ← LinkContainer ← [MotorDesigner.EMForceSection.MethodBase](VM.Managed.DAFUL.GearTrain.MotorDesigner.EMForceSection.MethodBase.md) ← [MotorDesigner.EMForceSection.UserDefinedMethod](VM.Managed.DAFUL.GearTrain.MotorDesigner.EMForceSection.UserDefinedMethod.md)

#### Implements

IObservableObject, IDisposableObject, ILinkable, IObject, ILinkContainer, IOwned, IHasID, IEventProvider, ILinkContainerEvent, IVerifiable

#### Inherited Members

[MotorDesigner.EMForceSection.MethodBase.Initialize(Unit.ConvertFactor)](VM.Managed.DAFUL.GearTrain.MotorDesigner.EMForceSection.MethodBase.md#VM_Managed_DAFUL_GearTrain_MotorDesigner_EMForceSection_MethodBase_Initialize_VM_Unit_ConvertFactor_), [MotorDesigner.EMForceSection.MethodBase.TypeOfGeometryCreation](VM.Managed.DAFUL.GearTrain.MotorDesigner.EMForceSection.MethodBase.md#VM_Managed_DAFUL_GearTrain_MotorDesigner_EMForceSection_MethodBase_TypeOfGeometryCreation), [MotorDesigner.EMForceSection.MethodBase.Scale](VM.Managed.DAFUL.GearTrain.MotorDesigner.EMForceSection.MethodBase.md#VM_Managed_DAFUL_GearTrain_MotorDesigner_EMForceSection_MethodBase_Scale), [MotorDesigner.EMForceSection.MethodBase.RadialSpline](VM.Managed.DAFUL.GearTrain.MotorDesigner.EMForceSection.MethodBase.md#VM_Managed_DAFUL_GearTrain_MotorDesigner_EMForceSection_MethodBase_RadialSpline), [MotorDesigner.EMForceSection.MethodBase.TangentialSpline](VM.Managed.DAFUL.GearTrain.MotorDesigner.EMForceSection.MethodBase.md#VM_Managed_DAFUL_GearTrain_MotorDesigner_EMForceSection_MethodBase_TangentialSpline), LinkContainer.SetModified(), LinkContainer.raise\_OnUpdating(object, LinkEventArgs), LinkContainer.raise\_OnUpdate(object, LinkEventArgs), LinkContainer.raise\_OnDestroying(object, LinkEventArgs), LinkContainer.raise\_OnDestroy(object, LinkEventArgs), LinkContainer.raise\_OnAdded(object, AddToDocEventArgs), LinkContainer.raise\_OnRemoved(object, RemoveFromDocEventArgs), LinkContainer.GetTargetListForUpdate(), LinkContainer.SkipUpdateObjectImpl(), LinkContainer.Initialize(Unit.ConvertFactor), LinkContainer.SetFlagWhenXMLFile(string, bool), LinkContainer.IsSerializableEvent(Delegate), LinkContainer.CustomGetObjectData(SerializationInfo, StreamingContext), LinkContainer.GetSerializedData(SerializationInfo, StreamingContext), LinkContainer.LinkRequestUpdating(object, LinkEventArgs), LinkContainer.LinkRequestUpdate(object, LinkEventArgs), LinkContainer.LinkRequestDestroying(object, LinkEventArgs), LinkContainer.LinkRequestDestroy(object, LinkEventArgs), LinkContainer.LinkAddedToDocument(object, AddToDocEventArgs), LinkContainer.LinkRemovedFromDocument(object, RemoveFromDocEventArgs), LinkContainer.OnLinkReserved(ILink, object, EventArgs), LinkContainer.CanBeDestroy(object), LinkContainer.DisposeManagedResources(), LinkContainer.SetContainer(IOwned, bool), LinkContainer.OnChildUpdated(object, LinkEventArgs), LinkContainer.OnContainerDestroy(object, LinkEventArgs), LinkContainer.OnDeserialization(object), LinkContainer.Verify(VerifiedResult), LinkContainer.GetCopy(object), LinkContainer.Dispose(bool), LinkContainer.ClearChildInfoBeforeDeserialize, LinkContainer.Container, LinkContainer.Owner, LinkContainer.Document, LinkContainer.ID, LinkContainer.IsChildExternable, LinkContainer.IsExternable, LinkContainer.OnRemoved, LinkContainer.OnAdded, LinkContainer.OnDestroy, LinkContainer.OnDestroying, LinkContainer.OnUpdate, LinkContainer.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

### UserDefinedMethod()

Initializes a new instance of the  class.

```csharp
public UserDefinedMethod()

```

## Properties

### Harmonics

Gets or sets the harmonics.

```csharp
public MotorDesigner.EMForceSection.Harmonic[] Harmonics { get; set; }

```

#### Property Value

[MotorDesigner](VM.Managed.DAFUL.GearTrain.MotorDesigner.md).[EMForceSection](VM.Managed.DAFUL.GearTrain.MotorDesigner.EMForceSection.md).[Harmonic](VM.Managed.DAFUL.GearTrain.MotorDesigner.EMForceSection.Harmonic.md)\[\]

### NumberOfMagnetPole

Gets or sets the number of magnet pole.

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

```

#### Property Value

ExpressionValueVariable

### NumberOfPhase

Gets or sets the number of phase.

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

```

#### Property Value

ExpressionValueVariable

### RotorVectorSet

Gets or sets the vector set for rotor.

```csharp
public MotorDesigner.EMForceSection.VectorUserDefinedCreator[] RotorVectorSet { get; set; }

```

#### Property Value

[MotorDesigner](VM.Managed.DAFUL.GearTrain.MotorDesigner.md).[EMForceSection](VM.Managed.DAFUL.GearTrain.MotorDesigner.EMForceSection.md).[VectorUserDefinedCreator](VM.Managed.DAFUL.GearTrain.MotorDesigner.EMForceSection.VectorUserDefinedCreator.md)\[\]

### StatorVectorSet

Gets or sets the vector set for stator.

```csharp
public MotorDesigner.EMForceSection.VectorUserDefinedCreator[] StatorVectorSet { get; set; }

```

#### Property Value

[MotorDesigner](VM.Managed.DAFUL.GearTrain.MotorDesigner.md).[EMForceSection](VM.Managed.DAFUL.GearTrain.MotorDesigner.EMForceSection.md).[VectorUserDefinedCreator](VM.Managed.DAFUL.GearTrain.MotorDesigner.EMForceSection.VectorUserDefinedCreator.md)\[\]

### TNCurveSpline

Gets or sets the T-N curve spline.

```csharp
public Spline TNCurveSpline { get; set; }

```

#### Property Value

Spline

### TNCurveValue

Gets or sets the T-N curve.

```csharp
public SplineValue TNCurveValue { get; set; }

```

#### Property Value

SplineValue

### TypeOfGeometryCreation

Gets the method type.

```csharp
public override MotorDesigner.GeometryCreationType TypeOfGeometryCreation { get; }

```

#### Property Value

[MotorDesigner](VM.Managed.DAFUL.GearTrain.MotorDesigner.md).[GeometryCreationType](VM.Managed.DAFUL.GearTrain.MotorDesigner.GeometryCreationType.md)

## Methods

### CanBeDestroy(object)

Whether can be destroy or not.

```csharp
protected override bool CanBeDestroy(object objNotifier)

```

#### Parameters

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

The destroy object.

#### Returns

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

### Initialize(ConvertFactor)

Initializes member through unit convert factor.

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

```

#### Parameters

`factor` Unit.ConvertFactor

The unit convert factor.

### LinkRequestDestroying(object, LinkEventArgs)

The destroying event occured from the linked object.

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

```

#### Parameters

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

The linked object.

`arg` LinkEventArgs

The destroy event information.