Vectorworks 3Dパス図形をまとめて作るスクリプト

Vectorworksの3Dパス図形は、複数のパスに対して同時に同じ断面を適用することができません。造作関連で結構手間になるときがあります。

今回は同じ断面に対して、複数のパス図形をまとめて割り当てるスクリプトです。実際は繰り返し処理を行っているだけなので、同時に編集とかはできません。

#!/usr/bin/python
# -*- coding: utf-8 -*-
# 2023.01.10

def callbackUuid(hand):
    uuidList.append(vs.GetObjectUuid(hand))

uuidList = []
vs.ForEachObject(callbackUuid, "(VSEL=TRUE)")

firstUuid = vs.GetObjectUuid(vs.GetObject('danmen'))
uuidList.remove(firstUuid)

baseHand = vs.GetObjectByUuid(firstUuid)
center = vs.HCenter(baseHand)
vs.HMove(baseHand,-1*center[0],-1*center[1])

for uuid in uuidList:
	pathHand = vs.GetObjectByUuid(uuid)
	sectHand = vs.HDuplicate(baseHand,0,0)
	h = vs.CreateCustomObjectPath('Extrude Along Path', pathHand, sectHand)
vs.DelObject(baseHand)

注意点

・断面図形には「danmen」という名前を設定する必要があります。

・断面図形とパス図形をすべて選択してスクリプトを実行してください。

[スクリプト] 3Dパス図形 まとめて作る (Vectorworks / ベクターワークス) - YouTube

電球を使った造作を作ってます。作成の過程で3Dパス図形を大量に作成する必要があったため、スクリプトで処理しています。スクリプトサンプルはこちら:https://miyukkyo.…

※スクリプトサンプルは個人としてご利用ください。サンプル(改変も含む)の公開、配布、販売はお控えください。

Follow me!

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です