|
Description |
---|
Cette macro fait pivoter l'affichage actuel de 90 ° vers la gauche. Ne fonctionne que si vous êtes en vue de dessus |
Auteur |
Yorik |
Liens |
Recettes macros Comment installer une macro Comment ajouter une barre d'outils |
Version |
01.00 |
Date dernière modification |
2010-11-17 |
Cette macro fait pivoter l'affichage actuel de 90 ° vers la gauche. Ne fonctionne que si vous êtes en vue de dessus.
import math from pivy import coin cam = Gui.ActiveDocument.ActiveView.getCameraNode() rot = coin.SbRotation() rot.setValue(coin.SbVec3f(0,0,1),math.pi/2) nrot = cam.orientation.getValue() * rot cam.orientation = nrot
Ce code affiche :
Ce code fonctionne à partir de la Version FreeCAD 0.16
import math import pivy from pivy import coin Gui.activeDocument().activeView().viewAxonometric() Gui.SendMsgToActiveView("ViewFit") cam = Gui.ActiveDocument.ActiveView.getCameraNode() rot = coin.SbRotation() rot.setValue(coin.SbVec3f(1,0,0),-math.pi/2) # Y pointing upwards (mode 1) #rot.setValue(coin.SbVec3f(0,0,1),math.pi/2) # Z pointing upwards (mode 2 uncomment for use) nrot = cam.orientation.getValue() * rot cam.orientation = nrot Gui.SendMsgToActiveView("ViewFit")
Copiez cette macro dans la console Python de FreeCAD (ou dans votre répertoire de macros) pour faire pivoter la vue 3D dans l'angle (en degrés) et l'axe désiré, intéressant pour créer un plan dans des angles connu.
Colez le code dans la console Python de FreeCAD et tapez Enter > Enter
def RotateView(axisX=1.0,axisY=0.0,axisZ=0.0,angle=45.0): import math from pivy import coin try: cam = Gui.ActiveDocument.ActiveView.getCameraNode() rot = coin.SbRotation() rot.setValue(coin.SbVec3f(axisX,axisY,axisZ),math.radians(angle)) nrot = cam.orientation.getValue() * rot cam.orientation = nrot print axisX," ",axisY," ",axisZ," ",angle except Exception: print "Not ActiveView "
tapez dans la console ex :
RotateView(0,1,0,45)
S'il n'y a pas de document ouvert une erreur est retournée.