xc
Classes | Public Member Functions | Protected Member Functions | Protected Attributes | Friends | List of all members

Compound line. More...

#include <CmbEdge.h>

Inheritance diagram for XC::CmbEdge:
XC::Edge XC::EntMdlr XC::SetEstruct XC::SetBase XC::EntMdlrBase XC::MovableObject XC::DistributedBase XC::Face XC::QuadSurface

Classes

class  Side
 Component of a compound line. More...
 

Public Member Functions

 CmbEdge (void)
 Constructor.
 
 CmbEdge (Preprocessor *m, const size_t &nd=4)
 Constructor.
 
 CmbEdge (const std::string &nombre, Preprocessor *m, const size_t &nd)
 Constructor. More...
 
virtual SetEstructgetCopy (void) const
 Virtual constructor.
 
virtual void insert (Edge *l)
 Inserts the line which pointer is being passed as parameter.
 
void insert (const size_t &i)
 Inserts (if found) the line which index is being passed as parameter.
 
EdgenewLine (Pnt *, Pnt *)
 Creates a new line between the points being passed as parameters and inserts it on the edge set set. More...
 
EdgenewLine (Pnt *, Pnt *, Pnt *)
 Creates a new circle arc between the points being passed as parameters and put it in the edge set. More...
 
void addPoints (const ID &)
 Creates and inserts the the edges that link the points from the indexes being passed as parameter. More...
 
void addLines (const ID &)
 Creates and inserts the edges from the indexes being passed as parameter. More...
 
size_t NDiv (void) const
 Return the number of divisions for the whole object.
 
void SetNDiv (const size_t &nd)
 Sets the number of divisions for the whole object. More...
 
size_t getNumberOfEdges (void) const
 Return the number of edges.
 
std::deque< Side > & getSides (void)
 
void reverse (void)
 
bool In (const GeomObj3d &, const double &tol=0.0) const
 Returns true if this object lies inside the geometric object. More...
 
bool Out (const GeomObj3d &, const double &tol=0.0) const
 Returns true if this object lies outside the geometric object. More...
 
double getLength (void) const
 Return the length of the line.
 
Pos3d getCentroid (void) const
 Return the centroid of the line.
 
virtual size_t getNumberOfVertices (void) const
 Return the number of vertices.
 
const PntP1 (void) const
 Returns a constant pointer to start point.
 
const PntP2 (void) const
 Returns a constant pointer to end point.
 
size_t IndiceEdge (const Edge *l) const
 Searchs the line l from those of this compound line.
 
const SidegetSide (const size_t &i) const
 Returns a lado of the line compuesta.
 
SidegetSide (const size_t &i)
 Returns a lado of the line compuesta.
 
const SidegetSideByPoints (const Pnt *, const Pnt *) const
 Return the side which extremes are the points being passed as parameters. More...
 
SidegetSideByPoints (const Pnt *, const Pnt *)
 Return the side which extremes are the points being passed as parameters. More...
 
const SidegetSideByPoints (const size_t &, const size_t &) const
 Return the side which extremes are the points being passed as parameters. More...
 
SidegetSideByPoints (const size_t &, const size_t &)
 Return the edge that has its vertices at the points being passed as parameters. More...
 
std::deque< Edge * > GetEdges (void)
 Return the deque of lines that define the edges.
 
virtual const PntgetVertex (const size_t &i) const
 Return the i-th vertex.
 
virtual void SetVertice (const size_t &, Pnt *)
 Sets the i-th vertex.
 
virtual ID getKPoints (void) const
 Returns object k-points.
 
Polyline3d getPolyline (void) const
 Returns a polyline representation of the object.
 
BND3d Bnd (void) const
 Returns object BND.
 
void genMesh (meshing_dir dm)
 Creates the mesh.
 
- Public Member Functions inherited from XC::Edge
 Edge (Preprocessor *m, const size_t &nd=4)
 Constructor. More...
 
 Edge (const std::string &nombre="", Preprocessor *m=nullptr, const size_t &nd=4)
 Constructor. More...
 
virtual unsigned short int GetDimension (void) const
 Return the object dimension (0, 1, 2 or 3).
 
