Skip to main content

vScriptValGridPolar

Generate points on concentric rings with a set number of rings, points per ring, spacing and sweep angle.

BeginnerMograph / ScriptValScriptValArrayJSON
vScriptValGridPolar node

vScriptValGridPolar has no input and outputs an array of XYZ points arranged on concentric rings around the Z axis. Number of Rings and Points per Ring set the point count.

Parameters​

ParameterTypeDefaultDescription
Number of RingsInteger5Number of concentric rings. Minimum 1, default 5.
Points per RingInteger12Number of points on each ring. Minimum 1, default 12.
Inner RadiusFloat0.5Radius of the first ring. Minimum 0, default 0.5.
Ring SpacingFloat0.5Radius added for each further ring. Minimum 0, default 0.5.
Start Angle (deg)Float0Angle of the first point on each ring, in degrees. Default 0.
+3 more parameters
ParameterTypeDefaultDescription
Sweep Angle (deg)Float360Angle covered by the points on each ring, in degrees. Range 0 to 360, default 360.
Z Offset per RingFloat0Z distance added for each further ring. Default 0.
Base ZFloat0Z position of the first ring. Default 0.
Read the full description

Ring r (counting from 0) has the radius Inner Radius + r * Ring Spacing and sits at Z = Base Z + r * Z Offset per Ring. Point i on a ring is at the angle Start Angle + (i / Points per Ring) * Sweep Angle, with X = radius * cos(angle) and Y = radius * sin(angle). The output holds Number of Rings * Points per Ring points, ring by ring.

With the defaults (5 rings, 12 points per ring, Inner Radius 0.5, Ring Spacing 0.5, Start Angle 0, Sweep Angle 360, Z Offset 0, Base Z 0) the node outputs 60 points on rings with radii 0.5, 1.0, 1.5, 2.0 and 2.5, all in the Z = 0 plane.

The angle step is the sweep divided by Points per Ring, not by Points per Ring - 1. A 360 degree sweep therefore does not repeat the first point, and a smaller sweep ends one step short of the sweep angle. Setting Z Offset per Ring to a value other than 0 stacks the rings along Z and gives a cone or a stepped spiral surface.

Number of Rings and Points per Ring are used as entered, with a minimum of 1 set on the controls. Angles are in degrees. Inner Radius of 0 puts every point of the first ring on the origin.

Example Connections​

vScriptValGridPolar.Output -> vScriptValCameraProjection.ArrayA
vScriptValCameraProjection.Output -> vScriptValShapeRender.ArrayPoint
Background.Output -> vScriptValShapeRender.Input