Tasks Placement

Overview
"Placement" is how FreeCAD specifies the location and attitude of an object in space. Placement can be specified in multiple forms.

A practical example of the use of this command is located in the tutorial Aeroplane.

Angle, Axis and Position


Placement = [Angle, Axis, Position]

Angle = r is a scalar indicating the amount of rotation of the object about Axis. Entered as degrees, but stored internally as radians.

Axis = (ax,ay,az) is a unit vector describing an axis of rotation (See Note about axis of rotation). Examples are: (1,0,0)      ==> about X axis (0,1,0)      ==> about Y axis (0,0,1)      ==> about Z axis (0.71,0.71,0) ==> about the line y=x Position = (x,y,z) is a Vector describing the world coordinates of the reference point of the object.

Position and Yaw, Pitch and Roll


Placement = [Position, Yaw-Pitch-Roll]

Position = (x,y,z) is a Vector describing the world coordinates of the reference point of the object.

Yaw-Pitch-Roll = (y,p,r) is a tuple that specifies the attitude of the object. Values for y,p,r  specify degrees of rotation about each of z,y,x. Sometimes referred to as "Euler angles". (http://en.wikipedia.org/wiki/Euler_angles)

Matrix
(see illustration of Python console) Placement = Matrix is a 4x4 affine transformation matrix (http://en.wikipedia.org/wiki/Affine_transformation) of the form:

((r11,r12,r13,t1),   (r21,r22,r23,t2),    (r31,r32,r33,t3),    (0,0,0,1)), with rij specifying rotation and ti specifying translation.

Placement Dialog


The Placement Dialog is invoked from the Edit menu. It is used to precisely rotate/translate objects. It is also used when we need to create a sketch on a "non standard" plane or change a sketch's orientation to a new plane.

The Apply incremental changes to object placement tick box is useful when translations/rotations are to be made relative the object's current position/attitude, rather than to the original position/attitude. .

Issues

 * As of version 0.13, update of Placement properties in the Data tab has been disabled for objects created with PartDesign. Placement functionality will eventually be handled in the Assembly workbench.