Matrix.ScaleAtPrepend(Double, Double, Double, Double) Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Antepone la scala specificata sul punto specificato di questo Matrixoggetto .
public:
void ScaleAtPrepend(double scaleX, double scaleY, double centerX, double centerY);
public void ScaleAtPrepend(double scaleX, double scaleY, double centerX, double centerY);
member this.ScaleAtPrepend : double * double * double * double -> unit
Public Sub ScaleAtPrepend (scaleX As Double, scaleY As Double, centerX As Double, centerY As Double)
Parametri
- scaleX
- Double
Fattore di scala dell'asse x.
- scaleY
- Double
Fattore di scala dell'asse y.
- centerX
- Double
Coordinata x del punto su cui viene eseguita l'operazione di scala.
- centerY
- Double
Coordinata y del punto su cui viene eseguita l'operazione di scala.
Esempio
Nell'esempio seguente viene illustrato come anteporre una scala a un oggetto 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;
}
Commenti
In una trasformazione composita, l'ordine delle singole trasformazioni è importante. Ad esempio, se prima si ruota, poi si ridimensiona, poi si trasla, si ottiene un risultato diverso rispetto a se prima si trasla, poi si ruota, poi si ridimensiona. Un motivo per cui l'ordine è significativo è che le trasformazioni come la rotazione e il ridimensionamento si effettuano rispetto all'origine del sistema di coordinate. Il ridimensionamento di un oggetto centrato in corrispondenza dell'origine produce un risultato diverso rispetto al ridimensionamento di un oggetto spostato dall'origine. Analogamente, la rotazione di un oggetto centrato in corrispondenza dell'origine produce un risultato diverso rispetto alla rotazione di un oggetto spostato dall'origine.