• openDDLについて
  • サイトポリシー
  • ご利用前にお読みください
  • EN
  • SIGN IN:
  • SIGN IN:
気軽に書けるGrasshopperC#コーディング//03.色々なTweenCurves
by Hiroaki Saito Jul 14, 2015

cap1
Rhinocerosには2曲線の間に曲線を作成するTweenCurves(http://docs.mcneel.com/rhino/5/help/ja-jp/commands/tweencurves.htm)が使えますが、Grasshopper(以下GH)上で扱える同機能にはマッチング方法の設定がありません。今回はGH上でマッチング方法を踏まえたTweenCurvesが使えるようにC#でコードを書いていきます。
cap2
RhinocerosでTweenCurvesコマンドを利用する際に設定できるマッチング方法
cap4
GH既存のTweenCurves。2曲線と作成する位置を数値(0.0~1.0)で指定
次にC#コンポーネントで書くコードをマッチング方法に応じて3種類のメソッドで記します。今回はCurveクラスのstaticメソッドを利用しています。
cap3
注意点としては、GHで使える既存のTweenCurvesコンポーネントは状況によってどのマッチング方法とも合わない独自の結果を生む場合があります。どれが最適かという訳ではなく、2曲線の条件によって上手く機能しない場合がある際にマッチング方法を色々試してみるという理解が大切です。

あと、マッチング方法を“なし”にした場合、線の条件次第では選択順によって結果が変わる場合がたまにありますのでこちらも気になる方は色々試してみると良いでしょう。

cap5

Rhinocerosで作成する場合、大抵は最適なマッチング方法を予め定義してくれるので良くない結果が生まれた場合にのみ、気にしてみると良いでしょう。GHでマッチングを利用する場合、何が最適かを自身で判断する必要がありますので注意が必要です。

添付しているghファイルでは、この3つの方法を1つのコンポーネントで切り替える形で用意しました。上記のように1行でお気軽に利用するも良し、以下の画像のように1つにまとめてみるも良しです。

cap7

TweenCurvesコンポーネントを作るついでに、今回は少し応用的に少しコードを加えて、

1.カーソルを合わせると表示されるポップアップの説明文も書き換えてみました。

2.cAとcBが未入力の際にWarningが出る(オレンジ色になる)よう書いてみました。

共に数行で出来ますので興味のある方は添付ファイルを確認してみて下さい。(Additional Codeの欄にメソッドで記述しています。)


arksmile_
Aug 13, 2015

プログラミンのソフトについて、どんなソフトを使っていますか?

python??

LU

Hiroaki Saito
Sep 01, 2015

返事が遅くなり申し訳ありません。

DDLではスタッフによって利用する言語が違います。私はGrasshopperの為に今はC#を利用していますが、以前はJavaやAndroidも少し勉強していました。私はPythonが使えませんが、今DDLで一番多く使われているのはPythonかもしれません。

Daisuke Sasaki
Feb 21, 2018

たいへん勉強になりました!

Daisuke Sasaki
Feb 21, 2018

過去記事の添付ファイルが消えてません?

コメントをするにはログインしてください。

4681 1
Tags
#Grasshopper #C# #TweenCurves
License
cc_by_sa
GNU GPL

CONTACT ©2025 NIKKEN SEKKEI LTD.