Monado OpenXR Runtime
Data Fields | Related Functions
xrt_vec3 Struct Reference

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...
 

Detailed Description

A 3 element vector with single floats.


The documentation for this struct was generated from the following files: