Show / Hide Table of Contents

# Struct ImDrawListPtr

##### Inherited Members

System.ValueType.Equals(System.Object)
System.ValueType.GetHashCode()
System.ValueType.ToString()
System.Object.Equals(System.Object, System.Object)
System.Object.ReferenceEquals(System.Object, System.Object)
System.Object.GetType()

###### Namespace: ImGuiNET

###### Assembly: ImGui.NET.dll

##### Syntax

    public struct ImDrawListPtr

### Constructors

| Improve this Doc View Source

#### ImDrawListPtr(ImDrawList*)

##### Declaration

    public ImDrawListPtr(ImDrawList*nativePtr)

##### Parameters

Type | Name | Description
--- | --- | ---
ImDrawList* | nativePtr |

| Improve this Doc View Source

#### ImDrawListPtr(IntPtr)

##### Declaration

    public ImDrawListPtr(IntPtr nativePtr)

##### Parameters

Type | Name | Description
--- | --- | ---
System.IntPtr | nativePtr |

### Properties

| Improve this Doc View Source

#### _ClipRectStack

##### Declaration

    public ImVector<Vector4> _ClipRectStack { get; }

##### Property Value

Type | Description
--- | ---
ImVector<System.Numerics.Vector4> |

| Improve this Doc View Source

#### _CmdHeader

##### Declaration

    public ImDrawCmdHeader _CmdHeader { get; }

##### Property Value

Type | Description
--- | ---
ImDrawCmdHeader |

| Improve this Doc View Source

#### _Data

##### Declaration

    public IntPtr _Data { get; }

##### Property Value

Type | Description
--- | ---
System.IntPtr |

| Improve this Doc View Source

#### _FringeScale

##### Declaration

    public float _FringeScale { get; }

##### Property Value

Type | Description
--- | ---
System.Single |

| Improve this Doc View Source

#### _IdxWritePtr

##### Declaration

    public IntPtr _IdxWritePtr { get; set; }

##### Property Value

Type | Description
--- | ---
System.IntPtr |

| Improve this Doc View Source

#### _OwnerName

##### Declaration

    public NullTerminatedString _OwnerName { get; }

##### Property Value

Type | Description
--- | ---
NullTerminatedString |

| Improve this Doc View Source

#### _Path

##### Declaration

    public ImVector<Vector2> _Path { get; }

##### Property Value

Type | Description
--- | ---
ImVector<System.Numerics.Vector2> |

| Improve this Doc View Source

#### _Splitter

##### Declaration

    public ImDrawListSplitter _Splitter { get; }

##### Property Value

Type | Description
--- | ---
ImDrawListSplitter |

| Improve this Doc View Source

#### _TextureIdStack

##### Declaration

    public ImVector<IntPtr> _TextureIdStack { get; }

##### Property Value

Type | Description
--- | ---
ImVector<System.IntPtr> |

| Improve this Doc View Source

#### _VtxCurrentIdx

##### Declaration

    public uint _VtxCurrentIdx { get; }

##### Property Value

Type | Description
--- | ---
System.UInt32 |

| Improve this Doc View Source

#### _VtxWritePtr

##### Declaration

    public ImDrawVertPtr _VtxWritePtr { get; }

##### Property Value

Type | Description
--- | ---
ImDrawVertPtr |

| Improve this Doc View Source

#### CmdBuffer

##### Declaration

    public ImPtrVector<ImDrawCmdPtr> CmdBuffer { get; }

##### Property Value

Type | Description
--- | ---
ImPtrVector<ImDrawCmdPtr> |

| Improve this Doc View Source

#### Flags

##### Declaration

    public ImDrawListFlags Flags { get; }

##### Property Value

Type | Description
--- | ---
ImDrawListFlags |

| Improve this Doc View Source

#### IdxBuffer

##### Declaration

    public ImVector<ushort> IdxBuffer { get; }

##### Property Value

Type | Description
--- | ---
ImVector<System.UInt16> |

| Improve this Doc View Source

#### NativePtr

##### Declaration

    public ImDrawList*NativePtr { get; }

##### Property Value

Type | Description
--- | ---
ImDrawList* |

| Improve this Doc View Source

#### VtxBuffer

##### Declaration

    public ImPtrVector<ImDrawVertPtr> VtxBuffer { get; }

##### Property Value

Type | Description
--- | ---
ImPtrVector<ImDrawVertPtr> |

### Methods

| Improve this Doc View Source

#### _CalcCircleAutoSegmentCount(Single)

##### Declaration

    public int _CalcCircleAutoSegmentCount(float radius)

##### Parameters

Type | Name | Description
--- | --- | ---
System.Single | radius |

##### Returns

Type | Description
--- | ---
System.Int32 |

| Improve this Doc View Source

#### _ClearFreeMemory()

##### Declaration

    public void _ClearFreeMemory()

| Improve this Doc View Source

#### _OnChangedClipRect()

##### Declaration

    public void _OnChangedClipRect()

| Improve this Doc View Source

#### _OnChangedTextureID()

##### Declaration

    public void _OnChangedTextureID()

| Improve this Doc View Source

#### _OnChangedVtxOffset()

##### Declaration

    public void _OnChangedVtxOffset()

| Improve this Doc View Source

#### _PathArcToFastEx(Vector2, Single, Int32, Int32, Int32)

##### Declaration

    public void _PathArcToFastEx(Vector2 center, float radius, int a_min_sample, int a_max_sample, int a_step)

##### Parameters

Type | Name | Description
--- | --- | ---
System.Numerics.Vector2 | center |
System.Single | radius |
System.Int32 | a_min_sample |
System.Int32 | a_max_sample |
System.Int32 | a_step |

| Improve this Doc View Source

#### _PathArcToN(Vector2, Single, Single, Single, Int32)

