Home Migration Guide Getting Started With Scripts Commands Examples
BracketHandlers

MCVector3d

A 3-dimensional vector, in a 3-dimensional vector space.

This class is immutable, meaning its values cannot change, so it is safe to be stored as a key in maps or in collections.

No, it’s not an arrow.

Importing the class

It might be required for you to import the package if you encounter any issues (like casting an Array), so better be safe than sorry and add the import at the very top of the file.

script.zs
import crafttweaker.api.util.MCVector3d;

Implemented Interfaces

MCVector3d implements the following interfaces. That means all methods defined in these interfaces are also available in MCVector3d

Constructors

script.zs
new MCVector3d(x as double, y as double, z as double) as MCVector3d
ParameterTypeDescription
Parameter
x
Type
double
Description
No description provided
Parameter
y
Type
double
Description
No description provided
Parameter
z
Type
double
Description
No description provided

Casters

Result typeIs Implicit
Result type
MCVector3i
Is Implicit
false

Methods

Return Type: MCVector3i

script.zs
// MCVector3d.asVector3i() as MCVector3i
myMCVector3d.asVector3i();

Performs the cross product between this vector and other.

Returns: The cross product.
Return Type: MCVector3d

script.zs
MCVector3d.cross(other as MCVector3d) as MCVector3d
ParameterTypeDescription
Parameter
other
Type
MCVector3d
Description
The other vector.

Computes the Euclidean distance between this vector and the other vector.

Returns: The Euclidean distance between them.
Return Type: double

script.zs
MCVector3d.distanceTo(other as MCVector3d) as double
ParameterTypeDescription
Parameter
other
Type
MCVector3d
Description
The other vector.

Performs a dot product between this vector and other.

Returns: The dot product.
Return Type: double

script.zs
MCVector3d.dot(other as MCVector3d) as double
ParameterTypeDescription
Parameter
other
Type
MCVector3d
Description
The other vector.

Gets the coordinate of this vector that corresponds to the given DirectionAxis.

Returns: The value of the corresponding coordinate.
Return Type: double

script.zs
MCVector3d.getCoordinate(axis as DirectionAxis) as double
ParameterTypeDescription
Parameter
axis
Type
DirectionAxis
Description
The axis.

Gets the coordinate of this vector identified by the specified index.

Namely, 0 corresponds to the X coordinate, 1 to Y, and 2 to Z.

Returns: The value of the corresponding coordinate.
Return Type: double

script.zs
MCVector3d.getCoordinate(index as int) as double
ParameterTypeDescription
Parameter
index
Type
int
Description
The coordinate index.

Subtracts other from this vector.

Returns: The subtraction result.
Return Type: MCVector3d

script.zs
MCVector3d.minus(other as MCVector3d) as MCVector3d
ParameterTypeDescription
Parameter
other
Type
MCVector3d
Description
The other vector.

Subtracts the vector (x, y, z) from this vector.

Returns: The subtraction result.
Return Type: MCVector3d

script.zs
MCVector3d.minus(x as double, y as double, z as double) as MCVector3d
ParameterTypeDescription
Parameter
x
Type
double
Description
The x component of the other vector.
Parameter
y
Type
double
Description
The y component of the other vector.
Parameter
z
Type
double
Description
The z component of the other vector.

Normalizes the current vector, making it of unit length.

Returns: The normalized vector.
Return Type: MCVector3d

script.zs
// MCVector3d.normalize() as MCVector3d
myMCVector3d.normalize();

Adds this vector to the other vector, computing their sum member by member.

Returns: The sum.
Return Type: MCVector3d

script.zs
MCVector3d.plus(other as MCVector3d) as MCVector3d
ParameterTypeDescription
Parameter
other
Type
MCVector3d
Description
The other vector.

Adds this vector to the vector (x, y, z), computing their sum member by member.

Returns: The sum.
Return Type: MCVector3d

script.zs
MCVector3d.plus(x as double, y as double, z as double) as MCVector3d
ParameterTypeDescription
Parameter
x
Type
double
Description
The x component of the other vector.
Parameter
y
Type
double
Description
The y component of the other vector.
Parameter
z
Type
double
Description
The z component of the other vector.

Scales the current vector by the given factor.

Returns: The scaled vector.
Return Type: MCVector3d

script.zs
MCVector3d.scale(factor as double) as MCVector3d
ParameterTypeDescription
Parameter
factor
Type
double
Description
The factor.

Computes the squared Euclidean distance between this vector and the other vector.

This method is faster and less error-prone than calling distanceTo and squaring the result.

Returns: The squared Euclidean distance between them.
Return Type: double

script.zs
MCVector3d.squareDistanceTo(other as MCVector3d) as double
ParameterTypeDescription
Parameter
other
Type
MCVector3d
Description
The other vector.

Subtracts this vector from the other vector and returns the result.

Returns: The result.
Return Type: MCVector3d

script.zs
MCVector3d.subtractReverse(other as MCVector3d) as MCVector3d
ParameterTypeDescription
Parameter
other
Type
MCVector3d
Description
The vector from which this vector should be subtracted from.

Multiplies the two vectors member by member, computing what is known as the Hadamard product.

Returns: The Hadamard product.
Return Type: MCVector3d

script.zs
MCVector3d.times(other as MCVector3d) as MCVector3d
ParameterTypeDescription
Parameter
other
Type
MCVector3d
Description
The other vector.

Multiplies this vector with the vector (x, y, z), computing what is known as the Hadamard product.

Returns: The Hadamard product.
Return Type: MCVector3d

script.zs
MCVector3d.times(x as double, y as double, z as double) as MCVector3d
ParameterTypeDescription
Parameter
x
Type
double
Description
The x component of the other vector.
Parameter
y
Type
double
Description
The y component of the other vector.
Parameter
z
Type
double
Description
The z component of the other vector.

Properties

NameTypeHas GetterHas SetterDescription
Name
inverse
Type
MCVector3d
Has Getter
true
Has Setter
false
Description
Inverts the vector, effectively flipping it.

This is equivalent to a scale by -1, or a rotation of pi radians around the origin.
Name
magnitude
Type
double
Has Getter
true
Has Setter
false
Description
Gets the length, also known as magnitude, of the vector.
Name
magnitudeSquared
Type
double
Has Getter
true
Has Setter
false
Description
Gets the squared length, also known as squared magnitude, of the vector.

This method is faster and less error-prone than calling magnitude and squaring the result.
Name
x
Type
double
Has Getter
true
Has Setter
false
Description
Gets the X coordinate of this vector.
Name
y
Type
double
Has Getter
true
Has Setter
false
Description
Gets the Y coordinate of this vector.
Name
z
Type
double
Has Getter
true
Has Setter
false
Description
Gets the Z coordinate of this vector.