Callbacks get called before view data is initialized on the first main loop iteration

Offen
#157 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

Bewertung

Schwierigkeit
3/5
Geschätzter Aufwand
1-2 Tage
Anfängerfreundlichkeit
45/100
Issue-Typ
Bug
Klarheit
Größtenteils klar
Aktivitätsstatus
Veraltet
Tech-Stack
cpp

Rechercherichtung

Beginne bei show() und init() und verfolge dann die erste Iteration der Hauptschleife sowie den Pfad zur Callback-Registrierung. Reproduziere einen Callback, der die Kameraparameter unmittelbar nach show() liest; fertig bedeutet, dass die View-Daten initialisiert sind, bevor der Callback ausgeführt wird, und dass in dieser ersten Iteration keine NaNs auftreten.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Beschreibung

bug

If you create a callback function, register it, and then show() in the usual fashion, on the first main loop iteration the callback will be invoked before the view data is initialized. If the callback accesses e.g. the camera parameters, it will get NaNs on the first iteration, which can be a confusing source of errors (even if transient).

We should make sure everything is initialized right away at the beginning of show(), before anything else happens. More deeply, maybe we should reconsider why we initialize view parameters lazily in show() rather than init().

Vorherrschende Sprache
C++
Sterne
2.2k
Forks
242
Ø Merge
11 Min.
Gemergte PRs (30 T.)
1

Beitragsleitfaden

Für dieses Repository ist kein Beitragsleitfaden indexiert

Erste Schritte

  1. Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
  3. Forken Sie das Repository und arbeiten Sie in einem Branch.
  4. Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.

Mehr aus nmwsharp/polyscope

Alle Issues in nmwsharp/polyscope

Ähnliche Issues

Weitere Issues zu C++

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.