I've downloaded the PP and will have a look tonight.
In short:
The start macro is referenced from the Drawing Origin at 0,0 and won't change with the machining origin.
There is a hierarchy.
When you start a new file, everything is at its default value drawing origin and machining origin
are at x=0 y=0.
When you change the machining origin at the part level, this takes the highest priority
and overrides whatever is in the machining folder. This is so you can have parts with different
machining origins.
If a part has not had its machining origin changed it uses a default value, or if the machining origin has been set in the machining folder it uses that.
I switched to the default PP and generated the code the engraving mops and their position in the gcode are correct for example the rectangle is drawn at X=10, Y=10 (drawing units).
For the part 2 engrave mop: I set the machining origin to X = -3 and Y = 3.
For this mop the gcode starts at X = 13 and Y = 7 and this reflects where you have moved the
machining origin in that part.
Drawing units X= 10 - -3 = 13
and Y= 10 – 3 = 7.
Part one is easy to as the Gode starts at X = 5 and Y = 5. and because you have moved the machining origin for that part from your drawing origin up 5 and across 5.
Something I just noticed is that (I have my stock visible the orange line) the stock follows the machining origin the stock object moves around
on the screen when changing the machining origin
at the machining folder.
David what is the reason you are developing this PP, do you have a specific need as I might have
one that suits your needs or one that might be easily adaptable.
Dave