18 #include "pandabase.h" 20 #include "eggPrimitive.h" 29 INLINE EggPolygon(
const EggPolygon ©);
30 INLINE EggPolygon &operator = (
const EggPolygon ©);
34 bool calculate_normal(
LNormald &result, CoordinateSystem cs = CS_default)
const;
35 bool is_planar()
const;
37 INLINE
bool recompute_polygon_normal(CoordinateSystem cs = CS_default);
39 INLINE
bool triangulate_into(
EggGroupNode *container,
bool convex_also)
const;
40 PT(EggPolygon) triangulate_in_place(
bool convex_also);
42 virtual void write(ostream &out,
int indent_level)
const;
45 bool decomp_concave(
EggGroupNode *container,
int asum,
int x,
int y)
const;
46 bool triangulate_poly(
EggGroupNode *container,
bool convex_also);
53 static void init_type() {
54 EggPrimitive::init_type();
55 register_type(_type_handle,
"EggPolygon",
56 EggPrimitive::get_class_type());
59 return get_class_type();
61 virtual TypeHandle force_init_type() {init_type();
return get_class_type();}
68 #include "eggPolygon.I" A base class for any of a number of kinds of geometry primitives: polygons, point lights...
virtual bool cleanup()
Cleans up modeling errors in whatever context this makes sense.
A base class for nodes in the hierarchy that are not leaf nodes.
This is a three-component vector distance (as opposed to a three-component point, which represents a ...
TypeHandle is the identifier used to differentiate C++ class types.