SASによるタイトル通りのブログ
by sas6809
プロフィールを見る
画像一覧
持ちキャラ
[DIVINA]
魅呼都:忍者/クレリック
カテゴリ
全体
プログラム
いろいろゲーム日記
動画
雑記
SDS
ベル日記
プリ日記
デカ日記
システム
未分類
以前の記事
2014年 11月
2014年 10月
2014年 09月
2014年 08月
2014年 07月
more...
お気に入りブログ
その他のリンク
最新のコメント
おや、珍しい(ベルがらみ..
by sas6809 at 21:35
ご無事で何よりです^^ ..
by sas6809 at 03:12
なんとか無事ですー! ..
by うぇる at 19:21
本当に超ご無沙汰ですねw..
by sas6809 at 19:41
超ごぶさたです。 新P..
by EGA at 19:38
I'm sorry. ..
by sas6809 at 20:56
I would like..
by artemy_m at 20:16
釣られて見に来て見れば、..
by miri at 08:24
こんばんは^^いいな~プ..
by キグナス at 22:02
やっぱりプリは出戻りが多..
by sas6809 at 21:31
検索
ブログパーツ
ファン
記事ランキング
ZIPファイルの構造..
接線と2点から円を求める
DXFの座標データ
DIVINAサービス..
Windows8のア..
SQL Server..
アバター:トランス
IISとSQLサーバ..
ShadowsとOv..
10 アプリケーションの構..
画像一覧
XML | ATOM

skin by excite
接線と2点から円を求める
正確に言うと、接線の角度と接点、プラスもう1点から円を求めるわけですが。
方程式立てたらぐちゃぐちゃになったので投げ出して、図形的な手法に走りました。三角関数の整理ムリw
ここでは、角度は方向を考慮した、0~πまでの値として考えます。
接線ベクトルの角度をθ、接点をP1(x1,y1)、もう1点をP2(x2,y2)とします。
P1 から P2 に向かうベクトルの長さを L とすると、式①
角度ψは、接線ベクトルの角度θとP1 から P2 に向かうベクトルの角度αから式②
円の半径 r は式③
φ = ψなので、方向を考慮した円の半径 r は式④

ここで円の角度によるパラメータ表示を変形してP1の座標を代入すると

b = y1 + r cosθ … ⑤
a = x1 - r sinθ … ⑥

ちょっとおかしいですね?
いえいえ、大丈夫、θは接線の角度だから。
これに半径を代入すれば、目的達成です。

なお、ψの値は直角を超えたり負数になったりするので、図形的にはちょっとおかしな感じがしますが、実際にはψ>90°のときはφ=180 - ψ、ψ<0°の時はφ=180 + ψとなります。このときそれぞれsinφ=sin(180 - ψ)=sinψ、sinφ=sin(180+ψ)=-sinψという関係が成立するため、式としては問題ありません。

r が負の場合は逆向きと定義すれば dxf で言うところのふくらみの定義ともうまく合致します。
ちなみに、ふくらみは角度P1-O-P2の1/4の正接となっています。ここで、角度P1-O-P2は2ψなので、ふくらみの値としては

tan(ψ/ 2)

を指定すればよいことになります(たぶん)。
---この下に広告が入るかもしれませんが、私とは一切関係ありません。---

■  [PR]
by sas6809 | 2011-04-06 23:15 | プログラム | Trackback | Comments(1)
トラックバックURL : http://atrsas.exblog.jp/tb/15199066
トラックバックする(会員専用) [ヘルプ]
※このブログはトラックバック承認制を適用しています。ブログの持ち主が承認するまでトラックバックは表示されません。
Commented at 2011-04-06 23:10
ブログの持ち主だけに見える非公開コメントです。