Macro Rotate To Point

Description
Macro for rotate on object on itself with the axis of rotation the boundbox center, center of mass, direction of wire or last point clicked

How To Use
Run the macro and select one object and choice:




 * Point Rotation
 * Bounbox Center : Select the boundBox center to axis rotation
 * Center of Mass : Select the Center of Mass to axis rotation
 * Point Clicked : Select the last point mouse to axis rotation 1: select the object 2: use the for choice point extra object
 * Axis Rotation
 * Rotation(Z) Yaw : Yaw axis
 * Rotation(Y) Pitch : Pitch axis
 * Rotation(X) Roll : Roll axis
 * Coordinates Point clicked
 * DoubleSpinBox : Coordinate X on click mouse (modifiable only with the mode "Point Clicked")
 * DoubleSpinBox : Coordinate Y on click mouse (modifiable only with the mode "Point Clicked")
 * DoubleSpinBox : Coordinate Z on click mouse (modifiable only with the mode "Point Clicked")
 * Position : If this checkBox is checked the rotation is disabled, the object placement is done on the axis seleted
 * Point : If this checkBox is checked one point is created for visualise the point rotation axis : red X, green Y, blue Z
 * Line Edit : The line edit display the original coordinate to axis selected + the input data give in the spinBox
 * Free : If this checkBox is checked the is switched ans the rotation or translation is executed in real time
 * DoubleSpinBox : enter the modification
 * : Apply the modification to the object
 * : Quit the macro
 * : After modify the data of the object you can return to the original placement, If you have not deselected the current object
 * : This option place the object in base coordinate 0, 0, 0
 * : Reset the data in the macro and deselect the current object (same click mouse in the 3DView)

Script
ToolBar Icon PNG  SVG

Macro_Rotate_To_Point.FCMacro

Links
The forum feature req: placement - rotate part around its midpoint

My macro to Gist mario52a

Version
2020/03/07 ver 00.05.2 : correct the bug translation delete "direction = myObject.Placement.Rotation.multVec(direction)"

2020/03/01 ver 00.05.1 : correct the position of the test "FreeCAD version"

2020/02/29 ver 00.05 : convert to Hdpi (Layout) and add Direction

06/04/2019 ver 00.04 : Python 3

29/03/2018 ver 00.03 : comment the "FreeCAD.ActiveDocument.recompute" the change value are too slow with complex element in FreeCAD 0.17.... see FC0.17 recompute strange behaviour (regression)

27/03/2017 ver 00.02 : modify the spinbox "Pos" now accept the negative values

05/03/2017 ver 00.01 : add 3 spinbox for displayed the coordinates X Y Z on click mouse

04/03/2017 ver 00.00