思いつくままを綴る雑記帳

障害物を避けて伸びるCurve object (Reroute)

暫くネット環境から離れていたので・・・その間に思いついたパーツを作ってました・・。
RouteSearch.png
例えば、こんなのです。(AllRouteSearch.py)
これはObject上の1つのfaceを指定してそれに隣接するfaceを辿った経路をEdge Objectにするという物・・。
まぁ、パーツ作りの検証用の作り物・・・。

reRouteCurve.png
で、これが前述のパーツを改良してPoint-To-Pointで経路を検索して進行方向にあるMesh Objectを避けながら目標のObjectまで伸びるBezier Curveを生成する物。(reRouteCurve.py, reRouteCurve.blend)
reRouteCurve2.png
Objectの裏側はこんな風になってます。

どちらも猫さんの製作物置き場の4Shared/MediaFireにあるはず・・・。
(4Sharedの方にはたまに無い事も・・・接続悪いので・・・)

以前に記事で書いたWormCurve.pyも一部修正してありますが・・・。
ObjectからObjectに移動する際に移動元のObjectを貫通する可能性があるのは修正してません。
この障害物を避ける機能で・・・なんとかなるはずだけどね・・・。
[reRouteCurve.py, reRouteCurve.blend]:
早速更新・・・迂回途中でも進路が開けたらそこからCurveを伸ばすオプションを追加。
[reRouteCurve.py, reRouteCurve.blend]:
02/August/2015 更新
迂回脱出時にBezier Curveの自動補正で経路が塞がれる事があるのを補正。
スポンサーサイト

コメント

コメントの投稿

URL
コメント

パスワード
秘密
管理者にだけ表示を許可する

トラックバック

トラックバックURL : http://perfectcat.blog101.fc2.com/tb.php/311-be600640
<< 呆れたわ | TOP | 久々にハマッタ・・・ >>