Arma 3 Scripting

Command in Math - Vectors

vectorMultiply

Also available as Markdown and JSON, or read the original wiki page.

Description

Multiplies an array of numbers by a scalar or another array of numbers.

Note

Since Arma 3 v2.14: Since Arma 3 v2.14 any count of numbers is valid, if one array is larger than the other, the remaining elements are inserted without change.

Before Arma 3 v2.14, the first argument had to be vector 3D, or Arma 3 v2.00 2D (Which still returned 3D result, with z coordinate defaulted to 0)

Syntax

numArray vectorMultiply multiplier

Parameters:

Returns: Array of Numbers

Examples

Example 1

_newVector = [1,2,3] vectorMultiply 3; // returns [3,6,9]

Example 2

[1,2,3,4] vectorMultiply [1,2,3,4];    // [1,4,9,16]
[1,2,3,4] vectorMultiply 2;            // [2,4,6,8]
[1,2,3,4] vectorMultiply [2];        // [2,2,3,4]
[2] vectorMultiply [1,2,3,4];        // [2,2,3,4]
[1,2,3] vectorMultiply [1,2,3,4,5];    // [1,4,9,4,5]

Example 3

private _eyePos = eyePos player;
private _eyeDir = getCameraViewDirection player;    // this is a normalized vector, i.e. its magnitude is 1
private _100mFurther = _eyeDir vectorMultiply 100;    // since _eyeDir is normalised (length = 1m), multiplying it by 100 means 100m in that direction
private _lookPos = _eyePos vectorAdd _100mFurther;    // the position where player is looking 100m ahead

Example 4

// Override firing to throw the player towards where he's aiming
player allowDamage false;
player addAction ["", {
    player setVelocity ((player weaponDirection "") vectorMultiply 20);
}, "", 0, false, true, "DefaultAction"];

See also

vectorAdd · vectorDiff · vectorCrossProduct · vectorDotProduct · vectorMagnitude · matrixMultiply

Community notes