Ich habe einen Testfall für das Problem eingerichtet, das ich unter this glitch habe.So zentrieren Sie untergeordnete Entität bei Instanziierung
Grundsätzlich versuche ich bei jedem Klick eine Kugel mit einem Textgeometrieunterknoten zu erzeugen, wobei der Text auf der Kugel zentriert ist, d. H. "X markiert den Punkt".
Was passiert, wenn ich das erste Mal klicke, wird der Text so ausgerichtet, dass die untere linke Seite mit der Kugel ausgerichtet ist.
Ich versuche und verwenden Sie geometry.center(), um dies zu beheben, aber es scheint keine Begrenzungsbox verfügbar.
Ich habe es eingerichtet, dies in einer Komponente zu tun, wenn geladen, und wenn object3dset, aber keiner von diesen funktioniert.
Wenn ich erneut klicke und getElementById() verwende, um die vorhandene Textgeometrie zu erhalten, dann rufe ich geometry.center() auf, das eigentlich zentriert ist.
Meine Ahnung ist, dass ich aus irgendeinem Grund nicht erkennen kann, die Bounding Box wird erst später erstellt, aber ich kann nicht herausfinden wann.
Jeder Einblick, wie ich dies mit nur einem Klick zentriert bekommen kann, wäre toll, danke.
EDIT: Ich sollte beachten, dass ich gefunden habe mit einem setTimeout (wie auskommentiert auf der Glitch) wird es funktionieren, so scheint es definitiv ein Problem sein, wenn Dinge passieren, aber das ist nicht wirklich eine großartige Lösung .
Sorry, ich hätte klarer sein sollen. Die Begrenzungsbox wird erstellt, aber die Größe in allen Dimensionen ist 0. Erst mit dem zweiten Klick (oder einer kleinen Verzögerung) ist die Box tatsächlich die Größe der Textgeometrie. Die – Ryan