DayZ 1.24
Loading...
Searching...
No Matches
Math3D library

Classes

class  Math3D
 

Enumerations

enum  ECurveType { CatmullRom , NaturalCubic , UniformCubic }
 

Functions

proto native vector Vector (float x, float y, float z)
 Vector constructor from components.
 
void Math3D::Math3D ()
 
void Math3D::~Math3D ()
 
static proto vector Math3D::ClipLine (vector start, vector end, vector norm, float d)
 
static proto float Math3D::IntersectRaySphere (vector raybase, vector raycos, vector center, float radius)
 Tests whether ray is intersecting sphere.
 
static proto float Math3D::IntersectRayBox (vector start, vector end, vector mins, vector maxs)
 Tests whether ray is intersecting axis aligned box.
 
static proto bool Math3D::IntersectSphereBox (vector origin, float radius, vector mins, vector maxs)
 Tests whether sphere is intersecting axis aligned box.
 
static proto bool Math3D::IntersectSphereCone (vector origin, float radius, vector conepos, vector axis, float angle)
 Tests whether sphere is intersecting cone.
 
static proto bool Math3D::IntersectWholeSphereCone (vector origin, float radius, vector conepos, vector axis, float angle)
 Tests whether sphere is fully inside cone.
 
static proto bool Math3D::IntersectCylinderOBB (vector mins, vector maxs, vector obbMat[4], vector cylMat[4], float cylinderRadius, float cylinderHeight)
 Tests whether cylinder is intersecting oriented box.
 
static proto bool Math3D::IntersectRayCylinder (vector rayStart, vector rayEnd, vector center, float radius, float height)
 Tests whether ray is intersecting cylinder.
 
static proto void Math3D::YawPitchRollMatrix (vector ang, out vector mat[3])
 Creates rotation matrix from angles.
 
static proto void Math3D::DirectionAndUpMatrix (vector dir, vector up, out vector mat[4])
 Creates rotation matrix from direction and up vector.
 
static proto void Math3D::MatrixMultiply4 (vector mat0[4], vector mat1[4], out vector res[4])
 Transforms matrix.
 
static proto void Math3D::MatrixMultiply3 (vector mat0[3], vector mat1[3], out vector res[3])
 Transforms rotation matrix.
 
static proto void Math3D::MatrixInvMultiply4 (vector mat0[4], vector mat1[4], out vector res[4])
 Invert-transforms matrix.
 
static proto void Math3D::MatrixInvMultiply3 (vector mat0[3], vector mat1[3], out vector res[3])
 Invert-transforms rotation matrix.
 
static proto void Math3D::MatrixOrthogonalize4 (vector mat[4])
 Orthogonalizes matrix.
 
static proto void Math3D::MatrixOrthogonalize3 (vector mat[3])
 Orthogonalizes matrix.
 
static void Math3D::MatrixIdentity4 (out vector mat[4])
 Creates identity matrix.
 
static void Math3D::MatrixIdentity3 (out vector mat[3])
 Creates identity matrix.
 
static void Math3D::ScaleMatrix (float scale, out vector mat[3])
 Creates scale matrix.
 
static void Math3D::QuatIdentity (out float q[4])
 Creates identity quaternion.
 
static void Math3D::QuatCopy (float s[4], out float d[4])
 Copies quaternion.
 
static proto void Math3D::MatrixToQuat (vector mat[3], out float d[4])
 Converts rotation matrix to quaternion.
 
static proto void Math3D::QuatToMatrix (float q[4], out vector mat[3])
 Converts quaternion to rotation matrix.
 
static proto vector Math3D::MatrixToAngles (vector mat[3])
 Returns angles of rotation matrix.
 
static proto void Math3D::QuatLerp (out float qout[4], float q1[4], float q2[4], float frac)
 Linear interpolation between q1 and q2 with weight 'frac' (0...1)
 
static proto void Math3D::QuatMultiply (out float qout[4], float q1[4], float q2[4])
 Multiplies quaternions.
 
static proto vector Math3D::QuatToAngles (float q[4])
 Returns Angles vector from quaternion.
 
static proto int Math3D::CheckBoundBox (vector mins1, vector maxs1, vector mins2, vector maxs2)
 Returns 1, when bounding boxes intersects.
 
