1 package net.systemeD.halcyon.connection {
5 * A marker is a generic entity that can be used for representing non-Node point features.
6 * For example, it can be used for displaying bug reports or waypoints on VectorBackground layers
8 public class Marker extends Entity {
9 private var _lat:Number;
10 private var _latproj:Number;
11 private var _lon:Number;
13 public function Marker(id:Number, version:uint, tags:Object, loaded:Boolean, lat:Number, lon:Number) {
14 super(id, version, tags, loaded, uid, timestamp);
16 this._latproj = lat2latp(lat);
20 public function get lat():Number {
24 public function get latp():Number {
28 public function get lon():Number {
32 public static function lat2latp(lat:Number):Number {
33 return 180/Math.PI * Math.log(Math.tan(Math.PI/4+lat*(Math.PI/180)/2));
36 public static function latp2lat(a:Number):Number {
37 return 180/Math.PI * (2 * Math.atan(Math.exp(a*Math.PI/180)) - Math.PI/2);
40 public override function toString():String {
41 return "Marker("+id+"@"+version+"): "+lat+","+lon+" "+getTagList();
44 public override function getType():String {