New property is added to Assembly container named 'AutoRelax' to let
user decide. It is by default off. PlaneCoincident auto relax will be
always on regardless of this setting.
The order of appearance of the constraints determines how redundancies
are handled.
PlaneCoincident: the second PlaneCoincident of the same pair or parts is
relax to a 2d point horizontal or vertical constraint. The third and
onwards are ignored. Any PlaneCoincident constraint will be ignored if
there are any existing PlaneCoincident or AxialAlignment.
PlaneAlignment: the second one is relaxed to two PointInPlane or
PointPlaneDistance constraint. The third one is relaxed to one
PointInPlane or PointPlaneDistance. The forth and onwards are ignored.
Any PlaneCoincident constraint will be ignored if there are any existing
PlaneCoincident or AxialAlignment.
AxialAlignment: ignored if there are any existing PlaneAlignment or
PlaneCoincident constraints
The SketchPlane expects the first element to be a planar face/edge to
define a work plane for any following draft wire/circle/arc elements.
The 2D constrainted elements can either be inside the defining
SketchPlane constraint, or other constrains following the SketchPlane
in the constraint group.
Add a new SketchPlane to define a new work plane for any following
draft elements. Add an empty SketchPlane to undefine the work plane,
effectively making any following draft elements free in 3D space.