Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/facebook/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
将参与者添加到ClutterCanvas_Canvas_Actor_Cairo_Clutter - Fatal编程技术网

将参与者添加到ClutterCanvas

将参与者添加到ClutterCanvas,canvas,actor,cairo,clutter,Canvas,Actor,Cairo,Clutter,我有一个杂乱的画布,它有一个白色的背景,由一个初始绘制信号绘制。我想在画布上添加一个演员。演员是一个重点 void drawPoint(ClutterCanvas *canvas, cairo_t *cr, double x, double y, double r){ ClutterColor color; color = *CLUTTER_COLOR_Black; clutter_cairo_set_source_color(cr, &color); cairo_arc(cr, x,

我有一个杂乱的画布,它有一个白色的背景,由一个初始绘制信号绘制。我想在画布上添加一个演员。演员是一个重点

void drawPoint(ClutterCanvas *canvas, cairo_t *cr, double x, double y, double r){
ClutterColor color;
color = *CLUTTER_COLOR_Black;
clutter_cairo_set_source_color(cr, &color);
cairo_arc(cr, x, y, r, 0, 2 * M_PI);
cairo_fill(cr);
}
如何将此点作为参与者添加到画布中

可以使用以下方法将点创建为参与者:

point = clutter_actor_new();
clutter_actor_set_content(point, ??);
clutter_actor_add_child(stage, point);
这种方法会引导我走向正确的方向吗? 提前谢谢

ClutterCanvas类用于使用Cairo直接绘图-它类似于HTML上的标记

您只能将子角色添加到现有的ClutterActor实例中


绘制场景图的内容时,将通过其父级绘制子角色。子参与者也可以有自己的ClutterContent实现;如果您想使用ClutterCanvas,但不想覆盖其父对象的内容,请确保使用透明颜色清除ClutterCanvas的内容。

因此,如果我使用ClutterCanvas,那么我可以使用自己的ClutterCanvas添加演员并将其堆叠起来?那么,对于其他操作,我如何选择位于该堆栈下一层或底部的参与者呢?这会很难,还是已经有了一些机制?选择演员意味着什么?您有一个完整的API来迭代场景图,从顶级父级到舞台,再到其子级,反之亦然。