PeriDyno 1.0.0
Loading...
Searching...
No Matches
dyno::EdgeSet< TDataType > Class Template Reference

#include <EdgeSet.h>

Inheritance diagram for dyno::EdgeSet< TDataType >:
Collaboration diagram for dyno::EdgeSet< TDataType >:

Public Types

typedef TDataType::Real Real
 
typedef TDataType::Coord Coord
 
typedef TopologyModule::Edge Edge
 
- Public Types inherited from dyno::PointSet< TDataType >
typedef TDataType::Real Real
 
typedef TDataType::Coord Coord
 
- Public Types inherited from dyno::TopologyModule
typedef PointType Point
 
typedef VectorND< PointType, 2 > Edge
 
typedef Vector< PointType, 3 > Triangle
 
typedef VectorND< PointType, 4 > Quad
 
typedef VectorND< PointType, 4 > Tetrahedron
 
typedef VectorND< PointType, 5 > Pyramid
 
typedef VectorND< PointType, 6 > Pentahedron
 
typedef VectorND< PointType, 8 > Hexahedron
 
typedef VectorND< PointType, 2 > Edg2Tri
 
typedef VectorND< PointType, 3 > Tri2Edg
 
typedef VectorND< PointType, 2 > Edg2Quad
 
typedef VectorND< PointType, 4 > Quad2Edg
 
typedef VectorND< PointType, 2 > Tri2Tet
 
typedef VectorND< PointType, 4 > Tet2Tri
 
typedef VectorND< PointType, 2 > Tri2Quad
 
typedef VectorND< PointType, 2 > Quad2Hex
 
typedef VectorND< PointType, 2 > Edg2Hex
 
typedef VectorND< PointType, 2 > Edg2Poly
 
- Public Types inherited from dyno::OBase
typedef std::vector< FBase * > FieldVector
 
typedef std::map< FieldID, FBase * > FieldMap
 

Public Member Functions

 EdgeSet ()
 
 ~EdgeSet () override
 
void setEdges (std::vector< Edge > &edges)
 
void setEdges (DArray< Edge > &edges)
 
void requestPointNeighbors (DArrayList< int > &lists)
 Request the neighboring ids of each point according to the mesh topology Be sure update() is called as long as the topology is changed.
 
DArray< Edge > & getEdges ()
 Get all edges with each one containing the indices of two edge ends.
 
DArrayList< int > & vertex2Edge ()
 Get the Ver2 Edge object.
 
void copyFrom (EdgeSet< TDataType > &edgeSet)
 
bool isEmpty () override
 
void clear () override
 
void loadSmeshFile (std::string filename)
 
 EdgeSet ()
 
 ~EdgeSet () override
 
void setEdges (const DArray< Edge > &edges)
 
void setEdges (const std::vector< Edge > &edges)
 
DArray< Edge > & getEdges ()
 
void copyFrom (EdgeSet &es)
 
- Public Member Functions inherited from dyno::PointSet< TDataType >
 PointSet ()
 
 ~PointSet () override
 
void copyFrom (PointSet< TDataType > &pointSet)
 
void setPoints (const std::vector< Coord > &pos)
 
void setPoints (const DArray< Coord > &pos)
 
void setSize (int size)
 
int getPointSize ()
 
void requestBoundingBox (Coord &lo, Coord &hi)
 Return the lower and upper bounds for all points.
 
void scale (const Real s)
 
void scale (const Coord s)
 
void translate (const Coord t)
 
virtual void rotate (const Coord angle)
 
virtual void rotate (const Quat< Real > q)
 
void loadObjFile (std::string filename)
 
DArray< Coord > & getPoints ()
 Return the array of points.
 
 PointSet ()
 
 ~PointSet () override
 
DArray< Vec3f > & getPoints ()
 
void setPoints (std::vector< Vec3f > &points)
 
void setPoints (const DArray< Vec3f > &points)
 
void clear ()
 
- Public Member Functions inherited from dyno::TopologyModule
 TopologyModule ()
 
 ~TopologyModule () override
 
virtual int getDOF ()
 
void tagAsChanged ()
 
void tagAsUnchanged ()
 
bool isTopologyChanged ()
 
void update ()
 
- Public Member Functions inherited from dyno::OBase
 OBase ()
 
 ~OBase () override
 
virtual std::string caption ()
 Return the caption.
 
virtual bool captionVisible ()
 Whether to hide the caption in the GUI.
 
virtual std::string description ()
 Return a description for the node or module, override this function to support user-defined description.
 
virtual std::string getName ()
 
bool addField (FBase *data)
 Add a field to Base FieldID will be set to the name of Field by default.
 
bool addField (FieldID name, FBase *data)
 Add a field to Base.
 
bool addFieldAlias (FieldID name, FBase *data)
 
