User Geometry
UserGeometry contains all of the data relating to the location and motion of the user. It's aim is to reduces the number of arguments to many of the API calls and to concentrate some of the logic around heading choice.
Parameters
is the current location of the user from the location provider
is the direction in which the phone is pointing
is the direction in which the phone is moving
is the direction in which the head tracking is pointing (not currently implemented)
is the distance in which the user can see, used when searching for POI
is the speed of the user (currently straight from the location provider)
is the Way that has been map matched to the location
os the location that has been map matched to the location, it will be a point on the mapMatchedWay
is the location of any current audio beacon. This affects various callouts which is why it's a property of the UserGeometry class.
is the method used to calculate the heading
is true if the user is in StreetPreview mode
The heading prioritization comes from iOS - see https://github.com/Scottish-Tech-Army/Soundscape-Android/issues/364
collection - used for calculating callouts, two possibilities: course (travel), user (head), device (phone), or user (head), device (phone), course (travel)
presentation - user for audio positioning: user (head), course (travel), device (phone)
Constructors
Properties
Functions
getTriggerRange returns the distance if a POI is still in proximity after a callout
getSearchDistance returns the distance to use when searching for POIs
getTriggerRange returns the distance to use when detecting POIs to call out