# Build cone clip paths as one polygon each · dara/icarus

[View on GitCafe](https://git.cafe/dara/icarus/commit/11da90dabda4ab38adb1604b6632ab5df2680c56)

Repository: [dara/icarus](https://git.cafe/dara/icarus)

Visibility: public

Requested revision: 11da90dabda4ab38adb1604b6632ab5df2680c56

Requested commit: 11da90dabda4ab38adb1604b6632ab5df2680c56

Commit: 11da90dabda4ab38adb1604b6632ab5df2680c56

Tree: 7298899a2d9880afe0d595c1ab53c061b69883ae

Author: Dara Adedeji

Committer: Dara Adedeji

## Message

```
Build cone clip paths as one polygon each

Flutter's web engine drops every built path at the end of a frame, so a
path made of lineTo calls is rebuilt point by point, one call into
CanvasKit each, every frame it is drawn. The map's playable-area clip
has thousands of points, which cost about 3 ms a frame while a cone was
dragged. addPolygon hands each ring over in one call; the shape is the
same, and screenshots of all four test maps match main pixel for pixel.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>

```

## Parents

- [0adefefe20210eaaff8bcd4f027d986cec9874a3](https://git.cafe/dara/icarus/commit/0adefefe20210eaaff8bcd4f027d986cec9874a3?format=markdown)

[Source at this commit](https://git.cafe/dara/icarus/tree/11da90dabda4ab38adb1604b6632ab5df2680c56?format=markdown)
