# Enhance FreeDrawing class with polyline length management · dara/icarus

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

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

Visibility: public

Requested revision: 3a2fd4a293aabc65f83aed41f2d0de1923c85f00

Requested commit: 3a2fd4a293aabc65f83aed41f2d0de1923c85f00

Commit: 3a2fd4a293aabc65f83aed41f2d0de1923c85f00

Tree: 393e78ed71f8c34c27d899444ef4b4a24fff0df7

Author: Dara Adedeji

Committer: Dara Adedeji

## Message

```
Enhance FreeDrawing class with polyline length management

- Introduced cachedPolylineLengthUnits to optimize polyline length calculations.
- Added methods to append points and replace point lists, ensuring accurate length updates.
- Updated DrawingProvider to utilize new methods for managing drawing points and recalculating lengths.
- Refactored drawing calculations in the painter to leverage cached polyline lengths for improved performance.

```

## Parents

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

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