PathData is an indexed collection of PathCommand objects.
Both Path and PathData behave like arrays of commands and support iteration via ipairs.
Each entry is a PathCommand describing one segment or action in the path.
Returns the number of commands in the path.
Returns a ContourMeasure for the first contour in the path. A contour is
a sequence of path segments between moveTo operations. Use the ‘next’
property on the returned ContourMeasure to iterate through subsequent
contours. Returns nil if the path has no contours.