static vector Math3D::GetRandomDir ()
 Returns randon normalized direction.
 
static proto native vector Math3D::Curve (ECurveType type, float param, notnull array< vector > points)
 Computes curve.
 
static proto vector Math3D::NearestPoint (vector beg, vector end, vector pos)
 Point on line beg .. end nearest to pos.
 
static proto float Math3D::AngleFromPosition (vector origin, vector originDir, vector target)
 Angle that a target is from the direction of an origin.
 
static proto void Math3D::ConePoints (vector origin, float length, float halfAngle, float angleOffset, out vector leftPoint, out vector rightPoint)
 Calculates the points of a right 2D cone in 3D space.
 

Detailed Description

Enumeration Type Documentation

◆ ECurveType

Enumerator
CatmullRom 
NaturalCubic 
UniformCubic 

Definition at line 20 of file EnMath3D.c.

21{
25};
@ NaturalCubic
Definition EnMath3D.c:23
@ CatmullRom
Definition EnMath3D.c:22
@ UniformCubic
Definition EnMath3D.c:24

Function Documentation

◆ AngleFromPosition()

static proto float Math3D::AngleFromPosition ( vector origin,
vector originDir,
vector target )
staticprivate

Angle that a target is from the direction of an origin.

Returns
float Angle in radians

Referenced by EvaluateComponentEx(), EvaluateHit_Player(), DayZInfected::FightLogic(), GetMeleeTargetEx(), and ScriptConsoleSoundsTab::UpdateMousePos().

◆ CheckBoundBox()

static proto int Math3D::CheckBoundBox ( vector mins1,
vector maxs1,
vector mins2,
vector maxs2 )
staticprivate

Returns 1, when bounding boxes intersects.

Parameters
mins1vector minimum point of first bounding box
maxs1vector maximum point of first bounding box
mins2vector minimum point of second bounding box
maxs2vector maximum point of second bounding box
Returns
int 1 if boundig boxes intersects, otherwise 0
vector mins1 = "1 1 1";
vector maxs1 = "3 3 3";
vector mins2 = "2 2 2";
vector maxs2 = "4 4 4";
>> 1
proto void Print(void var)
Prints content of variable to console/log.
static proto int CheckBoundBox(vector mins1, vector maxs1, vector mins2, vector maxs2)
Returns 1, when bounding boxes intersects.

◆ ClipLine()

static proto vector Math3D::ClipLine ( vector start,
vector end,
vector norm,
float d )
staticprivate

◆ ConePoints()

static proto void Math3D::ConePoints ( vector origin,
float length,
float halfAngle,
float angleOffset,
out vector leftPoint,
out vector rightPoint )
staticprivate

Calculates the points of a right 2D cone in 3D space.

Parameters
originvector Origin of cone
lengthfloat Length of the cone
halfAnglefloat Half of the angle of the cone in radians
angleOffsetfloat Angle offset of the cone in radians (handy for rotating it along with something in the world)
[out]leftPointvector Left point of the cone
[out]rightPointvector Right point of the cone

Referenced by Debug::DrawCone(), and MeleeTargetSettings().

◆ Curve()

static proto native vector Math3D::Curve ( ECurveType type,
float param,
notnull array< vector > points )
staticprivate

Computes curve.

Returns
vector
auto points = new array<vector>();
points.Insert( Vector( 0, 0, 0) );
points.Insert( Vector( 5, 0, 0) );
points.Insert( Vector( 8, 3, 0) );
points.Insert( Vector( 6, 1, 0) );
float t = 0.5;
ECurveType
Definition EnMath3D.c:21
proto native vector Vector(float x, float y, float z)
Vector constructor from components.
static proto native vector Curve(ECurveType type, float param, notnull array< vector > points)
Computes curve.

Referenced by RecoilBase::GetPositionOnCurve(), and KuruShake::Update().

◆ DirectionAndUpMatrix()

static proto void Math3D::DirectionAndUpMatrix ( vector dir,
vector up,
out vector mat[4] )
staticprivate

Creates rotation matrix from direction and up vector.

Parameters
dirvector direction vector
upvector up vector
[out]matvector[4] created rotation matrix
vector dir = "1 0 1";
vector up = "0 1 0";
>> <0.707107,0,-0.707107>,<0,1,0>,<0.707107,0,0.707107>,<0,0,0>
static proto void DirectionAndUpMatrix(vector dir, vector up, out vector mat[4])
Creates rotation matrix from direction and up vector.