##### Declaration

    public void _PathArcToN(Vector2 center, float radius, float a_min, float a_max, int num_segments)

##### Parameters

Type | Name | Description
--- | --- | ---
System.Numerics.Vector2 | center |
System.Single | radius |
System.Single | a_min |
System.Single | a_max |
System.Int32 | num_segments |

| Improve this Doc View Source

#### _PopUnusedDrawCmd()

##### Declaration

    public void _PopUnusedDrawCmd()

| Improve this Doc View Source

#### _ResetForNewFrame()

##### Declaration

    public void _ResetForNewFrame()

| Improve this Doc View Source

#### AddBezierCubic(Vector2, Vector2, Vector2, Vector2, UInt32, Single)

##### Declaration

    public void AddBezierCubic(Vector2 p1, Vector2 p2, Vector2 p3, Vector2 p4, uint col, float thickness)

##### Parameters

Type | Name | Description
--- | --- | ---
System.Numerics.Vector2 | p1 |
System.Numerics.Vector2 | p2 |
System.Numerics.Vector2 | p3 |
System.Numerics.Vector2 | p4 |
System.UInt32 | col |
System.Single | thickness |

| Improve this Doc View Source

#### AddBezierCubic(Vector2, Vector2, Vector2, Vector2, UInt32, Single, Int32)

##### Declaration

    public void AddBezierCubic(Vector2 p1, Vector2 p2, Vector2 p3, Vector2 p4, uint col, float thickness, int num_segments)

##### Parameters

Type | Name | Description
--- | --- | ---
System.Numerics.Vector2 | p1 |
System.Numerics.Vector2 | p2 |
System.Numerics.Vector2 | p3 |
System.Numerics.Vector2 | p4 |
System.UInt32 | col |
System.Single | thickness |
System.Int32 | num_segments |

| Improve this Doc View Source

#### AddBezierQuadratic(Vector2, Vector2, Vector2, UInt32, Single)

##### Declaration

    public void AddBezierQuadratic(Vector2 p1, Vector2 p2, Vector2 p3, uint col, float thickness)

##### Parameters

Type | Name | Description
--- | --- | ---
System.Numerics.Vector2 | p1 |
System.Numerics.Vector2 | p2 |
System.Numerics.Vector2 | p3 |
System.UInt32 | col |
System.Single | thickness |

| Improve this Doc View Source

#### AddBezierQuadratic(Vector2, Vector2, Vector2, UInt32, Single, Int32)

##### Declaration

    public void AddBezierQuadratic(Vector2 p1, Vector2 p2, Vector2 p3, uint col, float thickness, int num_segments)

##### Parameters

Type | Name | Description
--- | --- | ---
System.Numerics.Vector2 | p1 |
System.Numerics.Vector2 | p2 |
System.Numerics.Vector2 | p3 |
System.UInt32 | col |
System.Single | thickness |
System.Int32 | num_segments |

| Improve this Doc View Source

#### AddCallback(IntPtr, IntPtr)

##### Declaration

    public void AddCallback(IntPtr callback, IntPtr callback_data)

##### Parameters

Type | Name | Description
--- | --- | ---
System.IntPtr | callback |
System.IntPtr | callback_data |

| Improve this Doc View Source

#### AddCircle(Vector2, Single, UInt32)

##### Declaration

    public void AddCircle(Vector2 center, float radius, uint col)

##### Parameters

Type | Name | Description
--- | --- | ---
System.Numerics.Vector2 | center |
System.Single | radius |
System.UInt32 | col |

| Improve this Doc View Source

#### AddCircle(Vector2, Single, UInt32, Int32)

##### Declaration

    public void AddCircle(Vector2 center, float radius, uint col, int num_segments)

##### Parameters

Type | Name | Description
--- | --- | ---
System.Numerics.Vector2 | center |
System.Single | radius |
System.UInt32 | col |
System.Int32 | num_segments |

| Improve this Doc View Source

#### AddCircle(Vector2, Single, UInt32, Int32, Single)

##### Declaration

    public void AddCircle(Vector2 center, float radius, uint col, int num_segments, float thickness)

##### Parameters

Type | Name | Description
--- | --- | ---
System.Numerics.Vector2 | center |
System.Single | radius |
System.UInt32 | col |
System.Int32 | num_segments |
System.Single | thickness |

| Improve this Doc View Source

#### AddCircleFilled(Vector2, Single, UInt32)

##### Declaration

    public void AddCircleFilled(Vector2 center, float radius, uint col)

##### Parameters

Type | Name | Description
--- | --- | ---
System.Numerics.Vector2 | center |
System.Single | radius |
System.UInt32 | col |

| Improve this Doc View Source

#### AddCircleFilled(Vector2, Single, UInt32, Int32)

##### Declaration

    public void AddCircleFilled(Vector2 center, float radius, uint col, int num_segments)

##### Parameters

Type | Name | Description
--- | --- | ---
System.Numerics.Vector2 | center |
System.Single | radius |
System.UInt32 | col |
System.Int32 | num_segments |

| Improve this Doc View Source

#### AddConvexPolyFilled(ref Vector2, Int32, UInt32)

##### Declaration

    public void AddConvexPolyFilled(ref Vector2 points, int num_points, uint col)

##### Parameters

Type | Name | Description
--- | --- | ---
System.Numerics.Vector2 | points |
System.Int32 | num_points |
System.UInt32 | col |

| Improve this Doc View Source

#### AddDrawCmd()

##### Declaration

    public void AddDrawCmd()

| Improve this Doc View Source

#### AddImage(IntPtr, Vector2, Vector2)

##### Declaration

    public void AddImage(IntPtr user_texture_id, Vector2 p_min, Vector2 p_max)

##### Parameters

