TriConnectivity: Added two functions split_edge and split_edge_copy to mask the PolyConnectivity functions of the same name (Prevents creation of valence 2 vertices on trimeshes)
closes #51
This commit is contained in:
@@ -9,6 +9,11 @@
|
|||||||
|
|
||||||
<tr valign=top><td><b>7.2</b> (?/?/?)</td><td>
|
<tr valign=top><td><b>7.2</b> (?/?/?)</td><td>
|
||||||
|
|
||||||
|
<b>Core</b>
|
||||||
|
<ul>
|
||||||
|
<li>TriConnectivity: Added two functions split_edge and split_edge_copy to mask the PolyConnectivity functions of the same name (Prevents creation of valence 2 vertices on trimeshes)</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
<b>IO</b>
|
<b>IO</b>
|
||||||
<ul>
|
<ul>
|
||||||
<li>PLY Reader: Allowing the PLY reader to read custom face ( Thanks to morgan Leborgne for the patch)</li>
|
<li>PLY Reader: Allowing the PLY reader to read custom face ( Thanks to morgan Leborgne for the patch)</li>
|
||||||
|
|||||||
@@ -162,11 +162,28 @@ public:
|
|||||||
*
|
*
|
||||||
* \note The properties of the new edges, halfedges, and faces will be undefined!
|
* \note The properties of the new edges, halfedges, and faces will be undefined!
|
||||||
*
|
*
|
||||||
* @param _eh Edge handle that should be splitted
|
* @param _eh Edge handle that should be split
|
||||||
* @param _vh Vertex handle that will be inserted at the edge
|
* @param _vh Vertex handle that will be inserted at the edge
|
||||||
*/
|
*/
|
||||||
void split(EdgeHandle _eh, VertexHandle _vh);
|
void split(EdgeHandle _eh, VertexHandle _vh);
|
||||||
|
|
||||||
|
/** \brief Edge split (= 2-to-4 split)
|
||||||
|
*
|
||||||
|
*
|
||||||
|
* The function will introduce two new faces ( non-boundary case) or
|
||||||
|
* one additional face (if edge is boundary)
|
||||||
|
*
|
||||||
|
* \note The properties of the new edges, halfedges, and faces will be undefined!
|
||||||
|
*
|
||||||
|
* \note This is an override to prevent a direct call to PolyConnectivity split_edge,
|
||||||
|
* which would introduce a singular vertex with valence 2 which is not allowed
|
||||||
|
* on TriMeshes
|
||||||
|
*
|
||||||
|
* @param _eh Edge handle that should be split
|
||||||
|
* @param _vh Vertex handle that will be inserted at the edge
|
||||||
|
*/
|
||||||
|
inline void split_edge(EdgeHandle _eh, VertexHandle _vh) { TriConnectivity::split(_eh, _vh); }
|
||||||
|
|
||||||
/** \brief Edge split (= 2-to-4 split)
|
/** \brief Edge split (= 2-to-4 split)
|
||||||
*
|
*
|
||||||
* The function will introduce two new faces ( non-boundary case) or
|
* The function will introduce two new faces ( non-boundary case) or
|
||||||
@@ -175,14 +192,31 @@ public:
|
|||||||
* \note The properties of the new edges will be adjusted to the properties of the original edge
|
* \note The properties of the new edges will be adjusted to the properties of the original edge
|
||||||
* \note The properties of the new faces and halfedges will be undefined
|
* \note The properties of the new faces and halfedges will be undefined
|
||||||
*
|
*
|
||||||
* @param _eh Edge handle that should be splitted
|
* @param _eh Edge handle that should be split
|
||||||
* @param _vh Vertex handle that will be inserted at the edge
|
* @param _vh Vertex handle that will be inserted at the edge
|
||||||
*/
|
*/
|
||||||
void split_copy(EdgeHandle _eh, VertexHandle _vh);
|
void split_copy(EdgeHandle _eh, VertexHandle _vh);
|
||||||
|
|
||||||
|
/** \brief Edge split (= 2-to-4 split)
|
||||||
|
*
|
||||||
|
* The function will introduce two new faces ( non-boundary case) or
|
||||||
|
* one additional face (if edge is boundary)
|
||||||
|
*
|
||||||
|
* \note The properties of the new edges will be adjusted to the properties of the original edge
|
||||||
|
* \note The properties of the new faces and halfedges will be undefined
|
||||||
|
*
|
||||||
|
* \note This is an override to prevent a direct call to PolyConnectivity split_edge_copy,
|
||||||
|
* which would introduce a singular vertex with valence 2 which is not allowed
|
||||||
|
* on TriMeshes
|
||||||
|
*
|
||||||
|
* @param _eh Edge handle that should be split
|
||||||
|
* @param _vh Vertex handle that will be inserted at the edge
|
||||||
|
*/
|
||||||
|
inline void split_edge_copy(EdgeHandle _eh, VertexHandle _vh) { TriConnectivity::split_copy(_eh, _vh); }
|
||||||
|
|
||||||
/** \brief Face split (= 1-to-3) split, calls corresponding PolyMeshT function).
|
/** \brief Face split (= 1-to-3) split, calls corresponding PolyMeshT function).
|
||||||
*
|
*
|
||||||
* @param _fh Face handle that should be splitted
|
* @param _fh Face handle that should be split
|
||||||
* @param _vh Vertex handle that will be inserted at the face
|
* @param _vh Vertex handle that will be inserted at the face
|
||||||
*/
|
*/
|
||||||
inline void split(FaceHandle _fh, VertexHandle _vh)
|
inline void split(FaceHandle _fh, VertexHandle _vh)
|
||||||
@@ -190,7 +224,7 @@ public:
|
|||||||
|
|
||||||
/** \brief Face split (= 1-to-3) split, calls corresponding PolyMeshT function).
|
/** \brief Face split (= 1-to-3) split, calls corresponding PolyMeshT function).
|
||||||
*
|
*
|
||||||
* @param _fh Face handle that should be splitted
|
* @param _fh Face handle that should be split
|
||||||
* @param _vh Vertex handle that will be inserted at the face
|
* @param _vh Vertex handle that will be inserted at the face
|
||||||
*/
|
*/
|
||||||
inline void split_copy(FaceHandle _fh, VertexHandle _vh)
|
inline void split_copy(FaceHandle _fh, VertexHandle _vh)
|
||||||
|
|||||||
Reference in New Issue
Block a user