Cleanup: Rename field input classes to match UI names

This commit is contained in:
Hans Goudey 2023-05-03 11:50:05 -04:00
parent 7f040099e3
commit d9a7f1285f
11 changed files with 26 additions and 27 deletions

View File

@ -115,14 +115,14 @@ void initialize_volume_component_from_points(GeoNodeExecParams &params,
openvdb::GridClass gridClass); openvdb::GridClass gridClass);
#endif #endif
class FieldAtIndexInput final : public bke::GeometryFieldInput { class EvaluateAtIndexInput final : public bke::GeometryFieldInput {
private: private:
Field<int> index_field_; Field<int> index_field_;
GField value_field_; GField value_field_;
eAttrDomain value_field_domain_; eAttrDomain value_field_domain_;
public: public:
FieldAtIndexInput(Field<int> index_field, GField value_field, eAttrDomain value_field_domain); EvaluateAtIndexInput(Field<int> index_field, GField value_field, eAttrDomain value_field_domain);
GVArray get_varray_for_context(const bke::GeometryFieldContext &context, GVArray get_varray_for_context(const bke::GeometryFieldContext &context,
const IndexMask mask) const final; const IndexMask mask) const final;

View File

@ -104,12 +104,12 @@ static void node_geo_exec(GeoNodeExecParams params)
if (params.output_is_required("Curve Index")) { if (params.output_is_required("Curve Index")) {
params.set_output( params.set_output(
"Curve Index", "Curve Index",
Field<int>(std::make_shared<FieldAtIndexInput>( Field<int>(std::make_shared<EvaluateAtIndexInput>(
point_index, Field<int>(std::make_shared<CurveOfPointInput>()), ATTR_DOMAIN_POINT))); point_index, Field<int>(std::make_shared<CurveOfPointInput>()), ATTR_DOMAIN_POINT)));
} }
if (params.output_is_required("Index in Curve")) { if (params.output_is_required("Index in Curve")) {
params.set_output("Index in Curve", params.set_output("Index in Curve",
Field<int>(std::make_shared<FieldAtIndexInput>( Field<int>(std::make_shared<EvaluateAtIndexInput>(
point_index, point_index,
Field<int>(std::make_shared<PointIndexInCurveInput>()), Field<int>(std::make_shared<PointIndexInCurveInput>()),
ATTR_DOMAIN_POINT))); ATTR_DOMAIN_POINT)));

View File

@ -230,7 +230,7 @@ static void node_geo_exec(GeoNodeExecParams params)
const Field<int> curve_index = params.extract_input<Field<int>>("Curve Index"); const Field<int> curve_index = params.extract_input<Field<int>>("Curve Index");
if (params.output_is_required("Total")) { if (params.output_is_required("Total")) {
params.set_output("Total", params.set_output("Total",
Field<int>(std::make_shared<FieldAtIndexInput>( Field<int>(std::make_shared<EvaluateAtIndexInput>(
curve_index, curve_index,
Field<int>(std::make_shared<CurvePointCountInput>()), Field<int>(std::make_shared<CurvePointCountInput>()),
ATTR_DOMAIN_CURVE))); ATTR_DOMAIN_CURVE)));

View File

@ -13,9 +13,9 @@
namespace blender::nodes { namespace blender::nodes {
FieldAtIndexInput::FieldAtIndexInput(Field<int> index_field, EvaluateAtIndexInput::EvaluateAtIndexInput(Field<int> index_field,
GField value_field, GField value_field,
eAttrDomain value_field_domain) eAttrDomain value_field_domain)
: bke::GeometryFieldInput(value_field.cpp_type(), "Evaluate at Index"), : bke::GeometryFieldInput(value_field.cpp_type(), "Evaluate at Index"),
index_field_(std::move(index_field)), index_field_(std::move(index_field)),
value_field_(std::move(value_field)), value_field_(std::move(value_field)),
@ -23,18 +23,17 @@ FieldAtIndexInput::FieldAtIndexInput(Field<int> index_field,
{ {
} }
GVArray FieldAtIndexInput::get_varray_for_context(const bke::GeometryFieldContext &context, GVArray EvaluateAtIndexInput::get_varray_for_context(const bke::GeometryFieldContext &context,
const IndexMask mask) const const IndexMask mask) const
{ {
const std::optional<AttributeAccessor> attributes = context.attributes(); const std::optional<AttributeAccessor> attributes = context.attributes();
if (!attributes) { if (!attributes) {
return {}; return {};
} }
const bke::GeometryFieldContext value_field_context{ const bke::GeometryFieldContext value_context{
context.geometry(), context.type(), value_field_domain_}; context.geometry(), context.type(), value_field_domain_};
FieldEvaluator value_evaluator{value_field_context, FieldEvaluator value_evaluator{value_context, attributes->domain_size(value_field_domain_)};
attributes->domain_size(value_field_domain_)};
value_evaluator.add(value_field_); value_evaluator.add(value_field_);
value_evaluator.evaluate(); value_evaluator.evaluate();
const GVArray &values = value_evaluator.get_evaluated(0); const GVArray &values = value_evaluator.get_evaluated(0);
@ -163,9 +162,9 @@ static void node_geo_exec(GeoNodeExecParams params)
using T = decltype(dummy); using T = decltype(dummy);
static const std::string identifier = "Value_" + identifier_suffix(data_type); static const std::string identifier = "Value_" + identifier_suffix(data_type);
Field<T> output_field{ Field<T> output_field{
std::make_shared<FieldAtIndexInput>(params.extract_input<Field<int>>("Index"), std::make_shared<EvaluateAtIndexInput>(params.extract_input<Field<int>>("Index"),
params.extract_input<Field<T>>(identifier), params.extract_input<Field<T>>(identifier),
domain)}; domain)};
params.set_output(identifier, std::move(output_field)); params.set_output(identifier, std::move(output_field));
}); });
} }

View File

@ -83,13 +83,13 @@ static void node_gather_link_searches(GatherLinkSearchOpParams &params)
} }
} }
class InterpolateDomain final : public bke::GeometryFieldInput { class EvaluateOnDomainInput final : public bke::GeometryFieldInput {
private: private:
GField src_field_; GField src_field_;
eAttrDomain src_domain_; eAttrDomain src_domain_;
public: public:
InterpolateDomain(GField field, eAttrDomain domain) EvaluateOnDomainInput(GField field, eAttrDomain domain)
: bke::GeometryFieldInput(field.cpp_type(), "Evaluate on Domain"), : bke::GeometryFieldInput(field.cpp_type(), "Evaluate on Domain"),
src_field_(std::move(field)), src_field_(std::move(field)),
src_domain_(domain) src_domain_(domain)
@ -153,7 +153,7 @@ static void node_geo_exec(GeoNodeExecParams params)
using T = decltype(dummy); using T = decltype(dummy);
static const std::string identifier = "Value_" + identifier_suffix(data_type); static const std::string identifier = "Value_" + identifier_suffix(data_type);
Field<T> src_field = params.extract_input<Field<T>>(identifier); Field<T> src_field = params.extract_input<Field<T>>(identifier);
Field<T> dst_field{std::make_shared<InterpolateDomain>(std::move(src_field), domain)}; Field<T> dst_field{std::make_shared<EvaluateOnDomainInput>(std::move(src_field), domain)};
params.set_output(identifier, std::move(dst_field)); params.set_output(identifier, std::move(dst_field));
}); });
} }

