Hallo Leute,
hier sind meine Gedanken über mein zukünftiges Projekt und ich hoffe ihr könnt mich verbessern oder einen besseren Vorschlag bringen, bevor ich mein Projekt gleich falsch anfange.
Es soll ein Android-Programm werden, habe es aber absichtlich nicht unter die Rubrik Android gestellt, da es hier nicht um Android sondern um die Gedanken/Absichten geht.
Ich habe einen Raum, nehmen wir ein Wohnzimmer. Von diesem Zimmer habe ich den Grundriss.
Wenn man das Androidprogramm startet sieht man sofort das Bild dieses Grundrisses.
Nun möchte ich gerne mit dem Handy in der Hand durch das Wohnzimmer gehen und die Wlandaten (Signalstärke abfangen). Das Abfangen der Daten ist kein Problem, aber ich möchte diese Wlandaten mit X und Y-Werte abspeichern.
Die X und Y Werte sollen die Achsen des Bildes darstellen.
Also würde ich so etwas speichern: Signalstärke 15, X=10, Y=3.
Jetzt stellt sich für mich nur die Frage, wie bekomme ich diese X und Y Werte? Hier meine Ansätze die leider immer ein Problem bringen:
Dazu ein Bild als Hilfestellung:
- Ich hole mir die Länge vom Rand des Bildes. z.B. wäre das x=10cm. y=10cm
Wenn ich nun auf den Bildschirm klicke wo man im Raum auch stehen sollte, zieht man einen gedachter Strich nach ganz unten und nach ganz rechts. Jetzt sehe ich z.B. auf der X-Achse, dass ich auf 2,4cm bin und auf der Y-Achse bei 3cm bin. Das speichere ich nun mit der Wlanstärke wo ich stehe.
Könnte funktionieren, das Problem dabei ist, jeder Bildschirm obgleich PC oder Handy hat eine Unterschiedliche Größe, deshalb kann man nicht einfach die Länge des Bildes nehmen und dann diese Daten in eine Datenbank speichern, denn die Daten würden nur für dieses eine Gerät mit dieser Auflösung stimmen.
- Überlegung:
Man macht alles mit Prozente. Also man nimmt die Länge jeder Achse und sagt: Das sind 100%.
Also im obrigen Beispiel wäre X=10cm 100% und y=10cm 100%
Wenn ich jetzt das selbe wie oben nochmal durchführe würde, würde ich keine fixen Zahlen für X und Y speichern sondern Prozente. Z.B. steht man dann zu 28% in X und zu 34% in Y. (nicht ausgerechnet, Prozentwerte sind aus der Luft gegriffen) Somit könnte jeder, auch auf Unterschiedlichen Auflösungen Displays sagen, dass wenn man 28% auf der X achse vom linken Rand kommt und von unten 34% nach oben geht dann hat man die Position.
Problem dabei: Kompliziert das ganze zu programmiern, da man dann auch mit 28,875857837337% arbeiten müsste.
Ja wie geht das bitte jetzt besser?
Wie finde ich X und Y Koordinaten sodass man bei jedem Display/Auflösung erkennt, wo die Position ist?
Danke sehr
PS: Sollte es nicht verständlich geschrieben sein, versuche ich es natürlich gerne nochmal neu zu schreiben.