View Issue Details

IDProjectCategoryView StatusLast Update
0001911FreeCADBugpublic2015-01-12 00:39
Reportermore11 Assigned Toyorik  
PrioritynormalSeverityminorReproducibilityalways
Status closedResolutionfixed 
PlatformDell studio xpsOSWindows 7OS Version64 bit
Product Version0.14 
Summary0001911: Crashes when exporting simple drawing to dxf
Descriptionprocessing Shape
Traceback (most recent call last):
  File "<string>", line 4, in <module>
  File "C:\Program Files\FreeCAD 0.14\Mod\Draft\importDXF.py", line 1774, in export
    block = getBlock(sh,ob,lwPoly)
  File "C:\Program Files\FreeCAD 0.14\Mod\Draft\importDXF.py", line 1606, in getBlock
    writeShape(sh,obj,block,lwPoly)
  File "C:\Program Files\FreeCAD 0.14\Mod\Draft\importDXF.py", line 1635, in writeShape
    dxfobject.append(dxfLibrary.PolyLine(getWire(wire,nospline), [0.0,0.0,0.0],
  File "C:\Program Files\FreeCAD 0.14\Mod\Draft\importDXF.py", line 1552, in getWire
    edges = DraftGeomUtils.sortEdges(wire.Edges)
  File "C:\Program Files\FreeCAD 0.14\Mod\Draft\DraftGeomUtils.py", line 612, in sortEdges
    olEdges = sortEdges(lEdges, result[3].Vertexes[result[2]])
  File "C:\Program Files\FreeCAD 0.14\Mod\Draft\DraftGeomUtils.py", line 622, in sortEdges
    next = sortEdges(lEdges, result[3].Vertexes[-((-result[2])^1)])
  File "C:\Program Files\FreeCAD 0.14\Mod\Draft\DraftGeomUtils.py", line 622, in sortEdges
    next = sortEdges(lEdges, result[3].Vertexes[-((-result[2])^1)])
  File "C:\Program Files\FreeCAD 0.14\Mod\Draft\DraftGeomUtils.py", line 622, in sortEdges
    next = sortEdges(lEdges, result[3].Vertexes[-((-result[2])^1)])
  File "C:\Program Files\FreeCAD 0.14\Mod\Draft\DraftGeomUtils.py", line 622, in sortEdges
    next = sortEdges(lEdges, result[3].Vertexes[-((-result[2])^1)])
  File "C:\Program Files\FreeCAD 0.14\Mod\Draft\DraftGeomUtils.py", line 622, in sortEdges
    next = sortEdges(lEdges, result[3].Vertexes[-((-result[2])^1)])
  File "C:\Program Files\FreeCAD 0.14\Mod\Draft\DraftGeomUtils.py", line 622, in sortEdges
    next = sortEdges(lEdges, result[3].Vertexes[-((-result[2])^1)])
  File "C:\Program Files\FreeCAD 0.14\Mod\Draft\DraftGeomUtils.py", line 622, in sortEdges
    next = sortEdges(lEdges, result[3].Vertexes[-((-result[2])^1)])
  File "C:\Program Files\FreeCAD 0.14\Mod\Draft\DraftGeomUtils.py", line 622, in sortEdges
    next = sortEdges(lEdges, result[3].Vertexes<type 'exceptions.RuntimeError'>: maximum recursion depth exceeded in cmp
Stack Trace: Traceback (most recent call last):
  File "<string>", line 4, in <module>
  File "C:\Program Files\FreeCAD 0.14\Mod\Draft\importDXF.py", line 1774, in export
    block = getBlock(sh,ob,lwPoly)
  File "C:\Program Files\FreeCAD 0.14\Mod\Draft\importDXF.py", line 1606, in getBlock
    writeShape(sh,obj,block,lwPoly)
  File "C:\Program Files\FreeCAD 0.14\Mod\Draft\importDXF.py", line 1635, in writeShape
    dxfobject.append(dxfLibrary.PolyLine(getWire(wire,nospline), [0.0,0.0,0.0],
  File "C:\Program Files\FreeCAD 0.14\Mod\Draft\importDXF.py", line 1552, in getWire
    edges = DraftGeomUtils.sortEdges(wire.Edges)
  File "C:\Program Files\FreeCAD 0.14\Mod\Draft\DraftGeomUtils.py", line 612, in sortEdges
    olEdges = sortEdges(lEdges, result[3].Vertexes[result[2]])
  File "C:\Program Files\FreeCAD 0.14\Mod\Draft\DraftGeomUtils.py", line 622, in sortEdges
    next = sortEdges(lEdges, result[3].Vertexes[-((-result[2])^1)])
  File "C:\Program Files\FreeCAD 0.14\Mod\Draft\DraftGeomUtils.py", line 622, in sortEdges
    next = sortEdges(lEdges, result[3].Vertexes[-((-result[2])^1)])
  File "C:\Program Files\FreeCAD 0.14\Mod\Draft\DraftGeomUtils.py", line 622, in sortEdges
    next = sortEdges(lEdges, result[3].Vertexes[-((-result[2])^1)])
  File "C:\Program Files\FreeCAD 0.14\Mod\Draft\DraftGeomUtils.py", line 622, in sortEdges
    next = sortEdges(lEdges, result[3].Vertexes[-((-result[2])^1)])
  File "C:\Program Files\FreeCAD 0.14\Mod\Draft\DraftGeomUtils.py", line 622, in sortEdges
    next = sortEdges(lEdges, result[3].Vertexes[-((-result[2])^1)])
  File "C:\Program Files\FreeCAD 0.14\Mod\Draft\DraftGeomUtils.py", line 622, in sortEdges
    next = sortEdges(lEdges, result[3].Vertexes[-((-result[2])^1)])
  File "C:\Program Files\FreeCAD 0.14\Mod\Draft\DraftGeomUtils.py", line 622, in sortEdges
    next = sortEdges(lEdges, result[3].Vertexes[-((-result[2])^1)])
  File "C:\Program Files\FreeCAD 0.14\Mod\Draft\DraftGeomUtils.py", line 622, in sortEdges
    next = sortEdges(lEdges, result[3].Vertexes
Steps To ReproduceOpen file https://dl.dropboxusercontent.com/u/106944188/FreeCAD/dxf_export/200t-adapter.FCStd

Mark Shape.

Choose "Archive/Export"

Save as type : Autodesk DXF
Additional InformationOS: Windows 7
Word size: 64-bit
Version: 0.14.3700 (Git)
Branch: releases/FreeCAD-0-14
Hash: 32f5aae0a64333ec8d5d160dbc46e690510c8fe1
Python version: 2.7.6
Qt version: 4.8.5
Coin version: 4.0.0a
SoQt version: 1.6.0a
OCC version: 6.6.0
TagsNo tags attached.
FreeCAD Information

Activities

more11

2015-01-11 18:39

reporter  

200t-adapter.FCStd (Attachment missing)

Related Changesets

FreeCAD: master 4cf15ae6

2015-01-12 01:09:29

yorik

Details Diff
Draft: implemented new, more robust version of sortEdges - fixes 0001911 Affected Issues
0001911
mod - src/Mod/Draft/DraftGeomUtils.py Diff File

Issue History

Date Modified Username Field Change
2015-01-11 18:39 more11 New Issue
2015-01-11 18:39 more11 File Added: 200t-adapter.FCStd
2015-01-12 00:39 yorik Changeset attached => FreeCAD Master master 4cf15ae6
2015-01-12 00:39 yorik Assigned To => yorik
2015-01-12 00:39 yorik Status new => closed
2015-01-12 00:39 yorik Resolution open => fixed