Type | Name | Description
--- | --- | ---
System.IntPtr | user_texture_id |
System.Numerics.Vector2 | p_min |
System.Numerics.Vector2 | p_max |

| Improve this Doc View Source

#### AddImage(IntPtr, Vector2, Vector2, Vector2)

##### Declaration

    public void AddImage(IntPtr user_texture_id, Vector2 p_min, Vector2 p_max, Vector2 uv_min)

##### Parameters

Type | Name | Description
--- | --- | ---
System.IntPtr | user_texture_id |
System.Numerics.Vector2 | p_min |
System.Numerics.Vector2 | p_max |
System.Numerics.Vector2 | uv_min |

| Improve this Doc View Source

#### AddImage(IntPtr, Vector2, Vector2, Vector2, Vector2)

##### Declaration

    public void AddImage(IntPtr user_texture_id, Vector2 p_min, Vector2 p_max, Vector2 uv_min, Vector2 uv_max)

##### Parameters

Type | Name | Description
--- | --- | ---
System.IntPtr | user_texture_id |
System.Numerics.Vector2 | p_min |
System.Numerics.Vector2 | p_max |
System.Numerics.Vector2 | uv_min |
System.Numerics.Vector2 | uv_max |

| Improve this Doc View Source

#### AddImage(IntPtr, Vector2, Vector2, Vector2, Vector2, UInt32)

##### Declaration

    public void AddImage(IntPtr user_texture_id, Vector2 p_min, Vector2 p_max, Vector2 uv_min, Vector2 uv_max, uint col)

##### Parameters

Type | Name | Description
--- | --- | ---
System.IntPtr | user_texture_id |
System.Numerics.Vector2 | p_min |
System.Numerics.Vector2 | p_max |
System.Numerics.Vector2 | uv_min |
System.Numerics.Vector2 | uv_max |
System.UInt32 | col |

| Improve this Doc View Source

#### AddImageQuad(IntPtr, Vector2, Vector2, Vector2, Vector2)

##### Declaration

    public void AddImageQuad(IntPtr user_texture_id, Vector2 p1, Vector2 p2, Vector2 p3, Vector2 p4)

##### Parameters

Type | Name | Description
--- | --- | ---
System.IntPtr | user_texture_id |
System.Numerics.Vector2 | p1 |
System.Numerics.Vector2 | p2 |
System.Numerics.Vector2 | p3 |
System.Numerics.Vector2 | p4 |

| Improve this Doc View Source

#### AddImageQuad(IntPtr, Vector2, Vector2, Vector2, Vector2, Vector2)

##### Declaration

    public void AddImageQuad(IntPtr user_texture_id, Vector2 p1, Vector2 p2, Vector2 p3, Vector2 p4, Vector2 uv1)

##### Parameters

Type | Name | Description
--- | --- | ---
System.IntPtr | user_texture_id |
System.Numerics.Vector2 | p1 |
System.Numerics.Vector2 | p2 |
System.Numerics.Vector2 | p3 |
System.Numerics.Vector2 | p4 |
System.Numerics.Vector2 | uv1 |

| Improve this Doc View Source

#### AddImageQuad(IntPtr, Vector2, Vector2, Vector2, Vector2, Vector2, Vector2)

##### Declaration

    public void AddImageQuad(IntPtr user_texture_id, Vector2 p1, Vector2 p2, Vector2 p3, Vector2 p4, Vector2 uv1, Vector2 uv2)

##### Parameters

Type | Name | Description
--- | --- | ---
System.IntPtr | user_texture_id |
System.Numerics.Vector2 | p1 |
System.Numerics.Vector2 | p2 |
System.Numerics.Vector2 | p3 |
System.Numerics.Vector2 | p4 |
System.Numerics.Vector2 | uv1 |
System.Numerics.Vector2 | uv2 |

| Improve this Doc View Source

#### AddImageQuad(IntPtr, Vector2, Vector2, Vector2, Vector2, Vector2, Vector2, Vector2)

##### Declaration

    public void AddImageQuad(IntPtr user_texture_id, Vector2 p1, Vector2 p2, Vector2 p3, Vector2 p4, Vector2 uv1, Vector2 uv2, Vector2 uv3)

##### Parameters

Type | Name | Description
--- | --- | ---
System.IntPtr | user_texture_id |
System.Numerics.Vector2 | p1 |
System.Numerics.Vector2 | p2 |
System.Numerics.Vector2 | p3 |
System.Numerics.Vector2 | p4 |
System.Numerics.Vector2 | uv1 |
System.Numerics.Vector2 | uv2 |
System.Numerics.Vector2 | uv3 |

| Improve this Doc View Source

#### AddImageQuad(IntPtr, Vector2, Vector2, Vector2, Vector2, Vector2, Vector2, Vector2, Vector2)

##### Declaration

    public void AddImageQuad(IntPtr user_texture_id, Vector2 p1, Vector2 p2, Vector2 p3, Vector2 p4, Vector2 uv1, Vector2 uv2, Vector2 uv3, Vector2 uv4)

##### Parameters

Type | Name | Description
--- | --- | ---
System.IntPtr | user_texture_id |
System.Numerics.Vector2 | p1 |
System.Numerics.Vector2 | p2 |
System.Numerics.Vector2 | p3 |
System.Numerics.Vector2 | p4 |
System.Numerics.Vector2 | uv1 |
System.Numerics.Vector2 | uv2 |
System.Numerics.Vector2 | uv3 |
System.Numerics.Vector2 | uv4 |

| Improve this Doc View Source

#### AddImageQuad(IntPtr, Vector2, Vector2, Vector2, Vector2, Vector2, Vector2, Vector2, Vector2, UInt32)

##### Declaration

    public void AddImageQuad(IntPtr user_texture_id, Vector2 p1, Vector2 p2, Vector2 p3, Vector2 p4, Vector2 uv1, Vector2 uv2, Vector2 uv3, Vector2 uv4, uint col)

