27 #include "ProtoGeom.h" 28 #include "lists/PolyPos.h" 48 virtual GeomObj *getCopy(
void)
const=0;
50 virtual unsigned short int Dimension(
void)
const= 0;
54 virtual GEOM_FT
getArea(
void)
const= 0;
62 virtual void Print(std::ostream &os)
const= 0;
63 virtual void Plot(Plotter &)
const {}
66 std::ostream &operator<<(std::ostream &,
const GeomObj &);
70 template <
class input_iterator>
71 GEOM_FT area(input_iterator begin,input_iterator end)
74 for(input_iterator i=begin;i!=end;i++)
75 retval+= i->getArea();
80 template <
class input_iterator>
81 GEOM_FT volume(input_iterator begin,input_iterator end)
84 for(input_iterator i=begin;i!=end;i++)
85 retval+= i->getVolume();
90 template <
class input_iterator>
91 GEOM_FT length(input_iterator begin,input_iterator end)
94 for(input_iterator i=begin;i!=end;i++)
95 retval+= i->getLength();
100 template <
class input_iterator>
101 void print(std::ostream &os,input_iterator begin,input_iterator end)
105 input_iterator i= begin;
virtual bool hasCenterOfMass(void) const
Return true if the object has a center of mass.
Definition: GeomObj.h:58
Base class for position lists.
Definition: PolyPos.h:35
Posición en dos dimensiones.
Definition: Pos2d.h:41
Base class for two-dimensional transformations.
Definition: Trf2d.h:40
GeomObj(void)
Constructor.
Definition: GeomObj.cc:28
Vector en dos dimensiones.
Definition: Vector2d.h:40
virtual GEOM_FT getVolume(void) const =0
Return the volume of the object.
Base class for geometry objects.
Definition: ProtoGeom.h:33
GEOM_FT getCenterOfMassArea(void) const
Return the dimension used to compute the center of mass, as follows:
Definition: GeomObj.cc:36
virtual GEOM_FT getLength(void) const =0
Return the length of the object.
virtual unsigned short int Dimension(void) const =0
Return the dimension of the object 0, 1, 2 or 3.
Posición en tres dimensiones.
Definition: Pos3d.h:44
virtual GEOM_FT getArea(void) const =0
Return the area of the object.
Clase base para las entidades geométricas.
Definition: GeomObj.h:40