Get Data From CSV File
ダウンロード
Get Data From CSV File
バージョン
v1.1
概要
こ のスクリプトはCSVファイルに書き込まれている頂点情報を読み込み、MODO上で点ポリゴン化します。
注意
CSVファイルにはXYZ座標値が書き込まれているものとします。CSVファイルの区切り文字は ‘,’ とします。
例
0,0.1,0
0,0.2,0
0,0.3,0
0,0.4,0
0,0.5,0
0,0.6,0
0,0.7,0
0,0.8,0
0,0.9,0
0,1,0
解説
このスクリプトではXYZ座標値が書き込まれたCSVファイルを読み込み、MODO上でその座標値に対して点ポリゴンを作成します。
本スクリプトではCSVファイルを指定するために、ファイルダイアログを開きますが、このファイルダイアログを開くためのソースは、SDK Wikiの下記のページに掲載されています:
http://sdk.luxology.com/wiki/Dialog_Commands
これを元にCSVファイルを指定した後は、1行ずつ読み込んで、実際にポイントを作成しています。ポイントを作成するには、vert.new を使用すればOKなのですが、今回点ポリゴン化するところまでを考え、ポイントツールを起動し、点ポリゴン化のオプションをオンにした状態で適用するようにしています:
50: # Activate Point Tool
51: lx.eval( ‘tool.set prim.makeVertex on 0’ )
52: lx.eval( ‘tool.attr prim.makeVertex polygon true’ )
53:
54: # Read each line
55: for line in csv_file :
56:
57: # Get point position from line
58: px, py, pz = line.split( ‘,’ )
59:
60: # Set Point Position and apply
61: lx.eval( ‘tool.attr prim.makeVertex cenX %s’ % px )
62: lx.eval( ‘tool.attr prim.makeVertex cenY %s’ % py )
63: lx.eval( ‘tool.attr prim.makeVertex cenZ %s’ % pz )
64: lx.eval( ‘tool.apply’ )
65:
66: # Drop Point Tool
67: lx.eval( ‘tool.set prim.makeVertex off 0’ )
※ver1.1において、進捗バーを出すように修正しました。