Class Polygon: group Math pts: Vec2[] transform(m: Mat23, s?: Shape) => Polygon bbox() => Rect area() => number clone() => Polygon collides(shape: ShapeType | Vec2) => boolean contains(point: Vec2) => boolean raycast(origin: Vec2, direction: Vec2) => RaycastResult random() => Vec2 cut(a: Vec2, b: Vec2, srcUv?: Vec2[], dstUv?: [Vec2[], Vec2[]]) => [Polygon | null, Polygon | null]