勉強を進めようという前にごく基本的なデータの取り込みで少しハマりました...。
単純な座標データの取り込みなんですが、やってみるとなかなか思い通りにいかないもんです。
Grasshopper 0.9.0076
Read File Component
読み込むだけなら Read File で簡単にできるのですが、そのあとの整形・変換が注意ポイントです。Split Text Component
Read File で取り込むと1行ずつの文字列のリストになります。座標データなので各カラムを分割して数値に直す必要があります。
文字列の分割には Split Text を使いますが、"セパレータ文字"を指定するところで注意です。
※1列目はインデックス番号
使いやすいようにとセパレーター(区切り文字:Delimiter)を Value List にしてみたのですが、これが問題で書き方によって認識したりしなかったりします...。
カンマとスペースはダブルクォーテーションで囲む。
タブは通常プログラムコードではエスケープして ¥t と書くのですが使えないようです。
{tab} というGrasshopper上の特殊文字の指定も認識しません。
結局、Panelでタブ(エスケープしないで)を接続したら機能しました。
区切り文字にタブは向かないということなのでしょう...。
GhPython Component
取り込みと整形・リスト化にPythonを使う方法も試しました。こちらも区切り文字(Delimiter)を指定できるようにしたのですが、
ここでは Value List でシングルクォーテーションで囲った¥t が使えます。
{tab}も使えます。
逆にダブルクォーテーションで囲った¥t はダメでした。
IronPython.Runtime.List
Pythonを使う時、ちょっとわかりづらいのがPythonのリストを直接出力できないということです。そのまま出力しようとするとIronPython.Runtime.List というリストになって、データとして認識しません。
forumの過去スレを調べて解決しましたが、初心者にはわかりづらいポイントですね。
0 件のコメント:
コメントを投稿