Referenced by PluginBase::CalculatePos(), DayZIntroScene::DayZIntroScene(), and FloatingCrossHair().

◆ GetRandomDir()

static vector Math3D::GetRandomDir ( )
inlinestaticprivate

Returns randon normalized direction.

Returns
vector
>>vector ret = 0x0000000007c1a1c0 {<0.422565,0,-0.906333>}
static vector GetRandomDir()
Returns randon normalized direction.
Definition EnMath3D.c:424

Definition at line 424 of file EnMath3D.c.

425 {
426 float x = Math.RandomFloatInclusive(-1, 1);
427 float y = Math.RandomFloatInclusive(-1, 1);
428 float z = Math.RandomFloatInclusive(-1, 1);
429
430 return Vector(x, y, z).Normalized();
431 }
Icon x
Icon y
Definition EnMath.c:7
static float RandomFloatInclusive(float min, float max)
Returns a random float number between and min [inclusive] and max [inclusive].
Definition EnMath.c:106

References vector::Normalized(), Math::RandomFloatInclusive(), Vector(), x, and y.

◆ IntersectCylinderOBB()

static proto bool Math3D::IntersectCylinderOBB ( vector mins,
vector maxs,
vector obbMat[4],
vector cylMat[4],
float cylinderRadius,
float cylinderHeight )
staticprivate

Tests whether cylinder is intersecting oriented box.

Parameters
minsvector Minimums of bound box
maxsvector Maximums of bound box
obbMatvector Transform of box
cylMatvector Transform of cylinder
cylinderRadiusfloat Radius of cylinder
cylinderHeightfloat Height of cylinder
Returns
bool True when cylinder is intersecting oriented box

◆ IntersectRayBox()

static proto float Math3D::IntersectRayBox ( vector start,
vector end,
vector mins,
vector maxs )
staticprivate

Tests whether ray is intersecting axis aligned box.

Parameters
startvector Start of ray
endvector End of ray
minsvector Minimums of bound box
maxsvector Maximums of bound box
Returns
float -1 when not intersecting, else the fraction of ray

◆ IntersectRayCylinder()

static proto bool Math3D::IntersectRayCylinder ( vector rayStart,
vector rayEnd,
vector center,
float radius,
float height )
staticprivate

Tests whether ray is intersecting cylinder.

Parameters
rayStartvector Start of ray
rayEndvector End of ray
centervector Center of cylinder
radiusfloat Radius of cylinder
heightfloat Height of cylinder
Returns
bool True when ray is intersecting cylinder

◆ IntersectRaySphere()

static proto float Math3D::IntersectRaySphere ( vector raybase,
vector raycos,
vector center,
float radius )
staticprivate

Tests whether ray is intersecting sphere.

Parameters
raybasevector Start of ray
raycosvector End of ray
centervector Center of sphere
radiusfloat Radius of sphere
Returns
float -1 when not intersecting, else the fraction of ray

◆ IntersectSphereBox()

static proto bool Math3D::IntersectSphereBox ( vector origin,
float radius,
vector mins,
vector maxs )
staticprivate

Tests whether sphere is intersecting axis aligned box.

Parameters
originvector Origin of sphere
radiusfloat Radius of sphere
minsvector Minimums of bound box
maxsvector Maximums of bound box
Returns
bool True when intersects

◆ IntersectSphereCone()

static proto bool Math3D::IntersectSphereCone ( vector origin,
float radius,
vector conepos,
vector axis,
float angle )
staticprivate

Tests whether sphere is intersecting cone.

Parameters
originvector Origin of sphere
radiusfloat Radius of sphere
coneposvector Position of top of cone
axisvector Orientation of cone in direction from top to bottom
anglefloat Angle of cone in radians
Returns
bool True when sphere is intersecting cone

◆ IntersectWholeSphereCone()

static proto bool Math3D::IntersectWholeSphereCone ( vector origin,
float radius,
vector conepos,
vector axis,
float angle )
staticprivate

Tests whether sphere is fully inside cone.