bool addFieldAlias (FieldID name, FBase *data, FieldMap &fieldAlias)
 
bool findField (FBase *data)
 Find a field by its pointer.
 
bool findFieldAlias (const FieldID name)
 Find a field by its name.
 
bool findFieldAlias (const FieldID name, FieldMap &fieldAlias)
 Find a field in fieldAlias by its name This function is typically called by other functions.
 
bool removeField (FBase *data)
 Remove a field by its pointer.
 
bool removeFieldAlias (const FieldID name)
 Remove a field by its name.
 
bool removeFieldAlias (const FieldID name, FieldMap &fieldAlias)
 
FBasegetField (const FieldID name)
 Return a field by its name.
 
std::vector< FBase * > & getAllFields ()
 
virtual bool attachField (FBase *field, std::string name, std::string desc, bool autoDestroy=true)
 Attach a field to Base.
 
template<typename T>
TgetField (FieldID name)
 
bool isAllFieldsReady ()
 Check the completeness of all required fields.
 
std::vector< FieldIDgetFieldAlias (FBase *data)
 
int getFieldAliasCount (FBase *data)
 
void setBlockCoord (float x, float y)
 
float bx ()
 
float by ()
 
bool findInputField (FBase *field)
 
bool addInputField (FBase *field)
 
bool removeInputField (FBase *field)
 
std::vector< FBase * > & getInputFields ()
 
bool findOutputField (FBase *field)
 
bool addOutputField (FBase *field)
 
bool addToOutput (FBase *field)
 
bool removeOutputField (FBase *field)
 
bool removeFromOutput (FBase *field)
 
std::vector< FBase * > & getOutputFields ()
 
bool findParameter (FBase *field)
 
bool addParameter (FBase *field)
 
bool removeParameter (FBase *field)
 
std::vector< FBase * > & getParameters ()
 
- Public Member Functions inherited from dyno::Object
 Object ()
 
virtual ~Object ()
 
ObjectId objectId ()
 

Public Attributes

DArray< EdgemEdgeIndex
 
- Public Attributes inherited from dyno::PointSet< TDataType >
DArray< Vec3fmPoints
 

Protected Member Functions

virtual void updateEdges ()
 
void updateTopology () override
 
virtual void updateEdges ()
 
void updateTopology () override
 

Protected Attributes

DArray< EdgemEdges
 
DArrayList< int > mVer2Edge
 
- Protected Attributes inherited from dyno::PointSet< TDataType >
DArray< CoordmCoords
 
- Protected Attributes inherited from dyno::OBase
std::vector< FBase * > fields_input
 
std::vector< FBase * > fields_output
 
std::vector< FBase * > fields_param
 

Additional Inherited Members

- Static Public Member Functions inherited from dyno::Object
static bool registerClass (ClassInfo *ci)
 
static ObjectcreateObject (std::string name)
 
static std::map< std::string, ClassInfo * > * getClassMap ()
 
static ObjectId baseId ()
 Base Id.
 

Detailed Description

template<typename TDataType>
class dyno::EdgeSet< TDataType >

Definition at line 93 of file EdgeSet.h.

Member Typedef Documentation

◆ Coord

template<typename TDataType>
typedef TDataType::Coord dyno::EdgeSet< TDataType >::Coord

Definition at line 97 of file EdgeSet.h.

◆ Edge

template<typename TDataType>
typedef TopologyModule::Edge dyno::EdgeSet< TDataType >::Edge

Definition at line 98 of file EdgeSet.h.

◆ Real

template<typename TDataType>
typedef TDataType::Real dyno::EdgeSet< TDataType >::Real

Definition at line 96 of file EdgeSet.h.

Constructor & Destructor Documentation

◆ EdgeSet() [1/2]

template<typename TDataType>
dyno::EdgeSet< TDataType >::EdgeSet ( )

Definition at line 5 of file EdgeSet.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ ~EdgeSet() [1/2]

template<typename TDataType>
dyno::EdgeSet< TDataType >::~EdgeSet ( )
override

Definition at line 10 of file EdgeSet.cpp.

◆ EdgeSet() [2/2]

template<typename TDataType>
dyno::EdgeSet< TDataType >::EdgeSet ( )

◆ ~EdgeSet() [2/2]

template<typename TDataType>
dyno::EdgeSet< TDataType >::~EdgeSet ( )
override

Member Function Documentation

◆ clear()

template<typename TDataType>
void dyno::EdgeSet< TDataType >::clear ( )
overridevirtual

Reimplemented from dyno::PointSet< TDataType >.

Reimplemented in dyno::TriangleSet< TDataType >.

◆ copyFrom() [1/2]

template<typename TDataType>
void dyno::EdgeSet< TDataType >::copyFrom ( EdgeSet< TDataType > & es)
Here is the call graph for this function:

