Blender V4.5
blender::nodes::node_geo_deform_curves_on_surface_cc Namespace Reference

Classes

class  CurvesGeometry
class  ReverseUVSampler

Functions

static void node_declare (NodeDeclarationBuilder &b)
static void deform_curves (const CurvesGeometry &curves, const Mesh &surface_mesh_old, const Mesh &surface_mesh_new, const Span< float2 > curve_attachment_uvs, const ReverseUVSampler &reverse_uv_sampler_old, const ReverseUVSampler &reverse_uv_sampler_new, const Span< float3 > corner_normals_old, const Span< float3 > corner_normals_new, const Span< float3 > rest_positions, const float4x4 &surface_to_curves, MutableSpan< float3 > r_positions, MutableSpan< float3x3 > r_rotations, std::atomic< int > &r_invalid_uv_count)
static void node_geo_exec (GeoNodeExecParams params)
static void node_register ()
template<typename T>
T mix3 (const float3 &weights, const T &v0, const T &v1, const T &v2)

Function Documentation

◆ deform_curves()

void blender::nodes::node_geo_deform_curves_on_surface_cc::deform_curves ( const CurvesGeometry & curves,
const Mesh & surface_mesh_old,
const Mesh & surface_mesh_new,
const Span< float2 > curve_attachment_uvs,
const ReverseUVSampler & reverse_uv_sampler_old,
const ReverseUVSampler & reverse_uv_sampler_new,
const Span< float3 > corner_normals_old,
const Span< float3 > corner_normals_new,
const Span< float3 > rest_positions,
const float4x4 & surface_to_curves,
MutableSpan< float3 > r_positions,
MutableSpan< float3x3 > r_rotations,
std::atomic< int > & r_invalid_uv_count )
static

◆ mix3()

template<typename T>
T blender::bke::attribute_math::mix3 ( const float3 & weights,
const T & v0,
const T & v1,
const T & v2 )

◆ node_declare()

void blender::nodes::node_geo_deform_curves_on_surface_cc::node_declare ( NodeDeclarationBuilder & b)
static

Definition at line 32 of file node_geo_deform_curves_on_surface.cc.

References b, and node_declare().

Referenced by node_declare(), and node_register().

◆ node_geo_exec()

void blender::nodes::node_geo_deform_curves_on_surface_cc::node_geo_exec ( GeoNodeExecParams params)
static

Definition at line 204 of file node_geo_deform_curves_on_surface.cc.

References blender::bke::CurvesGeometry::attributes(), Geometry::attributes, BKE_id_free(), BKE_mesh_from_bmesh_for_eval_nomain(), BKE_mesh_wrapper_ensure_mdata(), BKE_modifier_get_evaluated_mesh_from_evaluated_object(), BLI_SCOPED_DEFER, blender::bke::AttributeAccessor::contains(), blender::bke::CurvesEditHints::curves_id_orig, blender::bke::CurvesGeometry::curves_num(), Object::data, deform_curves(), blender::bke::CurvesEditHints::deform_mats, DEG_get_original(), blender::nodes::Error, blender::nodes::GeoNodeExecParams::error_message_add(), blender::nodes::GeoNodeExecParams::extract_input(), Curves::geometry, blender::bke::GeometrySet::get_curve_edit_hints_for_write(), blender::bke::GeometrySet::get_curves_for_write(), blender::bke::GeometrySet::has_curves(), blender::MatBase< float, 3, 3 >::identity(), blender::MutableSpan< T >::is_empty(), blender::Span< T >::is_empty(), blender::bke::AttributeAccessor::lookup(), blender::bke::AttributeAccessor::lookup_or_default(), node_geo_exec(), OB_CURVES, OB_MESH, CurvesGeometry::point_num, blender::bke::CurvesEditHints::positions_for_write(), blender::bke::CurvesGeometry::positions_for_write(), Mesh::runtime, blender::nodes::GeoNodeExecParams::self_object(), blender::nodes::GeoNodeExecParams::set_output(), Curves::surface, blender::bke::CurvesSurfaceTransforms::surface_to_curves, blender::bke::CurvesGeometry::surface_uv_coords(), Curves::surface_uv_map, blender::bke::CurvesGeometry::tag_positions_changed(), TIP_, Object::type, and blender::nodes::Warning.

Referenced by node_geo_exec(), and node_register().

◆ node_register()