問題タブ [rhino3d]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
487 参照

c# - このC++の例と同様の方法でC#クラスをインスタンス化できますか?

次のC++コードをC#に変換しましたが、クラスをインスタンス化する場所と方法を特定できません。私がそれを使用する場合:

クラスがRhino3Dによってインスタンス化されているため、インスタンス化する必要がないことを通知するエラーメッセージを受け取ります。m_am_idただし、基本クラスによって作成された静的メンバーを取得できるように、クラスへの参照を作成する必要があります。

これは私が問題を抱えている行です:

前もって感謝します。

C ++コード:

C#コード:

0 投票する
1 に答える
141 参照

python - Rhino.Python および .NET フレームワーク

Rhino.Pythonとは? 私はそれに出くわし、.NET フレームワークのクラスを使用できることも知っていました。Python の一般的なバージョンとの違いは何ですか?

このテクノロジーはどの程度成熟しており、安定していますか?

0 投票する
4 に答える
182 参照

c# - このメソッドの引数として何が期待されますか?

RhinoCommonDivideByLength SDKに基づいて以下のメソッドを使用しようとしていますが、3 番目の引数が何であるかがわかりません。この方法に基づいて以下のコードを記述しようとしましたが、次のエラー メッセージが表示されます。Error: 'Rhino.Geometry.Point3d' is a 'type' but is used like a 'variable'

3 番目の引数は、2 倍ではなくポイントを出力として指定することだと思いました。私は何を間違っていますか?

方法:

コード:

0 投票する
1 に答える
177 参照

python - forループ内でpythonリストの理解は可能ですか?

以下の Rhino v.5 の Python リスト内包表記コードを検討してください。

あなたの多くは、私がここで呼び出している rhinoscriptsyntax コマンドを知らないでしょう:

問題は rhinoscriptsyntax ではなくリスト内包表記にあるため、残りの構文を読んでいただければ幸いです。

私がうまくいかないのは、次のリストスライスコード内の2番目の「j」です。

j=1 の場合のみ結果が得られますが、j=2 の場合は得られませんが、range(1,3) のループで aj を使用しています。

この場合、「for j in range(1,3)」はまったく機能していません。「objlist + str(j)」に使用している「=」の左側でのみ機能していますか?または、リスト内包表記ではまったく使用しないでください。リスト内包表記ですべてを書き直す方法を見つける必要がありますか?

ps 辞書で globals() の問題を解決したとしても、反復ごとに異なる範囲でリストをスライスするために j が必要です。

0 投票する
1 に答える
4103 参照

python - Pythonの配列のリストをグラスホッパーのツリーに変換します

私は Python の初心者で、Grasshopper で使用するためのデータ構造の変換について質問があります。

Python コードからの出力として、キューブ (GUID) のグリッドがあり、これを「世代」と呼んでいます。それに加えて、各立方体が取得する色に関する情報を含むデータのグリッドを出力します。

例: i=3 で j=5 の場合、世代=5 で、立方体があります。他のリストでは、 i=3 の j=5 に対して、 Generation=5 で、文字列として 'green' があります。Grasshopper では、この「緑」の値を見本にリンクしてから、右の立方体に色を付けたいと考えています。

問題は、Python が 3 次元配列を出力するのに対し、Grasshopper はツリーで動作することです。そのため、最初のレベルが「世代」、2 番目のレベルが「i」、3 番目のレベルが「j」であるツリー構造に出力を変換する必要があります。

友人がこのコードを送ってくれたので、それが開始方法だと思います。

clr clr.AddReference("Grasshopper") from Grasshopper.Kernel.Data import GH_Path from Grasshopper import DataTree

皆さんが助けてくれることを願っています!テッサ

これは私の主な機能です:

これはrenderfunctionです:

そして、これは色関数です:

最後に、これが私がGrasshopperに出力したものです:

Grasshopper では、これにより「Iron.Python.Runtime.List」のリストが表示されます。

0 投票する
2 に答える
1838 参照

c# - .3dm ファイルを開くための Rhino 3d プラグイン

rhino 3d のプラグインを作成するのは初めてです。ここでドキュメントとサンプル コードを確認しました: http://wiki.mcneel.com/developer/dotnetplugins

しかし、プラグインから .3dm ファイルを開く方法がわかりません。

誰かが私を助けることができますか?

ありがとう!!

0 投票する
1 に答える
920 参照

python - RhinoPython で geojson ファイルを開く

geojsonの専門知識で問題を解決できることを願っています。私が抱えている問題は、RhinoPython (McNeel の Rhino 5 に組み込まれた IronPython エンジン) に関係しています (詳細はこちら: http://python.rhino3d.com/ )。この質問に答えるのに RhinoPython の専門家である必要はないと思います。

RhinoPython で geojson ファイルを読み込もうとしています。Python のように geojson モジュールを RhinoPython にインポートできないため、ここで提供されているカスタム モジュール GeoJson2Rhino を使用しています: https://github.com/localcode/rhinopythonscripts/blob/master/GeoJson2Rhino.py

現在、私のスクリプトは次のようになっています。

特に:

通常の python 2.7 から geojson データを抽出しようとしているときに正常に動作します。ただし、RhinoPython では次のエラー メッセージが表示されます。gj_data = geojson.load(f) を参照してください。

上にリンクされている GeoJson2Rhino スクリプトを見ていて、関数のパラメーターを正しく設定したと思います。私が知る限り、それは私の geojson ファイルを認識していないようで、文字列としてそれを望んでいます。geojson ファイルとして認識する関数を取得するために使用できる別のファイルを開く関数はありますか?

0 投票する
1 に答える
826 参照

c# - MissingMemberException: 'Guid' オブジェクトに属性 'length' がありません

曲線の長さを取得しようとしていますが、メッセージが表示されます: MissingMemberException: 'Guid' object has no attribute 'length'C# の同じスクリプトは完全に機能します。Python の翻訳の問題点は何ですか? ドキュメンテーションはこちらです。

パイソン:

C#:

0 投票する
1 に答える
1266 参照

python - 曲線を弦の高さで割る

曲線を弦の高さが等しいセグメントに分割したいと思います。Divide Distance ツールを使用して弦の長さを均等に分割できることはわかっていますが、高さのオプションが見つかりません。ここでそれを行ういくつかの本当に汚いコードを書きました。(私を判断しないでください。それは非エレガントで非効率的ですが、仕事はします。)

曲線を弦の高さで割った値

私が本当に聞きたいのは、Grasshopperにはすでにそれを行う機能があるため、バイナリ検索のようなものを作成しても意味がないということですが、それが失敗した場合、誰かがそれを行う方法について何か提案がありますか?より効率的な方法は?

0 投票する
1 に答える
1332 参照

python - RhinoPython を使用して既存のメッシュに面を追加する

RhinoPython を RhinoCommon と共に使用して、既存のメッシュに面を追加しようとしています。すべてが機能しているように見えますが、作成された面は、選択したポイントと同じ場所にありません。選択したポイントのインデックス番号が正しいものではないように見える理由を誰かが説明できますか?