Parameters
originvector Origin of sphere
radiusfloat Radius of sphere
coneposvector Position of top of cone
axisvector Orientation of cone in direction from top to bottom
anglefloat Angle of cone in radians
Returns
bool True when sphere is fully inside cone

◆ Math3D()

void Math3D::Math3D ( )
inlineprivate

Definition at line 29 of file EnMath3D.c.

29{}

◆ MatrixIdentity3()

static void Math3D::MatrixIdentity3 ( out vector mat[3])
inlinestaticprivate

Creates identity matrix.

Parameters
[out]matcreated identity matrix
vector mat[3];
Print( mat );
>> <1,0,0>,<0,1,0>,<0,0,1>
static void MatrixIdentity3(out vector mat[3])
Creates identity matrix.
Definition EnMath3D.c:252

Definition at line 252 of file EnMath3D.c.

253 {
254 mat[0] = "1 0 0";
255 mat[1] = "0 1 0";
256 mat[2] = "0 0 1";
257 }

◆ MatrixIdentity4()

static void Math3D::MatrixIdentity4 ( out vector mat[4])
inlinestaticprivate

◆ MatrixInvMultiply3()

static proto void Math3D::MatrixInvMultiply3 ( vector mat0[3],
vector mat1[3],
out vector res[3] )
staticprivate

Invert-transforms rotation matrix.

Parameters
mat0vector[3] first matrix
mat1vector[3] second matrix
[out]resvector[3] result of first and second matrix multiplication
vector mat0[3] = { "1.5 2.5 0", "0.1 1.3 0", "0 0 1" }; // rotation matrix
vector mat1[3] = { "1 0.4 0", "0 1 0", "0 1.3 2.7" }; // rotation matrix
>> <2.5,0.62,0>,<2.5,1.3,0>,<3.25,1.69,2.7>
static proto void MatrixInvMultiply3(vector mat0[3], vector mat1[3], out vector res[3])
Invert-transforms rotation matrix.

◆ MatrixInvMultiply4()

static proto void Math3D::MatrixInvMultiply4 ( vector mat0[4],
vector mat1[4],
out vector res[4] )
staticprivate

Invert-transforms matrix.

Parameters
mat0vector[4] first matrix
mat1vector[4] second matrix
[out]resvector[4] inverse result of first and second matrix multiplication
vector mat0[4] = { "2 0 0", "0 3 0", "0 0 1", "0 0 0" }; // scale matrix
vector mat1[4] = { "1 0 0", "0 1 0", "0 0 1", "2 4 1" }; // translation matrix
>> <2,0,0>,<0,3,1>,<0,3,1>,<4,12,4>
static proto void MatrixInvMultiply4(vector mat0[4], vector mat1[4], out vector res[4])
Invert-transforms matrix.

Referenced by AddArrow(), IEntity::AddArrow(), DayZInfected::AddArrow(), and ManBase::AddArrow().

◆ MatrixMultiply3()

static proto void Math3D::MatrixMultiply3 ( vector mat0[3],
vector mat1[3],
out vector res[3] )
staticprivate

Transforms rotation matrix.

Parameters
mat0vector[3] first matrix
mat1vector[3] second matrix
[out]resvector[3] result of first and second matrix multiplication
vector mat0[3] = { "1.5 2.5 0", "0.1 1.3 0", "0 0 1" }; // rotation matrix
vector mat1[3] = { "1 0.4 0", "0 1 0", "0 1.3 2.7" }; // rotation matrix
>> <1.54,3.02,0>,<0.1,1.3,0>,<0.13,1.69,2.7>
static proto void MatrixMultiply3(vector mat0[3], vector mat1[3], out vector res[3])
Transforms rotation matrix.

Referenced by Hologram::AlignProjectionOnTerrain(), and Weapon::LiftWeaponCheck().

◆ MatrixMultiply4()

static proto void Math3D::MatrixMultiply4 ( vector mat0[4],
vector mat1[4],
out vector res[4] )
staticprivate

Transforms matrix.

Parameters
mat0vector[4] first matrix
mat1vector[4] second matrix
[out]resvector[4] result of first and second matrix multiplication
vector mat0[4] = { "2 0 0 0", "0 3 0 0", "0 1 0 0", "0 0 0 1" }; // scale matrix
vector mat1[4] = { "1 0 0 0", "0 1 0 0", "0 1 0 0", "2 4 1 3" }; // translation matrix
>> <2,0,0>,<0,3,0>,<0,3,0>,<4,13,0>
static proto void MatrixMultiply4(vector mat0[4], vector mat1[4], out vector res[4])
Transforms matrix.

