    

 ## On this page

  

 

 # Class Edge

 Last update: 16.07.2025 

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

```csharp
public class Edge : Topology, ITopology, IHasID, ISelected

```

#### Inheritance

[object](https://learn.microsoft.com/dotnet/api/system.object) ← [KernelObject](VM.CAD.Kernel.KernelObject.md) ← [Entity](VM.CAD.Kernel.Entity.md) ← [Topology](VM.CAD.Kernel.Topology.md) ← [Edge](VM.CAD.Kernel.Edge.md)

#### Implements

[ITopology](VM.CAD.Kernel.ITopology.md), IHasID, ISelected

#### Inherited Members

[Topology.GetTopologyType(UIntPtr)](VM.CAD.Kernel.Topology.md#VM_CAD_Kernel_Topology_GetTopologyType_System_UIntPtr_), [Topology.GetDefaultPoint()](VM.CAD.Kernel.Topology.md#VM_CAD_Kernel_Topology_GetDefaultPoint), [Topology.DisposeManagedResource()](VM.CAD.Kernel.Topology.md#VM_CAD_Kernel_Topology_DisposeManagedResource), [Topology.IsSelected](VM.CAD.Kernel.Topology.md#VM_CAD_Kernel_Topology_IsSelected), [Topology.ParentBodyKey](VM.CAD.Kernel.Topology.md#VM_CAD_Kernel_Topology_ParentBodyKey), [Entity.PID](VM.CAD.Kernel.Entity.md#VM_CAD_Kernel_Entity_PID), [KernelObject.VMK\_ARGUMENT\_NULL](VM.CAD.Kernel.KernelObject.md#VM_CAD_Kernel_KernelObject_VMK_ARGUMENT_NULL), [KernelObject.VMK\_ARGUMENT\_TYPE](VM.CAD.Kernel.KernelObject.md#VM_CAD_Kernel_KernelObject_VMK_ARGUMENT_TYPE), [KernelObject.VMK\_OK](VM.CAD.Kernel.KernelObject.md#VM_CAD_Kernel_KernelObject_VMK_OK), [KernelObject.Dispose()](VM.CAD.Kernel.KernelObject.md#VM_CAD_Kernel_KernelObject_Dispose), [KernelObject.Execute(Func&lt;int&gt;)](VM.CAD.Kernel.KernelObject.md#VM_CAD_Kernel_KernelObject_Execute_System_Func_System_Int32__), [KernelObject.GetFrom&lt;TResult&gt;(KernelObject.delGetFrom&lt;TResult&gt;, bool)](VM.CAD.Kernel.KernelObject.md#VM_CAD_Kernel_KernelObject_GetFrom__1_VM_CAD_Kernel_KernelObject_delGetFrom___0__System_Boolean_), [KernelObject.DisposeManagedResource()](VM.CAD.Kernel.KernelObject.md#VM_CAD_Kernel_KernelObject_DisposeManagedResource), [KernelObject.DisposeUnmanagedResource()](VM.CAD.Kernel.KernelObject.md#VM_CAD_Kernel_KernelObject_DisposeUnmanagedResource), [KernelObject.Key](VM.CAD.Kernel.KernelObject.md#VM_CAD_Kernel_KernelObject_Key)

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

### Edge(UIntPtr, bool)

```csharp
public Edge(UIntPtr key, bool isLock = true)

```

#### Parameters

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

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

## Properties

### IsCircle

```csharp
public bool IsCircle { get; }

```

#### Property Value

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

## Methods

### GetDefaultPoint()

```csharp
public override Vector GetDefaultPoint()

```

#### Returns

Vector

### GetEllipseCenterPoint()

```csharp
public Vector GetEllipseCenterPoint()

```

#### Returns

Vector

### GetNormalDirection()

```csharp
public Vector GetNormalDirection()

```

#### Returns

Vector

### GetPointOnEdge(double)

```csharp
public Vector GetPointOnEdge(double u)

```

#### Parameters

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

#### Returns

Vector

### GetTangentialDirection(double)

```csharp
public Vector GetTangentialDirection(double u)

```

#### Parameters

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

#### Returns

Vector

### IsEdge(UIntPtr)

```csharp
public static bool IsEdge(UIntPtr key)

```

#### Parameters

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

#### Returns

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