bool In (const GeomObj3d &, const double &tol=0.0) const
 Returns true if the line lies inside the geometric object. More...
 
bool Out (const GeomObj3d &, const double &tol=0.0) const
 Returns true if the line lies outside the geometric object. More...
 
bool ExtremosEn (const Pnt *, const Pnt *) const
 Returns true if the points passed as parameters are the ends of the edge. More...
 
std::vector< int > getIndicesVertices (void) const
 Return indices of the vertices.
 
void SetElemSize (const double &sz)
 Compute the number of divisions necessary to get the element size passed as parameter. More...
 
std::set< const XC::Edge * > getHomologousSides (const std::set< const XC::Edge *> &) const
 Return the homologous sides to that passed as a parameter.
 
void update_topology (void)
 Update topology.
 
const std::set< const Face * > & getConnectedSurfaces (void) const
 Return the surfaces that touch the line.
 
const std::string & getConnectedSurfacesNames (void) const
 Return the surface names that touch the line. More...
 
bool isConnectedTo (const Face &s) const
 Return true if the line touches the surface (neighbor).
 
bool isConnectedTo (const Body &b) const
 Return true if the line touches the body.
 
bool Extremo (const Pnt &) const
 Return true if it is an end point of the line.
 
virtual void create_nodes (void)
 Create nodes on objects.
 
virtual Pos3dArray get_nodes_pos (void) const
 Return a matrix of positions along the line.
 
virtual NodegetNode (const size_t &i1, const size_t &j, const size_t &k=1)
 Return a pointer to node whose indices are passed as parameters. More...
 
virtual const NodegetNode (const size_t &i, const size_t &j, const size_t &k=1) const
 Return a pointer to node whose indices are passed as parameters. More...
 
virtual NodegetNode (const size_t &i)
 Return a pointer to node whose index is passed as parameter. More...
 
virtual const NodegetNode (const size_t &i) const
 Return a pointer to node whose index is passed as parameter. More...
 
NodegetNodeForward (const size_t &i)
 Returns the node whose ordinal index is passed as parameter, starting from the beginning. More...
 
const NodegetNodeForward (const size_t &i) const
 Return the node whose ordinal index is passed as parameter, starting from the beginning. More...
 
NodegetNodeReverse (const size_t &i)
 Return the node whose ordinal index is passed as parameter, starting from the end. More...
 
const NodegetNodeReverse (const size_t &i) const
 Return the node whose ordinal index is passed as parameter, starting from the end. More...
 
NodegetFirstNode (void)
 Return the first node of the line.
 
const NodegetFirstNode (void) const
 Return the first node of the line.
 
NodegetLastNode (void)
 Return the last node of the line.
 
const NodegetLastNode (void) const
 Return the last node of the line.
 
std::vector< int > getTagsNodesForward (void) const
 Return the IDs of the nodes in forward order.
 
std::vector< int > getTagsNodesReverse (void) const
 Return the IDs of the nodes in reverse order.
 
Pos3dArray getNodePosForward (void) const
 Return the positions of the nodes in forward order.
 
Pos3dArray getNodePosReverse (void) const
 Return the positions of the nodes in reverse order.
 
std::set< SetBase * > get_sets (void) const
 Return the sets to wich this edge belongs.
 
void add_to_sets (std::set< SetBase *> &)
 Add the «edge» to the sets passed as parameters.
 
virtual const VectorgetTang (const double &) const
 Return a vector tangent to the line in point at parameter s.
 
void divide (void)
 Create points along the line.
 
- Public Member Functions inherited from XC::EntMdlr
 EntMdlr (Preprocessor *m, const size_t &i=0)
 Constructor.
 
 EntMdlr (const std::string &nombre="", const size_t &i=0, Preprocessor *m=nullptr)
 Constructor. More...
 
 EntMdlr (const EntMdlr &)
 Copy constructor.
 
EntMdlroperator= (const EntMdlr &)
 Assignment operator.
 
virtual void set_index (const size_t &i)
 Assigns the objects index for its use in VTK arrays(see numera in Set). More...
 
size_t getIdx (void) const
 Returns the index of the object for it use in VTK arrays.
 
bool hasNodes (void) const
 
virtual size_t getNumNodeLayers (void) const
 
