Ich zeig euch meinen AltitudeProfiler

  • Antworten:12
Hans Nosch
  • Forum-Beiträge: 65

21.03.2010, 12:16:36 via Website



Meine App ist nun im Großen und Ganzen fertig, so dass ich sie auch mal zeigen kann.
Sie dient dazu, Höhenprofile darzustellen. Die Idee war ganz einfach: Ich halte das Handy in eine Richtung, drücke auf einen Knopf und bekomme ein Höhenprofil über eine bestimmte Strecke. Klingt einfach, war es aber dann doch nicht. Zu meiner Überraschung musste ich feststellen, dass Google gar keine Höhendaten liefert! Und das war erst der Anfang.. Aber irgendwie konnten sie alle umgangen werden. Zu der einfachen Idee kamen noch weitere hinzu. Beispielsweise Höhendaten in Kreisen um mich herum darzustellen oder die Strecke des Profils direkt in der Karte zu zeichnen oder über die Kamera einen Anstieg zu schätzen usw. Jedenfalls ist das Ganze umfangreicher geworden, als zunächst gedacht.
Wer sich selbst ein Bild machen will:

https://www.nextpit.de/de/android/market/apps/app/de.schelwies.AltitudeProfiler/AltitudeProfiler

Über Feedback würde ich mich freuen. (je positiver desto mehr)
Die meisten Knöpfe muss man einmal ausprobieren, dann weiß man, was sie machen. Zu jedem Bildschirm lässt sich aber über die Menu-Taste auch ein Hinweis-Fenster einblenden, das die Darstellungen und Möglichkeiten erläutert.
Ich fasse es mal grob zusammen.
Der Hauptbildschirm zeigt folgende Daten und Knöpfe:



N: Richtung in Grad (0=360=Norden).
N?: Nadelabweichung (Deklination) Abweichung der Magnetnadel vom geogr. Nordpol.
/: Anstieg in Blickrichtung. 0°=wagerecht. Durch Auflegen auf eine Steigung lässt sich deren Anstieg bestimmen.
R: Drehung um die Achse in Blickrichtung.
-: Breitengrad des aktuellen oder in der Karte gewählten Ortes (Startpunkt), rot: kein GPS Signal, gelb: Startpunkt wird durch GPS bestimmt, grün: GPS aus (Startpunkt über Karte wählbar)
|: Längengrad des aktuellen oder in der Karte gewählten Ortes (Startpunkt)
H: Höhe des aktuellen Standorts aus dem GPS-Signal. Die GPS-Höhe ist gewöhnlich ungenau.
Durch Drücken der Köpfe (von oben links bis unten rechts) gelangt man zu den folgenden Bildschirmen:




Höhenprofil vom gewählten Start- zum Endpunkt. Mit dem Schieberegler können Punkte aus dem Diagramm in der Karte angefahren werden. Am besten eignet sich dafür der Trackball (sofern vorhanden). Der höchste und tiefste Punkt sind gekennzeichnet.
Das Profil zeigt übrigens den Weg von der Mensa in Ilmenau zum Kickelhahn.



Das Höhenprofil im Umkreis. Es werden dabei fünf konzentrische Kreise farblich dargestellt. Rote Segmente zeigen höhere Niveaus, grüne niedrigere. Der Abstand benachbarter Kreise zueinander beträgt 1/5 der eingestellten Entfernung. Hier sind nur kürzere Entfernungen sinnvoll (<4km). Das Profil dreht sich im Kompass mit.



Ein Diagramm der relativen Zeit, die benötigt wird, um die eingestellt Entfernung in die entsprechende Richtung zurückzulegen. Je stärker der Anstieg, desto mehr Zeit wird benötigt. Jede Ebene entspricht 1/5 der eingestellten Entfernung. Die längste Zeit wird für die Richtung benötigt, in der der äußere Kreis den Rand erreicht (100%). Alle anderen Zeitangaben sind relativ zu dieser angegeben. Hier sind nur kürzere Distanzen bis max. 4km sinnvoll.
Ich dachte eigentlich, dass es eine neue Idee von mir sei. Doch habe ich eine ähnlich Darstellung vor kurzem erst bei der Vorstellung eines Prototypen (Mercedes glaube ich) gesehen, da war auf diese Weise die Reichweite der Tankfüllung dargestellt.



