我正在努力学习Cimg,但是文档非常模糊。 我正在玩绘图功能,我想绘制一条线。 functoon声明非常简单:
CImg<T>& draw_line ( const int x0,
const int y0,
const int x1,
const int y1,
const tc *const color,
const float opacity = 1,
const unsigned int pattern = ~0U,
const bool init_hatch = true
)
其中
x0 X-coordinate of the starting line point.
y0 Y-coordinate of the starting line point.
x1 X-coordinate of the ending line point.
y1 Y-coordinate of the ending line point.
color Pointer to spectrum() consecutive values of type T, defining the drawing color.
opacity Drawing opacity.
**pattern An integer whose bits describe the line pattern.**
init_hatch Tells if a reinitialization of the hash state must be done.
我的问题是模式,我无法在文档中找到哪个整数表示哪种行。现在有人如何操纵模式?
提前谢谢
答案 0 :(得分:1)
其中一位开发者通过电子邮件向我回复了这个问题,我在这里发布给任何有同样问题的人。
模式由unsigned int中的位如何设置给出。 你必须将无符号整数看作32像素的模式(即 32位)可以是透明的(位设置为0)或不透明的(位设置) 到1)。 例如,所有位都设置为1的模式是完全不透明的,并且 对应于模式值0xFFFFFFFF。 8个像素是透明的图案,然后8个像素是不透明的 对应于模式0xFF00FF00。 像0xCCCCCCCC这样的模式意味着1像素透明,然后1像素不透明, 等...