Matrix.ScalePrepend(Double, Double) Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Předem nastaví zadaný vektor měřítka na tuto Matrix strukturu.
public:
void ScalePrepend(double scaleX, double scaleY);
public void ScalePrepend (double scaleX, double scaleY);
member this.ScalePrepend : double * double -> unit
Public Sub ScalePrepend (scaleX As Double, scaleY As Double)
Parametry
Příklady
Následující příklad ukazuje, jak předem vytvořit měřítko struktury Matrix .
private Matrix scalePrependExample()
{
Matrix myMatrix = new Matrix(5, 10, 15, 20, 25, 30);
// Prepend a scale ab with a horizontal factor of 2
// and a vertical factor of 4 about the origin.
// After this operation,
// myMatrix is equal to (10, 20, 60, 80, 25, 30)
myMatrix.ScalePrepend(2, 4);
return myMatrix;
}
private Matrix scalePrependAboutPointExample()
{
Matrix myMatrix = new Matrix(5, 10, 15, 20, 25, 30);
// Prepend a scale with a horizontal factor of 2
// and a vertical factor of 4 about the
// point (100,100).
// After this operation,
// myMatrix is equal to (10, 20, 60, 80, -4975, -6970)
myMatrix.ScaleAtPrepend(2, 4, 100, 100);
return myMatrix;
}
Poznámky
Ve složené transformaci je důležité pořadí jednotlivých transformací. Pokud například poprvé otočíte, pak škálujete a pak přeložíte, získáte jiný výsledek než při prvním překladu, otočte ho a pak škálujte. Jedním z důvodů je důležité, že transformace, jako je otočení a škálování, se provádějí s ohledem na původ souřadnicového systému. Škálování objektu, který je uprostřed původu, vytvoří jiný výsledek než škálování objektu, který byl přesunut od původu. Podobně rotace objektu, který je uprostřed na počátku, vytváří jiný výsledek než otočení objektu, který byl přesunut od původu.