Durch anvisieren des Ziels in der Mitte des Fadenkreuzes kann der Anstieg zu diesem Ziel abgeschätzt werden. Der Anstieg kann an der Skalierung in der Mitte oder unten links abgelesen werden. Er wird sowohl in Grad als auch als prozentualer Anstieg angegeben. Die Drehung um die Blickrichtung wird rechts unten ausgegeben. Der Wert in der Mitte gibt die aktuelle Blickrichtung an.



Eine Karte ermöglicht die Auswahl des Start oder Zielpunkts.

Folgendes passiert beim Drücken der Knöpfe:

(links unten) Der aktuelle Mittelpunkt der Karte wird als Startpunkt gewählt. Beim Drücken des Zurück-Knopfes wird dieser Punkt als Startpunkt übernommen, sofern GPS ausgeschaltet ist.

(links oben) Die aktuelle GPS-Position wird als Startpunkt gewählt und in der Mitte platziert. Voraussetzung dafür ist, dass GPS aktiviert wurde. Sofern noch kein Signal empfangen wurde erscheint „…“

(Mitte oben) Die Mitte der Karte fährt zum Startpunkt.

(rechts oben) Die Richtung und die Entfernung des Startpunkts zum Zielpunkt werden ausgegeben. Sobald die Karte mit dem Finger bewegt wird, wird der Zielpunkt auf die aktuelle Kartenmitte gelegt. Sollte der Zielpunkt nicht in der Kartenmitte sein (zum Beispiel nach dem Betätigen von Start) kann der Zielpunkt durch Drücken dieses Knopfs angefahren werden.

GPS wird aus- oder eingeschalten

Ein Höhenprofil wird vom Start- zum Endpunkt gezeichnet.



Einstellungen für GPS und Maßeinheiten.

Durch Drücke der menu-Taste erhält man zu jeder Seite Erläuterungen:





Gelöschter AccountManuel S.

Antworten
Jan S.
  • Forum-Beiträge: 670

21.03.2010, 12:47:28 via App

ich würde es ja gern testen aber es lässt sich mal wieder nichts aus dem market downloaden. heute Abend pobiere ich es noch mal.

— geändert am 21.03.2010, 12:48:15

Antworten
Gelöschter Account
  • Admin
  • Forum-Beiträge: 3.718

21.03.2010, 13:21:26 via Website

Hallo Hans,

vorerst einmal eine Gratulation für die von der Grafik und vom Design her sehr gelungene App.:)
Der Download und die Installation funktionierte einwandfrei.

Alle Anzeigen funktionieren tadellos - man muss halt wie du schon geschrieben hast einmal ein wenig probieren
um die ganzen Raffinessen dieser App zu entdecken....

Leider ist heute nicht der richtig Tag um die App mal ausführlich zu probieren :(

Regen :mad:

Aber was ich bis jetzt gesehen habe gefällt mir schon sehr gut - Großes Lob :)

Ich wünsche dir noch einen schönen Sonntag

Viele Grüße Manfred

Antworten
Cihan B.
  • Forum-Beiträge: 66

21.03.2010, 13:35:08 via Website

Wow vvom Design her echt klasse, aber selbst auf meinem Acer Liquid, der gerade nicht langsam ist, lief die Anwendung nicht gerade so flüssig. Zwar nicht ganz so träge, aber eben auch nicht flüssig, wenn man zwischen den Bildschirmen umschaltet.

Außerdem ist mir aufgefallen, dass auf dem Kamera-Bildschirm, die Zahlen Heading, Pitch & Roll sich etwas über halb der vorgesehenen Bereiches aufhalten. Ansonsten vom aussehen her echt gut gelungen, auch wenn ich nicht wüsste wofür ICH die Anwendung gebrauchen könnte.

Darf ich mall fragen, wie viele Stunden du in die Anwendung investiert hast?

Antworten
Hans Nosch
  • Forum-Beiträge: 65