View File

@ -179,7 +179,7 @@ static void node_geo_exec(GeoNodeExecParams params)
const Field<int> face_index = params.extract_input<Field<int>>("Face Index"); const Field<int> face_index = params.extract_input<Field<int>>("Face Index");
if (params.output_is_required("Total")) { if (params.output_is_required("Total")) {
params.set_output("Total", params.set_output("Total",
Field<int>(std::make_shared<FieldAtIndexInput>( Field<int>(std::make_shared<EvaluateAtIndexInput>(
face_index, face_index,
Field<int>(std::make_shared<CornersOfFaceCountInput>()), Field<int>(std::make_shared<CornersOfFaceCountInput>()),
ATTR_DOMAIN_FACE))); ATTR_DOMAIN_FACE)));

View File

@ -204,7 +204,7 @@ static void node_geo_exec(GeoNodeExecParams params)
const Field<int> vert_index = params.extract_input<Field<int>>("Vertex Index"); const Field<int> vert_index = params.extract_input<Field<int>>("Vertex Index");
if (params.output_is_required("Total")) { if (params.output_is_required("Total")) {
params.set_output("Total", params.set_output("Total",
Field<int>(std::make_shared<FieldAtIndexInput>( Field<int>(std::make_shared<EvaluateAtIndexInput>(
vert_index, vert_index,
Field<int>(std::make_shared<CornersOfVertCountInput>()), Field<int>(std::make_shared<CornersOfVertCountInput>()),
ATTR_DOMAIN_POINT))); ATTR_DOMAIN_POINT)));

View File

@ -110,14 +110,14 @@ static void node_geo_exec(GeoNodeExecParams params)
const Field<int> corner_index = params.extract_input<Field<int>>("Corner Index"); const Field<int> corner_index = params.extract_input<Field<int>>("Corner Index");
if (params.output_is_required("Next Edge Index")) { if (params.output_is_required("Next Edge Index")) {
params.set_output("Next Edge Index", params.set_output("Next Edge Index",
Field<int>(std::make_shared<FieldAtIndexInput>( Field<int>(std::make_shared<EvaluateAtIndexInput>(
corner_index, corner_index,
Field<int>(std::make_shared<CornerNextEdgeFieldInput>()), Field<int>(std::make_shared<CornerNextEdgeFieldInput>()),
ATTR_DOMAIN_CORNER))); ATTR_DOMAIN_CORNER)));
} }
if (params.output_is_required("Previous Edge Index")) { if (params.output_is_required("Previous Edge Index")) {
params.set_output("Previous Edge Index", params.set_output("Previous Edge Index",
Field<int>(std::make_shared<FieldAtIndexInput>( Field<int>(std::make_shared<EvaluateAtIndexInput>(
corner_index, corner_index,
Field<int>(std::make_shared<CornerPreviousEdgeFieldInput>()), Field<int>(std::make_shared<CornerPreviousEdgeFieldInput>()),
ATTR_DOMAIN_CORNER))); ATTR_DOMAIN_CORNER)));

View File

@ -206,7 +206,7 @@ static void node_geo_exec(GeoNodeExecParams params)
const Field<int> vert_index = params.extract_input<Field<int>>("Vertex Index"); const Field<int> vert_index = params.extract_input<Field<int>>("Vertex Index");
if (params.output_is_required("Total")) { if (params.output_is_required("Total")) {
params.set_output("Total", params.set_output("Total",
Field<int>(std::make_shared<FieldAtIndexInput>( Field<int>(std::make_shared<EvaluateAtIndexInput>(
vert_index, vert_index,
Field<int>(std::make_shared<EdgesOfVertCountInput>()), Field<int>(std::make_shared<EdgesOfVertCountInput>()),
ATTR_DOMAIN_POINT))); ATTR_DOMAIN_POINT)));

View File

@ -96,14 +96,14 @@ static void node_geo_exec(GeoNodeExecParams params)
const Field<int> corner_index = params.extract_input<Field<int>>("Corner Index"); const Field<int> corner_index = params.extract_input<Field<int>>("Corner Index");
if (params.output_is_required("Face Index")) { if (params.output_is_required("Face Index")) {
params.set_output("Face Index", params.set_output("Face Index",
Field<int>(std::make_shared<FieldAtIndexInput>( Field<int>(std::make_shared<EvaluateAtIndexInput>(
corner_index, corner_index,
Field<int>(std::make_shared<CornerFaceIndexInput>()), Field<int>(std::make_shared<CornerFaceIndexInput>()),
ATTR_DOMAIN_CORNER))); ATTR_DOMAIN_CORNER)));
} }
if (params.output_is_required("Index in Face")) { if (params.output_is_required("Index in Face")) {
params.set_output("Index in Face", params.set_output("Index in Face",
Field<int>(std::make_shared<FieldAtIndexInput>( Field<int>(std::make_shared<EvaluateAtIndexInput>(
corner_index, corner_index,
Field<int>(std::make_shared<CornerIndexInFaceInput>()), Field<int>(std::make_shared<CornerIndexInFaceInput>()),
ATTR_DOMAIN_CORNER))); ATTR_DOMAIN_CORNER)));

View File

@ -58,7 +58,7 @@ class CornerVertFieldInput final : public bke::MeshFieldInput {
static void node_geo_exec(GeoNodeExecParams params) static void node_geo_exec(GeoNodeExecParams params)
{ {
params.set_output("Vertex Index", params.set_output("Vertex Index",
Field<int>(std::make_shared<FieldAtIndexInput>( Field<int>(std::make_shared<EvaluateAtIndexInput>(
params.extract_input<Field<int>>("Corner Index"), params.extract_input<Field<int>>("Corner Index"),
Field<int>(std::make_shared<CornerVertFieldInput>()), Field<int>(std::make_shared<CornerVertFieldInput>()),
ATTR_DOMAIN_CORNER))); ATTR_DOMAIN_CORNER)));