View Issue Details

IDProjectCategoryView StatusLast Update
0001537FreeCADMerge requestpublic2014-05-19 00:38
ReportershoogenAssigned Toyorik 
PrioritynormalSeverityfeatureReproducibilityN/A
Status closedResolutionfixed 
Product Version 
Target VersionFixed in Version 
Summary0001537: python function to apply a placement to a shape
DescriptionWhen creating a complicated feature Tree i would like to cascade the placements. This works for many OCCT operations, but there is currently no operation to do it manually.
Working examples:
* Booleans create a Shape, which placement is null
* transformGeometry create a new shape which placement is null
* removeSplitter (AFAIK) creates a new shape which placement is null
For some special shapes it is possible to apply the Placement to the underlaying geometry and reset the top level-placement to null.
One example calling Part.Solid(oldsolid).
But this workaround is not available for other types of shapes. Especially compounds are problematic since there is no way (from) python to extract the first level children of a compound. Those could be feed i a list to the Part.Compound() Constructor.
 
The motivation behind this is, that the "top level placement" of a Shape is linked to the Feature Placement. Therefore it is desirable to return a Shape with a null placement in the execute function of a parametric feature.

I see the main usecase in a function that would be called after modifying a shape with transformShape.
TagsNo tags attached.

Relationships

related to 0001544 closedwmayer Python function to retrive direct children of a shape using TopoDS_Iterator 
related to 0001543 closedyorik OpenSCAD.RefineShape Features breaks Placement for 'faces' 

Activities

shoogen

2014-05-09 10:39

developer   ~0004647

http://forum.freecadweb.org/viewtopic.php?f=3&t=5992
http://forum.freecadweb.org/viewtopic.php?f=8&t=5488

shoogen

2014-05-12 18:13

developer   ~0004666

Part.Face(oldface) seems to keep the placement

shoogen

2014-05-14 17:19

developer   ~0004678

please rebase and merge

git://github.com/5263/FreeCAD.git dev-openscad

Related Changesets

FreeCAD: master 27a2e52d

2014-05-14 19:11:36

shoogen


Committer: yorik Details Diff
+ fixes 0001537: python function to apply a placement to a shape Affected Issues
0001537
mod - src/Mod/OpenSCAD/OpenSCADUtils.py Diff File

Issue History

Date Modified Username Field Change
2014-05-09 10:31 shoogen New Issue
2014-05-09 10:39 shoogen Note Added: 0004647
2014-05-12 09:01 shoogen Relationship added related to 0001543
2014-05-12 18:13 shoogen Note Added: 0004666
2014-05-14 10:53 shoogen Relationship added related to 0001544
2014-05-14 17:19 shoogen Note Added: 0004678
2014-05-14 17:19 shoogen Category Feature => Merge request
2014-05-19 00:38 yorik Changeset attached => FreeCAD Master master 27a2e52d
2014-05-19 00:38 yorik Assigned To => yorik
2014-05-19 00:38 yorik Status new => closed
2014-05-19 00:38 yorik Resolution open => fixed