virtual size_t getNumNodeRows (void) const
 
virtual size_t getNumNodeColumns (void) const
 
virtual size_t getNumElementLayers (void) const
 
virtual size_t getNumElementRows (void) const
 
virtual size_t getNumElementColumns (void) const
 
NodegetNearestNode (const Pos3d &p)
 Return the node closest to the point being passed as parameter.
 
const NodegetNearestNode (const Pos3d &p) const
 Return the node closest to the point being passed as parameter.
 
ID getNodeIndices (const Node *) const
 Return the indexes of the node being passed as parameter.
 
virtual ElementgetElement (const size_t &i=1, const size_t &j=1, const size_t &k=1)
 Returns a pointer to the element which indexes are being passed as paremeters. More...
 
virtual const ElementgetElement (const size_t &i=1, const size_t &j=1, const size_t &k=1) const
 Returns a pointer to the element which indices are being passed as paremeters. More...
 
NodefindNode (const int &tag)
 Returns a pointer to the node cuyo identifier is being passed as parameter.
 
const NodefindNode (const int &tag) const
 Returns a pointer to the node cuyo identifier is being passed as parameter.
 
ElementfindElement (const int &)
 Returns a pointer to the element identified by the tag being passed as parameter. More...
 
const ElementfindElement (const int &) const
 Returns a pointer to the element identified by the tag being passed as parameter. More...
 
ElementgetNearestElement (const Pos3d &p)
 Return the element closest to the point being passed as parameter.
 
const ElementgetNearestElement (const Pos3d &p) const
 Return the element closest to the point being passed as parameter.
 
NodePtrArray3dgetTtzNodes (void)
 
const NodePtrArray3dgetTtzNodes (void) const
 
ElemPtrArray3dgetTtzElements (void)
 
const ElemPtrArray3dgetTtzElements (void) const
 
IRowSet getVarRefIRow (size_t f=1, size_t c=1, const std::string &nmb="tmp")
 
IRowSet getVarRefIRow (const RangoIndice &layer_range, size_t f, size_t c, const std::string &nmb="tmp")
 
IRowSet getVarRefIRow (const Array3dRange &rango, const std::string &nmb="tmp")
 
JRowSet getVarRefJRow (size_t layer=1, size_t c=1, const std::string &nmb="tmp")
 
JRowSet getVarRefJRow (size_t layer, const RangoIndice &row_range, size_t c, const std::string &nmb="tmp")
 
JRowSet getVarRefJRow (const Array3dRange &rango, const std::string &nmb="tmp")
 
KRowSet getVarRefKRow (size_t layer=1, size_t f=1, const std::string &nmb="tmp")
 
KRowSet getVarRefKRow (size_t layer, size_t f, const RangoIndice &column_range, const std::string &nmb="tmp")
 
KRowSet getVarRefKRow (const Array3dRange &rango, const std::string &nmb="tmp")
 
void fix (const SFreedom_Constraint &)
 Fixes the nodes of the set.
 
virtual int getVtkCellType (void) const
 Interfaz con VTK.
 
void setGenMesh (bool m)
 Returns true if the points begins or ends in the line.
 
const bool & getGenMesh (void) const
 Returns true if the points begins or ends in the line.
 
virtual double getSquaredDistanceTo (const Pos3d &pt) const
 Return the squared distance to the position being passed as parameter. More...
 
virtual double getDistanceTo (const Pos3d &pt) const
 Return the distance to the position being passed as parameter.
 
Vector getSimpsonWeights (const std::string &, const std::string &, const size_t &f=1, const size_t &c=1, const size_t &n=10) const
 Return Simpson's weights.
 
void BorraPtrNodElem (void)
 Clears pointer to nodes and elements.
 
virtual ~EntMdlr (void)
 Destructor.
 
- Public Member Functions inherited from XC::SetEstruct
 SetEstruct (const std::string &nmb="", Preprocessor *preprocessor=nullptr)
 Constructor.
 
 SetEstruct (const SetEstruct &)
 Copy constructor.
 
SetEstructoperator= (const SetEstruct &)
 Assignment operator.
 
size_t getNumberOfNodes (void) const
 
size_t getNumberOfElements (void) const
 
