Three.js: Möchten Sie die Höhe eines Würfelnetzes ändern

Erstellt am 17. Mai 2012  ·  3Kommentare  ·  Quelle: mrdoob/three.js

Ich konnte die Höhe eines Würfelgeometrienetzes mit mesh.scale.y ändern, dies ist jedoch unbefriedigend, da ich es nur nach oben oder unten erhöhen möchte, aber wenn ich es skaliere, ändert es sich gleichmäßig in beide Richtungen nach oben und unten. Gibt es eine einfache Möglichkeit, dies ohne Skalierung zu tun, bei der die Positionsanpassung für den unteren oder oberen Bereich aktualisiert werden muss, damit er aussieht, als würde er nur in eine Richtung wachsen?

PS - Konnte kein Forum finden, um diese Frage zu posten, also habe ich die Suche bei Google aufgegeben und sie hier gepostet. Ich möchte auch dem Three.js-Team für dieses erstaunliche Framework danken, da es zu lange gedauert hat, reines WebGL zu schreiben, was ich tat.

Question

Hilfreichster Kommentar

mesh.scale.y += delta;
mesh.translateY( delta / 2 );

Alle 3 Kommentare

mesh.scale.y += delta;
mesh.translateY( delta / 2 );

Vielen Dank

Für alle, die jetzt darüber stolpern, eine kleine Klarstellung.

mesh.scale.y += delta ändert den Maßstab des Netzes. Wenn also der Maßstab 1 ist und Sie 1 hinzufügen, verdoppelt sich das Netz.

mesh.translateY() verschiebt das Netz um eine physikalische Distanz. Wenn der y-Wert des Netzes also 5 Pixel beträgt, wird er durch Hinzufügen von 1 auf 6 verschoben.

Anstelle von translateY(delta/2) sollten Sie herausfinden, um wie viel mesh.scale.y += delta das Netz physikalisch vergrößert/verkleinert, dann sollten Sie um die Hälfte dieses Betrags übersetzen.

War diese Seite hilfreich?
0 / 5 - 0 Bewertungen