My favorites | Sign in
Project Home Downloads Wiki Issues Source
READ-ONLY: This project has been archived. For more information see this post.
Search
for
MarkerPlacement  

Phase-Design, Platform-Android
Updated Dec 22, 2010 by mixare.org

#current state of the placement of markers on the screen

Introduction

There are three marker types (categories) in mixare:

  • Normal markers (POIs)
  • Navigation markers (NAVs)
  • Social media markers (BUBs)

Normal Markers

TODO

Navigation markers

At the moment the navigation marker are positioned by manipulating the vector that displays them on screen. This will be changed by altering the height(altitude) instead, the less we interfere with the locationvectors the better. TODO

Social media markers

The socialmedia markers appears as they are floating in the ski. Their position is calculated from the actual latitude+longitude by setting the altitude to a certain height. This height will be explained in the following paragraphs.

The intended behavior is that the social media marker are never placed below roughly 20 degrees (0.35 radians) from the horizon. The more a social media is far, the bigger will be its altitude. This helps the user to read the closest messages withouth having to point the phone too much high. A status message being post at <Radius> distance (where <Radius> is the maximum range set by the user to display POIs) it will be displayed at roughly 45 degrees (0.85 radians).

Social media markers will span across +20 and +45 degrees above the horizon.

The altitude is therefore made of three components:

double altitude = curGPSFix.getAltitude()+Math.sin(0.35)*distance+Math.sin(0.4)*(distance/(MixView.dataView.getRadius()*1000f/distance));
  • curGPSFix.getAltitude() -> use current user's altitude, this sets the horizon as baseline
  • Math.sin(0.35)distance -> that's the altitude in meters of 20 degrees at the current marker's distance
  • Math.sin(0.4)(distance/(MixView.dataView.getRadius()1000f/distance)) -> this adds additional height to each marker, the more far one marker is, the higher it will be placed (distance is in meters, Radius in kilometers)
Powered by Google Project Hosting