Package imgui
Class ImDrawList
java.lang.Object
imgui.ImDrawList
public final class ImDrawList
extends java.lang.Object
Draw command list
This is the low-level list of polygons that ImGui:: functions are filling. At the end of the frame,
all command lists are passed to your ImGuiIO::RenderDrawListFn function for rendering.
Each dear imgui window contains its own ImDrawList. You can use ImGui::GetWindowDrawList() to
access the current window draw list and draw custom primitives.
You can interleave normal ImGui:: calls and adding primitives to the current draw list.
All positions are generally in pixel coordinates (top-left at (0,0), bottom-right at io.DisplaySize),
but you are totally free to apply whatever transformation matrix to want to the data (if you apply such transformation you'll want to apply it to ClipRect as well)
Important: Primitives are always added to the list and not culled (culling is done at higher-level by ImGui:: functions), if you use this API a lot consider coarse culling your drawn objects.
-
Field Summary
Fields Modifier and Type Field Description static int
TYPE_BACKGROUND
static int
TYPE_FOREGROUND
static int
TYPE_WINDOW
-
Method Summary
Modifier and Type Method Description void
addBezierCurve(float pos0X, float pos0Y, float cp0X, float cp0Y, float cp1X, float cp1Y, float pos1X, float pos1Y, int col, float thickness)
void
addBezierCurve(float pos0X, float pos0Y, float cp0X, float cp0Y, float cp1X, float cp1Y, float pos1X, float pos1Y, int col, float thickness, int numSegments)
void
addCircle(float centreX, float centreY, float radius, int col)
void
addCircle(float centreX, float centreY, float radius, int col, int numSegments)
void
addCircle(float centreX, float centreY, float radius, int col, int numSegments, float thickness)
void
addCircleFilled(float centreX, float centreY, float radius, int col)
void
addCircleFilled(float centreX, float centreY, float radius, int col, int numSegments)
void
addConvexPolyFilled(ImVec2[] points, int numPoints, int col)
void
addImage(int textureID, float pMinX, float pMinY, float pMaxX, float pMaxY)
void
addImage(int textureID, float pMinX, float pMinY, float pMaxX, float pMaxY, float uvMinX, float uvMinY)
void
addImage(int textureID, float pMinX, float pMinY, float pMaxX, float pMaxY, float uvMinX, float uvMinY, float uvMaxX, float uvMaxY)
void
addImage(int textureID, float pMinX, float pMinY, float pMaxX, float pMaxY, float uvMinX, float uvMinY, float uvMaxX, float uvMaxY, int col)
void
addImageQuad(int textureID, float p1X, float p1Y, float p2X, float p2Y, float p3X, float p3Y, float p4X, float p4Y)
void
addImageQuad(int textureID, float p1X, float p1Y, float p2X, float p2Y, float p3X, float p3Y, float p4X, float p4Y, float uv1X, float uv1Y)
void
addImageQuad(int textureID, float p1X, float p1Y, float p2X, float p2Y, float p3X, float p3Y, float p4X, float p4Y, float uv1X, float uv1Y, float uv2X, float uv2Y)
void
addImageQuad(int textureID, float p1X, float p1Y, float p2X, float p2Y, float p3X, float p3Y, float p4X, float p4Y, float uv1X, float uv1Y, float uv2X, float uv2Y, float uv3X, float uv3Y)
void
addImageQuad(int textureID, float p1X, float p1Y, float p2X, float p2Y, float p3X, float p3Y, float p4X, float p4Y, float uv1X, float uv1Y, float uv2X, float uv2Y, float uv3X, float uv3Y, float uv4X, float uv4Y)
void
addImageQuad(int textureID, float p1X, float p1Y, float p2X, float p2Y, float p3X, float p3Y, float p4X, float p4Y, float uv1X, float uv1Y, float uv2X, float uv2Y, float uv3X, float uv3Y, float uv4X, float uv4Y, int col)
void
addImageRounded(int textureID, float pMinX, float pMinY, float pMaxX, float pMaxY, float uvMinX, float uvMinY, float uvMaxX, float uvMaxY, int col, float rounding)
void
addImageRounded(int textureID, float pMinX, float pMinY, float pMaxX, float pMaxY, float uvMinX, float uvMinY, float uvMaxX, float uvMaxY, int col, float rounding, int imDrawCornerFlags)
void
addLine(float p1X, float p1Y, float p2X, float p2Y, int col)
void
addLine(float p1X, float p1Y, float p2X, float p2Y, int col, float thickness)
void
addPolyline(ImVec2[] points, int numPoints, int col, boolean closed, float thickness)
void
addQuad(float p1X, float p1Y, float p2X, float p2Y, float p3X, float p3Y, float p4X, float p4Y, int col)
void
addQuad(float p1X, float p1Y, float p2X, float p2Y, float p3X, float p3Y, float p4X, float p4Y, int col, float thickness)
void
addQuadFilled(float p1X, float p1Y, float p2X, float p2Y, float p3X, float p3Y, float p4X, float p4Y, int col)
void
addRect(float pMinX, float pMinY, float pMaxX, float pMaxY, int col)
void
addRect(float pMinX, float pMinY, float pMaxX, float pMaxY, int col, float rounding)
void
addRect(float pMinX, float pMinY, float pMaxX, float pMaxY, int col, float rounding, int roundingCornersFlags)
void
addRect(float pMinX, float pMinY, float pMaxX, float pMaxY, int col, float rounding, int roundingCornersFlags, float thickness)
void
addRectFilled(float pMinX, float pMinY, float pMaxX, float pMaxY, int col)
void
addRectFilled(float pMinX, float pMinY, float pMaxX, float pMaxY, int col, float rounding)
void
addRectFilled(float pMinX, float pMinY, float pMaxX, float pMaxY, int col, float rounding, int roundingCornersFlags)
void
addRectFilledMultiColor(float pMinX, float pMinY, float pMaxX, float pMaxY, long colUprLeft, long colUprRight, long colBotRight, long colBotLeft)
void
addText(float posX, float posY, int col, java.lang.String textBegin)
void
addText(float posX, float posY, int col, java.lang.String textBegin, java.lang.String textEnd)
void
addTriangle(float p1X, float p1Y, float p2X, float p2Y, float p3X, float p3Y, int col)
void
addTriangle(float p1X, float p1Y, float p2X, float p2Y, float p3X, float p3Y, int col, float thickness)
void
addTriangleFilled(float p1X, float p1Y, float p2X, float p2Y, float p3X, float p3Y, int col)
void
channelsMerge()
void
channelsSetCurrent(int n)
void
channelsSplit(int count)
int
getImDrawListFlags()
void
pathArcTo(float centerX, float centerY, float radius, float aMin, float aMax)
void
pathArcTo(float centerX, float centerY, float radius, float aMin, float aMax, int numSegments)
void
pathArcToFast(float centerX, float centerY, float radius, int aMinOf12, int aMaxOf12)
void
pathBezierCurveTo(float p1X, float p1Y, float p2X, float p2Y, float p3X, float p3Y, int numSegments)
void
pathClear()
void
pathFillConvex(int col)
void
pathLineTo(float posX, float posY)
void
pathLineToMergeDuplicate(float posX, float posY)
void
pathRect(float rectMinX, float rectMinY, float rectMaxX, float rectMaxY)
void
pathRect(float rectMinX, float rectMinY, float rectMaxX, float rectMaxY, float rounding)
void
pathRect(float rectMinX, float rectMinY, float rectMaxX, float rectMaxY, float rounding, int imDrawCornerFlags)
void
pathStroke(int col, boolean closed)
void
pathStroke(int col, boolean closed, float thickness)
void
setImDrawListFlags(int imDrawListFlags)
-
Field Details
-
TYPE_WINDOW
public static final int TYPE_WINDOW- See Also:
- Constant Field Values
-
TYPE_BACKGROUND
public static final int TYPE_BACKGROUND- See Also:
- Constant Field Values
-
TYPE_FOREGROUND
public static final int TYPE_FOREGROUND- See Also:
- Constant Field Values
-
-
Method Details
-
getImDrawListFlags
public int getImDrawListFlags() -
setImDrawListFlags
public void setImDrawListFlags(int imDrawListFlags) -
addLine
public void addLine(float p1X, float p1Y, float p2X, float p2Y, int col) -
addLine
public void addLine(float p1X, float p1Y, float p2X, float p2Y, int col, float thickness) -
addRect
public void addRect(float pMinX, float pMinY, float pMaxX, float pMaxY, int col) -
addRect
public void addRect(float pMinX, float pMinY, float pMaxX, float pMaxY, int col, float rounding) -
addRect
public void addRect(float pMinX, float pMinY, float pMaxX, float pMaxY, int col, float rounding, int roundingCornersFlags) -
addRect
public void addRect(float pMinX, float pMinY, float pMaxX, float pMaxY, int col, float rounding, int roundingCornersFlags, float thickness) -
addRectFilled
public void addRectFilled(float pMinX, float pMinY, float pMaxX, float pMaxY, int col) -
addRectFilled
public void addRectFilled(float pMinX, float pMinY, float pMaxX, float pMaxY, int col, float rounding) -
addRectFilled
public void addRectFilled(float pMinX, float pMinY, float pMaxX, float pMaxY, int col, float rounding, int roundingCornersFlags) -
addRectFilledMultiColor
public void addRectFilledMultiColor(float pMinX, float pMinY, float pMaxX, float pMaxY, long colUprLeft, long colUprRight, long colBotRight, long colBotLeft) -
addQuad
public void addQuad(float p1X, float p1Y, float p2X, float p2Y, float p3X, float p3Y, float p4X, float p4Y, int col) -
addQuad
public void addQuad(float p1X, float p1Y, float p2X, float p2Y, float p3X, float p3Y, float p4X, float p4Y, int col, float thickness) -
addQuadFilled
public void addQuadFilled(float p1X, float p1Y, float p2X, float p2Y, float p3X, float p3Y, float p4X, float p4Y, int col) -
addTriangle
public void addTriangle(float p1X, float p1Y, float p2X, float p2Y, float p3X, float p3Y, int col) -
addTriangle
public void addTriangle(float p1X, float p1Y, float p2X, float p2Y, float p3X, float p3Y, int col, float thickness) -
addTriangleFilled
public void addTriangleFilled(float p1X, float p1Y, float p2X, float p2Y, float p3X, float p3Y, int col) -
addCircle
public void addCircle(float centreX, float centreY, float radius, int col) -
addCircle
public void addCircle(float centreX, float centreY, float radius, int col, int numSegments) -
addCircle
public void addCircle(float centreX, float centreY, float radius, int col, int numSegments, float thickness) -
addCircleFilled
public void addCircleFilled(float centreX, float centreY, float radius, int col) -
addCircleFilled
public void addCircleFilled(float centreX, float centreY, float radius, int col, int numSegments) -
addText
public void addText(float posX, float posY, int col, java.lang.String textBegin) -
addText
public void addText(float posX, float posY, int col, java.lang.String textBegin, java.lang.String textEnd) -
addPolyline
-
addConvexPolyFilled
-
addBezierCurve
public void addBezierCurve(float pos0X, float pos0Y, float cp0X, float cp0Y, float cp1X, float cp1Y, float pos1X, float pos1Y, int col, float thickness) -
addBezierCurve
public void addBezierCurve(float pos0X, float pos0Y, float cp0X, float cp0Y, float cp1X, float cp1Y, float pos1X, float pos1Y, int col, float thickness, int numSegments) -
addImage
public void addImage(int textureID, float pMinX, float pMinY, float pMaxX, float pMaxY) -
addImage
public void addImage(int textureID, float pMinX, float pMinY, float pMaxX, float pMaxY, float uvMinX, float uvMinY) -
addImage
public void addImage(int textureID, float pMinX, float pMinY, float pMaxX, float pMaxY, float uvMinX, float uvMinY, float uvMaxX, float uvMaxY) -
addImage
public void addImage(int textureID, float pMinX, float pMinY, float pMaxX, float pMaxY, float uvMinX, float uvMinY, float uvMaxX, float uvMaxY, int col) -
addImageQuad
public void addImageQuad(int textureID, float p1X, float p1Y, float p2X, float p2Y, float p3X, float p3Y, float p4X, float p4Y) -
addImageQuad
public void addImageQuad(int textureID, float p1X, float p1Y, float p2X, float p2Y, float p3X, float p3Y, float p4X, float p4Y, float uv1X, float uv1Y) -
addImageQuad
public void addImageQuad(int textureID, float p1X, float p1Y, float p2X, float p2Y, float p3X, float p3Y, float p4X, float p4Y, float uv1X, float uv1Y, float uv2X, float uv2Y) -
addImageQuad
public void addImageQuad(int textureID, float p1X, float p1Y, float p2X, float p2Y, float p3X, float p3Y, float p4X, float p4Y, float uv1X, float uv1Y, float uv2X, float uv2Y, float uv3X, float uv3Y) -
addImageQuad
public void addImageQuad(int textureID, float p1X, float p1Y, float p2X, float p2Y, float p3X, float p3Y, float p4X, float p4Y, float uv1X, float uv1Y, float uv2X, float uv2Y, float uv3X, float uv3Y, float uv4X, float uv4Y) -
addImageQuad
public void addImageQuad(int textureID, float p1X, float p1Y, float p2X, float p2Y, float p3X, float p3Y, float p4X, float p4Y, float uv1X, float uv1Y, float uv2X, float uv2Y, float uv3X, float uv3Y, float uv4X, float uv4Y, int col) -
addImageRounded
public void addImageRounded(int textureID, float pMinX, float pMinY, float pMaxX, float pMaxY, float uvMinX, float uvMinY, float uvMaxX, float uvMaxY, int col, float rounding) -
addImageRounded
public void addImageRounded(int textureID, float pMinX, float pMinY, float pMaxX, float pMaxY, float uvMinX, float uvMinY, float uvMaxX, float uvMaxY, int col, float rounding, int imDrawCornerFlags) -
pathClear
public void pathClear() -
pathLineTo
public void pathLineTo(float posX, float posY) -
pathLineToMergeDuplicate
public void pathLineToMergeDuplicate(float posX, float posY) -
pathFillConvex
public void pathFillConvex(int col) -
pathStroke
public void pathStroke(int col, boolean closed) -
pathStroke
public void pathStroke(int col, boolean closed, float thickness) -
pathArcTo
public void pathArcTo(float centerX, float centerY, float radius, float aMin, float aMax) -
pathArcTo
public void pathArcTo(float centerX, float centerY, float radius, float aMin, float aMax, int numSegments) -
pathArcToFast
public void pathArcToFast(float centerX, float centerY, float radius, int aMinOf12, int aMaxOf12) -
pathBezierCurveTo
public void pathBezierCurveTo(float p1X, float p1Y, float p2X, float p2Y, float p3X, float p3Y, int numSegments) -
pathRect
public void pathRect(float rectMinX, float rectMinY, float rectMaxX, float rectMaxY) -
pathRect
public void pathRect(float rectMinX, float rectMinY, float rectMaxX, float rectMaxY, float rounding) -
pathRect
public void pathRect(float rectMinX, float rectMinY, float rectMaxX, float rectMaxY, float rounding, int imDrawCornerFlags) -
channelsSplit
public void channelsSplit(int count) -
channelsMerge
public void channelsMerge() -
channelsSetCurrent
public void channelsSetCurrent(int n)
-