# Vector3D.Multiply Operator

## Definition

Multiplies the specified Vector3D structure by the specified Double or Matrix and returns the result.

 Multiply(Vector3D, Matrix3D) Transforms the coordinate space of the specified Vector3D structure using the specified Matrix3D structure. Multiply(Double, Vector3D) Multiplies the specified scalar by the specified Vector3D structure and returns the result as a Vector3D. Multiply(Vector3D, Double) Multiplies the specified Vector3D structure by the specified scalar and returns the result as a Vector3D.

## Multiply(Vector3D, Matrix3D)

Transforms the coordinate space of the specified Vector3D structure using the specified Matrix3D structure.

``````public:
static System::Windows::Media::Media3D::Vector3D operator *(System::Windows::Media::Media3D::Vector3D vector, System::Windows::Media::Media3D::Matrix3D matrix);``````
``public static System.Windows.Media.Media3D.Vector3D operator * (System.Windows.Media.Media3D.Vector3D vector, System.Windows.Media.Media3D.Matrix3D matrix);``
``static member ( * ) : System.Windows.Media.Media3D.Vector3D * System.Windows.Media.Media3D.Matrix3D -> System.Windows.Media.Media3D.Vector3D``
``Public Shared Operator * (vector As Vector3D, matrix As Matrix3D) As Vector3D``

#### Parameters

vector
Vector3D

The Vector3D structure to transform.

matrix
Matrix3D

The transformation to apply to the Vector3D structure.

#### Returns

Vector3D

The result of transforming `vector` by `matrix`.

### Examples

The following example shows how to use the overloaded multiplication operator to transform a Vector3D structure by a Matrix3D structure.

``````// Multiplies a Vector3D by a Matrix3D using the overloaded * operator.
// Returns a Vector3D.

Vector3D vector1 = new Vector3D(20, 30, 40);
Matrix3D matrix1 = new Matrix3D(10, 10, 10, 0, 20, 20, 20, 0, 30, 30, 30, 0, 5, 10, 15, 1);
Vector3D vectorResult = new Vector3D();

vectorResult = vector1 * matrix1;
// vector Result is equal to (2000, 2000, 2000)
``````
``````' Multiplies a Vector3D by a Matrix3D using the overloaded * operator.
' Returns a Vector3D.

Dim vector1 As New Vector3D(20, 30, 40)
Dim matrix1 As New Matrix3D(10, 10, 10, 0, 20, 20, 20, 0, 30, 30, 30, 0, 5, 10, 15, 1)
Dim vectorResult As New Vector3D()

vectorResult = vector1 * matrix1
' vector Result is equal to (2000, 2000, 2000)
``````

## Multiply(Double, Vector3D)

Multiplies the specified scalar by the specified Vector3D structure and returns the result as a Vector3D.

``````public:
static System::Windows::Media::Media3D::Vector3D operator *(double scalar, System::Windows::Media::Media3D::Vector3D vector);``````
``public static System.Windows.Media.Media3D.Vector3D operator * (double scalar, System.Windows.Media.Media3D.Vector3D vector);``
``static member ( * ) : double * System.Windows.Media.Media3D.Vector3D -> System.Windows.Media.Media3D.Vector3D``
``Public Shared Operator * (scalar As Double, vector As Vector3D) As Vector3D``

#### Parameters

scalar
Double

The scalar to multiply.

vector
Vector3D

The Vector3D structure to multiply.

#### Returns

Vector3D

The result of multiplying `scalar` and `vector`.

### Examples

The following example shows how to multiple a scalar by a Vector3D structure.

``````// Multiplies a Scalar by a Vector3D using the overloaded * operator.
// Returns a Vector3D.

Vector3D vector1 = new Vector3D(20, 30, 40);
Double scalar1 = 75;
Vector3D vectorResult = new Vector3D();

vectorResult = scalar1 * vector1;
// vectorResult is equal to (1500, 2250, 3000)
``````
``````' Multiplies a Scalar by a Vector3D using the overloaded * operator.
' Returns a Vector3D.

Dim vector1 As New Vector3D(20, 30, 40)
Dim scalar1 As Double = 75
Dim vectorResult As New Vector3D()

vectorResult = scalar1 * vector1
' vectorResult is equal to (1500, 2250, 3000)
``````

## Multiply(Vector3D, Double)

Multiplies the specified Vector3D structure by the specified scalar and returns the result as a Vector3D.

``````public:
static System::Windows::Media::Media3D::Vector3D operator *(System::Windows::Media::Media3D::Vector3D vector, double scalar);``````
``public static System.Windows.Media.Media3D.Vector3D operator * (System.Windows.Media.Media3D.Vector3D vector, double scalar);``
``static member ( * ) : System.Windows.Media.Media3D.Vector3D * double -> System.Windows.Media.Media3D.Vector3D``
``Public Shared Operator * (vector As Vector3D, scalar As Double) As Vector3D``

#### Parameters

vector
Vector3D

The Vector3D structure to multiply.

scalar
Double

The scalar to multiply.

#### Returns

Vector3D

The result of multiplying `vector` and `scalar`.

### Examples

The following example shows how to multiply a Vector3D structure by a scalar.

``````// Multiplies a Vector3D by a Scalar using the overloaded * operator.
// Returns a Vector3D.

Vector3D vector1 = new Vector3D(20, 30, 40);
Double scalar1 = 75;
Vector3D vectorResult = new Vector3D();

vectorResult = vector1 * scalar1;
// vectorResult is equal to (1500, 2250, 3000)
``````
``````' Multiplies a Vector3D by a Scalar using the overloaded * operator.
' Returns a Vector3D.

Dim vector1 As New Vector3D(20, 30, 40)
Dim scalar1 As Double = 75
Dim vectorResult As New Vector3D()

vectorResult = vector1 * scalar1
' vectorResult is equal to (1500, 2250, 3000)
``````