21.03.2010, 14:23:59 via Website

vielen Dank für das feedback!

@ Manfred: dann wünsch ich dir Sonnenschein und 20° B)

@Cihan Bisher konnte ich nur G1, Magic und Milestone testen. Bei allen dreien war die Animation zwischen den screens kein Problem. Ich kann aber mal überlegen, ob ich eine Option zum Ausschalten der Anims einbaue. Der Versatz der Zahen in der Kamera-Ansicht ist vermutlich auf die abweichende Auflösung zurückzuführen. Da die Anzeige rund sein soll (und nicht verzerrt durch automatisches Skalieren) habe ich verschiedene Hintergründe dafür angelegt. Bei der HDPI-Variante habe ich mich für die milestone-Auflösung entschieden, was zur Folge hat, dass sie beim Liquid 4 Pixel verschoben ist. Die vielen Auflösungen machen es nicht gerade einfacher. Da das Nexus1 dieselbe Auflösung wie das Liquid hat, könnte man hier noch einen eigenen Screen anlegen...Die App wird dann aber noch größer.

Die Stunden habe ich nicht gezählt. Ich hab aber am 28.12. letzten Jahres angefangen und hauptsächlich am Wochenende daran gebastelt. Da ich vorher noch keinen Kontakt mit Java hatte, musste ich mich damit erst mal vertraut machen. Außerdem sahen de Anfänge der Grafiken noch ziemlich bescheiden aus, weshalb ich mich auch noch in incsape einarbeiten musste.

Antworten
Manuel S.
  • Forum-Beiträge: 138

22.03.2010, 20:17:04 via Website

hallo,

als erstes sehr interessante applikation muss ich schon sagen. momentan würde sie für mich keinen nutzen darstellen, wenn ich den vollen funktionsumfang begriffen habe. kann man damit denn das höhenprofil einer über z.b. google maps markierten strecke sehen? sehr interessant z.b. für fahrradfahrer.

wenn ja, wäre es perfekt für mich, wenn nicht sehr schade.

würde mich auf eine antwort freuen.

mfg
manuel

Antworten
Lars K.
  • Forum-Beiträge: 274

23.03.2010, 08:57:25 via Website

Wow. Ich kann nur den Hut ziehen. Da hast du wirklich eine tolle Anwendung geschrieben. Sowohl optisch als auch funktional. Zwar sind die diversen Buttons im ersten Moment nicht vollkommen selbst erklärend (ist glaube diesem Thema auch nicht möglich), doch nach kurzem "Reinfummeln" ist einem alles klar.

Ich habe einen "Verbesserungsvorschlag".
Bei Der Höhenprofildarstellung (also der von deinem dritten Screenshots), da fehlt mir persönlich die Darstellung der aktuellen Slider-Position. D.h. wenn man den Slider verschiebt sollte sich zum einem in der grafischen Darstellung ein Indikator (z.B. ein roter Strich) mit dem Slider mit bewegen. Zum anderen sollte man an dieser Stelle auch den entsprechenden Höhenwert angezeigt bekommen. Aktuell bewegt sich "nur" die Kartendarstellung, die Höhenangaben muss man anhand des Höhenprofils schätzen und der Sliderposition schätzen.

Viele Grüße
Lars

Antworten
Hans Nosch
  • Forum-Beiträge: 65

23.03.2010, 17:36:24 via Website

@Manuel
Du kannst eine Strecke in Google Maps markieren und dir das Profil dazu anzeigen lassen: In der Start-Ansicht auf Karte (2. Knopf unten ) drücken, dann bewegst Du die Karte bis zu deinem Startpunkt und drückst den Knopf links unten (da stehen die Koordinaten der Kartenmitte) Der rote Start-Pfeil müsste nun in die Kartenmitte springen. Dann kannst Du die Karte verschieben. Die Mitte der Karte ist jetzt dein Zielpunkt. Oben rechts siehst Du jetzt, wie weit Du vom Startpunkt weg bist und in welche Richtung Du dich bewegst. Wenn Du jetzt den runden Knopf mit dem angedeuteten Höhenprofil drückst, wird ein Profil von der Strecke gezeichnet.

