Ergebnis 81 bis 100 von 148
-
- 10.05.2011, 19:32
- #81
...so, hier als vorläufig letztes Beispiel ein einfacher "Counter" (= Eieruhr), der wiederum auf das schon bestehende Design-Element "Counter" zugreift.
Beim Start wird der Benutzer aufgefordert, die gewünschte Laufzeit in Minuten anzugeben (es müssen keine ganzen Zahlen sein. Möglich ist auch beispielsweise 2,5 für 2 Minuten und 30 sec).
Angezeigt werden nach dem Start 3 Elemente:
a) die Startzeit (fixe Anzeige)
b) die vorgegebene Laufzeit in Minuten (fixe Anzeige)
c) die noch verbleibende Zeit in h:m:s (wird in Echtzeit aktualisiert)
In der letzten Minute der Laufzeit ändert sich die Farbe des 3. Elements mit der Restlaufzeit.
Bei Erreichen der Zielzeit vibriert das Gerät kurz, der Player spielt den "Alarmsong" und es erscheinen 3 weitere Elemente:
d) Titel: ENDE = signalisiert den Ablauf der Zeit
e) die über die vorgegebene Zeit hinaus vergangene Zeit (wird in Echtzeit aktualisiert)
f) der aktuell gespielte Song des Players
c) außerdem erhält wieder die Ausgangsfarbe (ab jetzt fixe Anzeige)
Den Alarm beendet man durch umdrehen des Gerätes (Display nach unten = Player stop)
Das dazugehörige Script
Das Hilfs-Script zum Starten des Players:
("e.Player")
Die weiteren Layout-Elemente
("d.Counter" - "d.Start" - "d.Titel.1" - "d.Titel.2")
P.S.
- Für eine bessere einheitliche Benennung habe ich alle Designe-Elemente mit einem kleinen vorangestellten "d" (= Design) benannt. Beispiel "d.Counter".
- Die zusätzlichen Hilfs-Scripte sind mit einem kleinen vorangestellten "e" (= Execute) benannt. Beispiel "e.Player" zum Starten des Players.
- Alle ausführbaren Haupt-Scripte beginnen mit Großbuchstaben. Beispiel "Counter"
Gruß Jörg
-
- 11.05.2011, 10:11
- #82
...so, habe noch schnell ein Layout-Element für eine grafische Balkenanzeige mit eingestellt.
Dieses Element erhält einen Wert zwischen 0 und 1 sowie den Beschreibungstext.
Der Wert wird als grafischer Balken von links nach rechts prozentual dargestellt.
In dem Beispielprogramm "GPS.Daten" setze ich es für die Darstellung der Empfangsgenauigkeit ein.
a) Anzeige Empfangsgenauigkeit "horizontal"
b) Aktuelle Position mit L = Länge und B = Breite
c) Aktuelle Höhe und Geschwindigkeit
d) numerische Genauigkeit "acc V" = vertikal und "acc H" = horizontal in m
e) Kurs in Grad
- alle Werte werden in Echtzeit aktualisiert
- Nicht korrekt sind die angezeigten Werte für die Geschwindigkeit. (wahrscheinlich fehlt hier noch eine Berücksichtigung zwischen den Meßwerten)
- das Element d) diente mir vor allem zur Kontrollausgabe. Der Wert für "acc H" ist in dem ersten Element besser erkennbar dargestellt.
Das dazugehörige Haupt-Script
Das Hilfs-Script zur Formatierung mit Festkommata
Die Layout-Elemente
-
- 11.05.2011, 12:05
- #83
...hier noch ein ganz schnelles Beispiel für eine "grafische Uhr", bei der der Zeitverlauf als Balkendiagramm dargestellt wird.
EDIT:
neu: Mini Tutorial zum Erstellen dieser Anwendung im post #87
Uhr:
Uhr mit eingeblendeten Zahlenwerten:
Haupt-Script:
Hilfs-Script:
Gruß Jörg
-
- 11.05.2011, 22:01
- #84
-
AEG Gast
Jrahe du bist genial!
Wow!
-
- 11.05.2011, 22:14
- #86
...und hier als analoge Uhr.
Wichtig ist hier, das die Zeigerbewegung kontinuierlich läuft und nicht minutenweise bzw. sogar stundenweise "springt".
Erreicht wird dies durch die zusätzliche Korrektur im Haupt-Script vor dem Aufruf des Layout-Elements.
Im Layout-Element selbst mußte noch einmal eine Korrektur um 180 Grad vorgenommen werden, da ich die Zeiger als sehr schmale Rechtecke aus der Mitte heraus nur nach unten zeichnen lassen kann. Für eine korrekte "Nullstellung oben" also die Korrektur "+180".
Ausgewertet werden die übergebenen Daten hier als Gradzahl.
Übergeben werden kann aber auch Text, um diese Uhr zur Darstellung der Weckzeit zu nutzen.
Über den Lagensensor ließe sich dann ganz einfach die Ansicht zwischen aktueller (laufend aktualisierter) Zeit und der (fix eingestellten) Weckzeit realisieren. Auch hier dann noch z.B. Umdrehen auf das Display für Wecker stumm schalten und Kippen nach vorne zur mp3-Auswahl für den Wecksong.....
=> (fast) unbegrenzte Möglichkeiten.
BTW: ein sehr einfaches und schnell zu erstellendes Programm, besteht nunr aus einem Haupt-Script und einem Layout-Element.
Ansicht (...wird laufend in Echtzeit aktualisiert):
Haupt-Script:
Layout-Element:
-
- 11.05.2011, 22:38
- #87
Mini Tutorial zur "Uhren-App" im post #83
(...nicht wundern über die Anrede "Du". Diesen Text hatte ich soeben auf eine Anfrage per PM geschrieben. Da es aber für weitere Leser nützlich sein könnte, habe ich es hier noch einmal zur Info eingestellt)
Ganz allgemein:
In diesem Fall besteht die Anwendung aus einer Haupt-action und einer Hilfs-action.
Nur die Haupt-action "Aktuelle.Zeit.Grafisch" ist eine ausführbare action.
Die Hilfs-action "d.Level.Meter.1" wird von ihr mit entsprechenden Parametern aufgerufen und gibt einen Wert (= Bild) zurück.
Ich würde zunächst die (Hilfs-)action erstellen, denn nur dann kann von der Haupt-action darauf zugegriffen werden bzw. nur dann wird sie dort in der Liste der verfügbaren actions aufgeführt.
Die Hilfs-action hat einen Rückgabewert
1. pic = Typ Bild
und sieben Übergabewerte:
1. pic = Typ Bild (=> das Ausgangsbild, auf das diese action die Infos malt/schreibt, um es dann als Layout wieder an die Haupt-action zurückzugeben)
2. cb = Typ color (=> steht für color background)
3. cf = Typ color (=> steht für color font)
4. size = Typ Zahl (=> steht für die Zeichengröße)
5. x1 = Typ Zahl (=> steht für den grafisch als Balkendiagramm darzustellenden Wert, zw. 0 und 1)
6. c1 = Typ color (=> steht für die Balkenfarbe)
7. d1 = Typ string(=> sthet für description, also die Erklärung bzw. der Text)
Um diese Werte beim Erstellen der action einzugeben, mußt Du beim Editor im unteren Menu auf Eigenschaften bzw. properties gehen.
Dort kannst Du:
1. im Kasten unter "action" den Namen der action eingeben.
2. im Kasten neben "returns" den Typ des Rückgabewertes einstellen (hier also "picture", Achtung: nicht verwechseln mit "pictures").
3. mit "Wisch-nach-links" zu "params" kommst Du dann zu den möglichen Übergabeparametern.
Hier tippst Du in der unteren Leiste auf das "plus"-Symbol und kannst dann im rechten Feld den Typ auswählen und im linken Feld den Namen eingeben. Diesen Vorgang wiederholst Du so oft, wieviele Parameter Du benötigst. Die Reihenfolge der eingegebenen Parameter läßt sich mit den beiden Pfeilen in der unteren Leiste korrigieren.
Mit der "Zurück"-Taste kommst Du dann wieder in den Editor, un die Code-Zeilen einzugeben.
Ich würde mit der letzten Zeile anfangen, mit dem Rückgabewert, hier also "pic". Solange dieser Rückgabewert noch nicht als letzte Zeile dort steht, wirst Du Fehlermeldungen vom Editor erhalten.
Anschließend kannst Du den Code in den Zeilen darüber eingeben.
Wenn alles korrekt wie in meinem Script eingegeben worden ist, solltest Du diese action von der Hauptaction aus aufrufen können.
Als zweites also das Erstellen der Hauptaction.
Diese hat keine Übergabe- oder Rückgabewerte, die wir eingeben müssten.
Sobald die Variable p1 (als Typ Bild) mit der Zeile "p1 := media -> create picture(460, 80)" deklariert und definiert worden ist, sollte sie in dem unteren Bereich des Editors (der "Taschenrechner") verfügbar sein.
Entweder ist sie direkt auf einer der Tasten belegt oder über die Taste "..." unten rechts verfügbar.
Sobald Du auf die "..."-Taste tippst, bist Du zunächst bei den "services" (den aktuell zugänglichen Funktionen).
Mit einem "Wisch-nach-rechts" kommst Du zu den "locals" (den lokal definierten Variablen). Hier findest auf jeden Fall "p1".
Von "services" mit einem "Wisch-nach-links" kommst Du zu den "actions". Hier sind alle in dem Script befindlichen actions aufgeführt. Hier solltest Du also auch Deine action "d.Level.Meter.1" finden.
Somit kannst Du über den Editor folgendes eingeben "p1 := d.Level.Meter.1(....)".
Als nächstes mußt Du dann über den Editor die Vorgabewerte, die in der Klammer stehen, durch die korrekten Variablen bzw. Werte ersetzen.
So sollte es eigentlich funktionieren....
Viel Spaß
-
- 12.05.2011, 07:31
- #88
Kleines Update "SPORT App mit mp3-Player" aus post #79
Zum Protokollieren der Pausenzeiten werden diese jetzt unterhalb des letzten Elements mit ausgegeben.
=> dazu sind in dem Hauptscript die vier Zeilen mit "pzeit" bzw "p1zeit" eingefügt worden.
=> und ein neues Hilfs-Script zur Umwandlung einer Anzahl Sekunden in Text "Minuten Sekunden"
Außerdem war in der ursprünglichen Version die Cover-Abbildung im Musik Layout-Element unten angeschnitten. Dies lag daran, daß ich das Cover-Bild auf 80*80 reduziert habe bei einem zusätzlichen Rand von 10 Pixel. Da in der ursprünglichen Version das Grundbild "p3" aber nur mit einer Höhe von 80 erzeugt wurde, war das Cover entsprechend abgeschnittten dargestellt worden.
In diesem Haupt-Script erzeuge ich "p3" jetzt mit einer Höhe von 100, so daß die Abbildung wieder korrekt aussieht.
Bei dem "Musikplayer" post #76 wurde das Grundbild "p1" für das Musik Layout-Element korrekt mit einer Höhe von 100 erzeugt.
(hier noch einmal de Hinweis, daß auf Grund des "60-Zeilen-Fehlers" in der Anzeige das nachträgliche Editieren längerer Scripte schwierig sein kann. Dieser Fehler soll aber in dem nächsten update des "TouchStudios" behoben werden.)
Ansicht:
Haupt-Script:
Neues Hilfs-Script:
("e.SecToMinSec")
...die weiteren Scripte sind schon in dem post #79 angefügt
-
- 12.05.2011, 11:43
- #89
Mit dem Tortendiagramm als neuem Layout-Element lassen sich sehr schnell Abfrageergebnisse visuell darstellen.
Auch hier werden die Werte als Grad von 0 bis 360 dargestellt.
Dies bedeutet, das die ermittelten Werte zunächst auf 360 Grad umgerechnet werden müssen.
In dem Beispiel als " treffer / 360 * Gesamtzahl i "
In dem folgenden Script werden alle die Songs auf dem Gerät gezählt, die kürzer als eine vom Benutzer zuvor angegebene Laufzeit (in sec) sind.
In diesem Beispiel wurde nach Titeln kürzer als 4 Minuten (= 240 sec) gesucht.
Ansicht des Ergebnisses:
Haupt-Script:
Layout-Element (d.Level.Kreis.Segment):
...das zweite Layout-Element "d.Titel.2" wurde in den vorangehenden posts schon vorgestellt.
-
- 12.05.2011, 11:57
- #90
Um das Tortendiagramm für eine forlaufende Zeitanzeige zu nutzen, habe ich es ein wenig modifiziert.
Für das Tortendiagramm werden pro Grad ein "Rechteckstrahl" gezeichnet, die dann überlagert wie ein Kreissegment aussehen.
Bei einer fixen Abfrage für nur einen Wert geht dies recht schnell (siehe Beispiel in dem vorangegangenen post).
Bei einer kontinuierlichen Abfrage für eine in Echtzeit aktualisierte Uhrzeit ist diese Art der Darstellung zu langsam. Mit fortschreitender Sekundenanzahl braucht das Diagramm immer länger, um die erforderliche Rechtecke zu zeichen. (bei einem Wert von 45 sec braucht es ca. 3 Sekunden)
Ich habe daher bei dieser Variante die Anzahl der zu zeichnenden Rechteckstrahlen auf ein Sechstel verringert. (=> also 60 "strahlen" im Vollkreis anstelle von 360 "Grad"). Dies ist für eine Zeitanzeige genau genug. Die Geschwindigkeit bei der Echtzeit-Aktualisierung wird damit deutlich erhöht.
Ansicht:
Das neue Layout-Element befindet sich an vierter Stelle....
Haupt-Script:
Modifiziertes Layout-Element (d.Level.Kreis.Segment)
=> auch hier wieder alle weiteren Layout-Elemente in vorangegangenen posts
-
- 12.05.2011, 16:34
- #91
Tortendiagramm für statistische Auswertungen
Mit den Scripten des "TouchStudios" lassen sich recht schnell Zahen und Informationen von den auf dem Handy gespeicherten Daten ermitteln.
Aktuell vorwiegend aus den Bereichen "Medien Songs" und "Medien Bilder".
Mit den nächsten updates (...und vor allem mit "Mango" resp. WP7.5) und den dann hoffentlich erweiterten Zugriffsmöglichkeiten werden diese Auswertungen immer interessanter.
(wieviele Kontakte im PLZ-Bereich..., wieviele SMS..., wieviel Datenvolumen..., usw.)
Um eine mögliche grafische Auswertung einmal darzustellen, habe ich das Layout-Element "d.Level.Kreis.Segment" genutzt, um die bekannte Abfrage "Wieviel Songs unter drei Minuten" sich auf dem Handy befinden, einmal neu zu gestalten.
Zunächst wird der Benutzer nach der von ihm gewünschten Minutenzahl gefragt.
Anschließend sieht er während des Suchvorgangs die Überschrift und dann als Ergebnis nicht die Gesamtzahl der Titel auf dem Gerät und die Zahl derer unter drei Minuten. Zusätzlich werden ihm die Zahl der Titel die genau (2-)3 Minuten laufen und im Vergleich dazu die Anzahl derer, die (1-)2 Minuten und die (3-)4 Minuten laufen.
So lassen sich schon (semi)professionelle Auswertungen mobil erstellen...
Ansicht Suche "Titel bis 3 Minuten":
Ansicht Suche "Titel bis 5 Minuten":
Haupt-Script:
=> das Layout-Element ist das gleiche wie in den vorangegeangenen posts.
Ansichten der gesamten Verteilung auf meinem Gerät, diesmal im schwarzen Design:
-
AEG Gast
Wow, das ist wirklich (Semi)professionel! tolles Script!
Ja, freu mich auch auf Mango. Wenn das TS Team weiter an dem dranbleibt (und hoffentlich einmal eine Art packages macht, mit dem man Anwendungen teilen und einfach installieren kann), wird TS das Supertool!
-
SinAStyler Gast
Video dazu
-
- 13.05.2011, 07:57
- #94
Hallo SinAStyler,
...leider ist das Video ohne Ton (bis auf die Musik des Abspanns)!
Soll das so sein...?
EDIT: ...ok, gehört so, da ohne Mikro aufgenommen.
Dies Video zeigt auf jeden Fall sehr schön die "fingerfreundliche" Bedienung des "TouchStudio".
Gruß Jörg
-
SinAStyler Gast
-
- 13.05.2011, 20:01
- #96
...klar
-
SinAStyler Gast
-
- 13.05.2011, 22:04
- #98
...auch auf die Nachfrage zu "einer App, mit der sich mathematische Graphen darstellen lassen", kann das "TouchStudio" als Antwort genutzt werden.
-> thread "Graphen erstellen"
...das Script basiert auf dem als Beispiel mitgeliefertem Script "plot sine", hier kombiniert mit user-Abfragen zu den gewünschten Parametern und 2 Layout-Elementen für die Darstellung.
...das Script dient als Beispiel für die Darstellung von unterschiedlichen Sinus-Kurven.
Es läßt sich natürlich auch auf andere Kurvenarten übertragen.
Zunächst werden vom Benutzer die folgenden Parameter abgefragt für:
1. n = Anzahl der Perioden
2. d = Stauchung
3. dx = Versatz x-Achse
4. dy = Versatz y-Achse
Das Ergebnis sieht dann je nach eingegebenen Parametern wie folgt asu:
Das erforderliche Script sieht wie folgt aus:
Zusätzlich erforderlich sind noch die folgenden Scripte:
( "m.Sinus" für die Berechnung und "d.Titel.1" für die Überschriften )
Gruß Jörg
-
- 19.05.2011, 09:00
- #99
...kurzes Script zum Test des GPS-Sensors.
Hintergrund:
Die über das TouchStudio erhaltene Information über die Geschwindigkeit (senses -> current location -> speed) entspricht nicht einem mir bekannten Wert.
Für einen direkten Wert in km/h ist er deutlich und permanent zu klein.
Der zu geringe Wert ändert sich scheinbar nicht mit der Dauer der Abfrageintervalle resp. mit den Pausenzeiten (time -> sleep).
Da er konstant zu gering für km/h ist, scheint ein Umrechnungsfaktor erforderlich zu sein.
Die angezeigten Werte lagen immer bei ungefähr einem Viertel der tatsächlichen Geschwindigkeit in km/h.
Daher habe ich einmal den Wert 4 als Multiplikator eingesetzt und als Ergebnis die folgende Testmessung erhalten:
Ein Testmessung auf der Autobahn bei konstant 100 km/h auf dem Autotacho ergab:
102 km/h in TouchStudio (mit mit Multiplikator 4)
100 km/h auf dem Autotacho
92 km/h in drei unabhängig voneinander messenden GPS-Tools auf WP7 (distant, Navigon Select, runtastic)
92 km/h in Navigationsprogramm auf einem Win Mobile 6 Gerät mit BT-GPS-Empfänger (als Kontrollgerät)
Wenn ich also davon ausgehe, daß bei einer Tachoanzeige von 100 km/h eine "reale" Geschwindigkeit von 92 km/h gefahren wird, so müsste der Umrechnungsfaktor für den von TouchStudio gelieferten Wert bei ca. 3,6 liegen.
Tachowert = 100 km/h => real = 92 km/h
Tachowert = 100 km/h => TouchStudio = 102/4 = 25,5 (gelieferter Wert von der Funktion "senses -> current location -> speed")
92 km/h = 25,5 gelieferter Wert => Faktor = 3,608
==================================================
Vielleicht können andere Leser einmal ihre Ergebnisse in Bezug auf die Werte "Geschwindigkeit" vom GPS-Sensor hier posten.
Gründe für die Abweichungen können vielfältig sein:
a) es kann Software-seitig tatsächlich einen Umrechnungsfaktor benötigen
b) es kann an meinem Gerät (Hardware) liegen
c) es kann an der Empfangssituation vor Ort liegen
d) es kann an dem unregelmäßigen Datenfluß von GPS-Werten zum TouchStudio liegen
Auffällig bei mir aber ist die permanente und konstante Abweichung (...im Gegensatz zum Beispiel zur sehr schwankenden empfangsabhängigen Höhenangabe)
Die Werte für "latitude" und "longitude" dagegen sind sehr konstant und genau.
Die Empfangsstärke lag während des Tests zwischen ca. 9m und 40m
Ansicht:
Haupt-Script:
In diesem Script ist der Faktor 4 zum Testen in der Zeile "G := e.Komma(l -> speed * 4, 0)" schon integriert
Neben-Scripte:
Gruß Jörg
-
- 21.05.2011, 09:56
- #100
...hier ein "visuelles GPS-Tool" als weiteres Layout-Element.
Die drei Hauptelemente sind:
1) Das obere Element, indem die aktuelle Position angezeigt wird
2) Das mittlere Element:
- oben rechts der GPS-Indikator (bei einer Empfangs-Genauigkeit besser als 50m = grün, ansonsten = rot), darunter die Genauigkeit in m
- mittig oben die Fahrtrichtung und Gradzahl, darunter die aktuelle Geschwindigkeit km/h
- links die Fahrtrichtung visuell auf einem Kompass.
3) Das untere Element mit der Strecke in m (= zurückgelegte summierte Strecke) und der Distanz in m (= Luftlinie zum Startpunkt)
Alle Elemente werden selbstverständlich permanent in Echtzeit aktualisiert.
Ansicht beim Starten des Programms und Suchen nach GPS-Signal:
Die folgenden drei Screenshots sind in zeitlicher Abfolge dargestellt.
Außerdem gut zu sehen die Fehler- bzw. Statusmeldungen, daß in diesem Fall für die Start-Initialisierung 4 Anläufe benötigt wurden.
Die "Nullstellung" ist übrigens bei S = 180°, da ich den Zeiger als sehr schmales Rechteck aus der Mitte heraus nur nach unten zeichnen lassen kann. Dieses Rechteck wird anschließend entsprechend der Gradzahl um den ersten Punkt (= Kreismittelpunkt) gedreht, so daß ein "Zeiger-Effekt" ensteht.
Diese Nullstellung läßt sich bei Bedarf durch einen Korrekturfaktor variieren.
(s.a. Beschreibung im Post #86)
Ansicht zu Beginn der Fahrt:
Ansicht während der Fahrt:
Ansicht bei Verlust des GPS Siganls:
Bei den Testfahrten hatte ich oft nach ein paar Minuten einen plötzlichen Abbruch des GPS-Signals. Bei einer vorhergehenden "Genauigkeit" von ca. 7 - 30m sank diese schlagartig auf Werte von ca. 3000 - 5000m.
NaN steht für "kein Wert"
Haupt-Script:
Der in dem vorangegangene Korrekturfaktor für die Geschwindigkeit ist hier mit dem ermittelten Wert von 3,608 eingegeben worden.
Die Hilfs-Scripte: ("e." steht für "execute")
"e.Komma" => kürzt eine Zahl auf die angegebenen Nachkommastellen
"e.Richtung" => gibt die Himmelsrichtung nach angegebener Gradzahl zurück
Layout-Elemente: ("d." steht für "Design")
"d.2t" => 2 Texte
"d.2z" => 2 Zahlen
"d.geo" => visuell GPS
Die Text-Elemente: ("t." steht für Text)
Diese "Textelemente" sind neu (...sie beginnen mit einem kleinen "t."). Ihr Zweck besteht haupsächlich darin, im Hauptscript keine kompletten Strings eingeben zu müssen und damit die Scriptzeilen kürzer halten zu können. (= wegen dem "60-Zeilen-Fehler" in der Anzeige)
2 Fehlermeldungen: ("t.e" steht für Text Fehlermeldung)
4 Überschriften / Beschreibungen: ("t.g" steht für Text GEO)
Viel Spaß beim Ausprobieren...
...und bitte feedback in Bezug auf Genauigkeit und Regelmäßigkeit des GPS-Empfangs geben.
Gruß Jörg
P.S.
Da ich ein neues Austauschgerät erhalten habe und damit alle Scripte neu eingeben musste, können diese teilweise etwas anders aussehen.
Ich habe die hier verwendeten Scripte ohne meine alten Vorlagen neu erstellt und sie daher alle komplett im Anhang aufgeführt.
P.P.S. Dies ist der Jubiläums-Post Nr. 100
Ähnliche Themen
-
gekochte ROMs und Microsoft Dienste wie z.B. Microsoft MyPhone
Von gitarrero im Forum Touch HD ROM UpgradeAntworten: 6Letzter Beitrag: 02.06.2009, 14:02 -
Microsoft Research stellt neue Technologien vor
Von MuvOn im Forum PlaudereckeAntworten: 2Letzter Beitrag: 12.07.2004, 11:16
Pixel 10 Serie mit Problemen:...