View Issue Details

IDProjectCategoryView StatusLast Update
0002699FreeCADBugpublic2016-09-19 18:35
ReporterDeepSOIC Assigned ToDeepSOIC  
Status closedResolutionfixed 
Product Version0.17 
Target Version0.17 
Summary0002699: Part Offset2D makes direction of Extrude unstable
DescriptionWhen Part Extrude along normal is applied to Part Offset2D, the direction of extrusion changes after saving/reloading a document, or copying the shape.
Steps To Reproduce1. Sketch an ellipse.
2. Part 2D offset it (leave default values)
3. Part Extrude the offset. Leave defaults. Normal direction is +Z.
4. Draft clone the Offset2D.
5. Part Extrude the clone. Extrusion direction is -Z.


1. Sketch ellipse.
2. Part 2D offset.
3. Part Extrude the offset.
-> Extrusion goes up (+Z)
4. Delete Extrude.
5. Save project, and reopen it.
6. Part Extrude the offset.
-> Extrusion goes downwards (-Z).
7. Force recompute.
-> Extrusion direction changes to upwards (+Z).
Additional InformationOS: Windows 10
Word size of OS: 64-bit
Word size of FreeCAD: 64-bit
Version: 0.17.8361 (Git)
Build type: Release
Branch: DeepSOIC10
Hash: 4ac7673e543274bcae856872033a114c7b60481b
Python version: 2.7.8
Qt version: 4.8.7
Coin version: 4.0.0a
OCC version: 7.0.0

>>> App.ActiveDocument.Offset2D.Shape.Orientation
>>> sh = App.ActiveDocument.Offset2D.Shape
>>> Part.Face(sh).Surface.Axis
Vector (0.0, 0.0, 1.0)
>>> Part.Face(sh.copy()).Surface.Axis
Vector (-0.0, -0.0, -1.0)

Seems like there is some volatile reversedness in OCC offset result, that goes away upon copying, or saving to brep then loading...

forum thread:
"Part Offset2D, Draft Clone and Extrude direction weirdness"
TagsNo tags attached.
FreeCAD Information


related to 0002700 assigned Part Part Offset2D fill offset problems 



2016-09-16 19:00


extrude-clone-offset-ellipse.FCStd (Attachment missing)

Related Changesets

FreeCAD: master 47c745f2

2016-09-18 17:45:04


Details Diff
Part: Offset2D: fix save-load instability

Fixes 0002699
It was found out that when direction of normal found by FindPlane
depends on if we are using result of offset directly, or after copying.

The fix (workaround) is to copy offset result inside offset routine, so
that no unstable behavior makes its way to the user.
Affected Issues
mod - src/Mod/Part/App/TopoShape.cpp Diff File

FreeCAD: master c866df1d

2016-09-19 20:34:51


Committer: GitHub Details Diff
Merge pull request 0000285 from DeepSOIC/PartOffset2D_fix1

Part: Offset2D: fix save-load instability (bug 0002699)
Affected Issues
mod - src/Mod/Part/App/TopoShape.cpp Diff File

Issue History

Date Modified Username Field Change
2016-09-16 19:00 DeepSOIC New Issue
2016-09-16 19:00 DeepSOIC Status new => assigned
2016-09-16 19:00 DeepSOIC Assigned To => DeepSOIC
2016-09-16 19:00 DeepSOIC File Added: extrude-clone-offset-ellipse.FCStd
2016-09-16 19:07 DeepSOIC Relationship added related to 0002700
2016-09-19 18:35 DeepSOIC Changeset attached => FreeCAD Master master 47c745f2
2016-09-19 18:35 yorik Changeset attached => FreeCAD Master master c866df1d
2016-09-19 18:35 DeepSOIC Status assigned => closed
2016-09-19 18:35 DeepSOIC Resolution open => fixed