##### Parameters

Type | Name | Description
--- | --- | ---
System.IntPtr | user_texture_id |
System.Numerics.Vector2 | p1 |
System.Numerics.Vector2 | p2 |
System.Numerics.Vector2 | p3 |
System.Numerics.Vector2 | p4 |
System.Numerics.Vector2 | uv1 |
System.Numerics.Vector2 | uv2 |
System.Numerics.Vector2 | uv3 |
System.Numerics.Vector2 | uv4 |
System.UInt32 | col |

| Improve this Doc View Source

#### AddImageRounded(IntPtr, Vector2, Vector2, Vector2, Vector2, UInt32, Single)

##### Declaration

    public void AddImageRounded(IntPtr user_texture_id, Vector2 p_min, Vector2 p_max, Vector2 uv_min, Vector2 uv_max, uint col, float rounding)

##### Parameters

Type | Name | Description
--- | --- | ---
System.IntPtr | user_texture_id |
System.Numerics.Vector2 | p_min |
System.Numerics.Vector2 | p_max |
System.Numerics.Vector2 | uv_min |
System.Numerics.Vector2 | uv_max |
System.UInt32 | col |
System.Single | rounding |

| Improve this Doc View Source

#### AddImageRounded(IntPtr, Vector2, Vector2, Vector2, Vector2, UInt32, Single, ImDrawFlags)

##### Declaration

    public void AddImageRounded(IntPtr user_texture_id, Vector2 p_min, Vector2 p_max, Vector2 uv_min, Vector2 uv_max, uint col, float rounding, ImDrawFlags flags)

##### Parameters

Type | Name | Description
--- | --- | ---
System.IntPtr | user_texture_id |
System.Numerics.Vector2 | p_min |
System.Numerics.Vector2 | p_max |
System.Numerics.Vector2 | uv_min |
System.Numerics.Vector2 | uv_max |
System.UInt32 | col |
System.Single | rounding |
ImDrawFlags | flags |

| Improve this Doc View Source

#### AddImageRounded(IntPtr, Vector2, Vector2, Vector2, Vector2, UInt32, Single, Int32)

##### Declaration

    [Obsolete("Use method with non-primitive (enum) arguments instead.")]
    public void AddImageRounded(IntPtr user_texture_id, Vector2 p_min, Vector2 p_max, Vector2 uv_min, Vector2 uv_max, uint col, float rounding, int flags)

##### Parameters

Type | Name | Description
--- | --- | ---
System.IntPtr | user_texture_id |
System.Numerics.Vector2 | p_min |
System.Numerics.Vector2 | p_max |
System.Numerics.Vector2 | uv_min |
System.Numerics.Vector2 | uv_max |
System.UInt32 | col |
System.Single | rounding |
System.Int32 | flags |

| Improve this Doc View Source

#### AddLine(Vector2, Vector2, UInt32)

##### Declaration

    public void AddLine(Vector2 p1, Vector2 p2, uint col)

##### Parameters

Type | Name | Description
--- | --- | ---
System.Numerics.Vector2 | p1 |
System.Numerics.Vector2 | p2 |
System.UInt32 | col |

| Improve this Doc View Source

#### AddLine(Vector2, Vector2, UInt32, Single)

##### Declaration

    public void AddLine(Vector2 p1, Vector2 p2, uint col, float thickness)

##### Parameters

Type | Name | Description
--- | --- | ---
System.Numerics.Vector2 | p1 |
System.Numerics.Vector2 | p2 |
System.UInt32 | col |
System.Single | thickness |

| Improve this Doc View Source

#### AddNgon(Vector2, Single, UInt32, Int32)

##### Declaration

    public void AddNgon(Vector2 center, float radius, uint col, int num_segments)

##### Parameters

Type | Name | Description
--- | --- | ---
System.Numerics.Vector2 | center |
System.Single | radius |
System.UInt32 | col |
System.Int32 | num_segments |

| Improve this Doc View Source

#### AddNgon(Vector2, Single, UInt32, Int32, Single)

##### Declaration

    public void AddNgon(Vector2 center, float radius, uint col, int num_segments, float thickness)

##### Parameters

Type | Name | Description
--- | --- | ---
System.Numerics.Vector2 | center |
System.Single | radius |
System.UInt32 | col |
System.Int32 | num_segments |
System.Single | thickness |

| Improve this Doc View Source

#### AddNgonFilled(Vector2, Single, UInt32, Int32)

##### Declaration

    public void AddNgonFilled(Vector2 center, float radius, uint col, int num_segments)

##### Parameters

Type | Name | Description
--- | --- | ---
System.Numerics.Vector2 | center |
System.Single | radius |
System.UInt32 | col |
System.Int32 | num_segments |

| Improve this Doc View Source

#### AddPolyline(ref Vector2, Int32, UInt32, ImDrawFlags, Single)

##### Declaration

    public void AddPolyline(ref Vector2 points, int num_points, uint col, ImDrawFlags flags, float thickness)

##### Parameters

Type | Name | Description
--- | --- | ---
System.Numerics.Vector2 | points |
System.Int32 | num_points |
System.UInt32 | col |
ImDrawFlags | flags |
System.Single | thickness |

| Improve this Doc View Source

#### AddPolyline(ref Vector2, Int32, UInt32, Int32, Single)

##### Declaration

    [Obsolete("Use method with non-primitive (enum) arguments instead.")]
    public void AddPolyline(ref Vector2 points, int num_points, uint col, int flags, float thickness)

##### Parameters

Type | Name | Description
--- | --- | ---
System.Numerics.Vector2 | points |
System.Int32 | num_points |
System.UInt32 | col |
System.Int32 | flags |
System.Single | thickness |

