It may be sufficient to assign a name to the face, like in my example, the face could be created from a wire, if I want to modify the face I modify the wire.
Sorry, now i could see the point, i modify the wire that is an "ancestor" of the face, so some link has to be retained to match the wire with the "newly constructed" face.
I see that when i assign the faces to the makeShell i could use an arbitrary order and FreeCAD will take care to joint the proper edges to form the shell.
But if there is a "consistent naming", i could use the name of the face to refer to this face when it is joined in the shell and exposed as a "boundary" of the solid. If I coudl refer to this face with "face2" and then when it is "assigned" to the solid i could refer to it as
Code: Select all
solid33.face2.color = yellow
When speaking of this sort of things, it is more easy for me to be more concrete with examples.
@wsteffe I know that Sketch is important but I think that a more low level approach using Part,Faces,Edges will be sufficient, as if using scripting is the "more direct" way to model complex things, and the user has to take care of the correctness of the model, I wish that FreeCAD will emit some warning and errors when I'm doing something wrong, or at least say me "You are trying do a wrong thing, I have tried to help you doing this" but maybe this is a too much ideal world.
Regards to All
Carlo D.