View Issue Details

IDProjectCategoryView StatusLast Update
0003789FreeCADBugpublic2021-02-06 06:49
Reporteryorik Assigned Toyorik  
PrioritynormalSeverityminorReproducibilityhave not tried
Status assignedResolutionopen 
PlatformPCOSDebianOS VersionTesting 64bit
Target Version0.20 
Summary0003789: Fix movement of children of Arch objects
DescriptionWhen rotating an Arch object that has additions, the result is not correct (the additions get disaligned), and if removing the addition, moving it to the right place and re-add it, the result is not correct either. So:

- The code that moves children (ArchComponent.onChanged) is buggy
- The code that constructs the final object (ArchComponent.processSubShapes) is buggy too

Below is an alternative snippet I tested but doesn't work either. Seems a better base to start with, though
Additional Informationhttps://forum.freecadweb.org/viewtopic.php?f=23&t=33669&p=281903#p281903

Snippet for ArchComponent.py, L330 - different method to calculate child movement

# TODO - Implement/test this method instead - calculate additional movement caused by the rotation
diff = child.Placement.Base.sub(self.oldPlacement.Base)
if diff.Length:
    diff = self.oldPlacement.inverse().multVec(diff) # move back to origin
    diff = obj.Placement.multVec(diff) # move to the new location
    npos = obj.Placement.Base.add(diff) # new position of the child placement
    child.Placement.Base = npos
TagsNo tags attached.
FreeCAD Information

Activities

yorik

2019-01-23 21:57

administrator  

test structures.FCStd (11,837 bytes)

mickele

2019-10-30 14:16

reporter   ~0013795

Any news about this bug?

yorik

2022-03-03 13:55

administrator   ~0016703

This ticket has been migrated to GitHub as issue 5868.

Issue History

Date Modified Username Field Change
2019-01-23 21:57 yorik New Issue
2019-01-23 21:57 yorik Status new => assigned
2019-01-23 21:57 yorik Assigned To => yorik
2019-01-23 21:57 yorik File Added: test structures.FCStd
2019-10-30 14:16 mickele Note Added: 0013795
2021-02-06 06:49 abdullah Target Version => 0.20