Makro Otočení pohledu
Popis |
---|
Toto makro otočí objekt o 90° doleva. Funguje jen pokud jste v pohledu shora Version macro : 01.00 Date last modification : 2010-11-17 Autor: Yorik |
Autor |
Yorik |
Download |
None |
Odkazy |
Makro recepty| Jak nainstalovat makra Jak přizpůsobit panely nástrojů |
Verze |
01.00 |
Datum poslední úpravy |
2010-11-17 |
Verze FreeCAD |
None |
Výchozí zástupce |
None |
Viz též |
None |
Description
Toto makro otočí objekt o 90° doleva. Funguje jen pokud jste v pohledu shora
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
Popis
Tento kód pro:
Pro verzi FreeCAD verze 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")
Popis
Tato def pasta v konzole Pythonu FreeCAD (nebo makro) umožňuje otočit pohled ve třech osách a úhel (ve stupních) je zajímavý pro vytvoření plánu na požadovanou pozici.
Použijte
Vložte kód do konzoly Python FreeCAD a zadejte Enter → Enter
Skript
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 "
napsat do konzoly ex:
RotateView(0,1,0,45)
If there is no open document an error is returned