mirror of
https://github.com/g-truc/glm.git
synced 2024-11-16 23:04:35 +00:00
c351089e9f
Defines a dedicated type and operations for angles taking care of the radians/degrees issue and enforcing semantically sane usage. Applying these types consistently can prevent many problems related to conversions between degrees and radians. Furthermore it only supports operations which preserve the angle's dimension (under the assumption it is not dimensionless) allowing the compiler to detect misuses in equations. By not manually converting between degrees and radians everywhere in your program you can even gain some extra speed efficiency. Where ever you deal with angles (regardless if class members or function arguments) always use fangle/dangle and let it deal with the calculations necessary for radians/degrees conversions. Never again use a plain `float` in interfaces to represent angles or worry about these nuisances. The angle types should be no bigger than the datatype used for representation (if they are complain to your compiler vendor), are as efficient in copy and assignment operations as a native float or double, and can be safely passed by-value without fear of performance problems. |
||
---|---|---|
.. | ||
CMakeLists.txt | ||
gtx_angle.cpp | ||
gtx_associated_min_max.cpp | ||
gtx_closest_point.cpp | ||
gtx_color_space_YCoCg.cpp | ||
gtx_color_space.cpp | ||
gtx_common.cpp | ||
gtx_compatibility.cpp | ||
gtx_component_wise.cpp | ||
gtx_dual_quaternion.cpp | ||
gtx_euler_angle.cpp | ||
gtx_extend.cpp | ||
gtx_extented_min_max.cpp | ||
gtx_fast_exponential.cpp | ||
gtx_fast_square_root.cpp | ||
gtx_fast_trigonometry.cpp | ||
gtx_gradient_paint.cpp | ||
gtx_handed_coordinate_space.cpp | ||
gtx_int_10_10_10_2.cpp | ||
gtx_integer.cpp | ||
gtx_intersect.cpp | ||
gtx_io.cpp | ||
gtx_log_base.cpp | ||
gtx_matrix_cross_product.cpp | ||
gtx_matrix_decompose.cpp | ||
gtx_matrix_interpolation.cpp | ||
gtx_matrix_major_storage.cpp | ||
gtx_matrix_operation.cpp | ||
gtx_matrix_query.cpp | ||
gtx_matrix_transform_2d.cpp | ||
gtx_mixed_product.cpp | ||
gtx_multiple.cpp | ||
gtx_norm.cpp | ||
gtx_normal.cpp | ||
gtx_normalize_dot.cpp | ||
gtx_number_precision.cpp | ||
gtx_optimum_pow.cpp | ||
gtx_orthonormalize.cpp | ||
gtx_perpendicular.cpp | ||
gtx_polar_coordinates.cpp | ||
gtx_projection.cpp | ||
gtx_quaternion.cpp | ||
gtx_random.cpp | ||
gtx_range.cpp | ||
gtx_rotate_normalized_axis.cpp | ||
gtx_rotate_vector.cpp | ||
gtx_scalar_multiplication.cpp | ||
gtx_scalar_relational.cpp | ||
gtx_simd_mat4.cpp | ||
gtx_simd_vec4.cpp | ||
gtx_spline.cpp | ||
gtx_string_cast.cpp | ||
gtx_type_aligned.cpp | ||
gtx_vector_angle.cpp | ||
gtx_vector_query.cpp |