|
Blender
V2.93
|
#include <BLI_float4x4.hh>
Classes | |
| struct | float3x3_ref |
Public Types | |
| using | c_style_float4x4 = float[4][4] |
Public Member Functions | |
| float4x4 ()=default | |
| float4x4 (const float *matrix) | |
| float4x4 (const float matrix[4][4]) | |
| operator float * () | |
| operator const float * () const | |
| c_style_float4x4 & | ptr () |
| const c_style_float4x4 & | ptr () const |
| float3 | translation () const |
| float3 | to_euler () const |
| float3 | scale () const |
| float4x4 | inverted () const |
| float4x4 | inverted_affine () const |
| float4x4 | transposed () const |
| float4x4 | inverted_transposed_affine () const |
| float3x3_ref | ref_3x3 () const |
| uint64_t | hash () const |
Static Public Member Functions | |
| static float4x4 | from_loc_eul_scale (const float3 location, const float3 rotation, const float3 scale) |
| static float4x4 | identity () |
| static float4x4 | interpolate (const float4x4 &a, const float4x4 &b, float t) |
Public Attributes | |
| float | values [4][4] |
Friends | |
| float4x4 | operator* (const float4x4 &a, const float4x4 &b) |
| float3 | operator* (const float4x4 &m, const float3 &v) |
| float3 | operator* (const float4x4 &m, const float(*v)[3]) |
Definition at line 24 of file BLI_float4x4.hh.
| using blender::float4x4::c_style_float4x4 = float[4][4] |
Definition at line 65 of file BLI_float4x4.hh.
|
default |
|
inline |
Definition at line 29 of file BLI_float4x4.hh.
References values.
|
inline |
Definition at line 34 of file BLI_float4x4.hh.
|
inlinestatic |
Definition at line 39 of file BLI_float4x4.hh.
References loc_eul_size_to_mat4(), scale(), and values.
Referenced by blender::nodes::add_instances_from_geometry_component(), blender::nodes::transform_instances(), blender::nodes::transform_mesh(), blender::nodes::transform_pointcloud(), and blender::nodes::transform_volume().
|
inline |
Definition at line 171 of file BLI_float4x4.hh.
References values.
|
inlinestatic |
Definition at line 48 of file BLI_float4x4.hh.
References unit_m4(), and values.
Referenced by blender::nodes::create_cube_mesh(), blender::nodes::create_ico_sphere_mesh(), and blender::nodes::geo_node_boolean_exec().
|
inlinestatic |
Definition at line 164 of file BLI_float4x4.hh.
References Freestyle::a, interp_m4_m4m4(), result, t, and values.
|
inline |
Definition at line 119 of file BLI_float4x4.hh.
References invert_m4_m4(), result, and values.
Referenced by inverted_affine().
|
inline |
Matrix inversion can be implemented more efficiently for affine matrices.
Definition at line 129 of file BLI_float4x4.hh.
References BLI_assert, inverted(), and values.
Referenced by inverted_transposed_affine().
|
inline |
Definition at line 143 of file BLI_float4x4.hh.
References inverted_affine(), and transposed().
|
inline |
Definition at line 60 of file BLI_float4x4.hh.
References values.
|
inline |
Definition at line 55 of file BLI_float4x4.hh.
References values.
|
inline |
Definition at line 66 of file BLI_float4x4.hh.
References values.
|
inline |
Definition at line 71 of file BLI_float4x4.hh.
References values.
|
inline |
Definition at line 159 of file BLI_float4x4.hh.
|
inline |
Definition at line 112 of file BLI_float4x4.hh.
References mat4_to_size(), and values.
Referenced by from_loc_eul_scale().
|
inline |
Definition at line 105 of file BLI_float4x4.hh.
References mat4_to_eul(), and values.
|
inline |
Definition at line 99 of file BLI_float4x4.hh.
References values.
|
inline |
Definition at line 136 of file BLI_float4x4.hh.
References result, transpose_m4_m4(), and values.
Referenced by inverted_transposed_affine().
Definition at line 76 of file BLI_float4x4.hh.
Definition at line 94 of file BLI_float4x4.hh.
This also applies the translation on the vector. Use m.ref_3x3() * v if that is not intended.
Definition at line 87 of file BLI_float4x4.hh.
| float blender::float4x4::values[4][4] |
Definition at line 25 of file BLI_float4x4.hh.
Referenced by float4x4(), from_loc_eul_scale(), blender::bke::geometry_set_collect_recursive_collection_instance(), blender::bke::geometry_set_gather_instances(), hash(), identity(), interpolate(), inverted(), inverted_affine(), modifyVolume(), operator const float *(), operator float *(), blender::io::gpencil::GpencilIO::prepare_layer_export_matrix(), ptr(), scale(), blender::io::gpencil::GpencilIO::selected_objects_boundbox_calc(), blender::io::gpencil::GpencilIO::stroke_point_radius_get(), to_euler(), blender::nodes::transform_mesh(), translation(), and transposed().