points, tolerance and check first and last
Points in the array without consecutive duplicates
Creates a 3D point from X, Y, Z coordinates. Example: x=10, y=5, z=3 → [10,5,3]
xyz information
point 3d
Creates a 2D point from X, Y coordinates. Example: x=10, y=5 → [10,5]
xy information
point 3d
Creates logarithmic spiral points using golden angle or custom widening factor. Generates natural spiral patterns common in nature (sunflower, nautilus shell). Example: numberPoints=100, radius=10, phi=1.618 → 100 points forming outward spiral
Spiral information
Specified number of points in the array along the spiral
Creates hexagonal grid center points on XY plane (honeycomb pattern). Grid size controlled by number of hexagons, not width/height. Example: radiusHexagon=1, nrHexagonsX=3, nrHexagonsY=3 → 9 hex centers in grid pattern
Information about hexagon and the grid
Points in the array on the grid
Creates hexagonal grid scaled to fit within specified width/height bounds (auto-calculates hex size). Returns center points and hex vertices. Supports pointy-top or flat-top orientation. Example: width=10, height=10, nrHexagonsInHeight=3 → hex grid filling 10×10 area with 3 rows
Information about the desired grid dimensions and hexagon counts.
An object containing the array of center points and an array of hexagon vertex arrays.
Calculates normal vector from three points using cross product (perpendicular to plane). Example: p1=[0,0,0], p2=[1,0,0], p3=[0,1,0] → [0,0,1] (pointing up from XY plane)
Three points and the reverse normal flag
Normal vector
Calculates axis-aligned bounding box containing all points (min, max, center, width, height, length). Example: points=[[0,0,0], [10,5,3]] → {min:[0,0,0], max:[10,5,3], center:[5,2.5,1.5], width:10, height:5, length:3}
Bounding box of points
Calculates distance to the nearest point in a collection. Example: point=[0,0,0], points=[[5,0,0], [10,0,0], [3,0,0]] → 3 (distance to [3,0,0])
Point from which to measure and points to measure the distance against
Distance to closest point
Finds array index of the nearest point in a collection (1-based index, not 0-based). Example: point=[0,0,0], points=[[5,0,0], [10,0,0], [3,0,0]] → 3 (index of [3,0,0])
Point from which to find the index in a collection of points
Closest point index
Finds the nearest point in a collection to a reference point. Example: point=[0,0,0], points=[[5,0,0], [10,0,0], [3,0,0]] → [3,0,0]
Point and points collection to find the closest point in
Closest point
Calculates the maximum possible fillet radius at a corner formed by two line segments sharing an endpoint (C), such that the fillet arc is tangent to both segments and lies entirely within them.
three points and the tolerance
the maximum fillet radius
Calculates the maximum possible fillet radius at a corner C, such that the fillet arc is tangent to both segments (P1-C, P2-C) and the tangent points lie within the first half of each segment (measured from C).
three points and the tolerance
the maximum fillet radius
Calculates the maximum possible fillet radius at each corner of a polyline formed by formed by a series of points. The fillet radius is calculated for each internal corner and optionally for the closing corners if the polyline is closed.
Points, checkLastWithFirst flag, and tolerance
Array of maximum fillet radii for each corner
Calculates the single safest maximum fillet radius that can be applied uniformly to all corners of collection of points, based on the 'half-line' constraint. This is determined by finding the minimum of the maximum possible fillet radii calculated for each individual corner.
Defines the points, whether it's closed, and an optional tolerance.
The smallest value from the results of pointsMaxFilletsHalfLine. Returns 0 if the polyline has fewer than 3 points or if any calculated maximum radius is 0.
Calculates Euclidean distance between two points. Example: start=[0,0,0], end=[3,4,0] → 5 (using Pythagorean theorem: √(3²+4²))
Coordinates of start and end points
Distance
Calculates distances from a start point to multiple end points. Example: start=[0,0,0], endPoints=[[3,0,0], [0,4,0], [5,0,0]] → [3, 4, 5]
Coordinates of start and end points
Distances
Checks if two points are approximately equal within tolerance (distance-based comparison). Example: point1=[1.0000001, 2.0, 3.0], point2=[1.0, 2.0, 3.0], tolerance=1e-6 → true
Two points and the tolerance
true if the points are almost equal
Applies transformation matrix to a single point (rotates, scales, or translates). Example: point=[0,0,0] with translation [5,5,0] → [5,5,0]
Contains a point and the transformations to apply
Transformed point
Applies same transformation matrix to multiple points (batch transform). Example: 5 points with rotation 90° → all 5 points rotated together
Contains points and the transformations to apply
Transformed points
Applies different transformation matrices to corresponding points (one transform per point). Arrays must have equal length. Example: 3 points with 3 different translations → each point moved independently
Contains points and the transformations to apply
Transformed points
Moves multiple points by a translation vector (same offset for all points). Example: points=[[0,0,0], [1,0,0]], translation=[5,5,0] → [[5,5,0], [6,5,0]]
Contains points and the translation vector
Translated points
Moves multiple points by corresponding translation vectors (one vector per point). Arrays must have equal length. Example: 3 points with 3 different vectors → each point moved by its corresponding vector
Contains points and the translation vector
Translated points
Moves multiple points by separate X, Y, Z values (convenience method for translation). Example: points=[[0,0,0]], x=10, y=5, z=0 → [[10,5,0]]
Contains points and the translation in x y and z
Translated points
Scales multiple points around a center point with different factors per axis. Example: points=[[10,0,0]], center=[5,0,0], scaleXyz=[2,1,1] → [[15,0,0]] (doubles X distance from center)
Contains points, center point and scale factors
Scaled points
Stretches multiple points along a direction from a center point (directional scaling). Example: points=[[10,0,0]], center=[0,0,0], direction=[1,0,0], scale=2 → [[20,0,0]]
Contains points, center point, direction and scale factor
Stretched points
Rotates multiple points around a center point along a custom axis. Example: points=[[10,0,0]], center=[0,0,0], axis=[0,1,0], angle=90° → [[0,0,-10]]
Contains points, axis, center point and angle of rotation
Rotated points
Duplicates a point N times (creates array with N copies of the same point). Example: point=[5,5,0], amountOfPoints=3 → [[5,5,0], [5,5,0], [5,5,0]]
The point to be multiplied and the amount of points to create
Distance
Removes consecutive duplicate points from array within tolerance. Example: [[0,0,0], [0,0,0], [1,0,0], [1,0,0], [2,0,0]] → [[0,0,0], [1,0,0], [2,0,0]]