Next: , Previous: Solid Reference, Up: Solid Reference


34.1 Data Members

— Protected variable: bool on_free_store

true, if the Solid was dynamically allocated on the free store, otherwise false. Solids should only be allocated on the free store by create_new<Solid>(), or analogous functions for derived classes. See Solid Reference; Constructors and Setting Functions.

— Protected variable: Point center

The center of the Solid. An object of a type derived from Solid need not have a meaningful center. However, many do, so it's convenient to be able to access it using the member functions of Solid.

— Protected variable: bool do_output

Set to false in Picture::output(), if the Solid cannot be projected using the arguments of that particular invocation of output(). Reset to true at the end of Picture::output(), so that the Solid will be tested for projectability again, if output() is called on the Picture again.

— Protected variables: vector<Path*> paths
— : vector<Circle*> circles
— : vector<Ellipse*> ellipses
— : vector <Reg_Polygon*> reg_polygons
— : vector<Rectangle*> rectangles

Vectors of pointers to the Paths, Circles, Ellipses, Reg_Polygons, and Rectangles, respectively, belonging to the Solid, if any exist.

— Protected variable: valarray<real> projective_extremes

The maximum and minimum values for the x, y, and z-coordinates of the Points belonging to the Solid. Used in Picture::output() for testing whether a Solid is projectable using a particular set of arguments.

— Public static const variables: unsigned short CIRCLE
— : unsigned short ELLIPSE
— : unsigned short PATH
— : unsigned short RECTANGLE
— : unsigned short REG_POLYGON

Used as arguments in the functions get_shape_ptr() and get_shape_center() (see Returning Elements and Information).