Referenced by EntityAI::IsAreaAtDoorFree(), and DayZPlayerCameraBase::OnUpdate().

◆ MatrixOrthogonalize3()

static proto void Math3D::MatrixOrthogonalize3 ( vector mat[3])
staticprivate

Orthogonalizes matrix.

Parameters
[it]mat matrix which should be orthogonalized

◆ MatrixOrthogonalize4()

static proto void Math3D::MatrixOrthogonalize4 ( vector mat[4])
staticprivate

Orthogonalizes matrix.

Parameters
[it]mat matrix which should be orthogonalized

Referenced by AddArrow(), IEntity::AddArrow(), DayZInfected::AddArrow(), and ManBase::AddArrow().

◆ MatrixToAngles()

static proto vector Math3D::MatrixToAngles ( vector mat[3])
staticprivate

Returns angles of rotation matrix.

Parameters
matvector[3] rotation matrix
Returns
vector roll, pitch, yaw angles
Math3D.RollPitchYawMatrix( "70 15 45", mat );
>> <70,15,-45>
static proto vector MatrixToAngles(vector mat[3])
Returns angles of rotation matrix.

Referenced by Hologram::AlignProjectionOnTerrain(), FloatingCrossHair(), and EntityAI::IsAreaAtDoorFree().

◆ MatrixToQuat()

static proto void Math3D::MatrixToQuat ( vector mat[3],
out float d[4] )
staticprivate

Converts rotation matrix to quaternion.

Parameters
matvector[3] rotation matrix
[out]dfloat[4] created quaternion copy
vector rot = "70 15 45";
rot.RotationMatrixFromAngles( mat );
float d[4];
Print( d );
>> {0.241626,0.566299,-0.118838,0.778973}
static proto void MatrixToQuat(vector mat[3], out float d[4])
Converts rotation matrix to quaternion.

Referenced by ActionRepackTentCB::DropDuringRepacking(), FloatingCrossHair(), ActionDeployBase::MoveEntityToFinalPosition(), ItemBase::OnPlacementComplete(), and ThrowAllItemsInInventory().

◆ NearestPoint()

static proto vector Math3D::NearestPoint ( vector beg,
vector end,
vector pos )
staticprivate

Point on line beg .. end nearest to pos.

Returns
vector

Referenced by EvaluateComponentEx(), and GetMeleeTargetEx().

◆ QuatCopy()

static void Math3D::QuatCopy ( float s[4],
out float d[4] )
inlinestaticprivate

Copies quaternion.

Parameters
sfloat[4] quaternion to copy
[out]dfloat[4] created quaternion copy
float s[4] = { 2, 3, 4, 1 };
float d[4];
Print( d );
>> {2,3,4,1}
static void QuatCopy(float s[4], out float d[4])
Copies quaternion.
Definition EnMath3D.c:314

Definition at line 314 of file EnMath3D.c.

315 {
316 d[0] = s[0];
317 d[1] = s[1];
318 d[2] = s[2];
319 d[3] = s[3];
320 }

◆ QuatIdentity()

static void Math3D::QuatIdentity ( out float q[4])
inlinestaticprivate

Creates identity quaternion.

Parameters
[out]qfloat[4] created identity quaternion
float q[4];
Print( q );
>> {0,0,0,1}
static void QuatIdentity(out float q[4])
Creates identity quaternion.
Definition EnMath3D.c:293

Definition at line 293 of file EnMath3D.c.

294 {
295 q[0] = 0;
296 q[1] = 0;
297 q[2] = 0;
298 q[3] = 1;
299 }

◆ QuatLerp()

static proto void Math3D::QuatLerp ( out float qout[4],
float q1[4],
float q2[4],
float frac )
staticprivate

Linear interpolation between q1 and q2 with weight 'frac' (0...1)

