Hi @Vinicius_Estrelow, I got a little confused when reading that you want to edit the file's XML... do you mean editing the coding of the pkt file itself? If so, I'm not even sure that the correct programming language for that would be XML or even if that is possible. I have no idea about that.
You can save some time when creating those shapes in Subassembly Composer using copy/paste into the flowchart and then modify a few point/link geometry properties to get almost everything set up.
I was talking about switches in the previous post, but there is another way that can get you out of that. I'll try to break down the process...
1. Test if you are in cut condition or fill condition. You should pick a relevant reference point to evaluate this. You can do this with an point and a decision using:
P1.DistanceToSurface(EG)>0
EG is the name of your target parameter, in the example, mine is EG. You can see this in the target parameters tab

2. Now test if the cut height is greater than or at least equal to a full bench height. You would need the latter from the user. Say this max bench height is 10m. Test this with an auxiliary point and a decision.

If the decision yields True, then draw the sideslope. Then ask if the user wants to have a gutter installed at the berm. You can test this with a Yes/No input parameter and a decision.

Say, in this case the user wants the gutter. Go to step 3.
3. Draw the gutter with its corresponding shape, and then ask the same question of Step 2.

4. Draw the sideslope, and say the gutter is desired again. Then, draw the gutter and ask again the same question of step 2. (Is cut height greater than or equal to the max bench height?)
For this last iteration, I'll say it is not greater than or equal to the max bench height, and will target the terrain, so you can see the full result. See next image.

As you could see, the geometry gets created iteration by iteration. To save time when doing this you can, for example, create a flowchart

that contains the points, links, and shapes for the gutter, and copy/paste it at each bench iteration, then change the point/link geometry properties to make it work.
On the other hand, a completely different thing is if you wanted to find/replace something. Then, you must go to the Edit menu, then to find and replace, and explore the possibilities the software offers to see if what you want is actually possible.

I hope any of the previous helps. Best regards!
Camilo Fernández
Civil engineer | Specialist in design, construction, and maintenance of roadways