| Improve this Doc View Source

#### AddQuad(Vector2, Vector2, Vector2, Vector2, UInt32)

##### Declaration

    public void AddQuad(Vector2 p1, Vector2 p2, Vector2 p3, Vector2 p4, uint col)

##### Parameters

Type | Name | Description
--- | --- | ---
System.Numerics.Vector2 | p1 |
System.Numerics.Vector2 | p2 |
System.Numerics.Vector2 | p3 |
System.Numerics.Vector2 | p4 |
System.UInt32 | col |

| Improve this Doc View Source

#### AddQuad(Vector2, Vector2, Vector2, Vector2, UInt32, Single)

##### Declaration

    public void AddQuad(Vector2 p1, Vector2 p2, Vector2 p3, Vector2 p4, uint col, float thickness)

##### Parameters

Type | Name | Description
--- | --- | ---
System.Numerics.Vector2 | p1 |
System.Numerics.Vector2 | p2 |
System.Numerics.Vector2 | p3 |
System.Numerics.Vector2 | p4 |
System.UInt32 | col |
System.Single | thickness |

| Improve this Doc View Source

#### AddQuadFilled(Vector2, Vector2, Vector2, Vector2, UInt32)

##### Declaration

    public void AddQuadFilled(Vector2 p1, Vector2 p2, Vector2 p3, Vector2 p4, uint col)

##### Parameters

Type | Name | Description
--- | --- | ---
System.Numerics.Vector2 | p1 |
System.Numerics.Vector2 | p2 |
System.Numerics.Vector2 | p3 |
System.Numerics.Vector2 | p4 |
System.UInt32 | col |

| Improve this Doc View Source

#### AddRect(Vector2, Vector2, UInt32)

##### Declaration

    public void AddRect(Vector2 p_min, Vector2 p_max, uint col)

##### Parameters

Type | Name | Description
--- | --- | ---
System.Numerics.Vector2 | p_min |
System.Numerics.Vector2 | p_max |
System.UInt32 | col |

| Improve this Doc View Source

#### AddRect(Vector2, Vector2, UInt32, Single)

##### Declaration

    public void AddRect(Vector2 p_min, Vector2 p_max, uint col, float rounding)

##### Parameters

Type | Name | Description
--- | --- | ---
System.Numerics.Vector2 | p_min |
System.Numerics.Vector2 | p_max |
System.UInt32 | col |
System.Single | rounding |

| Improve this Doc View Source

#### AddRect(Vector2, Vector2, UInt32, Single, ImDrawFlags)

##### Declaration

    public void AddRect(Vector2 p_min, Vector2 p_max, uint col, float rounding, ImDrawFlags flags)

##### Parameters

Type | Name | Description
--- | --- | ---
System.Numerics.Vector2 | p_min |
System.Numerics.Vector2 | p_max |
System.UInt32 | col |
System.Single | rounding |
ImDrawFlags | flags |

| Improve this Doc View Source

#### AddRect(Vector2, Vector2, UInt32, Single, ImDrawFlags, Single)

##### Declaration

    public void AddRect(Vector2 p_min, Vector2 p_max, uint col, float rounding, ImDrawFlags flags, float thickness)

##### Parameters

Type | Name | Description
--- | --- | ---
System.Numerics.Vector2 | p_min |
System.Numerics.Vector2 | p_max |
System.UInt32 | col |
System.Single | rounding |
ImDrawFlags | flags |
System.Single | thickness |

| Improve this Doc View Source

#### AddRect(Vector2, Vector2, UInt32, Single, Int32)

##### Declaration

    [Obsolete("Use method with non-primitive (enum) arguments instead.")]
    public void AddRect(Vector2 p_min, Vector2 p_max, uint col, float rounding, int flags)

##### Parameters

Type | Name | Description
--- | --- | ---
System.Numerics.Vector2 | p_min |
System.Numerics.Vector2 | p_max |
System.UInt32 | col |
System.Single | rounding |
System.Int32 | flags |

| Improve this Doc View Source

#### AddRect(Vector2, Vector2, UInt32, Single, Int32, Single)

##### Declaration

    [Obsolete("Use method with non-primitive (enum) arguments instead.")]
    public void AddRect(Vector2 p_min, Vector2 p_max, uint col, float rounding, int flags, float thickness)

##### Parameters

Type | Name | Description
--- | --- | ---
System.Numerics.Vector2 | p_min |
System.Numerics.Vector2 | p_max |
System.UInt32 | col |
System.Single | rounding |
System.Int32 | flags |
System.Single | thickness |

| Improve this Doc View Source

#### AddRectFilled(Vector2, Vector2, UInt32)

##### Declaration

    public void AddRectFilled(Vector2 p_min, Vector2 p_max, uint col)

##### Parameters

Type | Name | Description
--- | --- | ---
System.Numerics.Vector2 | p_min |
System.Numerics.Vector2 | p_max |
System.UInt32 | col |

| Improve this Doc View Source

#### AddRectFilled(Vector2, Vector2, UInt32, Single)

##### Declaration

    public void AddRectFilled(Vector2 p_min, Vector2 p_max, uint col, float rounding)

##### Parameters

Type | Name | Description
--- | --- | ---
System.Numerics.Vector2 | p_min |
System.Numerics.Vector2 | p_max |
System.UInt32 | col |
System.Single | rounding |

| Improve this Doc View Source

#### AddRectFilled(Vector2, Vector2, UInt32, Single, ImDrawFlags)

##### Declaration

    public void AddRectFilled(Vector2 p_min, Vector2 p_max, uint col, float rounding, ImDrawFlags flags)

##### Parameters

Type | Name | Description
--- | --- | ---
System.Numerics.Vector2 | p_min |
System.Numerics.Vector2 | p_max |
System.UInt32 | col |
System.Single | rounding |
ImDrawFlags | flags |