bool In (const Node *) const
 Returns true if the node belongs to the set.
 
bool In (const Element *) const
 Returns true if the element belongs to the set.
 
bool isIRow (void) const
 Returns true if only the I index varies.
 
bool isJRow (void) const
 Returns true if only the J index varies.
 
bool isKRow (void) const
 Returns true if only the K index varies.
 
bool isIConstantLayer (void) const
 Returns true if only J and K indices varies.
 
bool isJConstantLayer (void) const
 Returns true if only J and K indices varies.
 
bool isKConstantLayer (void) const
 Returns true if only I and J indices varies.
 
size_t Dimension (void) const
 Return the dimension of the range (0,1,2 or 3). More...
 
std::string getStrType (void) const
 Returns the set type i_row, j_row, k_row, constantILayer,...
 
NodegetNodeI (const size_t &i)
 
NodegetNodeIJ (const size_t &i, const size_t &j)
 
NodegetNodeIJK (const size_t &i, const size_t &j, const size_t &k)
 
ElementgetElementI (const size_t &i)
 
ElementgetElementIJ (const size_t &i, const size_t &j)
 
ElementgetElementIJK (const size_t &i, const size_t &j, const size_t &k)
 
std::set< int > getNodeTags (void) const
 Returns the tags of the nodes.
 
boost::python::list getNodes (void)
 
std::set< int > getElementTags (void) const
 Returns the tags of the elements.
 
boost::python::list getElements (void)
 
ElementEdges getElementEdges (void)
 Returns the element edges with both end nodes belong to the nodes of the set. More...
 
- Public Member Functions inherited from XC::SetBase
 SetBase (const std::string &nmb="", Preprocessor *preprocessor=nullptr)
 Constructor.
 
void setColorComponents (const double &, const double &, const double &)
 Set the color of the object (red,green,blue) as integers from 0 to 255. More...
 
void setColor (const Vector &)
 Set the color of the object [red,green,blue] as integers from 0 to 255. More...
 
const VectorgetColor (void) const
 Return the color of the object [red,green,blue] as integers from 0 to 255. More...
 
const IDgetIdNodeTags (void) const
 Returns the tags of the nodes en un vector de enteros.
 
const IDgetIdElementTags (void) const
 Returns the tags of the elements en un vector de enteros.
 
virtual bool In (const Pnt *) const
 Returns true if the point belongs to the set.
 
virtual bool In (const Edge *) const
 Returns true if the edge belongs to the set.
 
virtual bool In (const Face *) const
 Returns true if the surface belongs to the set.
 
virtual bool In (const Body *) const
 Returns true if the body belongs to the set.
 
virtual bool In (const UniformGrid *) const
 Returns true if the «uniform grid» belongs to the set.
 
void resetTributaries (void) const
 Reset tributary areas (or lengths, or volumes) for the nodes that are connected to the set elements. More...
 
void computeTributaryLengths (bool initialGeometry=true) const
 Computes the tributary lengths that correspond to each node of the element set. More...
 
void computeTributaryAreas (bool initialGeometry=true) const
 Computes the tributary areas that correspond to each node of the element set. More...
 
void computeTributaryVolumes (bool initialGeometry=true) const
 Computes the tributary volumes that correspond to each node of the element set. More...
 
- Public Member Functions inherited from XC::EntMdlrBase
 EntMdlrBase (const std::string &nmb="", Preprocessor *preprocessor=nullptr)
 Constructor.
 
EntMdlrBaseoperator+= (const EntMdlrBase &)
 += operator.
 
EntMdlrBaseoperator-= (const EntMdlrBase &)
 -= operator.
 
EntMdlrBaseoperator*= (const EntMdlrBase &)
 *= operator (intersection).
 
const PreprocessorgetPreprocessor (void) const
 Return a pointer to the object preprocessor.
 
PreprocessorgetPreprocessor (void)
 Return a pointer to the object preprocessor.
 
size_t GetTag (void) const
 Return the object identifier in the model (tag).
 
PntBuscaPnt (const size_t &)
 Return a pointer to the point identified by the tag being passed as parameter. More...
 
const PntBuscaPnt (const size_t &) const
 Return a const pointer to the point identified by the tag being passed as parameter. More...
 
