本文整理汇总了C++中GeometryCollection::GetValueAt方法的典型用法代码示例。如果您正苦于以下问题:C++ GeometryCollection::GetValueAt方法的具体用法?C++ GeometryCollection::GetValueAt怎么用?C++ GeometryCollection::GetValueAt使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类GeometryCollection
的用法示例。
在下文中一共展示了GeometryCollection::GetValueAt方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: GetTransform
void
GeometryGroup::Draw (cairo_t *cr)
{
Transform *transform = GetTransform ();
cairo_matrix_t saved;
cairo_get_matrix (cr, &saved);
if (transform) {
cairo_matrix_t matrix;
transform->GetTransform (&matrix);
cairo_transform (cr, &matrix);
}
GeometryCollection *children = GetChildren ();
Geometry *geometry;
// GeometryGroup is used for Clip (as a Geometry) so Fill (normally setting the fill rule) is never called
cairo_set_fill_rule (cr, convert_fill_rule (GetFillRule ()));
int children_count = children->GetCount ();
for (int i = 0; i < children_count; i++) {
geometry = children->GetValueAt (i)->AsGeometry ();
geometry->Draw (cr);
}
cairo_set_matrix (cr, &saved);
}
示例2: GetChildren
Rect
GeometryGroup::ComputePathBounds ()
{
GeometryCollection *children = GetChildren ();
Rect bounds = Rect (0.0, 0.0, 0.0, 0.0);
Geometry *geometry;
int children_count = children->GetCount ();
for (int i = 0; i < children_count; i++) {
geometry = children->GetValueAt (i)->AsGeometry ();
bounds = bounds.Union (geometry->GetBounds (), true);
}
//g_warning ("GeometryGroup::ComputeBounds - x %g y %g w %g h %g", bounds.x, bounds.y, bounds.w, bounds.h);
return bounds;
}