| Improve this Doc View Source

#### AddRectFilled(Vector2, Vector2, UInt32, Single, Int32)

##### Declaration

    [Obsolete("Use method with non-primitive (enum) arguments instead.")]
    public void AddRectFilled(Vector2 p_min, Vector2 p_max, uint col, float rounding, int flags)

##### Parameters

Type | Name | Description
--- | --- | ---
System.Numerics.Vector2 | p_min |
System.Numerics.Vector2 | p_max |
System.UInt32 | col |
System.Single | rounding |
System.Int32 | flags |

| Improve this Doc View Source

#### AddRectFilledMultiColor(Vector2, Vector2, UInt32, UInt32, UInt32, UInt32)

##### Declaration

    public void AddRectFilledMultiColor(Vector2 p_min, Vector2 p_max, uint col_upr_left, uint col_upr_right, uint col_bot_right, uint col_bot_left)

##### Parameters

Type | Name | Description
--- | --- | ---
System.Numerics.Vector2 | p_min |
System.Numerics.Vector2 | p_max |
System.UInt32 | col_upr_left |
System.UInt32 | col_upr_right |
System.UInt32 | col_bot_right |
System.UInt32 | col_bot_left |

| Improve this Doc View Source

#### AddText(ImFontPtr, Single, Vector2, UInt32, String)

##### Declaration

    public void AddText(ImFontPtr font, float font_size, Vector2 pos, uint col, string text_begin)

##### Parameters

Type | Name | Description
--- | --- | ---
ImFontPtr | font |
System.Single | font_size |
System.Numerics.Vector2 | pos |
System.UInt32 | col |
System.String | text_begin |

| Improve this Doc View Source

#### AddText(Vector2, UInt32, String)

##### Declaration

    public void AddText(Vector2 pos, uint col, string text_begin)

##### Parameters

Type | Name | Description
--- | --- | ---
System.Numerics.Vector2 | pos |
System.UInt32 | col |
System.String | text_begin |

| Improve this Doc View Source

#### AddTriangle(Vector2, Vector2, Vector2, UInt32)

##### Declaration

    public void AddTriangle(Vector2 p1, Vector2 p2, Vector2 p3, uint col)

##### Parameters

Type | Name | Description
--- | --- | ---
System.Numerics.Vector2 | p1 |
System.Numerics.Vector2 | p2 |
System.Numerics.Vector2 | p3 |
System.UInt32 | col |

| Improve this Doc View Source

#### AddTriangle(Vector2, Vector2, Vector2, UInt32, Single)

##### Declaration

    public void AddTriangle(Vector2 p1, Vector2 p2, Vector2 p3, uint col, float thickness)

##### Parameters

Type | Name | Description
--- | --- | ---
System.Numerics.Vector2 | p1 |
System.Numerics.Vector2 | p2 |
System.Numerics.Vector2 | p3 |
System.UInt32 | col |
System.Single | thickness |

| Improve this Doc View Source

#### AddTriangleFilled(Vector2, Vector2, Vector2, UInt32)

##### Declaration

    public void AddTriangleFilled(Vector2 p1, Vector2 p2, Vector2 p3, uint col)

##### Parameters

Type | Name | Description
--- | --- | ---
System.Numerics.Vector2 | p1 |
System.Numerics.Vector2 | p2 |
System.Numerics.Vector2 | p3 |
System.UInt32 | col |

| Improve this Doc View Source

#### ChannelsMerge()

##### Declaration

    public void ChannelsMerge()

| Improve this Doc View Source

#### ChannelsSetCurrent(Int32)

##### Declaration

    public void ChannelsSetCurrent(int n)

##### Parameters

Type | Name | Description
--- | --- | ---
System.Int32 | n |

| Improve this Doc View Source

#### ChannelsSplit(Int32)

##### Declaration

    public void ChannelsSplit(int count)

##### Parameters

Type | Name | Description
--- | --- | ---
System.Int32 | count |

| Improve this Doc View Source

#### CloneOutput()

##### Declaration

    public ImDrawListPtr CloneOutput()

##### Returns

Type | Description
--- | ---
ImDrawListPtr |

| Improve this Doc View Source

#### Destroy()

##### Declaration

    public void Destroy()

| Improve this Doc View Source

#### GetClipRectMax()

##### Declaration

    public Vector2 GetClipRectMax()

##### Returns

Type | Description
--- | ---
System.Numerics.Vector2 |

| Improve this Doc View Source

#### GetClipRectMin()

##### Declaration

    public Vector2 GetClipRectMin()

##### Returns

Type | Description
--- | ---
System.Numerics.Vector2 |

| Improve this Doc View Source

#### PathArcTo(Vector2, Single, Single, Single)

##### Declaration

    public void PathArcTo(Vector2 center, float radius, float a_min, float a_max)

##### Parameters

Type | Name | Description
--- | --- | ---
System.Numerics.Vector2 | center |
System.Single | radius |
System.Single | a_min |
System.Single | a_max |

| Improve this Doc View Source

#### PathArcTo(Vector2, Single, Single, Single, Int32)

##### Declaration

    public void PathArcTo(Vector2 center, float radius, float a_min, float a_max, int num_segments)

##### Parameters

Type | Name | Description
--- | --- | ---
System.Numerics.Vector2 | center |
System.Single | radius |
System.Single | a_min |
System.Single | a_max |
System.Int32 | num_segments |

| Improve this Doc View Source

#### PathArcToFast(Vector2, Single, Int32, Int32)

##### Declaration

    public void PathArcToFast(Vector2 center, float radius, int a_min_of_12, int a_max_of_12)

##### Parameters

Type | Name | Description
--- | --- | ---
System.Numerics.Vector2 | center |
System.Single | radius |
System.Int32 | a_min_of_12 |
System.Int32 | a_max_of_12 |