@ Lars
der Schieberegler ist so angelegt, dass er genau die Breite des Diagramms besitzt. Somit korrespondiert er direkt damit. Eine Anzeige durch einen Strich, der mit dem Regler mitläuft, sollte prinzipiell möglich sein. Die Anzeige der aktuellen Höhe ist etwas schwieriger. Das hört sich jetzt komisch an, aber ich ziehe diese Daten garnicht. Bei der Dartstellung handelt es sich um eine png-Datei, die direkt in einen Image-View geladen wird. Das Problem dabei ist, dass keinerlei sonstige Daten mit geladen werden können. Nun wäre es möglich, die Daten in einer zweiten Anfrage zu laden. Dadurch würde der Ladevorgang doppelt so lang. Es dauert jetzt schon ziemlich lange. Selbst wenn ich nur einen Buchstaben ziehe, dauert es bei mir etwa 3-10 Sekunden, je nach Verbindung. Die Datenmenge scheint dabei nur eine untergeordnete Rolle zu spielen (die png dauert genauso lange). Rufe ich die Daten vom PC aus ab, dauert das keine halbe Sekunde. Ich hab keine Ahnung, weshalb das Telefon so langsam ist. Ich hoffe, ich finde dafür eine Lösung, denn dann könnte man sicher noch einiges mehr machen...

Antworten
Chris Sor
  • Forum-Beiträge: 141

23.03.2010, 17:51:48 via Website

Respekt, gute Arbeit.

Falls du noch mehr vor hast, ich kann dir ein paar Grafiken per Photoshop zaubern, und nein ich will kein Geld für xD
PS: (gilt auch für andere Entwickler mit vielversprechenden Projekten)

EDIT: in meiner Signatur kann man sich anschauen was ich bisher so gemacht hab in Sachen Photoshop/Cinema4D

— geändert am 23.03.2010, 17:54:37

Antworten
Hans Nosch
  • Forum-Beiträge: 65

26.03.2010, 11:09:23 via Website

Hey Chris, sieht ganz gut aus. Ich nehm dich beim Wort!
Hast Du schon Ideen?

Antworten
Chris Sor
  • Forum-Beiträge: 141

26.03.2010, 13:06:03 via Website

Ideen für das jetzige oder für ein neues Projekt ?
PM mich mal mit ICQ&MSN oder sowas für direkten Kontakt^^

Antworten
Lars K.
  • Forum-Beiträge: 274

26.03.2010, 13:13:45 via Website

Danke für deine Antwort Hans.

Hans Nosch
der Schieberegler ist so angelegt, dass er genau die Breite des Diagramms besitzt. Somit korrespondiert er direkt damit. Eine Anzeige durch einen Strich, der mit dem Regler mitläuft, sollte prinzipiell möglich sein.

Das der Schieberegler mit der Breite korrespondiert, ist schon klar. Eine "deutlichere" Anzeige wäre aus meiner Sicht dennoch hilfreich für den User.

Die Anzeige der aktuellen Höhe ist etwas schwieriger.

Wie wäre es mit einer Lösung die einem nach dem Einstellen des Schiebereglers durch einen weiteren Klick (auf das Profil, den Strich-Indikator oder auf die Position auf der Kartendarstellung) die entsprechenden Informationen für genau diese Position geladen und angezeigt werden.

Tschüss
Lars

Antworten
Hans Nosch
  • Forum-Beiträge: 65

27.03.2010, 11:03:04 via Website

Lars K.


Wie wäre es mit einer Lösung die einem nach dem Einstellen des Schiebereglers durch einen weiteren Klick (auf das Profil, den Strich-Indikator oder auf die Position auf der Kartendarstellung) die entsprechenden Informationen für genau diese Position geladen und angezeigt werden.

Jedes Laden dauert etwa gleich lang. Egal wieviele Zahlen geladen werden. Ich kann nicht sagen woran das liegt. Jedes Mal 4 Sekunden warten wäre echt ätzend. Ich kuck mal, ob sich irgendwas performanteres machen lässt.

Antworten