Skip to content

Draw coordinate precision as a narrow rectangle#122

Open
windytan wants to merge 2 commits intoliamcottle:masterfrom
windytan:windytan/precision-polygons
Open

Draw coordinate precision as a narrow rectangle#122
windytan wants to merge 2 commits intoliamcottle:masterfrom
windytan:windytan/precision-polygons

Conversation

@windytan
Copy link
Copy Markdown

@windytan windytan commented Jan 8, 2026

This change renders the location precision areas as narrowed rectangles instead of circles to reflect their broadcasted precision, and labels "Position Precision" as "Latitude Precision".

Currently the reduced-precision coordinates are drawn as symmetric circles (like in most apps). This gives the user an exaggerated picture of the actual privacy level of published positions; in reality, the truncated coordinate puts the user in an area around 36% smaller.

The firmware truncates outgoing positions into a binary partitioned grid (PositionModule.cpp :116). When converted to metres, the grid rectangles get squashed in the East-West direction. This is because on the ground, 1 geographic degree of longitude is only around half the length of 1 degree of latitude, while the truncation uses the same number of bits for both.

Situation where this could make a difference:
coordinates

This change renders the location precision areas as narrowed rectangles instead of circles to better reflect their broadcasted precision, and labels "Location Precision" as "Latitude Precision".

Currently the imprecise coordinates are drawn as symmetric circles. This gives the user an exaggerated picture of the actual privacy level of published positions; in reality, the truncated coordinate puts the user in an area around 36% smaller.

The firmware truncates outgoing positions into a binary partitioned grid (PositionModule.cpp :116). When converted to metres, the grid rectangles get squashed in the East-West direction. This is because on the ground, 1 geographic degree of longitude is only around half the length of 1 degree of latitude, while the truncation uses the same number of bits for both.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant