45 evaluator.
add(relative_);
52 StringRef side = left_ ?
"handle_left" :
"handle_right";
54 side, AttrDomain::Point, {0, 0, 0});
59 for (
const int i : positions.index_range()) {
60 output[i] = handles[i] - positions[i];
62 return attributes.adapt_domain<
float3>(
65 return attributes.adapt_domain<
float3>(
handles, AttrDomain::Point, domain);
69 for (
const int i : positions.index_range()) {
71 output[i] = handles[i] - positions[i];
74 output[i] = handles[i];
77 return attributes.adapt_domain<
float3>(