tpCanvas类
Utils
2025-07-05
介绍
绘制模块类,用于绘制各种形状。资源等
所有的颜色值,均使用_RGB或_RGBA宏给入十进制值(0-255),例如_RGB(128,128,128)或_RGBA(128,128,128,120)
基础信息
头文件: | include <tpCanvas.h> |
---|---|
Cmake: | None |
发布版本: | V0.1.0 |
继承类: | |
派生类: |
Public 成员函数
tpCanvas(tpSurface *surface=nullptr, int32_t offsetX=0, int32_t offsetY=0) | ||
---|---|---|
~tpCanvas() | ||
paintTest() | ||
setTarget(tpSurface *surface, int32_t offsetX=0, int32_t offsetY=0) | ||
setClipRect(tpRect &rect) | ||
setClipRect(ItpRect *rect) | ||
virtual tpSurface * | surface() | |
erase() | ||
pixel(int32_t x, int32_t y, int32_t color) | 绘制一个像素点 | |
hline(int32_t x1, int32_t x2, int32_t y, int32_t color, double width=1.0) | 绘制一条水平线 | |
vline(int32_t x, int32_t y1, int32_t y2, int32_t color, double width=1.0) | 绘制一条垂直线 | |
line(int32_t x1, int32_t y1, int32_t x2, int32_t y2, int32_t color, double width=1.0) | ||
rectangle(int32_t x1, int32_t y1, int32_t x2, int32_t y2, int32_t color, double width=1.0) | ||
roundedRectangle(int32_t x1, int32_t y1, int32_t x2, int32_t y2, int32_t rad, int32_t color, double width=1.0) | ||
box(int32_t x1, int32_t y1, int32_t x2, int32_t y2, int32_t color) | ||
roundedBox(int32_t x1, int32_t y1, int32_t x2, int32_t y2, int32_t rad, int32_t color) | 绘制圆角矩形,第一个点坐标必须为左上点,第二个点坐标为右下点 | |
circle(int32_t x, int32_t y, int32_t rad, int32_t color, double width=1.0) | 绘制圆形 | |
arc(int32_t x, int32_t y, int32_t rad, int32_t start, int32_t end, int32_t color, double width=1.0) | ||
filledCircle(int32_t x, int32_t y, int32_t rad, int32_t color) | 绘制填充圆形 | |
ellipse(int32_t x, int32_t y, int32_t rx, int32_t ry, int32_t color, double width=1.0) | ||
filledEllipse(int32_t x, int32_t y, int32_t rx, int32_t ry, int32_t color) | ||
pie(int32_t x, int32_t y, int32_t rad, int32_t start, int32_t end, int32_t color, double width=1.0) | 绘制扇形 | |
filledPie(int32_t x, int32_t y, int32_t rad, int32_t start, int32_t end, int32_t color) | 绘制填充扇形 | |
trigon(int32_t x1, int32_t y1, int32_t x2, int32_t y2, int32_t x3, int32_t y3, int32_t color, double width=1.0) | ||
filledTrigon(int32_t x1, int32_t y1, int32_t x2, int32_t y2, int32_t x3, int32_t y3, int32_t color) | ||
polygon(short *vx, short *vy, int32_t n, int32_t color, double width=1.0) | ||
filledPolygon(short *vx, short *vy, int32_t n, int32_t color) | ||
hollowBox(int32_t x1, int32_t y1, int32_t x2, int32_t y2, int32_t color, const HollowMask &hollowMaskData) | 绘制镂空矩形 | |
hollowRoundedBox(int32_t x1, int32_t y1, int32_t x2, int32_t y2, int32_t rad, int32_t color, const HollowMask &hollowMaskData) | 绘制镂空圆角矩形,第一个点坐标必须为左上点,第二个点坐标为右下点 | |
paintSurface(const tpShared< tpSurface > &surface, const tpRect &src_rect, const tpRect &dst_rect, bool strench=false) | ||
paintSurface(const tpShared< tpSurface > &surface, const tpRect *src_rect, const tpRect *dst_rect, bool strench=false) | ||
paintSurface(const int32_t &x, const int32_t &y, const tpShared< tpSurface > &surface) | 绘制图片资源 | |
paintRoundSurface(const int32_t &x, const int32_t &y, int32_t rad, const tpShared< tpSurface > &surface) | 绘制圆角图片 | |
renderText(tpFont &font, int32_t x, int32_t y, const tpString &text) | ||
renderText(tpFont &font, int32_t x, int32_t y, const char *text) | ||
renderMarkUp(tpFont &font, int32_t x, int32_t y, const tpString &text) | ||
renderMarkUp(tpFont &font, int32_t x, int32_t y, const char *text) | ||
renderText(tpFont &font, int32_t x, int32_t y) | ||
customizedCarioMethod(defDrawFunction func, void *args) | ||
release() | ||
static tpSurface * | convertFromCairoToSurface(cairo_surface_t *cairo_surface) | |
convertFromSurfaceToCairo(tpSurface *surface) |
成员函数说明
tpCanvas::tpCanvas(tpSurface *surface=nullptr, int32_t offsetX=0, int32_t offsetY=0)
暂无注释...
virtual
tpCanvas::~tpCanvas()
暂无注释...
void tpCanvas::paintTest()
暂无注释...
virtual
bool tpCanvas::setTarget(tpSurface *surface, int32_t offsetX=0, int32_t offsetY=0)
暂无注释...
virtual
void tpCanvas::setClipRect(tpRect &rect)
暂无注释...
virtual
void tpCanvas::setClipRect(ItpRect *rect)
暂无注释...
virtual
tpSurface * tpCanvas::surface()
暂无注释...
virtual
void tpCanvas::erase()
暂无注释...
virtual
void tpCanvas::pixel(int32_t x, int32_t y, int32_t color)
点击查看...
绘制一个像素点
virtual
void tpCanvas::hline(int32_t x1, int32_t x2, int32_t y, int32_t color, double width=1.0)
点击查看...
绘制一条水平线
virtual
void tpCanvas::vline(int32_t x, int32_t y1, int32_t y2, int32_t color, double width=1.0)
点击查看...
绘制一条垂直线
virtual
void tpCanvas::line(int32_t x1, int32_t y1, int32_t x2, int32_t y2, int32_t color, double width=1.0)
暂无注释...
virtual
void tpCanvas::rectangle(int32_t x1, int32_t y1, int32_t x2, int32_t y2, int32_t color, double width=1.0)
暂无注释...
virtual
void tpCanvas::roundedRectangle(int32_t x1, int32_t y1, int32_t x2, int32_t y2, int32_t rad, int32_t color, double width=1.0)
暂无注释...
virtual
void tpCanvas::box(int32_t x1, int32_t y1, int32_t x2, int32_t y2, int32_t color)
暂无注释...
virtual
void tpCanvas::roundedBox(int32_t x1, int32_t y1, int32_t x2, int32_t y2, int32_t rad, int32_t color)
点击查看...
绘制圆角矩形,第一个点坐标必须为左上点,第二个点坐标为右下点
virtual
void tpCanvas::circle(int32_t x, int32_t y, int32_t rad, int32_t color, double width=1.0)
点击查看...
绘制圆形
virtual
void tpCanvas::arc(int32_t x, int32_t y, int32_t rad, int32_t start, int32_t end, int32_t color, double width=1.0)
暂无注释...
virtual
void tpCanvas::filledCircle(int32_t x, int32_t y, int32_t rad, int32_t color)
点击查看...
绘制填充圆形
virtual
void tpCanvas::ellipse(int32_t x, int32_t y, int32_t rx, int32_t ry, int32_t color, double width=1.0)
暂无注释...
virtual
void tpCanvas::filledEllipse(int32_t x, int32_t y, int32_t rx, int32_t ry, int32_t color)
暂无注释...
virtual
void tpCanvas::pie(int32_t x, int32_t y, int32_t rad, int32_t start, int32_t end, int32_t color, double width=1.0)
点击查看...
绘制扇形
virtual
void tpCanvas::filledPie(int32_t x, int32_t y, int32_t rad, int32_t start, int32_t end, int32_t color)
点击查看...
绘制填充扇形
virtual
void tpCanvas::trigon(int32_t x1, int32_t y1, int32_t x2, int32_t y2, int32_t x3, int32_t y3, int32_t color, double width=1.0)
暂无注释...
virtual
void tpCanvas::filledTrigon(int32_t x1, int32_t y1, int32_t x2, int32_t y2, int32_t x3, int32_t y3, int32_t color)
暂无注释...
virtual
void tpCanvas::polygon(short *vx, short *vy, int32_t n, int32_t color, double width=1.0)
暂无注释...
virtual
void tpCanvas::filledPolygon(short *vx, short *vy, int32_t n, int32_t color)
暂无注释...
virtual
void tpCanvas::hollowBox(int32_t x1, int32_t y1, int32_t x2, int32_t y2, int32_t color, const HollowMask &hollowMaskData)
点击查看...
绘制镂空矩形
virtual
void tpCanvas::hollowRoundedBox(int32_t x1, int32_t y1, int32_t x2, int32_t y2, int32_t rad, int32_t color, const HollowMask &hollowMaskData)
点击查看...
绘制镂空圆角矩形,第一个点坐标必须为左上点,第二个点坐标为右下点
virtual
void tpCanvas::paintSurface(const tpShared< tpSurface > &surface, const tpRect &src_rect, const tpRect &dst_rect, bool strench=false)
暂无注释...
virtual
void tpCanvas::paintSurface(const tpShared< tpSurface > &surface, const tpRect *src_rect, const tpRect *dst_rect, bool strench=false)
暂无注释...
virtual
void tpCanvas::paintSurface(const int32_t &x, const int32_t &y, const tpShared< tpSurface > &surface)
点击查看...
绘制图片资源
virtual
void tpCanvas::paintRoundSurface(const int32_t &x, const int32_t &y, int32_t rad, const tpShared< tpSurface > &surface)
点击查看...
绘制圆角图片
virtual
void tpCanvas::renderText(tpFont &font, int32_t x, int32_t y, const tpString &text)
点击查看...
font render for mark up
virtual
void tpCanvas::renderText(tpFont &font, int32_t x, int32_t y, const char *text)
暂无注释...
virtual
void tpCanvas::renderMarkUp(tpFont &font, int32_t x, int32_t y, const tpString &text)
暂无注释...
virtual
void tpCanvas::renderMarkUp(tpFont &font, int32_t x, int32_t y, const char *text)
暂无注释...
virtual
void tpCanvas::renderText(tpFont &font, int32_t x, int32_t y)
点击查看...
font render normally by font setText or setMarkUp
virtual
void tpCanvas::customizedCarioMethod(defDrawFunction func, void *args)
点击查看...
customized function