Skip to content
GitLab
Projects Groups Topics Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in
  • OpenMesh OpenMesh
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributor statistics
    • Graph
    • Compare revisions
  • Issues 15
    • Issues 15
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 4
    • Merge requests 4
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Artifacts
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Packages and registries
    • Packages and registries
    • Model experiments
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • OpenMeshOpenMesh
  • OpenMeshOpenMesh
  • Issues
  • #51

split_edge Creates Non-Triangular Faces on TriMeshes

PolyConnectivity implements the two methods split_edge(EdgeHandle, VertexHandle) and split_edge_copy(EdgeHandle, VertexHandle) which split an edge without splitting the incident faces, thus increasing the valence of the incident faces by one.

TriConnectivity implements the two similar methods split(EdgeHandle, VertexHandle) and split_copy(EdgeHandle, VertexHandle) which do split the incident faces, thus performing a 2 to 4 split (or 1 to 2 split on boundaries) as expected.

Since TriConnectivity publicly inherits from PolyConnectivity, split_edge can be called on a TriConnectivity resulting in non-triangular faces.

Should we add split_edge and split_edge_copy methods to TriConnectivity which call split and split_edge to prevent this?

Assignee
Assign to
Time tracking