気軽に書けるGrasshopperC#コーディング//03.色々なTweenCurves

This topic contains 2件の返信, has 2件の返信, and was last updated by Hiroaki Saito のプロフィール写真 Hiroaki Saito 2 年 2 ヶ月前.

424 Views
LICENSE GNU GPL
  • by Hiroaki Saito のプロフィール写真 Hiroaki Saito #6606

    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の欄にメソッドで記述しています。)

    添付ファイル:
    添付ファイルを見るためにはログインが必要です。
    by arksmile のプロフィール写真 arksmile #6740

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

    python??

    LU

    by Hiroaki Saito のプロフィール写真 Hiroaki Saito #6757

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

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

このトピックに返信するにはログインしてください。

openDDLにログイン

or    

ログイン出来ない場合

パスワードをお忘れですか?