37 #include "material/section/repres/DiscretBase.h" 38 #include <material/section/repres/cell/VectorCells.h> 49 class PolygonSectRegion;
76 virtual void swap(
void);
81 double Iy(
void)
const;
82 double Iz(
void)
const;
83 double Pyz(
void)
const;
84 double Ix(
void)
const;
88 double getI1(
void)
const;
89 double getI2(
void)
const;
90 double getI(
const unsigned short int &i,
const unsigned short int &j)
const;
91 double getI(
const unsigned short int i,
const unsigned short int j,
const Pos2d &o)
const;
99 virtual void Print(std::ostream &s,
int flag= 0)
const =0;
100 friend std::ostream &operator<<(std::ostream &,
const SectRegion &);
103 std::ostream &operator<<(std::ostream &,
const SectRegion &);
virtual Polygon2d getPolygon(void) const
Return the region contour.
Definition: SectRegion.cc:45
virtual int getNumCells(void) const =0
Returns the number of cells of the region.
Float vector abstraction.
Definition: Vector.h:94
double Ix(void) const
Return the moment of inertia polar with respect to centroid in local coordinates. ...
Definition: SectRegion.cc:106
double getIO(const Pos2d &o)
Return the polar moment of inertia with respect to the point o.
Definition: SectRegion.cc:173
Definition: PolygonSectRegion.h:44
PolygonSectRegion Intersection(const HalfPlane2d &sp) const
Return the intersection of the region with the half-plane.
Definition: SectRegion.cc:63
virtual SectRegion * getCopy(void) const =0
Returns a copy of the region.
Posición en dos dimensiones.
Definition: Pos2d.h:41
double getI1(void) const
Return the principal major axis of inertia.
Definition: SectRegion.cc:146
virtual const VectorCells & getCells(void) const =0
Returns the cell container.
virtual void swap(void)
Reverse the orientation of the region.
Definition: SectRegion.cc:54
Base class for materials.
Definition: Material.h:93
double getLength(void) const
Return the region contour length.
Definition: SectRegion.cc:85
Matrix & getI(void) const
Return the tensor of inertia computed with respect to the object centroid.
Definition: SectRegion.cc:177
const Vector & IAxisDir_a(void) const
Return the direction of a principal axis of inertia (we don't know yet if it's the major one or the m...
Definition: SectRegion.cc:115
SectRegion(Material *)
Constructor.
Definition: SectRegion.cc:41
double Pyz(void) const
Return the product of inertia respecto a the parallel axes por el centroid.
Definition: SectRegion.cc:101
Polígono en dos dimensiones.
Definition: Polygon2d.h:38
double Iz(void) const
Return the moment of inertia with respect to the axis parallel to z axis through the centroid...
Definition: SectRegion.cc:97
double getArea(void) const
Return the region area.
Definition: SectRegion.cc:89
const Vector & IAxisDir_b(void) const
Return the direction of the other (with respect to IAxisDir_a) principal axis of inertia (we don't kn...
Definition: SectRegion.cc:127
Region of a section that corresponds with a material.
Definition: SectRegion.h:58
const Vector & getCenterOfMass(void) const
Return the centroid coordinates.
Definition: SectRegion.cc:75
Cells vector.
Definition: VectorCells.h:42
Half plane in a two-dimensional space.
Definition: HalfPlane2d.h:38
Open source finite element program for structural analysis.
Definition: ContinuaReprComponent.h:35
double Iy(void) const
Return the moment of inertia with respect to the axis parallel to y axis through the centroid...
Definition: SectRegion.cc:93
Matrix of floats.
Definition: Matrix.h:111
double Theta_p(void) const
Return the angle that defines a principal axis of inertia.
Definition: SectRegion.cc:110
Base class for cross-section discretization.
Definition: DiscretBase.h:46
double getI2(void) const
Return the principal minor axis of inertia.
Definition: SectRegion.cc:150