Blender V4.3
blender::fn::FieldOperation Class Reference

#include <FN_field.hh>

Inherits blender::fn::FieldNode.

Public Member Functions

#FieldOperation
 FieldOperation (std::shared_ptr< const mf::MultiFunction > function, Vector< GField > inputs={})
 
 FieldOperation (const mf::MultiFunction &function, Vector< GField > inputs={})
 
 ~FieldOperation ()
 
#FieldOperation Inline Methods
Span< GFieldinputs () const
 
const mf::MultiFunctionmulti_function () const
 
const CPPTypeoutput_cpp_type (int output_index) const override
 
- Public Member Functions inherited from blender::fn::FieldNode
 FieldNode (FieldNodeType node_type)
 
FieldNodeType node_type () const
 
bool depends_on_input () const
 
const std::shared_ptr< const FieldInputs > & field_inputs () const
 
virtual uint64_t hash () const
 
virtual bool is_equal_to (const FieldNode &other) const
 
virtual ~FieldNode ()
 
virtual void for_each_field_input_recursive (FunctionRef< void(const FieldInput &)> fn) const
 

Static Public Member Functions

static std::shared_ptr< FieldOperationCreate (std::shared_ptr< const mf::MultiFunction > function, Vector< GField > inputs={})
 
static std::shared_ptr< FieldOperationCreate (const mf::MultiFunction &function, Vector< GField > inputs={})
 

Additional Inherited Members

- Protected Attributes inherited from blender::fn::FieldNode
std::shared_ptr< const FieldInputsfield_inputs_
 

Detailed Description

A FieldNode that allows composing existing fields into new fields.

Definition at line 223 of file FN_field.hh.

Constructor & Destructor Documentation

◆ FieldOperation() [1/2]

blender::fn::FieldOperation::FieldOperation ( std::shared_ptr< const mf::MultiFunction > function,
Vector< GField > inputs = {} )

Definition at line 605 of file field.cc.

◆ FieldOperation() [2/2]

blender::fn::FieldOperation::FieldOperation ( const mf::MultiFunction & function,
Vector< GField > inputs = {} )

◆ ~FieldOperation()

blender::fn::FieldOperation::~FieldOperation ( )
default

Member Function Documentation

◆ Create() [1/2]

static std::shared_ptr< FieldOperation > blender::fn::FieldOperation::Create ( const mf::MultiFunction & function,
Vector< GField > inputs = {} )
inlinestatic

Definition at line 249 of file FN_field.hh.

◆ Create() [2/2]

static std::shared_ptr< FieldOperation > blender::fn::FieldOperation::Create ( std::shared_ptr< const mf::MultiFunction > function,
Vector< GField > inputs = {} )
inlinestatic

Definition at line 244 of file FN_field.hh.

Referenced by blender::nodes::node_geo_tool_set_selection_cc::clamp_selection(), blender::nodes::node_geo_index_switch_cc::LazyFunctionForIndexSwitchNode::execute_field(), blender::nodes::node_geo_menu_switch_cc::LazyFunctionForMenuSwitchNode::execute_field(), blender::nodes::node_geo_switch_cc::LazyFunctionForSwitchNode::execute_field(), blender::nodes::execute_multi_function_on_value_variant__field(), blender::geometry::get_count_input_from_length(), blender::geometry::get_count_input_max_one(), blender::nodes::node_geo_tool_set_selection_cc::invert_selection(), blender::nodes::node_geo_image_texture_cc::node_geo_exec(), blender::nodes::node_geo_mesh_to_points_cc::node_geo_exec(), blender::nodes::node_geo_proximity_cc::node_geo_exec(), blender::nodes::node_geo_realize_instances_cc::node_geo_exec(), blender::nodes::node_geo_sample_grid_cc::node_geo_exec(), blender::nodes::node_geo_sample_grid_index_cc::node_geo_exec(), blender::nodes::node_geo_sample_index_cc::node_geo_exec(), blender::nodes::node_geo_sample_nearest_cc::node_geo_exec(), blender::nodes::node_geo_sample_nearest_surface_cc::node_geo_exec(), blender::nodes::node_geo_sample_uv_surface_cc::node_geo_exec(), blender::nodes::node_geo_set_position_cc::node_geo_exec(), blender::nodes::node_geo_set_position_cc::set_curves_position(), blender::fn::tests::TEST(), blender::fn::tests::TEST(), blender::fn::tests::TEST(), blender::fn::tests::TEST(), blender::fn::tests::TEST(), blender::fn::tests::TEST(), blender::fn::tests::TEST(), blender::bke::DataTypeConversions::try_convert(), and blender::bke::AttributeValidator::validate_field_if_necessary().

◆ inputs()

Span< GField > blender::fn::FieldOperation::inputs ( ) const
inline

◆ multi_function()

const mf::MultiFunction & blender::fn::FieldOperation::multi_function ( ) const
inline

Definition at line 597 of file FN_field.hh.

Referenced by blender::fn::build_multi_function_procedure_for_fields().

◆ output_cpp_type()


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