I dont understand how position can be chosen. Even if it is a rough guess i didnt get clear picture of it and also I didn’t understand rool, pitch, yaw positions for each parent link. Can you explain it a bit in an intuitive way.
So in URDFS/XACROS you pasition an element in basically two ways that get combined if used both:
Is through the origin tag in the links elements. There you can position the visual/collision/inertia elements repect to the origin of that link. This is used to reposition meshes because their origin was not set properly or to set the inertia origin in a different place to change the phyisical behaviour.
When you use a joint to connect two links. Ths will position the child links reffered to the parents origin. This is where you can position the different parts of a robot, is like the assembly.
As for the Roll pitch and yaw, there are the angles with which you define the ORIENTATION of a LINK. Lets say if you want the arm part of a robot to be oriented forward when assembling it , here is where you have to work.
Roll : Is how many radians to rotate the link around the X axis of that same link.
Pitch: is how many radians you rotate the link around the Y axis of that same link
Yaw: is how many radians you rotate the link around the Z axis of that same link
These definitions can vary specially if the axis have been changed. But that’s the theory.