Python Vertices d'une BoundingBox

Forum destiné aux questions et discussions en français
Forum rules
Règles du forum et informations utiles.

VEUILLEZ LIRE CECI AVANT DE DEMANDER DE L'AIDE
User avatar
petit_chat_noir
Posts: 36
Joined: Wed Oct 02, 2019 6:45 pm

Python Vertices d'une BoundingBox

Postby petit_chat_noir » Thu Oct 10, 2019 8:07 am

Bonjour tout le monde,
Je sèche sur un point :D
je suis en train de coder un petit workbench en python et je suis bloqué pour récupérer des valeurs
en gros j'ai un object de type Beam créé depuis mon script python, et je voudrait récupérer les points(Vertices) de la boundingbox de celle-ci.
J'arrive à récupérer ma boudingBox qui me renvoi ceci:
Vertices:BoundBox (-2.15704e-32, -100, -50, 1000, 100, 50)

Code: Select all

volume= Arch.makeStructure(None,1000,200,100)
FreeCAD.ActiveDocument.recompute()
shape = volume.Shape
bbox=shape.BoundBox
Mais par contre je n'arrive pas à récupérer ces deux points en Vector. Le top pour moi serait d'avoir les coordonnées des 8 points qui forment la boudingbox...

j'ai essayé bbox[0] mais je me fait insulter.....
User avatar
rockn
Posts: 1573
Joined: Wed Sep 28, 2011 10:39 am
Location: Toulouse, France
Contact:

Re: Python Vertices d'une BoundingBox

Postby rockn » Thu Oct 10, 2019 8:21 am

En python tu peux taper print(type(variable)) pour en savoir plus sur ta variable.
Ici c'est une classe, donc il y a des méthodes associées.
Avec la console python dans FreeCAD et l'autocomplétion on obtient les informations suivante :

Code: Select all

>>> bbox
BoundBox (-2.15704e-32, -100, -50, 1000, 100, 50)
>>> print(type(bbox))
<class 'Base.BoundBox'>
>>> bbox.Center
Vector (500.0, 0.0, 1.1013412404281553e-13)
>>> bbox.XMin
-2.1570415377137042e-32
>>> bbox.XMax
1000.0
Du coup il faut se créer le vecteur sois même :

Code: Select all

>>> FreeCAD.Vector(bbox.XMin, bbox.YMin, bbox.ZMin)
Vector (20.0, -80.0, -30.0)
Formations et tutoriels FreeCAD en Français, soutenez moi : https://www.tipeee.com/formations-freecad
User avatar
petit_chat_noir
Posts: 36
Joined: Wed Oct 02, 2019 6:45 pm

Re: Python Vertices d'une BoundingBox

Postby petit_chat_noir » Thu Oct 10, 2019 9:03 am

rockn wrote:
Thu Oct 10, 2019 8:21 am
En python tu peux taper print(type(variable)) pour en savoir plus sur ta variable.
Ah oui en effet! ca va grandement accélérer mon développement. Ca fait trois jour que je m'arrache les cheveux à trouver les fonctions des classes que j'utilise !