-
Notifications
You must be signed in to change notification settings - Fork 991
Documentation updates for v8 #2995
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
Conversation
bratter
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Couple of thoughts on the precision topic. Don't feel well equipped to comment on the versioning question given my use cases, but seems reasonable.
README.md
Outdated
|
|
||
| ## Precision | ||
|
|
||
| Although we make a reasonable effort for accuracy in our implementations, we are ultimately limited by the fact that we are handling GeoJSON data. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I would always use "precision" rather than accuracy given that the two concepts are subtly different.
README.md
Outdated
| Although we make a reasonable effort for accuracy in our implementations, we are ultimately limited by the fact that we are handling GeoJSON data. | ||
| For lots of consumer devices, GPS accuracy is within a few meters of the actual point. When using latitude and longitude, 6 digits after the decimal | ||
| works out to an [error around 10cm](https://datatracker.ietf.org/doc/html/rfc7946#section-11.2). Although libraries exist to provide arbitrary | ||
| precision math, we try to use JavaScript's built in numeric type (64 bit floating point) for performance reasons. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Consider "we use JavaScript's built in types for performance reasons."
I also wonder if we could add a suggestion along the lines of: "Where operations don't depend directly on lng/lat coordinates, it is often possible to increase the effective precision on small shapes by first transforming to a zoomed in projection, running an operation, then re-projecting to lng/lat." i.e., help people understand that there are alternatives. Just a thought.
|
We should also make it clear that we may bring in libraries that also need to be handled. Interestingly the first candidate here would be clipper2-ts, which can't really safely be polyfilled with the BigInt syntax. |
Based on how things are going with v7, I'd like to make several policy changes when we finally make the next major release. These changes should hopefully let us ship new code without being quite so restricted by compatibility demands.
Specifically:
This is intended as a starting point for all of the wording, happy to receive feedback and make this better.
cc @bratter