Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Większość aplikacji CAD i rysunku udostępnia funkcje, które umożliwiają skalowanie danych wyjściowych utworzonych przez użytkownika. Aplikacje, które obejmują funkcje skalowania (lub powiększenia), wywołują funkcję SetWorldTransform, aby ustawić odpowiednią transformację z przestrzeni światowej na przestrzeń stronicową. Ta funkcja otrzymuje wskaźnik do struktury XFORM zawierającej odpowiednie wartości. Członkowie eM11 i eM22 w XFORM odpowiednio określają składniki skalowania poziomego i pionowego.
Podczas skalowania pionowe i poziome linie (lub wektory), które stanowią obiekt, są rozciągane lub kompresowane względem osi x lub y. Na poniższej ilustracji przedstawiono prostokąt o wymiarach 20 na 20 jednostek, skalowany pionowo, aby osiągnąć dwukrotność swojej pierwotnej wysokości podczas kopiowania z przestrzeni współrzędnych świata do przestrzeni współrzędnych strony.
Na poprzedniej ilustracji pionowe linie definiujące boki oryginalnego prostokąta mierzą 20 jednostek, podczas gdy pionowe linie definiujące boki przeskalowanego prostokąta mierzą 40 jednostek.
Skalowanie w pionie może być reprezentowane przez następujący algorytm.
y' = y * Dy
Gdzie y jest nową długością, y jest oryginalną długością, a Dy jest czynnikiem skalowania w pionie.
Skalowanie w poziomie może być reprezentowane przez następujący algorytm.
x' = x * Dx
Gdzie x' jest nową długością, x jest oryginalną długością, a Dx jest współczynnikiem skalowania w poziomie.
Przekształcenia skalowania w pionie i w poziomie można łączyć w jedną operację przy użyciu macierzy 2-by-2.
|x' y'| = |Dx 0| * |x y|
|0 Dy|
Macierz 2-by-2, która wygenerowała transformację skalowania, zawiera następujące wartości.
|1 0|
|0 2|