Monado OpenXR Runtime
|
A 3 element vector with single floats. More...
#include <xrt/xrt_defines.h>
Data Fields | |
float | x |
float | y |
float | z |
Related Functions | |
(Note that these are not member functions.) | |
bool | math_vec3_validate (const struct xrt_vec3 *vec3) |
Check if this vec3 is valid for math operations. More... | |
void | math_vec3_accum (const struct xrt_vec3 *additional, struct xrt_vec3 *inAndOut) |
Accumulate a vector by adding in-place. More... | |
void | math_vec3_cross (const struct xrt_vec3 *l, const struct xrt_vec3 *r, struct xrt_vec3 *result) |
Cross product of a vector. More... | |
void | math_quat_from_angle_vector (float angle_rads, const struct xrt_vec3 *vector, struct xrt_quat *result) |
Create a rotation from a angle in radians and a vector. More... | |
void | math_quat_from_plus_x_z (const struct xrt_vec3 *plus_x, const struct xrt_vec3 *plus_z, struct xrt_quat *result) |
Create a rotation from two vectors plus x and z, by creating a rotation matrix by crossing z and x to get the y axis. More... | |
void | math_quat_rotate_vec3 (const struct xrt_quat *left, const struct xrt_vec3 *right, struct xrt_vec3 *result) |
Rotate a vector. More... | |
void | math_quat_integrate_velocity (const struct xrt_quat *quat, const struct xrt_vec3 *ang_vel, float dt, struct xrt_quat *result) |
Integrate an angular velocity vector (exponential map) and apply to a quaternion. More... | |
void | math_quat_finite_difference (const struct xrt_quat *quat0, const struct xrt_quat *quat1, float dt, struct xrt_vec3 *out_ang_vel) |
Compute an angular velocity vector (exponential map format) by taking the finite difference of two quaternions. More... | |
void | math_pose_transform_point (const struct xrt_pose *transform, const struct xrt_vec3 *point, struct xrt_vec3 *out_point) |
Apply a rigid-body transformation to a point. More... | |
A 3 element vector with single floats.