Skip to main content

vScriptValFrustum

Generate points on a cone or truncated cone along the Z axis with separate bottom and top radii.

BeginnerMograph / ScriptValScriptValArrayJSON
vScriptValFrustum node

vScriptValFrustum has no input and outputs an array of XYZ points on a frustum centered on the origin with its axis along Z. Bottom Radius and Top Radius set the taper, and Include Caps adds rings on both ends.

Parameters​

ParameterTypeDefaultDescription
Bottom RadiusFloat0.2Radius of the ring at Z = -Height / 2. Minimum 0, default 0.2.
Top RadiusFloat0.1Radius of the ring at Z = +Height / 2. Minimum 0, default 0.1.
HeightFloat0.5Length along Z. Minimum 0.001, default 0.5.
Radial SegmentsInteger24Number of points around the axis in each ring. Clamped to 3 or more, default 24.
Height SegmentsInteger8Number of steps along the height, which gives this value plus one side rings. Clamped to 1 or more, default 8.
+2 more parameters
ParameterTypeDefaultDescription
Include CapsInteger1When on, adds concentric rings to the bottom and top ends. Default on.
Cap RingsInteger4Number of steps from the axis to the rim of each cap. Clamped to 1 or more, default 4. Used only when Include Caps is on.
Read the full description

The side points form Height Segments + 1 rings from Z = -Height / 2 to Z = +Height / 2. The ring radius changes in equal steps from Bottom Radius to Top Radius. Each ring has Radial Segments points at X = radius * cos a and Y = radius * sin a, where a starts at 0 and advances by 360 / Radial Segments degrees.

With Include Caps on, the node adds Cap Rings + 1 rings at each end. The radius of cap ring k is the end radius * k / Cap Rings, so each cap runs from a single point on the axis to a ring at the full end radius. The last cap ring lies at the same position as the first or last side ring, so those points appear twice.

A ring whose radius is 0 is written as one point on the axis instead of Radial Segments overlapping points. A Top Radius of 0 therefore gives a cone with a single apex point. With the defaults (Bottom Radius 0.2, Top Radius 0.1, Height 0.5, 24 radial segments, 8 height segments, caps on with 4 cap rings) the node outputs 216 side points and 194 cap points, 410 in total.

Radial Segments is clamped to 3 or more, Height Segments and Cap Rings to 1 or more, and Height to 0.001 or more. The radii are clamped to 0 or more. The output contains points only, with no edges or faces.

Example Connections​

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