EdgeBuscaEdge (const size_t &)
 Return a pointer to the edge identified by the tag being passed as parameter. More...
 
const EdgeBuscaEdge (const size_t &) const
 Return a pointer to the edge identified by the tag being passed as parameter. More...
 
FaceBuscaFace (const size_t &)
 Return a pointer to the face identified by the tag being passed as parameter. More...
 
const FaceBuscaFace (const size_t &) const
 Returns a pointer to the face identified by the tag being passed as parameter. More...
 
virtual int sendSelf (CommParameters &)
 Send objects through the channel being passed as parameter.
 
virtual int recvSelf (const CommParameters &)
 Receive objects through the channel being passed as parameter.
 
- Public Member Functions inherited from XC::MovableObject
 MovableObject (int classTag, int dbTag)
 Constructor. More...
 
 MovableObject (int classTag)
 Constructor. More...
 
 MovableObject (const MovableObject &)
 Copy constructor. Doesn't copy the dbTag.
 
MovableObjectoperator= (const MovableObject &)
 Assignment operator. Doesn't copy the dbTag.
 
int getClassTag (void) const
 Return the class identifier.
 
int getDbTag (void) const
 Return the object identifier in the database.
 
int getDbTag (CommParameters &)
 Return the object identifier in the database.
 
void setDbTag (int dbTag)
 Sets the object identifier in the database.
 
void setDbTag (CommParameters &)
 Sets the object identifier in the database if not already set. More...
 
virtual int setParameter (const std::vector< std::string > &argv, Parameter &param)
 Sets the value param to the parameter argv.
 
virtual int updateParameter (int parameterID, Information &info)
 Updates the parameter identified by parameterID with info.
 
virtual int activateParameter (int parameterID)
 Activates the parameter identified by parameterID.
 
virtual int setVariable (const std::string &variable, Information &)
 Set the value of the variable idenfified by var.
 
virtual int getVariable (const std::string &variable, Information &)
 Return the value of the variable idenfified by var.
 
- Public Member Functions inherited from XC::DistributedBase
 DistributedBase (void)
 Constructor.
 
virtual DbTagDatagetDbTagData (void) const
 Returns a vector to store class dbTags.
 
const int & getDbTagDataPos (const int &i) const
 Returns the data at the i-th position.
 
void setDbTagDataPos (const int &i, const int &v)
 Sets the data at the i-th position.
 
void inicComm (const int &dataSize) const
 Initializes communication.
 

Protected Member Functions

Pos3dArray get_positions (void) const
 Return positions along the object.
 
Sidefirst_line (void)
 Returns a pointer to the first lado.
 
const Sidefirst_line (void) const
 Returns a pointer to the first lado.
 
Sidelast_line (void)
 Returns a pointer to the last edge.
 
const Sidelast_line (void) const
 Returns a pointer to the last edge.
 
const Pntfirst_point (void) const
 Returns a pointer to the first point.
 
const Pntlast_point (void) const
 Returns a pointer to the last point.
 
void create_line_nodes (void)
 Triggers node creation on the edges.
 
void line_meshing (meshing_dir dm)
 Triggers meshing of lines.
 
PntP1 (void)
 Return a pointer to the edge's start point.
 
PntP2 (void)
 Return a pointer to the edge's start point.
 
void close (void)
 Close the line.
 
- Protected Member Functions inherited from XC::Edge
void insert_surf (Face *s)
 Insert a surface in contact with the line (neighbour). More...
 
void create_nodes_en_extremos (void)
 Create the nodes for both end points of the edge.
 
- Protected Member Functions inherited from XC::EntMdlr
void create_nodes (const Pos3dArray3d &)
 Creates nodes at the positions being passed as parameters.
 
Nodecreate_node (const Pos3d &pos, size_t i=1, size_t j=1, size_t k=1)
 Creates a node at the position being passed as parameter.
 
bool create_elements (meshing_dir dm)
 Creates elements on the nodes created in create_nodes. More...
 
Pntcreate_point (const Pos3d &)
 Creates a point at the position being passed as parameter.
 
void create_points (const Pos3dArray &)
 Creates points at the positions being passed as parameters.
 
