Class uipc::geometry::AbstractSimplicialComplex
ClassList > uipc > geometry > AbstractSimplicialComplex
Represents an abstract simplicial complex, containing vertices, edges, triangles, and tetrahedra. More...
#include <abstract_simplicial_complex.h>
Inherits the following classes: uipc::geometry::Geometry
Public Types
| Type | Name |
|---|---|
| typedef SimplicialComplexAttributes< true, 1 > | CEdgeAttributes |
| typedef SimplicialComplexAttributes< true, 3 > | CTetrahedronAttributes |
| typedef SimplicialComplexAttributes< true, 2 > | CTriangleAttributes |
| typedef SimplicialComplexAttributes< true, 0 > | CVertexAttributes |
| typedef SimplicialComplexAttributes< false, 1 > | EdgeAttributes Alias for the edge attributes. |
| typedef SimplicialComplexAttributes< false, 3 > | TetrahedronAttributes Alias for the tetrahedron attributes. |
| typedef SimplicialComplexAttributes< false, 2 > | TriangleAttributes Alias for the triangle attributes. |
| typedef SimplicialComplexAttributes< false, 0 > | VertexAttributes Alias for the vertex attributes. |
Public Types inherited from uipc::geometry::Geometry
| Type | Name |
|---|---|
| typedef InstanceAttributesT< true > | CInstanceAttributes |
| typedef MetaAttributesT< true > | CMetaAttributes |
| typedef InstanceAttributesT< false > | InstanceAttributes |
| typedef MetaAttributesT< false > | MetaAttributes |
Public Functions
| Type | Name |
|---|---|
| AbstractSimplicialComplex () = default |
|
| AbstractSimplicialComplex (const AbstractSimplicialComplex & o) = default |
|
| AbstractSimplicialComplex (AbstractSimplicialComplex && o) = default |
|
| IndexT | dim () noexcept const Get the dimension of the simplicial complex. |
| EdgeAttributes | edges () noexcept A wrapper of the edges and its attributes of the simplicial complex. |
| CEdgeAttributes | edges () noexcept const |
| AbstractSimplicialComplex & | operator= (const AbstractSimplicialComplex & o) = delete |
| AbstractSimplicialComplex & | operator= (AbstractSimplicialComplex && o) = delete |
| TetrahedronAttributes | tetrahedra () noexcept A wrapper of the tetrahedra and its attributes of the simplicial complex. |
| CTetrahedronAttributes | tetrahedra () noexcept const |
| TriangleAttributes | triangles () noexcept A wrapper of the triangles and its attributes of the simplicial complex. |
| CTriangleAttributes | triangles () noexcept const |
| VertexAttributes | vertices () noexcept A wrapper of the vertices and its attributes of the simplicial complex. |
| CVertexAttributes | vertices () noexcept const |
Public Functions inherited from uipc::geometry::Geometry
| Type | Name |
|---|---|
| Geometry () |
|
| Geometry (const Geometry & o) |
|
| Geometry (Geometry && o) = default |
|
| T * | as () |
| const T * | as () const |
| InstanceAttributes | instances () Get the instance attributes of the geometries. |
| CInstanceAttributes | instances () const |
| MetaAttributes | meta () Get the meta attributes of the geometries. |
| CMetaAttributes | meta () const |
| Geometry & | operator= (const Geometry & o) = delete |
| Geometry & | operator= (Geometry && o) = delete |
Public Functions inherited from uipc::geometry::IGeometry
| Type | Name |
|---|---|
| S< IGeometry > | clone () const |
| Json | to_json () const |
| std::string_view | type () noexcept const Get the type of the geometries, check the type to downcast the geometries to a specific type. |
| void | update_from (const GeometryCommit & commit) |
| virtual | ~IGeometry () = default |
Protected Functions
| Type | Name |
|---|---|
| virtual Json | do_to_json () override const |
| virtual std::string_view | get_type () noexcept override const |
Protected Functions inherited from uipc::geometry::Geometry
| Type | Name |
|---|---|
| S< AttributeCollection > | create (std::string_view name) |
| virtual void | do_build_from_attribute_collections (span< const std::string > names, span< const AttributeCollection * > collections) override |
| virtual S< IGeometry > | do_clone () override const |
| virtual void | do_collect_attribute_collections (vector< std::string > & names, vector< const AttributeCollection * > & collections) override const |
| virtual void | do_collect_attribute_collections (vector< std::string > & names, vector< AttributeCollection * > & collections) override |
| virtual Json | do_to_json () override const |
| virtual void | do_update_from (const GeometryCommit & commit) override |
| S< const AttributeCollection > | find (std::string_view name) const |
| S< AttributeCollection > | find (std::string_view name) |
| virtual std::string_view | get_type () noexcept override const |
Protected Functions inherited from uipc::geometry::IGeometry
| Type | Name |
|---|---|
| virtual void | do_build_from_attribute_collections (span< const std::string > names, span< const AttributeCollection * > collections) = 0 |
| virtual S< IGeometry > | do_clone () const = 0 |
| virtual void | do_collect_attribute_collections (vector< std::string > & names, vector< const AttributeCollection * > & collections) const = 0 |
| virtual void | do_collect_attribute_collections (vector< std::string > & names, vector< AttributeCollection * > & collections) = 0 |
| virtual Json | do_to_json () const = 0 |
| virtual void | do_update_from (const GeometryCommit & commit) = 0 |
| virtual std::string_view | get_type () noexcept const = 0 |
Detailed Description
Note:
Abstract simplicial complex does not contain any geometric information, such as coordinates of vertices.
Public Types Documentation
typedef CEdgeAttributes
using uipc::geometry::AbstractSimplicialComplex::CEdgeAttributes = SimplicialComplexAttributes<true, 1>;
typedef CTetrahedronAttributes
using uipc::geometry::AbstractSimplicialComplex::CTetrahedronAttributes = SimplicialComplexAttributes<true, 3>;
typedef CTriangleAttributes
using uipc::geometry::AbstractSimplicialComplex::CTriangleAttributes = SimplicialComplexAttributes<true, 2>;
typedef CVertexAttributes
using uipc::geometry::AbstractSimplicialComplex::CVertexAttributes = SimplicialComplexAttributes<true, 0>;
typedef EdgeAttributes
Alias for the edge attributes.
using uipc::geometry::AbstractSimplicialComplex::EdgeAttributes = SimplicialComplexAttributes<false, 1>;
See also: SimplicialComplexAttributes
typedef TetrahedronAttributes
Alias for the tetrahedron attributes.
using uipc::geometry::AbstractSimplicialComplex::TetrahedronAttributes = SimplicialComplexAttributes<false, 3>;
See also: SimplicialComplexAttributes
typedef TriangleAttributes
Alias for the triangle attributes.
using uipc::geometry::AbstractSimplicialComplex::TriangleAttributes = SimplicialComplexAttributes<false, 2>;
See also: SimplicialComplexAttributes
typedef VertexAttributes
Alias for the vertex attributes.
using uipc::geometry::AbstractSimplicialComplex::VertexAttributes = SimplicialComplexAttributes<false, 0>;
See also: SimplicialComplexAttributes
Public Functions Documentation
function AbstractSimplicialComplex [1/3]
function AbstractSimplicialComplex [2/3]
uipc::geometry::AbstractSimplicialComplex::AbstractSimplicialComplex (
const AbstractSimplicialComplex & o
) = default
function AbstractSimplicialComplex [3/3]
uipc::geometry::AbstractSimplicialComplex::AbstractSimplicialComplex (
AbstractSimplicialComplex && o
) = default
function dim
Get the dimension of the simplicial complex.
Return the maximum dimension of the simplices in the simplicial complex.
Returns:
IndexT
function edges [1/2]
A wrapper of the edges and its attributes of the simplicial complex.
Returns:
function edges [2/2]
function operator=
AbstractSimplicialComplex & uipc::geometry::AbstractSimplicialComplex::operator= (
const AbstractSimplicialComplex & o
) = delete
function operator=
AbstractSimplicialComplex & uipc::geometry::AbstractSimplicialComplex::operator= (
AbstractSimplicialComplex && o
) = delete
function tetrahedra [1/2]
A wrapper of the tetrahedra and its attributes of the simplicial complex.
Returns:
function tetrahedra [2/2]
function triangles [1/2]
A wrapper of the triangles and its attributes of the simplicial complex.
Returns:
function triangles [2/2]
function vertices [1/2]
A wrapper of the vertices and its attributes of the simplicial complex.
Returns:
VertexAttributeInfo
function vertices [2/2]
Protected Functions Documentation
function do_to_json
Implements uipc::geometry::Geometry::do_to_json
function get_type
virtual std::string_view uipc::geometry::AbstractSimplicialComplex::get_type () noexcept override const
Implements uipc::geometry::Geometry::get_type
Friends Documentation
friend formatter< AbstractSimplicialComplex >
struct uipc::geometry::AbstractSimplicialComplex::formatter< AbstractSimplicialComplex > (
fmt::formatter< AbstractSimplicialComplex >
)
The documentation for this class was generated from the following file include/uipc/geometry/abstract_simplicial_complex.h