getOBB
getOBB
obb = <entity>:getOBB(useWcsAsDefault)
Ritorna l'Oriented Bounding Box di un oggetto. Questo metodo vuole in ingresso l’entità e ritorna una tabella con la definizione dell’OBB:
- “origin” - Origine del sistema di coordinate (Point)
- “direction1” - Vettore 1 dell'OBB (Vector3d). Riferito al vettore X dell'OCS.
- “direction2” - Vettore 2 dell'OBB (Vector3d). Riferito al vettore Y dell'OCS.
- “direction3” - Vettore 3 dell'OBB (Vector3d). Riferito al vettore Z dell'OCS.
Ritorna nil se l'OCS non è definito. Se viene passato 1 come valore di useWcsAsDefault allora viene calcolato il normale BB rispetto al WCS se il sistema di coordinate oggetto non è definito.
Cos'è l'OCS
L'OCS è un sistema di coordinate che può essere definito su ogni entità di AutoCAD. Questo sistema di coordinate viene automaticamente aggiornato dal CAD per ogni trasformazione geometrica a cui viene sottoposta l'entità. E' memorizzato sotto forma di dati estesi all'interno dell'entità.
A cosa serve l'OCS
L'OCS serve per avere sempre il corretto orientamento nello spazio di un oggetto.
Esempio
local ent = entsel("\nSelect an entity")
-- get the Oriented Bounding Box
local obb = ent:getOBB()
local vx = obb["direction1"]
local vy = obb["direction2"]
local vz = obb["direction3"]
local lunghezza = vx:length()
local larghezza = vy:length()
local altezza = vz:length()