私が正しく理解していれば、2つの端点A(x1、y1)とB(x2、y2)があり、矩形の任意の幅はwです。私は終点が矩形の短い辺のちょうど中間にあると仮定します。最後の矩形のコーナー座標の距離がAとBにw/2になることを意味します。
行の勾配を計算できます。
S1 =(Y2 - Y1)/(X2 - X1)//×1を想定した= x2の
短辺の傾きは、S2 = -1/S1が、何もありません!。
私たちは勾配を持っています、我々は距離を持っており、我々は参照点を持っています。/(X3 - X 1 -
(Y1、Y3):
C(X3、Y3)に近い一角について
:各コーナーポイントのための2つの方程式を導き出すことができるよりも
我々は)= S2 //傾きによって
(Y3 - Y1)^ 2 +(X3 - X1)^ 2 =(W/2)^ 2 //距離
置換(Y3で - Y1)で(x3-x1)をbで割ると
A = B * S2 //勾配方程式
// b *表S2
B^2 * S2^2 + B^2 =(W/2)^ 2 //距離によって置き換えます
B^2 =(W/2)^ 2 /(S2^2 + 1)
B = SQRTをequaiton((W/2)^ 2 /(s2は^ 2 + 1))
wとs2を知っているので、bを計算する
Bが知られている場合は、我々はX3
×3 = B + X1
と、同様
= b *表S2
ので、Y3
Y3 =を推定することができますb * s2 + y1
私たちは1つのコーナー点C(x3、y3)を持っています。
D(X4、Y4)、勾配方程式は
(Y1 - Y4)として構成することができると言う、近いAに他のコーナー点を計算する/(X1 - X4)= S2 と計算上記のリストを適用する必要があります。
他の2つのコーナーは、ここにリストされているステップを使用して、A(x1、y1)をB(x2、y2)に置き換えて計算できます。私たちは、2つの値、x軸上のシフトとのそれぞれについて、y軸上のシフトを計算する必要が
:
左上(x1、y1)と右下(x2、y2)があり、これらの点で矩形を作成する必要があります。座標は単に[(x1、y1)、(x2、y1)、(x1、y2)、(x2、y2)]ではないでしょうか? – Danny
私が扱わなければならないすべての情報は、ユーザーの指が画面上にあった場所と最新の場所です。私は、2つの間に任意の幅で線を描く必要があります。矩形も中央揃えする必要があることに注意してください。あなたが信じるほどシンプルではありません。このイラストレーションのイラストは、役に立つかもしれません。 [リンク](http://dl.dropbox.com/u/17610534/picutre.png)(上の矩形の2番目の座標は実際には150,50ですが、うまくいけば私が何を得ているのか分かります) – AaronDS
長方形を使用する理由は何ですか?なぜ太い線分はありませんか? – datenwolf