We can divide nodes in mesh into nodes at boundaries and interior nodes. Interior nodes are fully movable. Boundary nodes have additional geometric constraints to assure proper model representation. For a 3D point two kind of constrains can be applied:
Determination of required spacing between nodes is based on node spacing function. Initial placement of nodes should conform to spacing function. If the spacing in relaxation step is not consistent with node placement, movement of the interior nodes will be substantial.
With torsion strings in the angles we can assure proper shape of the elements. Ratio between length and angle weight controls the final shape of element. This ratio can vary over the domain.