Polygon
import { Polygon } from "@pibbl/core";Polygon uses PolygonProps and PolygonStyle. coords is a finite numeric
pair list; three or more points form one closed outline, and shorter lists are
empty geometry. It rejects children and supports shared rounded-corner style.
<Polygon style={{ coords: [ [20, 90], [70, 12], [130, 90], ], fill: "#f59e0b", }}/>See the Polygon live example.
API details from source
Section titled “API details from source”
Describes a polygon primitive for JSX or createElement authoring.
Polygon: PibblPrimitiveComponent<PolygonProps, PrimitiveInput<PolygonProps, PolygonStyle>>Related API: Polygon, PibblPrimitiveComponent, PolygonProps, PrimitiveInput, PolygonStyle.
Parameters
Section titled “Parameters”props— Authored component inputs, supplied through JSX or createElement. See the linked props and style types.
Throws
Section titled “Throws”When called directly; Pibbl mounts this component through JSX or createElement.
See also
Section titled “See also”View source — packages/core/src/lib/components/polygon.ts:122
Implementation guidance for agents
Section titled “Implementation guidance for agents”Read the Drawing, layout, and effects companion for ownership, adaptation, failure modes, and verification. Agent start provides the version-selection workflow.
Complete minimal example
Section titled “Complete minimal example”Compile this TSX module with jsx: "react-jsx" and jsxImportSource: "@pibbl/core", then load it from a browser entry point after the document body exists. It creates and mounts one canvas; dispose the controller before removing or replacing that canvas. The interactive study linked below adds controls beyond this minimal use case.
/** @jsxImportSource @pibbl/core */import { pibbl, Polygon } from '@pibbl/core';
const canvas = document.createElement('canvas');canvas.width = 320;canvas.height = 240;document.body.append(canvas);
const controller = pibbl(canvas, (<Polygon style={{ coords: [ [20, 90], [70, 12], [130, 90], ], fill: "#f59e0b", }}/>));
window.addEventListener('pagehide', () => controller.dispose(), { once: true });Complete minimal examples
Section titled “Complete minimal examples”- Polygon marks: Draw a rounded triangle, regular hexagon, and five-point star. Plain source
Interactive examples
Section titled “Interactive examples”Documentation version
Section titled “Documentation version”Documentation built with @pibbl/core 0.0.2, revision 2dccb19. ALPHA — NOT FOR PRODUCTION USE.