Isle
Loading...
Searching...
No Matches
vector4d.inl.h
Go to the documentation of this file.
1#ifndef VECTOR4D_H
2#define VECTOR4D_H
3
4#include "vector.h"
5
6#include <math.h>
7#include <memory.h>
8
18void Vector4::AddImpl(const float* p_value);
19
27void Vector4::AddImpl(float p_value);
28
36void Vector4::SubImpl(const float* p_value);
37
45void Vector4::MulImpl(const float* p_value);
46
54void Vector4::MulImpl(const float& p_value);
55
63void Vector4::DivImpl(const float& p_value);
64
74float Vector4::DotImpl(const float* p_a, const float* p_b) const;
75
83void Vector4::EqualsImpl(const float* p_data);
84
94void Vector4::SetMatrixProduct(const float* p_vec, const float* p_mat);
95
104void Vector4::SetMatrixProduct(const Vector4& p_a, const float* p_b);
105
111void Vector4::Clear();
112
120float Vector4::LenSquared() const;
121
129void Vector4::Fill(const float& p_value);
130
144
155int Vector4::EqualsHamiltonProduct(const Vector4& p_a, const Vector4& p_b);
156
157#endif // VECTOR4D_H
[AI] A four-dimensional vector, supporting operations relevant for matrix and quaternion math (homoge...
Definition: vector.h:365
virtual int EqualsHamiltonProduct(const Vector4 &p_a, const Vector4 &p_b)
[AI] Set this vector to the Hamilton product of two quaternion Vector4s.
void Clear() override
[AI] Sets all four components to zero.
virtual void SetMatrixProduct(const float *p_vec, const float *p_mat)
[AI] Set this vector to the result of a matrix-vector product: result = p_mat * p_vec.
void AddImpl(const float *p_value) override
[AI] Adds the values pointed to by p_value to this vector.
virtual int NormalizeQuaternion()
[AI] Normalize this quaternion (interpreted as vector) in place.
float DotImpl(const float *p_a, const float *p_b) const override
void EqualsImpl(const float *p_data) override
[AI] Assigns values from provided array to this vector.
void SubImpl(const float *p_value) override
[AI] Subtracts the vector specified by p_value from this vector.
void MulImpl(const float *p_value) override
[AI] Multiplies this vector by another vector (per element).
void Fill(const float &p_value) override
[AI] Fill all four floats with p_value.
float LenSquared() const override
[AI] Computes the squared magnitude of the 4D vector.
void DivImpl(const float &p_value) override
[AI] Divides this vector by a scalar value.