dynamoで壁の位置を出力する時は注意が必要です。
「Element.GetLocation」で位置を出力すると、躯体芯ではなく壁芯が出力されてしまうためです。
外側と内側で厚みの違う壁を下図のように配置しました。
通芯からの距離は、
壁芯:1000 / 躯体芯:913
となっています。
Element.GetLocationで壁の位置を取得します。
「Watch」ではY=1000となっており、壁芯の位置が取得されていることがわかります。
内側と外側で厚みが違う場合は、違う位置を取得してしまいます。
回避策は「Clockwork」の「FamilyType.CompoundStructureLayers」を使い、レイヤーの構造を踏まえた処理にすることです。
上記ノードでは、レイヤーごとの厚さなどの構造情報を取得できます。
取得した値を元に躯体芯の位置を出します。
壁位置のチェックなどの際にはご注意ください。
R.Y
0 件のコメント:
コメントを投稿