    

 ## On this page

  

 

 # Interface ICanvas

 Last update: 09.03.2026 

<a id="VM_Models_Pre_ICanvas"></a>

Namespace: [VM.Models.Pre](VM.Models.Pre.md)  
Assembly: VM.Models.Pre.dll

```csharp
public interface ICanvas

```

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

## Properties

### <a id="VM_Models_Pre_ICanvas_Color"></a> Color

```csharp
Color Color { set; }

```

#### Property Value

Color

### <a id="VM_Models_Pre_ICanvas_LineWeight"></a> LineWeight

```csharp
double LineWeight { set; }

```

#### Property Value

double

### <a id="VM_Models_Pre_ICanvas_TextSize"></a> TextSize

```csharp
double TextSize { set; }

```

#### Property Value

double

### <a id="VM_Models_Pre_ICanvas_WireframeMode"></a> WireframeMode

```csharp
bool WireframeMode { set; }

```

#### Property Value

bool

## Methods

### <a id="VM_Models_Pre_ICanvas_Clear"></a> Clear()

```csharp
void Clear()

```

### <a id="VM_Models_Pre_ICanvas_DisplayTheFront"></a> DisplayTheFront()

```csharp
void DisplayTheFront()

```

### <a id="VM_Models_Pre_ICanvas_DisplayTheFront_System_Double_"></a> DisplayTheFront(double)

```csharp
void DisplayTheFront(double depthRange)

```

#### Parameters

`depthRange` double

### <a id="VM_Models_Pre_ICanvas_DrawLine_VM_Vector_VM_Vector_"></a> DrawLine(Vector, Vector)

```csharp
UIntPtr DrawLine(Vector start, Vector end)

```

#### Parameters

`start` Vector

`end` Vector

#### Returns

UIntPtr

### <a id="VM_Models_Pre_ICanvas_DrawMarker_VM_Vector_"></a> DrawMarker(Vector)

```csharp
UIntPtr DrawMarker(Vector vector)

```

#### Parameters

`vector` Vector

#### Returns

UIntPtr

### <a id="VM_Models_Pre_ICanvas_DrawText_VM_Vector_System_String_"></a> DrawText(Vector, string)

```csharp
UIntPtr DrawText(Vector vector, string text)

```

#### Parameters

`vector` Vector

`text` string

#### Returns

UIntPtr

### <a id="VM_Models_Pre_ICanvas_FastDrawLine_System_UIntPtr_System_UIntPtr_"></a> FastDrawLine(UIntPtr, UIntPtr)

```csharp
void FastDrawLine(UIntPtr start, UIntPtr end)

```

#### Parameters

`start` UIntPtr

`end` UIntPtr

### <a id="VM_Models_Pre_ICanvas_FastDrawShell_System_UIntPtr_System_UInt64_System_UIntPtr_System_UInt64_System_Double_"></a> FastDrawShell(UIntPtr, ulong, UIntPtr, ulong, double)

```csharp
void FastDrawShell(UIntPtr points, ulong nPoints, UIntPtr connectivities, ulong nConnectivities, double dScale)

```

#### Parameters

`points` UIntPtr

`nPoints` ulong

`connectivities` UIntPtr

`nConnectivities` ulong

`dScale` double

### <a id="VM_Models_Pre_ICanvas_GetSubCanvas_System_String_"></a> GetSubCanvas(string)

```csharp
ICanvas GetSubCanvas(string canvasName)

```

#### Parameters

`canvasName` string

#### Returns

[ICanvas](VM.Models.Pre.ICanvas.md)

### <a id="VM_Models_Pre_ICanvas_Instantiate_VM_Models_Pre_IHasKeyObject_VM_TMatrix_"></a> Instantiate(IHasKeyObject, TMatrix)

```csharp
void Instantiate(IHasKeyObject @object, TMatrix matrix)

```

#### Parameters

`object` [IHasKeyObject](VM.Models.Pre.IHasKeyObject.md)

`matrix` TMatrix

### <a id="VM_Models_Pre_ICanvas_SetMarkerSymbol_VM_Models_MarkerTypes_System_Double_"></a> SetMarkerSymbol(MarkerTypes, double)

```csharp
void SetMarkerSymbol(MarkerTypes markerType, double size)

```

#### Parameters

`markerType` MarkerTypes

`size` double