◆ copyFrom() [2/2]

template<typename TDataType>
void dyno::EdgeSet< TDataType >::copyFrom ( EdgeSet< TDataType > & edgeSet)

Definition at line 24 of file EdgeSet.cpp.

Here is the call graph for this function:

◆ getEdges() [1/2]

template<typename TDataType>
DArray< Edge > & dyno::EdgeSet< TDataType >::getEdges ( )
inline

Get all edges with each one containing the indices of two edge ends.

Returns
DArray<Edge>& A GPU array

Definition at line 119 of file EdgeSet.h.

Here is the caller graph for this function:

◆ getEdges() [2/2]

template<typename TDataType>
DArray< Edge > & dyno::EdgeSet< TDataType >::getEdges ( )
inline

Definition at line 15 of file EdgeSet.h.

◆ isEmpty()

template<typename TDataType>
bool dyno::EdgeSet< TDataType >::isEmpty ( )
overridevirtual

◆ loadSmeshFile()

template<typename TDataType>
void dyno::EdgeSet< TDataType >::loadSmeshFile ( std::string filename)
inline

Definition at line 135 of file EdgeSet.h.

◆ requestPointNeighbors()

template<typename TDataType>
void dyno::EdgeSet< TDataType >::requestPointNeighbors ( DArrayList< int > & lists)

Request the neighboring ids of each point according to the mesh topology Be sure update() is called as long as the topology is changed.

Parameters
listsA neighbor list storing the ids

◆ setEdges() [1/4]

template<typename TDataType>
void dyno::EdgeSet< TDataType >::setEdges ( const DArray< Edge > & edges)

Definition at line 14 of file EdgeSet.cpp.

◆ setEdges() [2/4]

template<typename TDataType>
void dyno::EdgeSet< TDataType >::setEdges ( const std::vector< Edge > & edges)

Definition at line 19 of file EdgeSet.cpp.

◆ setEdges() [3/4]

template<typename TDataType>
void dyno::EdgeSet< TDataType >::setEdges ( DArray< Edge > & edges)

◆ setEdges() [4/4]

template<typename TDataType>
void dyno::EdgeSet< TDataType >::setEdges ( std::vector< Edge > & edges)

◆ updateEdges() [1/2]

template<typename TDataType>
virtual void dyno::EdgeSet< TDataType >::updateEdges ( )
inlineprotectedvirtual

Override updateEdges to update edges in a customized way, e.g., only the four edges will be created for a quadrangle

Reimplemented in dyno::PolygonSet< TDataType >, dyno::QuadSet< TDataType >, and dyno::TriangleSet< TDataType >.

Definition at line 141 of file EdgeSet.h.

Here is the caller graph for this function:

◆ updateEdges() [2/2]

template<typename TDataType>
virtual void dyno::EdgeSet< TDataType >::updateEdges ( )
inlineprotectedvirtual

Override updateEdges to update edges in a special way

Reimplemented in dyno::PolygonSet< TDataType >, dyno::QuadSet< TDataType >, and dyno::TriangleSet< TDataType >.

Definition at line 23 of file EdgeSet.h.

◆ updateTopology() [1/2]

template<typename TDataType>
void dyno::EdgeSet< TDataType >::updateTopology ( )
overrideprotectedvirtual

Reimplemented from dyno::TopologyModule.

Reimplemented in dyno::PolygonSet< TDataType >, dyno::QuadSet< TDataType >, dyno::TetrahedronSet< TDataType >, dyno::TriangleSet< TDataType >, and dyno::TriangleSet< TDataType >.

Definition at line 30 of file EdgeSet.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ updateTopology() [2/2]

template<typename TDataType>
void dyno::EdgeSet< TDataType >::updateTopology ( )
overrideprotectedvirtual

◆ vertex2Edge()

template<typename TDataType>
DArrayList< int > & dyno::EdgeSet< TDataType >::vertex2Edge ( )
inline

Get the Ver2 Edge object.

Returns
DArrayList<int>&

Definition at line 126 of file EdgeSet.h.

Here is the caller graph for this function:

Member Data Documentation

◆ mEdgeIndex

template<typename TDataType>
DArray<Edge> dyno::EdgeSet< TDataType >::mEdgeIndex

Definition at line 28 of file EdgeSet.h.

◆ mEdges

template<typename TDataType>
DArray<Edge> dyno::EdgeSet< TDataType >::mEdges
protected

Definition at line 146 of file EdgeSet.h.

◆ mVer2Edge

template<typename TDataType>
DArrayList<int> dyno::EdgeSet< TDataType >::mVer2Edge
protected

Map vertex id to edge id

Definition at line 151 of file EdgeSet.h.


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