2009-11-25 14 views
8

Burada, ActionScript3/Flex'teki görüntüleme nesneleriyle ilgili anlamaya çalıştığım bir şey var. Bir görüntüleme nesnesinin, kayıt noktasının sol üstte olduğunu ve merkezden (görüntüleme nesnesinin ortasında) ölçeklendirmek istediğiniz bir ekran nesnesine sahip olduğunuzu varsayalım. Bunu, flash.geom.Matrix sınıfıAS3 bir nesneyi "merkez" den "ölçeklendir" için bir Matrix kullanarak

ile kolayca nasıl giderebilirsiniz?

Yardımınız için yardım ederiz.

cevap

8

Bu, nesneyi istenen ölçek/dönüş merkezine çevirerek, ölçek/döndürüp ardından çevirerek yapılır.

Tek bir matris elde etmek için matrisler birleştirerek tek bir matris ile bunu yapabilir:

var m:Matrix = new Matrix(); 
m.translate(-centerX, -centerY); 
m.scale(scaleX, scaleY); 
m.translate(centerX, centerY); 
+0

Teşekkür Aaron, çok() –

+0

() ve ölçek tercüme apreciated statik yöntemleri değildir. Bunları bir Matrix örneğinden çağırmanız gerekir. – picardo

+0

Ve bu arada, her iki yöntemde dönüş değeri geçersizdir. – picardo