| Improve this Doc View Source

#### PathBezierCubicCurveTo(Vector2, Vector2, Vector2)

##### Declaration

    public void PathBezierCubicCurveTo(Vector2 p2, Vector2 p3, Vector2 p4)

##### Parameters

Type | Name | Description
--- | --- | ---
System.Numerics.Vector2 | p2 |
System.Numerics.Vector2 | p3 |
System.Numerics.Vector2 | p4 |

| Improve this Doc View Source

#### PathBezierCubicCurveTo(Vector2, Vector2, Vector2, Int32)

##### Declaration

    public void PathBezierCubicCurveTo(Vector2 p2, Vector2 p3, Vector2 p4, int num_segments)

##### Parameters

Type | Name | Description
--- | --- | ---
System.Numerics.Vector2 | p2 |
System.Numerics.Vector2 | p3 |
System.Numerics.Vector2 | p4 |
System.Int32 | num_segments |

| Improve this Doc View Source

#### PathBezierQuadraticCurveTo(Vector2, Vector2)

##### Declaration

    public void PathBezierQuadraticCurveTo(Vector2 p2, Vector2 p3)

##### Parameters

Type | Name | Description
--- | --- | ---
System.Numerics.Vector2 | p2 |
System.Numerics.Vector2 | p3 |

| Improve this Doc View Source

#### PathBezierQuadraticCurveTo(Vector2, Vector2, Int32)

##### Declaration

    public void PathBezierQuadraticCurveTo(Vector2 p2, Vector2 p3, int num_segments)

##### Parameters

Type | Name | Description
--- | --- | ---
System.Numerics.Vector2 | p2 |
System.Numerics.Vector2 | p3 |
System.Int32 | num_segments |

| Improve this Doc View Source

#### PathClear()

##### Declaration

    public void PathClear()

| Improve this Doc View Source

#### PathFillConvex(UInt32)

##### Declaration

    public void PathFillConvex(uint col)

##### Parameters

Type | Name | Description
--- | --- | ---
System.UInt32 | col |

| Improve this Doc View Source

#### PathLineTo(Vector2)

##### Declaration

    public void PathLineTo(Vector2 pos)

##### Parameters

Type | Name | Description
--- | --- | ---
System.Numerics.Vector2 | pos |

| Improve this Doc View Source

#### PathLineToMergeDuplicate(Vector2)

##### Declaration

    public void PathLineToMergeDuplicate(Vector2 pos)

##### Parameters

Type | Name | Description
--- | --- | ---
System.Numerics.Vector2 | pos |

| Improve this Doc View Source

#### PathRect(Vector2, Vector2)

##### Declaration

    public void PathRect(Vector2 rect_min, Vector2 rect_max)

##### Parameters

Type | Name | Description
--- | --- | ---
System.Numerics.Vector2 | rect_min |
System.Numerics.Vector2 | rect_max |

| Improve this Doc View Source

#### PathRect(Vector2, Vector2, Single)

##### Declaration

    public void PathRect(Vector2 rect_min, Vector2 rect_max, float rounding)

##### Parameters

Type | Name | Description
--- | --- | ---
System.Numerics.Vector2 | rect_min |
System.Numerics.Vector2 | rect_max |
System.Single | rounding |

| Improve this Doc View Source

#### PathRect(Vector2, Vector2, Single, ImDrawFlags)

##### Declaration

    public void PathRect(Vector2 rect_min, Vector2 rect_max, float rounding, ImDrawFlags flags)

##### Parameters

Type | Name | Description
--- | --- | ---
System.Numerics.Vector2 | rect_min |
System.Numerics.Vector2 | rect_max |
System.Single | rounding |
ImDrawFlags | flags |

| Improve this Doc View Source

#### PathRect(Vector2, Vector2, Single, Int32)

##### Declaration

    [Obsolete("Use method with non-primitive (enum) arguments instead.")]
    public void PathRect(Vector2 rect_min, Vector2 rect_max, float rounding, int flags)

##### Parameters

Type | Name | Description
--- | --- | ---
System.Numerics.Vector2 | rect_min |
System.Numerics.Vector2 | rect_max |
System.Single | rounding |
System.Int32 | flags |

| Improve this Doc View Source

#### PathStroke(UInt32)

##### Declaration

    public void PathStroke(uint col)

##### Parameters

Type | Name | Description
--- | --- | ---
System.UInt32 | col |

| Improve this Doc View Source

#### PathStroke(UInt32, ImDrawFlags)

##### Declaration

    public void PathStroke(uint col, ImDrawFlags flags)

##### Parameters

Type | Name | Description
--- | --- | ---
System.UInt32 | col |
ImDrawFlags | flags |

| Improve this Doc View Source

#### PathStroke(UInt32, ImDrawFlags, Single)

##### Declaration

    public void PathStroke(uint col, ImDrawFlags flags, float thickness)

##### Parameters

Type | Name | Description
--- | --- | ---
System.UInt32 | col |
ImDrawFlags | flags |
System.Single | thickness |

| Improve this Doc View Source

#### PathStroke(UInt32, Int32)

##### Declaration

    [Obsolete("Use method with non-primitive (enum) arguments instead.")]
    public void PathStroke(uint col, int flags)

##### Parameters

Type | Name | Description
--- | --- | ---
System.UInt32 | col |
System.Int32 | flags |

| Improve this Doc View Source

#### PathStroke(UInt32, Int32, Single)

##### Declaration

    [Obsolete("Use method with non-primitive (enum) arguments instead.")]
    public void PathStroke(uint col, int flags, float thickness)

##### Parameters

Type | Name | Description
--- | --- | ---
System.UInt32 | col |
System.Int32 | flags |
System.Single | thickness |

