Buona sera a tutti,
sono un autodidatta e sto iniziando solo ora a scrivere qualche macro che mi automatizzi un lavoro ripetitivo.
dopo aver caricato un modello,devo creare un bounding box e poi quotare le dimensioni massime di ingombro.
non riesco a fare e seguire lo script qui sotto con Rhino7…fa solo lo zoom di tutto e poi si ferma.
qualcuno mi può aiutare?
grazie buona serata
Stefano
import rhinoscriptsyntax as rs
#fa zoom di tutto
rs.ZoomExtents(view=None,all=True)
# seleziona tutto
def create_and_quote_bounding_box():
#Seleziona tutti gli oggetti nella scena
objects = rs.AllObjects()
# Verifica se ci sono oggetti nella scena
if objects:
# Calcola il bounding box di tutti gli oggetti
bounding_box = rs.BoundingBox(objects)
# Verifica se il bounding box stato calcolato correttamente
if bounding_box:
# Crea un parallelepipedo limite utilizzando il bounding box
rs.AddBox(bounding_box)
rs.SelectObjects(objects)
# Estrai i punti del bounding box
points = rs.BoundingBoxCorners(bounding_box)
# Crea le quote per i lati del bounding box
for i in range(4):
start_point = points[i]
end_point = points[(i+1)%4]
rs.AddAlignedDimension(start_point, end_point)
# Crea le quote per le altezze del bounding box
rs.AddAlignedDimension(points[0], points[4])
rs.AddAlignedDimension(points[1], points[5])
rs.AddAlignedDimension(points[2], points[6])
rs.AddAlignedDimension(points[3], points[7])
rs.SelectObjects(objects)
# Seleziona nuovamente gli oggetti
else:
print("Impossibile calcolare il bounding box degli oggetti.")
else:
print("Nessun oggetto presente nella scena.")
# Esegui la funzione per quotare il bounding box
create_and_quote_bounding_box()