Pakiet | flash.geom |
Klasa | public class Utils3D |
Dziedziczenie | Utils3D Object |
Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | Flash Player 10, AIR 1.5 |
Powiązane elementy interfejsu API
flash.geom.Vector3D
flash.geom.Transform
flash.geom.PerspectiveProjection
flash.display.Graphics
flash.display.GraphicsTrianglePath
Vector
Metoda | Zdefiniowane przez | ||
---|---|---|---|
Wskazuje, czy dla obiektu zdefiniowano określoną właściwość. | Object | ||
Wskazuje, czy instancja klasy Object należy do łańcucha prototypów obiektu określonego jako parametr. | Object | ||
pointTowards(percent:Number, mat:Matrix3D, pos:Vector3D, at:Vector3D = null, up:Vector3D = null):Matrix3D [statyczny]
Interpoluje orientację obiektu w stronę pozycji. | Utils3D | ||
[statyczny]
Korzystając z obiektu rzutowania Matrix3D, rzutuje obiekt Vector3D z jednej przestrzeni współrzędnych na inną. | Utils3D | ||
projectVectors(m:Matrix3D, verts:Vector.<Number>, projectedVerts:Vector.<Number>, uvts:Vector.<Number>):void [statyczny]
Korzystając z obiektu Matrix3D rzutowania, rzutuje obiekt Vector zawierający współrzędne w przestrzeni trójwymiarowej (verts) na obiekt Vector zawierający współrzędne w przestrzeni dwuwymiarowej(projectedVerts). | Utils3D | ||
Wskazuje, czy określona właściwość istnieje i jest przeliczalna. | Object | ||
Ustawia dostępność właściwości dynamicznej używanej w pętlach. | Object | ||
Zwraca ciąg reprezentujący obiekt — sformatowany zgodnie z konwencjami właściwymi dla ustawień regionalnych. | Object | ||
Zwraca ciąg reprezentujący określony obiekt. | Object | ||
Zwraca pierwotną wartość dla określonego obiektu. | Object |
pointTowards | () | metoda |
public static function pointTowards(percent:Number, mat:Matrix3D, pos:Vector3D, at:Vector3D = null, up:Vector3D = null):Matrix3D
Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | Flash Player 10, AIR 1.5 |
Interpoluje orientację obiektu w stronę pozycji. Metoda pointTowards()
łączy w sobie funkcjonalność metod Matrix3D.pointAt()
i Matrix3D.interpolateTo()
.
Metoda pointTowards()
umożliwia miejscowe modyfikowanie orientacji. Dokonuje dekompozycji macierzy Matrix3D obiektu wyświetlanego i zastępuje elementy obrotu takimi, które spowodowałyby obrót o zadany procent w kierunku pozycji celu. Obiekt może stopniowo obracać się w stronę celu, jednocześnie wciąż poruszając się we własnym kierunku. Kolejne wywołania metody pointTowards()
, po których następują wywołania metody translacji, pozwalają uzyskać animację obiektu podążającego za ruchomym celem. Najpierw należy skierować obiekt na cel, obracając go o określony procent, a następnie stopniowo przemieszczać obiekt wzdłuż osi.
Parametry
percent:Number — Obiekt Number z przedziału od 0 do 1, reprezentujący stopniowy obrót obiektu w stronę celu.
| |
mat:Matrix3D — Właściwość Matrix3D obiektu, który jest transformowany.
| |
pos:Vector3D — Globalna pozycja obiektu docelowego. Globalność oznacza, że transformacja obiektu jest zdefiniowana względem przestrzeni i współrzędnych globalnych. Wszystkie obiekty mają pozycje w przestrzeni globalnej.
| |
at:Vector3D (default = null ) — Wektor względem obiektu definiujący kierunek, w którym zwrócony jest obiekt ekranowy. Transformacje względem obiektu odbywają się względem przestrzeni obiektu, tj. własnej klatki referencyjnej i układu współrzędnych obiektu. Wartość domyślna to (0,0,-1).
| |
up:Vector3D (default = null ) — Wektor względem obiektu definiujący stronę „do góry” dla obiektu ekranowego. Jeśli obiekt jest narysowany tak, że obserwator patrzy na niego z góry, półoś +z jest jego wektorem „w górę“. Przekształcenia względem obiektu odbywają się względem przestrzeni obiektu, tj. własnego punktu odniesienia i układu współrzędnych obiektu. Wartość domyślna to (0,-1,0).
|
Matrix3D — Zmodyfikowana wersja obiektu Matrix3D określonego w drugim parametrze. Aby przetransformować obiekt wyświetlany za pomocą metody pointTowards() , należy właściwości Matrix3D obiektu wyświetlanego przypisać zwrócony obiekt Matrix3D.
|
Powiązane elementy interfejsu API
projectVector | () | metoda |
public static function projectVector(m:Matrix3D, v:Vector3D):Vector3D
Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | Flash Player 10, AIR 1.5 |
Korzystając z obiektu rzutowania Matrix3D, rzutuje obiekt Vector3D z jednej przestrzeni współrzędnych na inną. Metoda projectVector()
jest podobna do metody Matrix3D.transformVector()
, z tym że metoda projectVector()
dzieli elementy x, y i z oryginalnego obiektu Vector3D przez wartość głębokości rzutu. Wartość głębokości to odległość od obserwatora do obiektu Vector3D w przestrzeni widoku lub obserwatora. Domyślna wartość tej odległości jest równa wartości elementu z.
Parametry
m:Matrix3D — Obiekt Matrix3D, który implementuje przekształcenie polegające na rzutowaniu. Jeśli obiekt wyświetlany ma obiekt PerspectiveProjection, można użyć metody perspectiveProjection.toMatrix() do uzyskania obiektu rzutu Matrix3D, który będzie stosowany do obiektów podrzędnych obiektu wyświetlanego. Do realizacji bardziej zaawansowanego rzutowania należy używać właściwości matrix3D.rawData pozwalającej na utworzenie niestandardowej macierzy rzutowania. Nie istnieje wbudowana metoda obiektu Matrix3D służąca do tworzenia obiektu Matrix3D rzutowania.
| |
v:Vector3D — Obiekt Vector3D rzutowany na nowe współrzędne przestrzenne.
|
Vector3D — Nowy obiekt Vector3D z przetransformowanymi współrzędnymi przestrzennymi.
|
Powiązane elementy interfejsu API
projectVectors | () | metoda |
public static function projectVectors(m:Matrix3D, verts:Vector.<Number>, projectedVerts:Vector.<Number>, uvts:Vector.<Number>):void
Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | Flash Player 10, AIR 1.5 |
Korzystając z obiektu Matrix3D rzutowania, rzutuje obiekt Vector zawierający współrzędne w przestrzeni trójwymiarowej (verts) na obiekt Vector zawierający współrzędne w przestrzeni dwuwymiarowej(projectedVerts
). Rzutowany obiekt Vector powinien być wstępnie przydzielony zanim zostanie użyty jako parametr.
Metoda projectVectors()
ustawia ponadto wartości t danych uvt. Konieczne jest wstępne przydzielenie obiektu Vector, który może zawierać dane uvts dla każdego rzutowanego zestawu współrzędnych Vector. Należy także określić wartości u oraz v danych uvt. Dane uvt to obiekt Vector zawierający znormalizowane współrzędne używane do odwzorowywania tekstur. W przypadku współrzędnych UV (0,0) jest lewym górnym narożnikiem bitmapy, a (1,1) jest prawym dolnym narożnikiem bitmapy.
Tej metody można używać razem z metodą Graphics.drawTriangles()
oraz klasą GraphicsTrianglePath
.
Parametry
m:Matrix3D — Obiekt Matrix3D, który implementuje transformację polegającą na rzutowaniu. Obiekt Matrix3D rzutowania można utworzyć, korzystając z właściwości Matrix3D.rawData .
| |
verts:Vector.<Number> — Obiekt Vector zawierający obiekty Number, gdzie każde trzy obiekty Number reprezentują współrzędne x, y i z w przestrzeni trójwymiarowej, podobnie jak w obiekcie Vector3D(x,y,z) .
| |
projectedVerts:Vector.<Number> — Wektor obiektów Number, gdzie każde dwa obiekty Number reprezentują rzutowane współrzędne dwuwymiarowe, podobnie jak w obiekcie Point(x,y) . Obiekt Vector należy wstępnie przydzielić. Metoda projectVectors() wypełnia wartości dla każdego z rzutowanych punktów.
| |
uvts:Vector.<Number> — Wektor obiektów Numbers, gdzie każde trzy obiekty Numbers reprezentują elementy u, v i t danych uvt . Wartości u i v to współrzędne tekstury dla każdego rzutowanego punktu. Wartość t to głębokość rzutowania, tj. odległość od obserwatora do obiektu Vector3D w przestrzeni widoku lub obserwatora. Należy wstępnie przydzielić obiekt Vector i określić wartości u oraz v. Metoda projectVectors wypełnia wartość t dla każdego z rzutowanych punktów.
|
Powiązane elementy interfejsu API
Tue Jun 12 2018, 12:06 PM Z