nmwsharp / nmwsharp/polyscope

GeometryCentral Corner Perms

Ouverte
#341 2 commentaires 0 réactions 0 personnes assignées Voir sur GitHub

Personne n'a encore pris cette issue.

Langage dominant
C++
Étoiles
2.2k
Forks
242
Merge moyen
11 min
PR mergées (30 j)
1

Description

Hey,

I'm running into issues with getting parameterized data loaded from geometry central. It seems that the permutations for the corners aren't being set correctly. I've verified that the "polyscopePermutations" function produces valid maps at the time of registration (and after). However, it seems to ignore the perms and just reads the corner data using the polyscope index. Here is an example of a simple quad (bisected). When viewing the parameterization channel, it seems to use the "original" values (confirmed by pick functionality). I believe this was working when I was using Polyscope 2.1.0, but now I'm getting this issue on 2.4.0. It may actually be from GC with that official update (1.0.0) but I don't think so. I'm technically running a fork of geometry central 1.0.0 for custom access to intrinsic triangulations, but nothing to do with the extrinsic / embedded code used here.

EDIT: I've cleaned the code and the output, attached an image to better communicate what is happening.

[DEBUG] Corner Parameterization Values:
[DEBUG]    GC Corner ID 0 | Face ID 0 | UV [1,0]
[DEBUG]    GC Corner ID 1 | Face ID 1 | UV [0,1]
[DEBUG]    GC Corner ID 2 | Face ID 0 | UV [0,1]
[DEBUG]    GC Corner ID 4 | Face ID 0 | UV [0,0]
[DEBUG]    GC Corner ID 6 | Face ID 1 | UV [1,0]
[DEBUG]    GC Corner ID 8 | Face ID 1 | UV [1,1]
[DEBUG] Corner permutation (6 entries):
[DEBUG]    Corner IDs (PS, GC) -> UVs (PS, GC)
[DEBUG]    Corner IDs (0, 0) -> UVs ([1,0], [1,0])
[DEBUG]    Corner IDs (1, 2) -> UVs ([0,1], [0,1])
[DEBUG]    Corner IDs (2, 4) -> UVs ([0,1], [0,0])
[DEBUG]    Corner IDs (3, 6) -> UVs ([0,0], [1,0])
[DEBUG]    Corner IDs (4, 8) -> UVs ([0,0], [1,1])
[DEBUG]    Corner IDs (5, 1) -> UVs ([0,0], [0,1])

Guide de contribution

Aucun guide de contribution indexé pour ce dépôt

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Piste de recherche

Commencez par reproduire l’exemple nettoyé décrit dans l’issue avec Polyscope 2.4.0 et GeometryCentral, puis inspectez le chemin polyscopePermutations et la recherche des corner-data du canal de parameterization. Comparez le comportement avec Polyscope 2.1.0 si celui-ci est disponible. C’est terminé lorsque le canal et la fonctionnalité de pick utilisent les valeurs de coin GeometryCentral mappées plutôt que les indices Polyscope bruts.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Évaluation

Stack technique
cpp
Domaine
computer-graphics
Type d'issue
Bug
Difficulté
4/5
Temps estimé
3-5 jours
Activité
À l'abandon
Clarté
À clarifier
Accessibilité débutants
42/100

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.