Vector.Multiply 操作员

定义

将指定 Vector 与指定 DoubleMatrixVector 相乘并返回结果。Multiplies the specified Vector by the specified Double, Matrix, or Vector and returns the result.

重载

Multiply(Vector, Matrix)

使用指定的 Matrix 变换指定向量的坐标空间。Transforms the coordinate space of the specified vector using the specified Matrix.

Multiply(Vector, Vector)

计算两个指定向量结构的点积并将结果以 Double 形式返回。Calculates the dot product of the two specified vector structures and returns the result as a Double.

Multiply(Double, Vector)

将指定标量与指定向量相乘,并返回结果向量。Multiplies the specified scalar by the specified vector and returns the resulting vector.

Multiply(Vector, Double)

将指定向量与指定标量相乘,并返回结果向量。Multiplies the specified vector by the specified scalar and returns the resulting vector.

Multiply(Vector, Matrix)

使用指定的 Matrix 变换指定向量的坐标空间。Transforms the coordinate space of the specified vector using the specified Matrix.

public:
 static System::Windows::Vector operator *(System::Windows::Vector vector, System::Windows::Media::Matrix matrix);
public static System.Windows.Vector operator * (System.Windows.Vector vector, System.Windows.Media.Matrix matrix);
static member ( * ) : System.Windows.Vector * System.Windows.Media.Matrix -> System.Windows.Vector

参数

vector
Vector

要转换的向量。The vector to transform.

matrix
Matrix

要应用于 vector 的变换。The transformation to apply to vector.

返回

vector 变换 matrix 的结果。The result of transforming vector by matrix.

示例

下面的示例演示如何使用此运算符 (*) 将结构与结构Vector相乘MatrixThe following example shows how to use this operator (*) to multiply a Vector structure by a Matrix structure.

private Vector overloadedMultiplyVectorByMatrixOperatorExample()
{
    Vector vector1 = new Vector(20, 30);
    Matrix matrix1 = new Matrix(40, 50, 60, 70, 80, 90);
    Vector vectorResult = new Vector();

    // Multiply the vector and matrix.
    // vectorResult is equal to (2600,3100).
    vectorResult = vector1 * matrix1;

    return vectorResult;

}
Private Function overloadedMultiplyVectorByMatrixOperatorExample() As Vector
    Dim vector1 As New Vector(20, 30)
    Dim matrix1 As New Matrix(40, 50, 60, 70, 80, 90)
    Dim vectorResult As New Vector()

    ' Multiply the vector and matrix.
    ' vectorResult is equal to (2600,3100).
    vectorResult = vector1 * matrix1

    Return vectorResult

End Function

另请参阅

Multiply(Vector, Vector)

计算两个指定向量结构的点积并将结果以 Double 形式返回。Calculates the dot product of the two specified vector structures and returns the result as a Double.

public:
 static double operator *(System::Windows::Vector vector1, System::Windows::Vector vector2);
public static double operator * (System.Windows.Vector vector1, System.Windows.Vector vector2);
static member ( * ) : System.Windows.Vector * System.Windows.Vector -> double
Public Shared Operator * (vector1 As Vector, vector2 As Vector) As Double

参数

vector1
Vector

要相乘的第一个向量。The first vector to multiply.

vector2
Vector

要相乘的第二个向量。The second vector to multiply.

返回

返回一个 Double,其中包含 vector1vector2 的标量点积,标量点积可通过下面的公式计算得出:Returns a Double containing the scalar dot product of vector1 and vector2, which is calculated using the following formula: vector1.X * vector2.X + vector1.Y * vector2.Yvector1.X * vector2.X + vector1.Y * vector2.Y

示例

下面的示例演示如何使用此运算符 (*) 将Vector结构Vector与进行相乘。The following example shows how to use this operator (*) to multiply a Vector structure by a Vector.

private Double overloadedOperatorGetDotProductExample()
{
    Vector vector1 = new Vector(20, 30);
    Vector vector2 = new Vector(45, 70);

    // Return the dot product of the two specified vectors
    // using the overloaded "*" operator.
    // The dot product is calculated using the following 
    // formula: (vector1.X * vector2.X) + (vector1.Y * vector2.Y).
    // doubleResult is equal to 3000
    Double doubleResult = Vector.Multiply(vector1, vector2);

    return doubleResult;

}
Private Function overloadedOperatorGetDotProductExample() As Double
    Dim vector1 As New Vector(20, 30)
    Dim vector2 As New Vector(45, 70)

    ' Return the dot product of the two specified vectors
    ' using the overloaded "*" operator.
    ' The dot product is calculated using the following 
    ' formula: (vector1.X * vector2.X) + (vector1.Y * vector2.Y).
    ' doubleResult is equal to 3000
    Dim doubleResult As Double = Vector.Multiply(vector1, vector2)

    Return doubleResult

End Function

另请参阅

Multiply(Double, Vector)

将指定标量与指定向量相乘,并返回结果向量。Multiplies the specified scalar by the specified vector and returns the resulting vector.

public:
 static System::Windows::Vector operator *(double scalar, System::Windows::Vector vector);
public static System.Windows.Vector operator * (double scalar, System.Windows.Vector vector);
static member ( * ) : double * System.Windows.Vector -> System.Windows.Vector

参数

scalar
Double

要乘以的标量。The scalar to multiply.

vector
Vector

要相乘的向量。The vector to multiply.

返回

scalarvector 相乘的结果。The result of multiplying scalar and vector.

示例

下面的示例演示如何使用此运算符 (*) 将标量Vector乘以结构。The following example shows how to use this operator (*) to multiply a scalar by a Vector structure.

private Vector overloadedMultiplicationOperatorExample2()
{
    Vector vector1 = new Vector(20, 30);
    Double scalar1 = 75;

    // vectorResult is equal to (1500,2250)
    Vector vectorResult = scalar1 * vector1;

    return vectorResult;

}
Private Function overloadedMultiplicationOperatorExample2() As Vector
    Dim vector1 As New Vector(20, 30)
    Dim scalar1 As Double = 75

    ' vectorResult is equal to (1500,2250)
    Dim vectorResult As Vector = scalar1 * vector1

    Return vectorResult

End Function

另请参阅

Multiply(Vector, Double)

将指定向量与指定标量相乘,并返回结果向量。Multiplies the specified vector by the specified scalar and returns the resulting vector.

public:
 static System::Windows::Vector operator *(System::Windows::Vector vector, double scalar);
public static System.Windows.Vector operator * (System.Windows.Vector vector, double scalar);
static member ( * ) : System.Windows.Vector * double -> System.Windows.Vector

参数

vector
Vector

要相乘的向量。The vector to multiply.

scalar
Double

要乘以的标量。The scalar to multiply.

返回

vectorscalar 相乘的结果。The result of multiplying vector and scalar.

示例

下面的示例演示如何使用此运算符 (*) 将Vector结构与标量相乘。The following example shows how to use this operator (*) to multiply a Vector structure by a scalar.

private Vector overloadedMultiplicationOperatorExample1()
{
    Vector vector1 = new Vector(20, 30);
    Double scalar1 = 75;

    // vectorResult is equal to (1500,2250)
    Vector vectorResult = vector1 * scalar1;

    return vectorResult;
    
}
Private Function overloadedMultiplicationOperatorExample1() As Vector
    Dim vector1 As New Vector(20, 30)
    Dim scalar1 As Double = 75

    ' vectorResult is equal to (1500,2250)
    Dim vectorResult As Vector = vector1 * scalar1

    Return vectorResult

End Function

另请参阅

适用于