| Improve this Doc View Source

#### PopClipRect()

##### Declaration

    public void PopClipRect()

| Improve this Doc View Source

#### PopTextureID()

##### Declaration

    public void PopTextureID()

| Improve this Doc View Source

#### PrimQuadUV(Vector2, Vector2, Vector2, Vector2, Vector2, Vector2, Vector2, Vector2, UInt32)

##### Declaration

    public void PrimQuadUV(Vector2 a, Vector2 b, Vector2 c, Vector2 d, Vector2 uv_a, Vector2 uv_b, Vector2 uv_c, Vector2 uv_d, uint col)

##### Parameters

Type | Name | Description
--- | --- | ---
System.Numerics.Vector2 | a |
System.Numerics.Vector2 | b |
System.Numerics.Vector2 | c |
System.Numerics.Vector2 | d |
System.Numerics.Vector2 | uv_a |
System.Numerics.Vector2 | uv_b |
System.Numerics.Vector2 | uv_c |
System.Numerics.Vector2 | uv_d |
System.UInt32 | col |

| Improve this Doc View Source

#### PrimRect(Vector2, Vector2, UInt32)

##### Declaration

    public void PrimRect(Vector2 a, Vector2 b, uint col)

##### Parameters

Type | Name | Description
--- | --- | ---
System.Numerics.Vector2 | a |
System.Numerics.Vector2 | b |
System.UInt32 | col |

| Improve this Doc View Source

#### PrimRectUV(Vector2, Vector2, Vector2, Vector2, UInt32)

##### Declaration

    public void PrimRectUV(Vector2 a, Vector2 b, Vector2 uv_a, Vector2 uv_b, uint col)

##### Parameters

Type | Name | Description
--- | --- | ---
System.Numerics.Vector2 | a |
System.Numerics.Vector2 | b |
System.Numerics.Vector2 | uv_a |
System.Numerics.Vector2 | uv_b |
System.UInt32 | col |

| Improve this Doc View Source

#### PrimReserve(Int32, Int32)

##### Declaration

    public void PrimReserve(int idx_count, int vtx_count)

##### Parameters

Type | Name | Description
--- | --- | ---
System.Int32 | idx_count |
System.Int32 | vtx_count |

| Improve this Doc View Source

#### PrimUnreserve(Int32, Int32)

##### Declaration

    public void PrimUnreserve(int idx_count, int vtx_count)

##### Parameters

Type | Name | Description
--- | --- | ---
System.Int32 | idx_count |
System.Int32 | vtx_count |

| Improve this Doc View Source

#### PrimVtx(Vector2, Vector2, UInt32)

##### Declaration

    public void PrimVtx(Vector2 pos, Vector2 uv, uint col)

##### Parameters

Type | Name | Description
--- | --- | ---
System.Numerics.Vector2 | pos |
System.Numerics.Vector2 | uv |
System.UInt32 | col |

| Improve this Doc View Source

#### PrimWriteIdx(UInt16)

##### Declaration

    public void PrimWriteIdx(ushort idx)

##### Parameters

Type | Name | Description
--- | --- | ---
System.UInt16 | idx |

| Improve this Doc View Source

#### PrimWriteVtx(Vector2, Vector2, UInt32)

##### Declaration

    public void PrimWriteVtx(Vector2 pos, Vector2 uv, uint col)

##### Parameters

Type | Name | Description
--- | --- | ---
System.Numerics.Vector2 | pos |
System.Numerics.Vector2 | uv |
System.UInt32 | col |

| Improve this Doc View Source

#### PushClipRect(Vector2, Vector2)

##### Declaration

    public void PushClipRect(Vector2 clip_rect_min, Vector2 clip_rect_max)

##### Parameters

Type | Name | Description
--- | --- | ---
System.Numerics.Vector2 | clip_rect_min |
System.Numerics.Vector2 | clip_rect_max |

| Improve this Doc View Source

#### PushClipRect(Vector2, Vector2, Boolean)

##### Declaration

    public void PushClipRect(Vector2 clip_rect_min, Vector2 clip_rect_max, bool intersect_with_current_clip_rect)

##### Parameters

Type | Name | Description
--- | --- | ---
System.Numerics.Vector2 | clip_rect_min |
System.Numerics.Vector2 | clip_rect_max |
System.Boolean | intersect_with_current_clip_rect |

| Improve this Doc View Source

#### PushClipRectFullScreen()

##### Declaration

    public void PushClipRectFullScreen()

| Improve this Doc View Source

#### PushTextureID(IntPtr)

##### Declaration

    public void PushTextureID(IntPtr texture_id)

##### Parameters

Type | Name | Description
--- | --- | ---
System.IntPtr | texture_id |

### Operators

| Improve this Doc View Source

#### Implicit(ImDrawList* to ImDrawListPtr)

##### Declaration

    public static implicit operator ImDrawListPtr(ImDrawList*nativePtr)

##### Parameters

Type | Name | Description
--- | --- | ---
ImDrawList* | nativePtr |

##### Returns

Type | Description
--- | ---
ImDrawListPtr |

| Improve this Doc View Source

#### Implicit(ImDrawListPtr to ImDrawList*)

##### Declaration

    public static implicit operator ImDrawList*(ImDrawListPtr wrappedPtr)

##### Parameters

Type | Name | Description
--- | --- | ---
ImDrawListPtr | wrappedPtr |

##### Returns

Type | Description
--- | ---
ImDrawList* |

| Improve this Doc View Source

#### Implicit(IntPtr to ImDrawListPtr)

##### Declaration

    public static implicit operator ImDrawListPtr(IntPtr nativePtr)

##### Parameters

Type | Name | Description
--- | --- | ---
System.IntPtr | nativePtr |

##### Returns

Type | Description
--- | ---
ImDrawListPtr |