Skip to content

Path2D

Not yet Class Other

Represents a 2D cubic spline path that renders a stroked curve under any GuiObject.

Not implemented yet

This class exists in the current Roblox API but is not implemented in Nova yet. Scripts that reference it will fail at runtime.

0 Nova members · 29 modern Roblox members not implemented yet

Description

Path2D is a UI instance that represents a 2D spline. It can be placed under any GuiObject and be edited directly in the viewport using built‑in tooling. Path2D stores control points and exposes methods to sample positions along the curve, enabling curved UI layouts, path‑based animations, and interactive tools like graph editors and visual effects.

See the 2D paths guide for more information and usage examples.

Inheritance

Object → Instance → GuiBase → Path2D

Properties

Member Signature Summary
Closed Closed: bool Connects the first and last control points when enabled.
Color3 Color3: Color3 Determines the color of the Path2D.
PropertiesSerialize PropertiesSerialize: BinaryString —
SelectedControlPoint SelectedControlPoint: int Index of the currently selected Path2DControlPoint.
SelectedControlPointData SelectedControlPointData: Path2DControlPoint Path2DControlPoint data type representing the currently selected control point.
Thickness Thickness: float Determines how thick the Path2D path is.
Transparency Transparency: float —
Visible Visible: bool Determines if the Path2D path is rendered or not.
ZIndex ZIndex: int Determines the order in which a Path2D path renders relative to other GUIs.

Methods

Member Signature Summary
GetBoundingRect Path2D:GetBoundingRect(): Rect Returns the bounding size for the Path2D.
GetControlPoint Path2D:GetControlPoint(index: int): Path2DControlPoint Returns the Path2DControlPoint for a given index.
GetControlPoints Path2D:GetControlPoints(): Array Returns all the Path2DControlPoints for the Path2D.
GetLength Path2D:GetLength(): float Returns the length of the Path2D.
GetMaxControlPoints Path2D:GetMaxControlPoints(): int Returns the maximum allowed number of control points.
GetPositionOnCurve Path2D:GetPositionOnCurve(t: float): UDim2 Returns the position at a given value in parameter space.
GetPositionOnCurveArcLength Path2D:GetPositionOnCurveArcLength(t: float): UDim2 Returns the position at a given value in arc length space.
GetSegmentCount Path2D:GetSegmentCount(): int —
GetTangentOnCurve Path2D:GetTangentOnCurve(t: float): Vector2 Returns the tangent at a given value in parameter space.
GetTangentOnCurveArcLength Path2D:GetTangentOnCurveArcLength(t: float): Vector2 Returns the tangent at a given value in arc length space.
InsertControlPoint Path2D:InsertControlPoint(index: int, point: Path2DControlPoint): null Inserts a new control point at a given index.
RemoveControlPoint Path2D:RemoveControlPoint(index: int): null Removes a control at the given index.
SetControlPoints Path2D:SetControlPoints(controlPoints: Array): null Sets all the control points to the specified array, replacing all existing points with new ones.
UpdateControlPoint Path2D:UpdateControlPoint(index: int, point: Path2DControlPoint): null Updates a control point at the given index.

Events

Member Signature Summary
ControlPointChanged ControlPointChanged() Fires any time control points change.

Roblox reference: Path2D

Generated from Nova's API dump and Roblox creator-docs. Nova-only members come from the engine's reflection metadata.