Smart size

Rescales geometry while preserving features within set zones.


Inputs

  • geometry

    • Accepts a single geometry connection (unless the SHIFT key is held).
  • axis

    • Sets the axis in which input primitives are scaled. This can be x, y, or z.
  • size

    • The size in which input primitives are scaled to.
  • reset size

    • Resets the size input back to the input primitives original size.
  • scale around

    • Sets the bounds which input primitives are scaled around. This can be min, center, and max.
  • lower lock zone

    • The lower lock zone coordinate (0 to 1) in which input primitive features are preserved.
  • upper lock zone

    • The upper lock zone coordinate (0 to 1) in which input primitive features are preserved.
  • mask

    • A list of boolean values that defines which input primitive points are scaled. If empty, all input primitive points will be scaled.

Outputs

  • geometry

    • Output primitives.
  • points

    • The list of points of the output primitives.
  • points.x

    • The list of x values of the points of the output primitives.
  • points.y

    • The list of y values of the points of the output primitives.
  • points.z

    • The list of z values of the points of the output primitives.

Note(s)

  • The scaling operation of the node works by only scaling the parts of the input primitives that are not within the range as defined by the upper and lower lock zones. The parts of the input geometry that are outside of the specified range will have their features preserved.

  • The lock zones are specified as a percentage (0 to 1) of the input primitives bounds. The lower lock zone is taken from the minimum bounds of the axis specified by the axis input, whereas the upper lock zone is taken from the maximum bounds.

    • Therefore the sum of both the upper and lower lock zones cannot be greater or equal to 1 so that these zones do not overlap.
  • Other names for this node include: SmartSize.

Example(s)