SetEstructcreate_row_set (const Array3dRange &, const std::string &)
 Creates a set that corresponds to a row of nodes and elements.
 
void clearAll (void)
 Clears object contents.
 
- Protected Member Functions inherited from XC::SetEstruct
void add_elements (const ElemPtrArray3d &)
 Adds to the model the elements being passed as parameters.
 
NodePtrSet getNodePtrSet (void)
 Returns the pointers to the set nodes.
 
- Protected Member Functions inherited from XC::EntMdlrBase
bool check_preprocessor (void) const
 Check for preprocessor.
 
int sendIdsEtiquetas (const int &, const int &, CommParameters &)
 Send labels through the channel being passed as parameter.
 
int recvIdsEtiquetas (const int &, const int &, const CommParameters &)
 Receive labels through the channel being passed as parameter.
 
int sendData (CommParameters &)
 Send members through the channel being passed as parameter.
 
int recvData (const CommParameters &)
 Receive members through the channel being passed as parameter.
 

Protected Attributes

std::deque< Sidelines
 Lines that compose the object.
 
- Protected Attributes inherited from XC::EntMdlr
NodePtrArray3d ttzNodes
 
ElemPtrArray3d ttzElements
 
- Protected Attributes inherited from XC::EntMdlrBase
LabelContainer labels
 Label container.
 

Friends

bool operator== (const Side &il1, const Side &il2)
 

Detailed Description

Compound line.

Constructor & Destructor Documentation

§ CmbEdge()

XC::CmbEdge::CmbEdge ( const std::string &  nombre,
Preprocessor m,
const size_t &  nd 
)

Constructor.

Parameters
nombreObject identifier.
mPointer to preprocessor.
ndnumber of divisions.

Member Function Documentation

§ addLines()

void XC::CmbEdge::addLines ( const ID line_indexes)

Creates and inserts the edges from the indexes being passed as parameter.

§ addPoints()

void XC::CmbEdge::addPoints ( const ID point_indexes)

Creates and inserts the the edges that link the points from the indexes being passed as parameter.

§ getSideByPoints() [1/4]

const XC::CmbEdge::Side * XC::CmbEdge::getSideByPoints ( const Pnt p1,
const Pnt p2 
) const

Return the side which extremes are the points being passed as parameters.

§ getSideByPoints() [2/4]

XC::CmbEdge::Side * XC::CmbEdge::getSideByPoints ( const Pnt p1,
const Pnt p2 
)

Return the side which extremes are the points being passed as parameters.

§ getSideByPoints() [3/4]

const XC::CmbEdge::Side * XC::CmbEdge::getSideByPoints ( const size_t &  idP1,
const size_t &  idP2 
) const

Return the side which extremes are the points being passed as parameters.

§ getSideByPoints() [4/4]

XC::CmbEdge::Side * XC::CmbEdge::getSideByPoints ( const size_t &  idP1,
const size_t &  idP2 
)

Return the edge that has its vertices at the points being passed as parameters.

§ In()

bool XC::CmbEdge::In ( const GeomObj3d &  geomObj,
const double &  tol = 0.0 
) const
virtual

Returns true if this object lies inside the geometric object.

Parameters
geomObjobject to be contained in.
toltolerance.

Reimplemented from XC::EntMdlr.

§ newLine() [1/2]

XC::Edge * XC::CmbEdge::newLine ( Pnt pA,
Pnt pB 
)

Creates a new line between the points being passed as parameters and inserts it on the edge set set.

§ newLine() [2/2]

XC::Edge * XC::CmbEdge::newLine ( Pnt pA,
Pnt pB,
Pnt pC 
)

Creates a new circle arc between the points being passed as parameters and put it in the edge set.

§ Out()

bool XC::CmbEdge::Out ( const GeomObj3d &  geomObj,
const double &  tol = 0.0 
) const
virtual

Returns true if this object lies outside the geometric object.

Parameters
geomObjobject to be contained in.
toltolerance.

Reimplemented from XC::EntMdlr.

§ SetNDiv()

void XC::CmbEdge::SetNDiv ( const size_t &  nd)
virtual

Sets the number of divisions for the whole object.

Parameters
ndnumber of divisions.

Reimplemented from XC::Edge.


The documentation for this class was generated from the following files: