たろサです。
Luarida v1.83Betaを公開しました。v1.82Betaは簡単なバグフィックスでしたので連絡しませんでしたが、今
回のバージョンでは、SonyのSmartWatchのプログラムが書けるようになりました。
SonyのSmartWatchは画面サイズ128×128の表示端末です。Luaridaは元々内部で独自の画面を持っているので、
内部画面の表示先をSmartWatchにするswatch.putflush()命令を用意しました。
基本的に、canvas.putflush()としていたところを、swatch.putflush()とするだけで、SmartWatch用アプリに
なります(^^;。
後は、タッチ入力ですが、これも従来のtouch()と同等のswatch.touch()を用意しました。とりあえず、待ち
受けモードは用意していないのですが、タッチ状態と座標を取得できます。
x,y,s,d = swatch.touch()
と、従来のtouch()よりも戻り値が1つ多いですが、dには画面スィープ結果が戻ってきます。0,1,2,3が上、下、
左、右のスィープです。スィープの無いときは、10が戻ってきます。
そのほか、swatch.vibrator()命令やswatch.stouch()命令、swatch.getAccel()命令があります。
簡単な例として、SmartWatchの加速度の値を取得して画面に表示するプログラムは、下記のような感じです。
画面更新が遅いので、リアルタイム性のあるプログラムには不向きです。
--内部グラフィック画面設定の変更
canvas.setMainBmp( 128, 128 )
local fps = system.getSec() + 1/2
local h = 30
while(true)do
--加速度を取得
local ax, ay, az = swatch.getAccel()
canvas.putCls( color(0,0,0))
canvas.putText( string.format("X= %f",ax), 0, h , 18, color(255,255,255) )
canvas.putText( string.format("Y= %f",ay), 0, h+20, 18, color(255,255,255) )
canvas.putText( string.format("Z= %f",az), 0, h+40, 18, color(255,255,255) )
swatch.putflush()
while( fps>system.getSec() )do end
fps = system.getSec() + 1/2
local x,y,s,d = swatch.touch()
if( d==1 )then break end
end
--
山本三七男 (Minao Yamamoto) ---------------- ハンドル:たろサ -----
E-Mail:
taro...@gmail.com