Parameters
[out]qoutfloat[4] result quaternion
q1float[4] first quaternion
q2float[4] second quaternion
fracfloat interpolation weight
float q1[4] = { 1, 1, 1, 1 };
float q2[4] = { 2, 2, 2, 1 };
float qout[4];
Math3D.QuatLerp( qout, q1, q2, 0.5 );
>> {1.5,1.5,1.5,1}
static proto void QuatLerp(out float qout[4], float q1[4], float q2[4], float frac)
Linear interpolation between q1 and q2 with weight 'frac' (0...1)

Referenced by FloatingCrossHair().

◆ QuatMultiply()

static proto void Math3D::QuatMultiply ( out float qout[4],
float q1[4],
float q2[4] )
staticprivate

Multiplies quaternions.

Parameters
[out]qoutfloat[4] result quaternion
q1float[4] first quaternion
q2float[4] second quaternion
float q1[4] = { 1, 2, 3, 1 };
float q2[4] = { 2, 2, 2, 1 };
float qout[4];
>> {2,4,6,1}
static proto void QuatMultiply(out float qout[4], float q1[4], float q2[4])
Multiplies quaternions.

◆ QuatToAngles()

static proto vector Math3D::QuatToAngles ( float q[4])
staticprivate

Returns Angles vector from quaternion.

Referenced by UIScriptedMenu::SetCameraData(), and UIScriptedMenu::Update().

◆ QuatToMatrix()

static proto void Math3D::QuatToMatrix ( float q[4],
out vector mat[3] )
staticprivate

Converts quaternion to rotation matrix.

Referenced by FloatingCrossHair().

◆ ScaleMatrix()

static void Math3D::ScaleMatrix ( float scale,
out vector mat[3] )
inlinestaticprivate

Creates scale matrix.

Parameters
scalescale coeficient
[out]matcreated scale matrix
vector mat[3];
Print( mat );
>> <2.5,0,0>,<0,2.5,0>,<0,0,2.5>
static void ScaleMatrix(float scale, out vector mat[3])
Creates scale matrix.
Definition EnMath3D.c:271

Definition at line 271 of file EnMath3D.c.

272 {
273 vector v0, v1, v2;
274 v0[0] = scale;
275 v1[1] = scale;
276 v2[2] = scale;
277 mat[0] = v0;
278 mat[1] = v1;
279 mat[2] = v2;
280 }

◆ Vector()

proto native vector Vector ( float x,
float y,
float z )

Vector constructor from components.

Parameters
xfloat x component
yfloat y component
zfloat z component
Returns
vector resulting vector
Print( Vector(1, 2, 3) );
>> <1,2,3>

