Skip to content

Type Alias: GeometryCommand ​

GeometryCommand = { cmd: "moveTo"; x: number; y: number; } | { cmd: "lnTo"; x: number; y: number; } | { cmd: "cubicBezTo"; x: number; x1: number; x2: number; y: number; y1: number; y2: number; } | { cmd: "quadBezTo"; x: number; x1: number; y: number; y1: number; } | { cmd: "arcTo"; hR: number; stAng: number; swAng: number; wR: number; } | { cmd: "close"; }

One segment of a custom-geometry path (a:path), as read from a shape. The command verbs mirror the write-side GeometryPoint DSL (src/types/) so a consumer can map a GeometryCommand[] to GeometryPoint[] one-to-one.

Coordinates (x/y/x1…) are raw path-unit integers in the path's own 0..w / 0..h space (see CustomGeometryPath.w); they are not EMU and must be scaled by the consumer against the shape's box. arcTo angles are in degrees (the raw 60000ths-of-a-degree values divided by 60000), matching the write DSL's degree input.