Go to the documentation of this file.
30 #include <unordered_map>
47 HalfEdge(
const Eigen::Vector2i &vertex_indices,
Definition: MeshBase.h:45
bool HasHalfEdges() const
True if half-edges have already been computed.
Definition: HalfEdgeTriangleMesh.cpp:54
HalfEdgeTriangleMesh()
Definition: HalfEdgeTriangleMesh.h:65
int NextHalfEdgeOnBoundary(int curr_half_edge_index) const
Definition: HalfEdgeTriangleMesh.cpp:125
int next_
Definition: HalfEdgeTriangleMesh.h:55
Eigen::Vector2i vertex_indices_
Definition: HalfEdgeTriangleMesh.h:59
std::vector< std::vector< int > > ordered_half_edge_from_vertex_
Definition: HalfEdgeTriangleMesh.h:107
Definition: HalfEdgeTriangleMesh.h:38
HalfEdgeTriangleMesh operator+(const HalfEdgeTriangleMesh &mesh) const
Definition: HalfEdgeTriangleMesh.cpp:299
std::vector< std::vector< int > > GetBoundaries() const
Returns a vector of boundaries. A boundary is a vector of vertices.
Definition: HalfEdgeTriangleMesh.cpp:101
Definition: HalfEdgeTriangleMesh.h:40
virtual HalfEdgeTriangleMesh & Clear() override
Clear all elements in the geometry.
Definition: HalfEdgeTriangleMesh.cpp:47
The base geometry class.
Definition: Geometry.h:35
GeometryType
Specifies possible geometry types.
Definition: Geometry.h:40
HalfEdgeTriangleMesh & operator+=(const HalfEdgeTriangleMesh &mesh)
Definition: HalfEdgeTriangleMesh.cpp:292
long vertex_index
Definition: FilePLY.cpp:45
char type
Definition: FilePCD.cpp:57
HalfEdgeTriangleMesh(Geometry::GeometryType type)
Definition: HalfEdgeTriangleMesh.h:92
Definition: PinholeCameraIntrinsic.cpp:34
std::vector< int > BoundaryVerticesFromVertex(int vertex_index) const
Definition: HalfEdgeTriangleMesh.cpp:89
int NextHalfEdgeFromVertex(int init_half_edge_index) const
Definition: HalfEdgeTriangleMesh.cpp:59
Definition: TriangleMesh.h:46
int twin_
Definition: HalfEdgeTriangleMesh.h:57
HalfEdge()
Definition: HalfEdgeTriangleMesh.h:42
int triangle_index_
Definition: HalfEdgeTriangleMesh.h:61
std::vector< Eigen::Vector3d > triangle_normals_
Definition: HalfEdgeTriangleMesh.h:102
static std::shared_ptr< HalfEdgeTriangleMesh > CreateFromTriangleMesh(const TriangleMesh &mesh)
Definition: HalfEdgeTriangleMesh.cpp:156
bool IsBoundary() const
Definition: HalfEdgeTriangleMesh.h:51
std::vector< HalfEdge > half_edges_
Definition: HalfEdgeTriangleMesh.h:103
std::vector< Eigen::Vector3i > triangles_
Definition: HalfEdgeTriangleMesh.h:101
std::vector< int > BoundaryHalfEdgesFromVertex(int vertex_index) const
Definition: HalfEdgeTriangleMesh.cpp:69