Referenced by vector::ArrayToVec(), Barrel_ColorBase::Barrel_ColorBase(), Hit_MeatBones::BloodSplatGround(), PluginBase::CalculatePos(), DayZIntroSceneXbox::CameraCreate(), CarLightBase::CarRearLight(), TentBase::CarTent(), WeaponParticlesBase::CheckOrientationOverride(), CarLightBase::CivilianSedanFrontLight(), CarRearLightBase::CivilianSedanRearLight(), CGame::CloseCombatEffects(), CreateBridgeArrow(), CreateCarDestroyedEffect(), Particle::CreateOnObject(), SceneData::CreateScenePlayer(), EffectAreaLoader::CreateZones(), DayZIntroScene::DayZIntroScene(), CGame::DelayedMidAirDetonation(), EntityLightSource::DetachFromParent(), ItemBase::DoMeasurement(), Debug::DrawCone(), BuildingSuper::EEInit(), Explode(), FilterObstructedObjectsByGrouping(), FloatingCrossHair(), GameplayEffectsData::GenerateSequenceRandomPosition(), GetBoxCenter(), IEntity::GetCenter(), GetCollisionBoxSize(), Hologram::GetCollisionBoxSize(), GetCurrentOrientation(), GetFireEffectPosition(), ScriptedWidgetEventHandler::GetItemSize(), GetMeleeTarget(), GetMeleeTargetEx(), GetMouseDistance(), JsonUndergroundAreaTriggerData::GetOrientation(), JsonUndergroundAreaTriggerData::GetPosition(), SceneObject::GetPosition(), SceneObject::GetPositionAsString(), GetPositionRandomized(), Math3D::GetRandomDir(), GetRandomPos(), JsonUndergroundAreaTriggerData::GetSize(), SceneObject::GetSize(), GetSmokeEffectPosition(), FireplaceBase::GetSmokeEffectPosition(), EntityLightSource::HandleDancingShadows(), CarLightBase::Hatchback_02FrontLight(), CarRearLightBase::Hatchback_02RearLight(), BroomBase::Init(), UIScriptedMenu::Init(), IsColliding(), IsCollidingEx(), Hologram::IsCollidingZeroPos(), IsEntityBehindEntityInAngle(), IsSpaceFor(), IsSpaceForCircle(), IsSpaceForOven(), IsUnderRoofFromToCalculation(), LargeTent(), Weapon::LiftWeaponCheck(), LongTorch::LongTorch(), TentBase::MediumTent(), CarLightBase::Offroad_02FrontLight(), CarRearLightBase::Offroad_02RearLight(), CarLightBase::OffroadHatchbackFrontLight(), CarRearLightBase::OffroadHatchbackRearLight(), WeaponParticlesBase::OnActivate(), FlareSimulation::OnActivation(), ScriptConsoleGeneralTab::OnClick(), ItemBase::OnDebugSpawn(), MapHandler::OnDoubleClick(), ScriptConsoleGeneralTab::OnDoubleClick(), OnDraggingEnd(), FireworksLauncherClientEvent::OnFired(), PointLightBase::OnFrameLightSource(), ItemBase::OnInventoryExit(), Roadflare::OnInventoryExit(), Switchable_Base::OnInventoryExit(), MapHandler::OnKeyDown(), UIScriptedMenu::OnShow(), DayZPlayer::OnStepEvent(), OnUpdateClient(), Roadflare::OnWorkStart(), TentBase::PartyTent(), vector::RandomDir(), vector::RandomDir2D(), Particle::RandWiggleVector(), DayZIntroScene::ResetIntroCamera(), SeaChest::SeaChest(), CarLightBase::Sedan_02FrontLight(), CarRearLightBase::Sedan_02RearLight(), PluginBase::SelectedObjectDuplicate(), GameInventory::SetGroundPosByOwnerBounds(), UIScriptedMenu::SetItem(), Hologram::SetOnGround(), AreaDamageComponentRaycasted::SetRaycastLength(), SetWaterLevelHeight(), TentBase::ShelterBase(), DayZIntroScene::SnapToGround(), DayZIntroSceneXbox::SnapToGround(), CrashBase::SpawnRandomDeers(), ThrowAllItemsInInventory(), CarLightBase::Truck_01FrontLight(), CarRearLightBase::Truck_01RearLight(), TruncateVec(), FlammableBase::TryTransformIntoStick(), ScriptedWidgetEventHandler::UpdateItems(), InventoryGridController::UpdateItems(), FlammableBase::UpdateLight(), CGame::UpdatePathgraphRegionByObject(), UIScriptedMenu::UpdateQuickbarItemCard(), ScriptedWidgetEventHandler::UpdateQuickbarItems(), WeaponParticlesBase::WeaponParticlesBase(), WoodenCrate::WoodenCrate(), CrashBase::Wreck_Mi8_Crashed(), CrashBase::Wreck_SantasSleigh(), and CrashBase::Wreck_UH1Y().

◆ YawPitchRollMatrix()

static proto void Math3D::YawPitchRollMatrix ( vector ang,
out vector mat[3] )
staticprivate

Creates rotation matrix from angles.

Parameters
angvector which contains angles
[out]matvector created rotation matrix
YawPitchRollMatrix( "70 15 45", mat );
>> <0.330366,0.0885213,-0.939693>,<0.458809,0.854988,0.241845>,<0.824835,-0.511037,0.241845>
static proto void YawPitchRollMatrix(vector ang, out vector mat[3])
Creates rotation matrix from angles.

Referenced by AddArrow(), DayZInfected::AddArrow(), ManBase::AddArrow(), Hologram::AlignProjectionOnTerrain(), ActionRepackTentCB::DropDuringRepacking(), Weapon::LiftWeaponCheck(), ActionDeployBase::MoveEntityToFinalPosition(), ItemBase::OnPlacementComplete(), DayZPlayerCameraBase::OnUpdate(), OnUpdate(), and ThrowAllItemsInInventory().

◆ ~Math3D()

void Math3D::~Math3D ( )
inlineprivate

Definition at line 30 of file EnMath3D.c.

30{}