ドラッグでなめらかな線を描画するには?

269 views
Skip to first unread message

山田仮

unread,
Nov 18, 2014, 12:37:16 AM11/18/14
to android-g...@googlegroups.com
ドラッグでなめらかな線を描画するには?


失礼します。初投稿になります
よろしくお願い致します。


さっそくですが…
画面を指でなぞり絵を描く機能をつくろうとしたところ、
素早くなぞると、タッチイベントのサンプリングが追いつかないようで、
カクカクした曲線になってしまいます。


実際のアプリを引き合いに出しますが
https://play.google.com/store/apps/details?id=com.visionobjects.calculator&hl=ja

この、手描きで数字や演算器号を入力すると
自動で計算結果を出してくれるというアプリがあり、

このアプリを使ってみると、
「素早く」数字を手書き入力してもなめらかな曲線が描かれます。

このなめらかな線を描くにはどうしたらいいのでしょうか?




ちなみにこのアプリ、どのように手書き文字を認識させているのかが気になります。
GestureLibraryを用いて実装しているのか(Gestureで実装可能?)、
独自のアルゴリズムを用いているのか…どうでしょう

Makoto Yamazaki

unread,
Nov 18, 2014, 1:24:59 AM11/18/14
to android-g...@googlegroups.com
zaki です。

いくつか方法がありますが、お手軽なのは Pathクラスの quadTo を用いて
二次ベジェ曲線を描画する方法です。

Android SDK の APIDemos の中の FingerPaint.java が参考になります。

MyScript Calculator は、Vision Objects の MyScript で作られています。
たしか Mazec もこれを使っていたと思います。
https://dev.myscript.com/ あたりにいろいろ情報があります。


--
このメールは Google グループのグループ「日本Androidの会」に登録しているユーザーに送られています。
このグループから退会し、グループからのメールの配信を停止するには android-group-j...@googlegroups.com にメールを送信してください。
このグループに投稿するには android-g...@googlegroups.com にメールを送信してください。
http://groups.google.com/group/android-group-japan からこのグループにアクセスしてください。
その他のオプションについては https://groups.google.com/d/optout にアクセスしてください。



--
YAMAZAKI Makoto

山田仮

unread,
Nov 18, 2014, 6:26:15 PM11/18/14
to android-g...@googlegroups.com
zakiさん、
返信有難うございます。
ご教示頂いたデモソースを利用してみたところ。
望み通りの動作が実現しました。どうもありがとうございました。

しかし、画面をなぞってから線が描画されるまでのタイムラグが若干気になります。
MyScript Calculatorでも描画が遅く感じられるのですがマシンスペックの問題なんでしょうかね…
速度を上げるためにプログラム側でこれ以上の改善はできないものでしょうか?
Reply all
Reply to author
Forward
0 new messages