View Issue Details

IDProjectCategoryView StatusLast Update
0004084FreeCADBugpublic2021-02-15 16:14
ReporterJee-Bee Assigned To 
Status newResolutionopen 
Target Version0.20 
Summary0004084: placement within a body breaks after a clone from non origin position
DescriptionThe Clone of the PartDesign Body don't give the result as may expected from what the Clone should do(In my opinion).
However my proposal could be broader interpreted as PartDesign... my issue is with PartDesign.

What is the situation:
Outside PartDesign all objects have a relation with Origin(general one).
In PartDesign normally you start with a Part OR Body. The Part have a relation with the PartOrigin. The Body have relation with PartOrigin OR Origin. The PartDesign Shape have a relation with BodyOrigin OR PartOrigin?
From now on i describe everything with the PartDesign Body as i discovered it with that. I assume the issue is the same with PartDesign Part.
When i make a Shape inside my Body the Shape have a relation with the BodyOrigin. When i change the Placement of the Body (moving), the relation between the Object and the BodyOrigin are constant(don't change). This is off course what i want!
Now a second instance of the same Body is needed. I can create a new Body and go trough all the steps as did before and give it a new Placement. This is Error prone so I create a Clone.
Now comes the Bug in my opinion. The Clone create a new Body as expected but the relation between the Object and the BodyOrigin aren't preserved!
In the Clone the Shape have exactly the same Position as the original Shape. The BodyOrigin is at the general Origin and the Placement is [0,0,0] (for the example i ignored Rotation!).

According to Crisb this is inherent the way FC handles Boolean AND Clone Objects.
In PartWB i understand that. with every Boolean function deciding what origin is choosed(master+slave/calculation/...) Yes i understand(a bit).
But PartDesign is another workflow. All Shapes have a relation to their origin from where they are created... So when Cloneing the Body means that the Shape and his relation to his BodyOrigin are preserved!

My proposal is to modify the PartDesign Clone so that Shape + BodyOrigin (+ Placement) are Preserved.
Steps To Reproduce- start new document
- (go to part design)
- create body
- create object in body (the object has a position/ relation regarding the coordinate system of the body)
- move body around
- create clone from body
internal coordinate system of the body from clone is different than the internal coordinate system of the original body.
The clone internal coordinate system
Additional InformationLink to Topic:
TagsClone, Part Design
FreeCAD Information



2019-08-08 18:35



2022-03-03 13:55

administrator   ~0016808

This ticket has been migrated to GitHub as issue 5974.

Issue History

Date Modified Username Field Change
2019-08-08 18:35 Jee-Bee New Issue
2019-08-08 18:35 Jee-Bee File Added: clone_partdesign_bug.FCStd
2021-02-06 06:50 abdullah Target Version => 0.20
2021-02-15 16:14 Jee-Bee Tag Attached: Part Design
2021-02-15 16:14 Jee-Bee Tag Attached: Clone