Changeset View
Changeset View
Standalone View
Standalone View
source/blender/nodes/geometry/nodes/node_geo_transform_geometry.cc
- This file was moved from source/blender/nodes/geometry/nodes/node_geo_transform.cc.
| Show First 20 Lines • Show All 224 Lines • ▼ Show 20 Lines | void transform_mesh(Mesh &mesh, | ||||
| const float3 scale) | const float3 scale) | ||||
| { | { | ||||
| const float4x4 matrix = float4x4::from_loc_eul_scale(translation, rotation, scale); | const float4x4 matrix = float4x4::from_loc_eul_scale(translation, rotation, scale); | ||||
| transform_mesh(mesh, matrix); | transform_mesh(mesh, matrix); | ||||
| } | } | ||||
| } // namespace blender::nodes | } // namespace blender::nodes | ||||
| namespace blender::nodes::node_geo_transform_cc { | namespace blender::nodes::node_geo_transform_geometry_cc { | ||||
| static void node_declare(NodeDeclarationBuilder &b) | static void node_declare(NodeDeclarationBuilder &b) | ||||
| { | { | ||||
| b.add_input<decl::Geometry>(N_("Geometry")); | b.add_input<decl::Geometry>(N_("Geometry")); | ||||
| b.add_input<decl::Vector>(N_("Translation")).subtype(PROP_TRANSLATION); | b.add_input<decl::Vector>(N_("Translation")).subtype(PROP_TRANSLATION); | ||||
| b.add_input<decl::Vector>(N_("Rotation")).subtype(PROP_EULER); | b.add_input<decl::Vector>(N_("Rotation")).subtype(PROP_EULER); | ||||
| b.add_input<decl::Vector>(N_("Scale")).default_value({1, 1, 1}).subtype(PROP_XYZ); | b.add_input<decl::Vector>(N_("Scale")).default_value({1, 1, 1}).subtype(PROP_XYZ); | ||||
| b.add_output<decl::Geometry>(N_("Geometry")); | b.add_output<decl::Geometry>(N_("Geometry")); | ||||
| Show All 14 Lines | else { | ||||
| transform_geometry_set(params, | transform_geometry_set(params, | ||||
| geometry_set, | geometry_set, | ||||
| float4x4::from_loc_eul_scale(translation, rotation, scale), | float4x4::from_loc_eul_scale(translation, rotation, scale), | ||||
| *params.depsgraph()); | *params.depsgraph()); | ||||
| } | } | ||||
| params.set_output("Geometry", std::move(geometry_set)); | params.set_output("Geometry", std::move(geometry_set)); | ||||
| } | } | ||||
| } // namespace blender::nodes::node_geo_transform_cc | } // namespace blender::nodes::node_geo_transform_geometry_cc | ||||
| void register_node_type_geo_transform() | void register_node_type_geo_transform_geometry() | ||||
| { | { | ||||
| namespace file_ns = blender::nodes::node_geo_transform_cc; | namespace file_ns = blender::nodes::node_geo_transform_geometry_cc; | ||||
| static bNodeType ntype; | static bNodeType ntype; | ||||
| geo_node_type_base(&ntype, GEO_NODE_TRANSFORM, "Transform", NODE_CLASS_GEOMETRY); | geo_node_type_base( | ||||
| &ntype, GEO_NODE_TRANSFORM_GEOMETRY, "Transform Geometry", NODE_CLASS_GEOMETRY); | |||||
| ntype.declare = file_ns::node_declare; | ntype.declare = file_ns::node_declare; | ||||
| ntype.geometry_node_execute = file_ns::node_geo_exec; | ntype.geometry_node_execute = file_ns::node_geo_exec; | ||||
| nodeRegisterType(&ntype); | nodeRegisterType(&ntype); | ||||
| } | } | ||||