AddPointsAddPoints関数で、複数の点を作成することができます。
本記事のGrasshopperファイルのダウンロードはこちら

1つ目の例では、上の画像のように、点を3つ作成してます。

使用コンポーネント 1: Python 3 Script 2: Point
import rhinoscriptsyntax as rs
# RhinoをPythonから操作するためのライブラリを読み込む
corrds = [(0,0,0),(10,0,0),(20,0,0)]
# 複数の点の座標(X, Y, Z)をリストで定義
pts = rs.AddPoints(corrds)
# 指定した複数の座標に点を一括で作成「Python 3 Script」には、上記のコードが記載されています。
順番に、コードの解説をしていきます。
corrds = [(0,0,0),(10,0,0),(20,0,0)]複数の点の座標を、リストとしてまとめています。
それぞれの (x, y, z) が1つの点を表しており、この場合は3つの点が定義されています。
変数名「corrds」は、座標を意味する「Coordinates」から付けています。
pts = rs.AddPoints(corrds)AddPoints関数で、複数の点を作成します。
変数corrdsに格納された複数の座標をもとに点を作成し、その結果をptsに代入しています。
「Python 3 Script」の右側の端子名を「pts」に設定すると、その端子から点データが出力されます。

2つ目の例では、上の画像のように、forループを使って等間隔に点を配置します。

使用コンポーネント 1: Python 3 Script 2: Point
import rhinoscriptsyntax as rs
# RhinoをPythonから操作するためのライブラリを読み込む
corrds = []
# 点の座標を格納するための空のリストを作成
for x in range(0, 100, 10):
# 0から100未満まで、10ずつ増加する数値を順番に取り出す(0, 10, 20, ... 90)
corrds.append((x,0,0))
# 各xの値を使って座標(x, 0, 0)を作成し、リストに追加
pts = rs.AddPoints(corrds)
# 作成した複数の座標に点を一括で作成「Python 3 Script」には、上記のコードが記載されています。
順番に、コードの解説をしていきます。
corrds = []点の座標を格納するための空のリストを作成しています。
このリストに、後から複数の座標を追加していきます。
for x in range(0, 100, 10):
corrds.append((x,0,0))forループを使って、0から100未満までの値を10ずつ変化させながら(0, 10, 20, … 90)、座標を順番に作成しています。
その中で、(x, 0, 0) という座標を作成し、corrdsに追加します。
これにより、X方向に等間隔で並んだ点の座標が作成されます。
pts = rs.AddPoints(corrds)AddPoints関数で、複数の点を作成します。
corrdsに格納された複数の座標をもとに点を作成し、その結果をptsに代入しています。
「Python 3 Script」の右側の端子名を「pts」に設定すると、その端子から点データが出力されます。

3つ目の例では、上の画像のように、2重のforループを使って、点をグリッド状に配置します。

使用コンポーネント 1: Python 3 Script 2: Point
import rhinoscriptsyntax as rs
# RhinoをPythonから操作するためのライブラリを読み込む
corrds = []
# 点の座標を格納するための空のリストを作成
for x in range(0, 100, 10):
# 0から100未満まで、10ずつ増加するX座標を順番に取り出す
for y in range(0, 100, 10):
# 0から100未満まで、10ずつ増加するY座標を順番に取り出す
corrds.append((x,y,0))
# 各X・Yの組み合わせで座標(x, y, 0)を作成し、リストに追加
pts = rs.AddPoints(corrds)
# 作成したすべての座標に点を一括で作成「Python 3 Script」には、上記のコードが記載されています。
順番に、コードの解説をしていきます。
corrds = []点の座標を格納するための空のリストを作成しています。
このリストに、後から複数の座標を追加していきます。
for x in range(0, 100, 10):
for y in range(0, 100, 10):
corrds.append((x,y,0))2重のforループを使って、X方向とY方向の値をそれぞれ変化(0, 10, 20, … 90)させています。
その中で、各組み合わせごとに (x, y, 0) の座標を作成し、corrds に追加しています。
これにより、点がグリッド状(格子状)に並ぶ座標が作成されます。
pts = rs.AddPoints(corrds)AddPoints関数で、複数の点を作成します。
corrdsに格納された複数の座標をもとに点を作成し、その結果をptsに代入しています。
「Python 3 Script」の右側の端子名を「pts」に設定すると、その端子から点データが出力されます。




Comment