[python] Comment donner un nom et une couleur aux formes ?

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
igjaegle
Posts: 2
Joined: Fri Sep 27, 2013 8:25 am

[python] Comment donner un nom et une couleur aux formes ?

Postby igjaegle » Thu Oct 17, 2013 8:02 pm

Bjr,

Comme je n'ai pas trouve de post similaire a ma question, je fais un post.

Je voudrais savoir comment donner un nom et une couleur aux formes en python, par example:

Code: Select all

##GEM
dx=7.4
dy=7.4
dz=0.005
GEM = Part.makeBox(dx,dy,dz,Base.Vector(-dx/2.,-dy/2.,-dz/2.),Base.Vector(0,0,1))
comment donner a la partie GEM, le nom GEM et la couleur orange ?

Merci bcp d'avance, bien amicalement, Igal.
User avatar
rockn
Posts: 1573
Joined: Wed Sep 28, 2011 10:39 am
Location: Toulouse, France
Contact:

Re: [python] Comment donner un nom et une couleur aux formes ?

Postby rockn » Thu Oct 17, 2013 9:44 pm

Bonjour,

Pour le nom tu peux faire comme ceci :

Code: Select all

dx=7.4
dy=7.4
dz=0.005

doc = FreeCAD.ActiveDocument
obj=doc.addObject("Part::Box","GEM")
obj.Length = dx
obj.Width = dy
obj.Height = dz
pos = FreeCAD.Vector(-dx/2.,-dy/2.,-dz/2.)
rot = FreeCAD.Rotation(FreeCAD.Vector(0,0,1),0)
obj.Placement = FreeCAD.Placement(pos,rot)
Par contre pour la couleur je ne sais pas faire. Il me semble que c'est l'objet ViewProvider qui gère l'affichage (couleur, transparent, etc...) d'une pièce
Formations et tutoriels FreeCAD en Français, soutenez moi : https://www.tipeee.com/formations-freecad
mario52
Posts: 2652
Joined: Wed May 16, 2012 2:13 pm

Re: [python] Comment donner un nom et une couleur aux formes ?

Postby mario52 » Fri Oct 18, 2013 9:37 am

Bonjour

La couleur pour votre forme

Code: Select all

FreeCADGui.getDocument("Unnamed").getObject("GEM").ShapeColor = (1.000000,0.333333,0.000000)
ici pour une couleur différente sur chaque face d'un cube appelé Box (le nom par défaut du premier cube)

Code: Select all

Gui.ActiveDocument.Box.DiffuseColor=[(1.,0.,0.),(0.,1.,0.),(0.,0.,1.),(1.,1.,0.),(1.,0.,1.),(0.,1.,1.)]
Vous pouvez aussi accéder à une commande par le menu, sélectionnez votre forme dans la Vue combinée et faites clic droit une fenêtre s'ouvre et sélectionnez "Définir les couleurs ..." et là, vous sélectionnez vos faces et couleurs.
Pour vous documenter sur le code créé par FreeCAD, vous pouvez regarder et copier le code qui s'affiche dans la console pour reproduire votre commande.
pour voir la console Python (tout le code créé pendant votre travail) : Menu Affichage > Vues > Console Python
pour voir la vue rapport (tous les messages d'exécutions) : Menu Affichage > Vues > Vue rapport
mario
Maybe you need a special feature, go into Macros_recipes and Code_snippets, Dialog creation. My macros on Gist.github.