-
-
Notifications
You must be signed in to change notification settings - Fork 893
Closed
Copy link
Labels
P: 3 (low)(Default priority for feature requests)(Default priority for feature requests)
Description
What do you want implemented?
The current integration of polylabel is not very well performance optimized. By implementing our own port of polylabel, we can:
- have better performance
- decrease our dependance on 3rd party packages
What other alternatives are available?
No response
Can you provide any other information?
Current usage of the polylabel package:
LatLng _computePolylabel(List<LatLng> points) {
final labelPosition = polylabel(
[
List<math.Point>.generate(points.length,
(i) => math.Point(points[i].longitude, points[i].latitude)),
],
// "precision" is a bit of a misnomer. It's a threshold for when to stop
// dividing-and-conquering the polygon in the hopes of finding a better
// point with more distance to the polygon's outline. It's given in
// point-units, i.e. degrees here. A bigger number means less precision,
// i.e. cheaper at the expense off less optimal label placement.
precision: 0.000001,
);
return LatLng(
labelPosition.point.y.toDouble(),
labelPosition.point.x.toDouble(),
);
}Severity
Minimum: Not required for my use
Metadata
Metadata
Assignees
Labels
P: 3 (low)(Default priority for feature requests)(Default priority for feature requests)