feat: Provide boundary loop support for `SurfaceMesh`
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 5/5
- Tiempo estimado
- Más de una semana
- Aptitud para principiantes
- 38/100
- Tipo de issue
- Nueva funcionalidad
- Claridad
- Bastante claro
- Estado de actividad
- Estancado
- Stack tecnológico
- cpp
- Área
- computer-graphics
Línea de trabajo
Start by locating SurfaceMesh boundary-edge and boundary-loop construction, including the warning described in the issue; no file or test is named. Done means unambiguous boundary-edge collections are represented as boundary loops while ambiguous nonmanifold cases retain the current behavior, with coverage for both cases.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Currently, SurfaceMesh does not encode boundary loops, as indicated by this warning:
The reason is that, in general, boundary loops in a nonmanifold complex do not necessarily define a collection of disjoint loops. See the example below, for instance, where either (i) "outer" halfedges would have to be assigned to more than one boundary loop or (ii) a subset of possible loops would have to be chosen arbitrarily.
Still, for boundary loops of a SurfaceMesh that are well-defined, this approach feels like a bit of a cop-out. A reasonable policy might be:
- If a collection of boundary edges makes an unambiguous loop, add it to the set of boundary loops.
- Otherwise, retain the current behavior: these edges are marked as boundary edges, but do not belong to any boundary loop.
This policy is indeed harder to understand than "there are no boundary loops on SurfaceMesh." But maybe still strikes a good balance between simplicity and utility.
- Lenguaje dominante
- C++
- Estrellas
- 1.3k
- Forks
- 183
- Métricas de merge de PR
- Sin PR fusionados en 30 d
Preparar el entorno
Este proyecto no incluye contenedor de desarrollo, Dockerfile ni guía de contribución, así que la configuración corre por tu cuenta: empieza por su README y consulta nuestra guía para la primera contribución para los pasos generales.
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de nmwsharp/geometry-central
-
warning: control reaches end of non-void function in VectorHeatMethodSolver::computeLogMapPosiblemente ocupada @dyollb la tomó hace 64 días. Abierto
Dificultad 1/5 Menos de una hora Aptitud para principiantes 88/100
nmwsharp/geometry-central#256 ·
-
Dificultad 4/5 3-5 días Aptitud para principiantes 35/100
nmwsharp/geometry-central#258 ·
-
Dificultad 4/5 3-5 días Aptitud para principiantes 48/100
nmwsharp/geometry-central#255 · 1 comentario ·
-
FlipEdgeNetwork::iterativeShorten() hangs on a contractible closed loopPosiblemente ocupada @designbynumbers la tomó hace 115 días. Abierto
Dificultad 4/5 3-5 días Aptitud para principiantes 30/100
nmwsharp/geometry-central#253 ·
-
Dificultad 3/5 1-2 días Aptitud para principiantes 57/100
nmwsharp/geometry-central#247 ·
Todos los issues de nmwsharp/geometry-central
Issues similares
-
agent:WSL bug linux LOW
Dificultad 2/5 1-3 horas Aptitud para principiantes 70/100
Los mantenedores suelen responder en 1 día
-
Build failure: limoAbierto0.kind: build failure
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
Los mantenedores suelen responder en 1 día
-
tech-debt
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
prestonbrown/helixscreen#1797 ·
Los mantenedores suelen responder en 2 días
-
Dificultad 2/5 Menos de una hora Aptitud para principiantes 72/100
finalburnneo/FBNeo#2803 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
Los mantenedores suelen responder en 1 día