14 class CLASS_DECL_ACME region :
15 virtual public ::particle
130 ::pointer<item> m_pitem;
132 ::i32_point m_pointOffset;
136 region(
const region & region);
143 region & operator = (
const region & regionSrc);
146 virtual bool create_rectangle(const ::f64_rectangle & rectangle);
148 virtual bool create_ellipse(const ::f64_ellipse & ellipse);
150 virtual bool create_polygon(const ::i32_point * pPoints, ::i32 nCount, ::draw2d::enum_fill_mode efillmode = ::draw2d::e_fill_mode_winding);
152 virtual bool create_polygon(const ::f64_point * pPoints, ::i32 nCount, ::draw2d::enum_fill_mode efillmode = ::draw2d::e_fill_mode_winding);
154 virtual bool create_polygon(
const f64_polygon & polygon, ::draw2d::enum_fill_mode efillmode = ::draw2d::e_fill_mode_winding);
156 virtual bool create_poly_polygon(const ::f64_point * pPoints, const ::i32 * lpPolyCounts, ::i32 nCount, ::draw2d::enum_fill_mode efillmode);
158 virtual bool create_poly_polygon(const ::i32_point * pPoints, const ::i32 * lpPolyCounts, ::i32 nCount, ::draw2d::enum_fill_mode efillmode);
160 virtual bool create_poly_polygon(
const f64_poly_polygon & polygon, ::draw2d::enum_fill_mode efillmode = ::draw2d::e_fill_mode_winding);
163 virtual bool combine(const ::geometry2d::region * prgn1, const ::geometry2d::region * prgn2, ::draw2d::enum_combine ecombine);
164 virtual bool translate(const ::f64_point & point);
165 virtual bool get_bounding_box(::f64_rectangle & rectangle);
170 virtual bool contains(const ::f64_point & point);
173 bool internal_contains(const ::f64_point & point);
175 bool internal_rectangle_contains(const ::f64_point & point);
177 bool internal_ellipse_contains(const ::f64_point & point);
179 bool internal_polygon_contains(const ::f64_point & point);
181 bool internal_poly_polygon_contains(const ::f64_point & point);
183 bool internal_combine_contains(const ::f64_point & point);
195 virtual void expand_bounding_box(::f64_rectangle & rectangle);