| |
|
|
HofK | Actualización sobre neue Syntax al 10.04.2016:
Gesten Auswerten/ Richtungen erkennen
// Richtungen para Gesten p=0 // Index Position Trennzeichen en xg, yg tg = -1 // Nr. Teilgeste xg="" yg="" xge=[] yge=[] // Teil-Geste: Cuerdas, Gestenfelder xp=[0] yp=[0] // Positionen p Trennz ; en Cuerdas xg, yg ix=0 iy=0 dx=0 dy=0 // Koordinaten, Differenzen var rtg =[ // z ["\u21d8" "\u21d7" "\u21d2"] // 0 después de rechts ["\u21d9" "\u21d6" "\u21d0"] // 1 después de links ["\u21d3" "\u21d1" "\u2299"] // 2 vertikal, Stillstand ] // Matrix el Richtungssymbole //s 0 1 2 // runter hoch horizontal imprimir "Richtung de Gesten"
proc event id data global p tg xg xge yg yge xp yp caso id==event.touchdown : gekoord data.x data.y // Koord. aufnehmen caso id==event.touchmove : gekoord data.x data.y // Koord. aufnehmen if id==event.touchend tg++ // Nr. el Teilgeste erhöhen xge[tg] = xg // Teilgeste en x Gestenfeld yge[tg] = yg // Teilgeste en y Gestenfeld // Teilgeste auswerten: // Regionen y Anstieg/Krümmung ermitteln / "Wende"punkte - teils offen kruemmung // ... es todavía UNVOLLSTÄNDIG // Abschluss-Teilgeste komplexer Gesten erkennen - es todavía offen caso tg==7 : tg=0 // 7 Teilgesten // je Teilgeste neu inicializar xg="" // x Koordinaten-String (; separiert) yg="" // x Koordinaten-String (; separiert) p=0 // Index Position Trennzeichen (;) xp=[0] // Datenfeld con Positionen el Trennzeichen en xg yp=[0] // Datenfeld con Positionen el Trennzeichen en xg endif ENDPROC
proc gekoord x y // Geste: x y Koordinaten aufnehmen global p ix xp iy yp xg yg caso y<0 : y=0 // wegen Infoleiste (.y negativ) p++ // Index Position Trennzeichen ; ix = round(x 0 true) + ";" // integer x con Semikolon xp[p]=xp[p-1] + str.len ix // x Trennzeichenposition ablegen iy = round(y 0 true) + ";" // integer y con Semikolon yp[p]=yp[p-1] + str.len iy // y Trennzeichenposition ablegen xg=xg+ix // ix a String anfügen yg=yg+iy // iy a String anfügen ENDPROC
proc kruemmung global tg xp yp xg yg dx dy rtg i=0 verlauf = "" caso tg==7 : cls imprimir "x " + (str.len(xp)-1) +": " + xg imprimir "y " + (str.len(yp)-1) +": " + yg mientras que i < (len(xp)-2) // long para Vergleiche wichtig: diferente Stellenzahl! x1 = long str.mid xg xp[i]+1 xp[i+1]-xp[i]-1 // Koordinaten auslesen x2 = long str.mid xg xp[i+1]+1 xp[i+2]-xp[i+1]-1 y1 = long str.mid yg yp[i]+1 yp[i+1]-yp[i]-1 y2 = long str.mid yg yp[i+1]+1 yp[i+2]-yp[i+1]-1 dx = x2-x1 // para Krümmungsverhalten VORBEREITET dy = y2-y1 z=2 // x1==x2 Línea rtg Richtungssymbole s=2 // y1==y2 Spalte rtg Richtungssymbole caso x1!=x2 : z = 0+(x1>x2) // Zeilenwahl z caso y1!=y2 : s = 0+(y1>y2) // Spaltenwahl s verlauf = verlauf + rtg[z][s] // Richtungssymbol anhängen // imprimir " dx "+ dx + " dy "+ dy + " " + verlauf i++ wend imprimir verlauf ENDPROC
|
|
|
| |
|
|
|
| Hab el Thema veces en "Ständig" gesetzt, soy darauf endlich veces en una bisl Tiempo esta ganzen Dinge auch incluso una vez a probieren. |
|
|
| |
|
|