17 b.add_input<
decl::Bool>(
N_(
"Selection")).default_value(
true).supports_field().hide_value();
27 if (point_component ==
nullptr) {
40 selection_evaluator.add(selection_field);
41 selection_evaluator.evaluate();
42 const IndexMask selection = selection_evaluator.get_evaluated_as_mask(0);
61 src.materialize_compressed_to_uninitialized(selection, dst.
span.
data());
78 params.set_output(
"Mesh", std::move(geometry_set));
@ GEO_COMPONENT_TYPE_MESH
@ GEO_COMPONENT_TYPE_POINT_CLOUD
struct Mesh * BKE_mesh_new_nomain(int verts_len, int edges_len, int tessface_len, int loops_len, int polys_len)
#define GEO_NODE_POINTS_TO_VERTICES
#define NODE_CLASS_GEOMETRY
void nodeRegisterType(struct bNodeType *ntype)
int attribute_domain_size(eAttrDomain domain) const
std::optional< blender::bke::MutableAttributeAccessor > attributes_for_write() final
std::optional< blender::bke::AttributeAccessor > attributes() const final
ItemIterator items() const
SyclQueue void void * src
static int domain_num(const CurvesGeometry &curves, const eAttrDomain domain)
static void node_geo_exec(GeoNodeExecParams params)
static void node_declare(NodeDeclarationBuilder &b)
static void geometry_set_points_to_vertices(GeometrySet &geometry_set, Field< bool > &selection_field)
static const pxr::TfToken b("b", pxr::TfToken::Immortal)
void register_node_type_geo_points_to_vertices()
void geo_node_type_base(bNodeType *ntype, int type, const char *name, short nclass)
void replace_mesh(Mesh *mesh, GeometryOwnershipType ownership=GeometryOwnershipType::Owned)
GeometryComponent & get_component_for_write(GeometryComponentType component_type)
void keep_only_during_modify(const blender::Span< GeometryComponentType > component_types)
const GeometryComponent * get_component_for_read(GeometryComponentType component_type) const
void gather_attributes_for_propagation(blender::Span< GeometryComponentType > component_types, GeometryComponentType dst_component_type, bool include_instances, blender::Map< blender::bke::AttributeIDRef, blender::bke::AttributeKind > &r_attributes) const
void modify_geometry_sets(ForeachSubGeometryCallback callback)
void remove_geometry_during_modify()
NodeGeometryExecFunction geometry_node_execute
NodeDeclareFunction declare