ページ 11

Xcode touchesメソッドについて アプリ開発

Posted: 2014年11月09日(日) 19:59
by acv
はじめまして

xcodeでアプリを作っている物ですが、実装の仕方がわからないため質問させていただきます。

行いたい処理としましては、Iphone上で線を書いたときに、その線の長さに応じて、線を指定の数に分割し、分割した線の角度を算出したいということを行いたいのですが、

座標を取得するのは、

コード:

override func touchesBegan(touches: NSSet, withEvent event: UIEvent) {

         startPoint = touches.anyObject()?.locationInView(self)

}

override func touchesMoved(touches: NSSet, withEvent event: UIEvent) {
        movePoint = touches.anyObject()?.locationInView(self)
       startPoint = movePoint

}

override func touchesEnded(touches: NSSet, withEvent event: UIEvent) {
       endPoint = touches.anyObject()?.locationInView(self)

}
でそれぞれ取得しております。 

線を書いてる(touchesMovedメソッド中)に角度を算出すればよいかなと思ったのですが、最終的な線の長さがわからないと分割数が決定できないので、touchesEndedメソッド後に線の長さを算出し、分割数を決定し、それに応じて分割する座標点を知る必要があると思うのですが、その方法がいまいちつかめません。

アドバイス頂けると嬉しいです。

Re: Xcode touchesメソッドについて アプリ開発

Posted: 2014年11月09日(日) 21:52
by h2so5
線の長さと分割数はどういった関係にあるのでしょうか。

Re: Xcode touchesメソッドについて アプリ開発

Posted: 2014年11月09日(日) 22:15
by acv
ご返信ありがとうございます。

分割数は固定としますので、長さとは関係なく例えば5等分などにしたいと思っております。

線は決して直線ということでもなく困っております。

よろしくお願いいたします

Re: Xcode touchesメソッドについて アプリ開発

Posted: 2014年11月10日(月) 00:14
by h2so5
結局、曲線を描く場合でも実際は短い線分の集合になるわけですから、その線分の長さを合計すれば線の長さは出ますよね。
そしてその線分の合計が指定した長さになるまで端から辿っていき、そこで分割すればいいわけです。

Re: Xcode touchesメソッドについて アプリ開発

Posted: 2014年11月10日(月) 00:46
by acv
ありがとうございます。

線分の長さはおっしゃる通り、点と点の距離の公式より算出しております。
しかし、分割する点の場所の座標点はメソッドにて取得していないため、どう計算していけば良いのかがいまいちわからないじょうたいです