Workbench for FreeCAD to loads or import Autodesk (R) Inventor (R) files.

jmplonka, updated ūüē• 2022-06-20 08:16:23

InventorLoader

Loads/Imports: Autodesk (R) Inventor (R) files into FreeCAD (v0.18 or greater). Until now only Parts (IPT) but not assemblies (IAM) or drawings (IDW) or presentations (IPN) can be displayed.

As Inventor files contains a complete ACIS model representation, SAT and SAB files can also be imported into FreeCAD.

As Fusion360 files contains a complete ACIS model representation these files can also be opened in FreeCAD.

Status:

Released 1.3

Screenshots

Demo-Status subdirectory shows examples of this Addon.

Prerequisites

FreeCAD v0.17 or greater required!

This Addon also requires additional python packages: * https://pypi.python.org/pypi/xlrd - for reading embedded Excel workbooks * http://pypi.python.org/pypi/xlutils - for preparing imported Excel workbooks to be stored * https://pypi.python.org/pypi/xlwt - for writing embedded Excel workbooks * http://www.decalage.info/python/olefileio - olefile for reading Microsoft OLE(2) files.

Installation

Automatic Install (recommended)

Installable via the FreeCAD Addon Manager.
Requires a restart after downloading this addon.

Manual Install

  1. Create a directory in either two locations where FreeCAD searches for addons:
    a. FreeCAD's bin folder, or
    b. in the user's application data (%APPDATA% on Windows) or home (~/) folder (on Linux/MacOS).
  2. Create a Mod subdirectory if one doesn't exist and/or move in to it.
  3. Download the InventorLoader repository as either:
    a. ZIP archive, or via
    b.git clone https://github.com/jmplonka/InventorLoader.git
    and expand its content directly into the FreeCAD subdirectory named Mod.
  4. Start (or restart) FreeCAD

The next time FreeCAD starts new import formats for ACIS' SAT (*.sat) files and Autodesk Inventor's IPT (*.ipt) files as will be available and supported import formats.

Note: Please pre-install the Prerequisite python libraries so that the new packages become available.

Solving installation problems

Sometimes it can happen that the packages can't be installed. 1. Navigate to the InventorLoader plugin (ILP) folder with your file-browser (e.g. Windows-Explorer) 2. Extract the libs.zip into the ILP's folder (a new subfolder libs should be created). 3. Open a command shell (e.g. cmd on windows or sh on linux) 1. Adapt the PATH variable to point to FreeCAD's python: set PATH="<PATH-TO-FREECAD>\bin";%PATH% (on linux you have to export the PATH variable). Note: Linux and MAC users should use '/' instead of '\'! 2. Change the working folder to ILP's libs folder (e.g. cd <PATH-TO-FREECAD>\Mod\InventorLoader-master\libs) 3. Run the installation script: python ./installLibs.py This should install the required packages. 4. Restart FreeCAD

Constraints in Native-IPT Import:

Please disable Dimension constraints in user.cfg: xml <FCBool Name="Sketch.Constraint.Dimension.Angle2Line" Value="0"/> <FCBool Name="Sketch.Constraint.Dimension.Angle3Point" Value="0"/>

Limitations

Export will not be supported - neither IPT nor SAT/SAB or DXF. Only files from INVENTOR V2010 or newer are supported.

Feature Based Import

ACIS (sat) Native Import

  • Blending surfaces are not yet supported.
  • Helix surfaces are not yet supported for lines.
  • Interpolated curves and surfaces defined by laws are omitted if they don't have spline data.

STEP Conversion Import

STEP converts the ACIS data from SAT or IPT files. Therefore any limitation is inherited.

Autodesk Inventor files have OLE2 files.
This allows embedding Excel workbooks e.g.:
The addon is able to read Inventor files from 2010 or newer. * Read the iProperties (Note: only a few can be applied in FreeCAD). * Display embedded workbooks as a new spreadsheet when importing as features. * Three strategies are provided:
*
feature base: the addon tries to rebuild all the features. * SAT based: like STEP file, model will be imported based on FACE, EDGES and VERTICES. * STEP based*: The ACIS model will be converted into STEP and imported afterwards.

DXF import

DXF files contains sometimes 3D-Solids. These are represented as SAT/SAB content. The solids can be imported either using native of STEP conversion.

History

1.3 (2021-03-09): Added support for Fusion360 files.
1.2 (2021-02-28): Added support for Inventor 2021 files.
1.1 (2020-05-04): Added importing of 3D-Solids from DXF files.
1.0.1 (2020-04-10): Fixed finding of SAB import.
1.0.0 (2019-08-26): Reorganized section readers (1.0).
0.18.0 (2019-08-07): Added coloring of single faces and changed to default Inventor campera position (RC2).
0.17.0 (2019-07-04): Missing features added as ACIS models (RC1).
0.16.0 (2019-03-19): Added creation of Shells
0.15.0 (2019-03-07): Added part variant handling (ak iPart)
0.14.0 (2019-03-05): InventorLoader is now a workbench.
0.13.0 (2019-03-01): Added support for Fillets and Chamfers. Segmented variable radius chamfers are not supported by FreeCAD. In such cases please import as STEP instead.

0.12.0 (2019-01-08): Added support for Surface Features "BoundaryPatch" and "Knit". Both features will be displayed with their own icon in the model browser.

0.11.0 (2018-11-06): Added support for Meshes
0.10.0 Added table for iParts.
0.9.5 Added chamfer feature for nativ strategy.
0.9.4 InventorLoader is now compatible with python 2 and 3
0.9.3 Added support of offset surfaces and spring surfaces (circle that is seepted along a helix)

0.9.2 Added named colors to STEP.
0.9.1 Added colors to STEP.
0.9.0 Added conversion to STEP. IPT files can now either be imported:
* Based on features (nearest to FreeCAD so changing the model is easy) * Based on SAT (model is imported based on stored Surfaces and Edges) * Based on STEP (SAT model is converted to STEP and imported into FreeCAD using built-in reader)

0.8.1 Fixed support of cone surfaces.
0.8.0 Added handling of Inventor 2019 file format.
0.7.2 Added interpolated surfaces for SAT files.
0.7.1 Added interpolated curves for SAT files.
0.7.0 Added ACIS file format reading for IPT and SAT files.
* IPT: during import user selectable strategy with thumbnail.

0.6.0 continued working on Features
* Added Coil as Part::Helix and Part::Spiral with Sweep * Automated installation of required site-packages

0.5.5 Maintenance version
* Fixed wrong creation of boundary wires/faces from sketches * Fixed wrong handling of constraints in sketches * Code reviewed

0.5.4 continued working on Features
* Added Sweep as Part::Sweep * Added Thicken as Part::Offset * Fixed encoding problems regarding filename and Sketch/Feature names

0.5.3 Continued working on Features
* Added Client as a new group of objects.

0.5.2 Continued working on Features
* Added Hole as combination of creating Part::Cylinder, Part::Cone(s) and Part::MultiFuse and Part::Cut

0.5.1 Continued working on Features
* Added Revolve as Part::Revolution * Added Extrude as Part::Extrusion * Added Loft as Part::Loft * Added boolean operations as Part::Cut, Part::MultiFuse, Part::MultiCommon * Added Polar-Pattern, Rectangular-Pattern with Draft.makeArray() * Added Mirror-Pattern as 'Part::Mirroring'

0.5.0 Preparation for supporting Features (except iFeature) * Most sections found in pro samples (2010..2018) are now decoded (structured)

0.4.2 Only Code Review
* Most sections found in LT samples are now decoded (structured)

0.4.1 Completed parameter management. * Parameter table now contains the name, value, formula, tolerance and comment of each parameter
* Added parameter unit handling * Added parameter formulas handling * Added parameter operations handling (e.g. '+', '-', '*' and '/')

Even if operations or functions are not supported by FreeCAD (e.g. modulo
operator, signum or random function), parameters will be replaced by their
nominal value and unit.

0.4 Added spreadsheet for parameters.
* Added handling of expressions for parameters * Fixed missing placement for 2D-sketches

0.3 Started working on sketches. * Added placement to sketches. ~Sometimes Placements have to "Orientation" references, so that a correct placement is not possible~ * Added pad feature. Maybe this will be changed to Part instead of PartDesign.

0.2 Reading document content now from DC-Segment instead of Graphics-/Browser- Segment * Added reading of object names * 2D sketch constraints and dimensions

0.1 First "working" prototype. * Reading Inventor file Structure * Reading compressed data for Model-Segments (e.g. Graphics- and Browser-View) * Displaying Sketches * Points-2D * Line-2D * (Arc-)Circle-2D * (Arc-)Ellipse-2D * Embedded files dumped to export folder

Roadmap (in no particular order)

  • Features like Grave, etc.
  • Features like Draft, etc.
  • Preferences page

Issues

Ever considered making acis2step functionality as a standalone python module/package?

opened on 2023-01-20 07:53:25 by Krande

Hey,

first of all thank you for the awesome job you've done on this workbench!

A while back I started writing my own SAT ACIS parser from scratch in python in adapy, but I did not get very far (I think last time I stopped at 2d shells) given my lack of experience with the standard and lack of time. Then yesterday I come across your repo and see that you have done a heck of job on parsing SAT ACIS files already :)

I was just wondering if there's any chance you would be interested in separating the acis and acis2step code into a standalone python module/package independent of any external (Freecad internals etc..) libraries so that it's also possible to use it outside of Freecad? If you want I will help out in any way I can :)

If it can help to persuade you to consider this, here are some benefits from separating the ACIS parsing code to a standalone module:

1) Non-Freecad users/libraries can benefit from the wonderful job you've done with parsing ACIS SAT files. 2) It makes it simpler to set up tests that can help make the code more robust

If you're not interested, then I completely understand (time is a limited resource) :) Then I will just try to write my own version based on the wonderful work you've done!

Best Regards Kristoffer

Crash loading .f3d SIGSEGV

opened on 2023-01-12 13:30:05 by greenbigfrog

Trying to import the f3d in the zip I attached I end up with a segfault. gridfinity-modular-vertical-jumper-cable-holder-model_files.zip

step import: ``` Importing: /home/frog/3D/gridfinity/gridfinity-modular-vertical-jumper-cable-holder/Gridfinity vertical jumper wire holder v1.f3d ... parsing 'FusionAssetName[Active]/Breps.BlobParts/BREP.ea77fd3f-a96b-4817-92ee-e59a44d493b4.smbh' ... parsing 'FusionAssetName[Active]/Breps.BlobParts/BREP.881d4e64-e525-4585-93b8-f91cfb681a4a.smbh' ... parsing 'FusionAssetName[Active]/Breps.BlobParts/BREP.d6616bd2-f3f7-4457-aac0-e8783ed98749.smbh' ... parsing 'FusionAssetName[Active]/Breps.BlobParts/BREP.2f561c31-b184-499e-8253-1532384b7a10.smb' ... parsing 'FusionAssetName[Active]/Breps.BlobParts/BREP.803cfefa-063e-4d0b-a406-5c58c5b5b52b.smb' ... parsing 'FusionAssetName[Active]/Breps.BlobParts/BREP.dbf400a6-3be2-4eeb-aa94-2921885e78a4.smbh' ... parsing 'FusionAssetName[Active]/Breps.BlobParts/BREP.3ff8471a-0678-49ff-a9dd-baa9edc1a6f0.smb' ... parsing 'FusionAssetName[Active]/Breps.BlobParts/BREP.65b04ac6-67a9-4323-ba69-dd78d5ecfb04.smb' ... parsing 'FusionAssetName[Active]/Breps.BlobParts/BREP.81854b47-25d6-4ea8-8201-91999bf66b63.smbh' ... parsing 'FusionAssetName[Active]/Breps.BlobParts/BREP.53c51a1f-7423-411a-aa43-593362e86248.smb' ... parsing 'FusionAssetName[Active]/Breps.BlobParts/BREP.b1f864ef-81b8-49f1-99f1-351ad95c8261.smb' Can't apply wires for face ! Can't apply wires for face ! Can't apply wires for face ! Can't apply wires for face ! Can't apply wires for face ! Can't apply wires for face ! Can't apply wires for face ! Can't apply wires for face ! Can't apply wires for face ! Can't apply wires for face ! Can't apply wires for face ! Can't apply wires for face ! Can't apply wires for face ! Can't apply wires for face ! Can't apply wires for face ! Can't apply wires for face ! Can't apply wires for face ! Can't apply wires for face ! Program received signal SIGSEGV, Segmentation fault.

0 /usr/lib/libc.so.6(+0x38a00) [0x7fc460651a00]

1 0x7fc3fc5d8141 in BRepSweep_Rotation::IsInvariant(TopoDS_Shape const&) const from /usr/lib/libTKPrim.so.7+0x31

2 0x7fc3fc5d8200 in BRepSweep_Rotation::IsInvariant(TopoDS_Shape const&) const from /usr/lib/libTKPrim.so.7+0xf0

3 0x7fc3fc5e3681 in BRepSweep_Trsf::Process(TopoDS_Shape const&, Sweep_NumShape const&) from /usr/lib/libTKPrim.so.7+0x71

4 0x7fc3fc5e38e7 in BRepSweep_Trsf::Init() from /usr/lib/libTKPrim.so.7+0x87

5 0x7fc3fc5d6f1e in BRepSweep_Rotation::BRepSweep_Rotation(TopoDS_Shape const&, Sweep_NumShape const&, TopLoc_Location const&, gp_Ax1 const&, double, bool) from /usr/lib/libTKPrim.so.7+0x9e

6 0x7fc3fc5dd274 in BRepSweep_Revol::BRepSweep_Revol(TopoDS_Shape const&, gp_Ax1 const&, double, bool) from /usr/lib/libTKPrim.so.7+0xe4

7 0x7fc3fc5e572f in BRepPrimAPI_MakeRevol::BRepPrimAPI_MakeRevol(TopoDS_Shape const&, gp_Ax1 const&, double, bool) from /usr/lib/libTKPrim.so.7+0x6f

8 0x7fc3fc9a85d2 in Part::TopoShape::revolve(gp_Ax1 const&, double, bool) const from /usr/lib/freecad/lib/Part.so+0x102

9 0x7fc3fc8a0433 in Part::TopoShapePy::revolve(_object*) from /usr/lib/freecad/lib/Part.so+0x203

10 0x7fc3fc895d82 in Part::TopoShapePy::staticCallback_revolve(_object, _object) from /usr/lib/freecad/lib/Part.so+0x22

11 /usr/lib/libpython3.10.so.1.0(+0x155e48) [0x7fc462355e48]

12 /usr/lib/libpython3.10.so.1.0(_PyObject_MakeTpCall+0x2ab) [0x7fc46234f4eb]

13 /usr/lib/libpython3.10.so.1.0(_PyEval_EvalFrameDefault+0x575e) [0x7fc46234a8ee]

14 /usr/lib/libpython3.10.so.1.0(_PyFunction_Vectorcall+0x79) [0x7fc4623562d9]

15 /usr/lib/libpython3.10.so.1.0(_PyEval_EvalFrameDefault+0x77a) [0x7fc46234590a]

16 /usr/lib/libpython3.10.so.1.0(_PyFunction_Vectorcall+0x79) [0x7fc4623562d9]

17 /usr/lib/libpython3.10.so.1.0(_PyEval_EvalFrameDefault+0x77a) [0x7fc46234590a]

18 /usr/lib/libpython3.10.so.1.0(_PyFunction_Vectorcall+0x79) [0x7fc4623562d9]

19 /usr/lib/libpython3.10.so.1.0(_PyEval_EvalFrameDefault+0x346) [0x7fc4623454d6]

20 /usr/lib/libpython3.10.so.1.0(_PyFunction_Vectorcall+0x79) [0x7fc4623562d9]

21 /usr/lib/libpython3.10.so.1.0(_PyEval_EvalFrameDefault+0x346) [0x7fc4623454d6]

22 /usr/lib/libpython3.10.so.1.0(_PyFunction_Vectorcall+0x79) [0x7fc4623562d9]

23 /usr/lib/libpython3.10.so.1.0(_PyEval_EvalFrameDefault+0x346) [0x7fc4623454d6]

24 /usr/lib/libpython3.10.so.1.0(_PyFunction_Vectorcall+0x79) [0x7fc4623562d9]

25 /usr/lib/libpython3.10.so.1.0(_PyEval_EvalFrameDefault+0x346) [0x7fc4623454d6]

26 /usr/lib/libpython3.10.so.1.0(_PyFunction_Vectorcall+0x79) [0x7fc4623562d9]

27 /usr/lib/libpython3.10.so.1.0(_PyEval_EvalFrameDefault+0x346) [0x7fc4623454d6]

28 /usr/lib/libpython3.10.so.1.0(_PyFunction_Vectorcall+0x79) [0x7fc4623562d9]

29 /usr/lib/libpython3.10.so.1.0(_PyEval_EvalFrameDefault+0x346) [0x7fc4623454d6]

30 /usr/lib/libpython3.10.so.1.0(_PyFunction_Vectorcall+0x79) [0x7fc4623562d9]

31 /usr/lib/libpython3.10.so.1.0(_PyEval_EvalFrameDefault+0x346) [0x7fc4623454d6]

32 /usr/lib/libpython3.10.so.1.0(_PyFunction_Vectorcall+0x79) [0x7fc4623562d9]

33 /usr/lib/libpython3.10.so.1.0(_PyEval_EvalFrameDefault+0x4eaf) [0x7fc46234a03f]

34 /usr/lib/libpython3.10.so.1.0(_PyFunction_Vectorcall+0x79) [0x7fc4623562d9]

35 /usr/lib/libpython3.10.so.1.0(_PyEval_EvalFrameDefault+0x4eaf) [0x7fc46234a03f]

36 /usr/lib/libpython3.10.so.1.0(+0x144120) [0x7fc462344120]

37 /usr/lib/libpython3.10.so.1.0(PyEval_EvalCode+0x94) [0x7fc4623f1b94]

38 /usr/lib/libpython3.10.so.1.0(+0x202323) [0x7fc462402323]

39 /usr/lib/libpython3.10.so.1.0(+0x1fda8a) [0x7fc4623fda8a]

40 /usr/lib/libpython3.10.so.1.0(PyRun_StringFlags+0x81) [0x7fc4623f4dc1]

41 0x7fc4626e47e0 in Base::InterpreterSingleton::runStringabi:cxx11 from /usr/lib/freecad/lib/libFreeCADBase.so+0x70

42 0x7fc46327bbdb in Gui::Command::_runCommand(char const, int, Gui::Command::DoCmd_Type, char const) from /usr/lib/freecad/lib/libFreeCADGui.so+0x9b

43 0x7fc46327bd77 in Gui::Command::_doCommand(char const, int, Gui::Command::DoCmd_Type, char const, ...) from /usr/lib/freecad/lib/libFreeCADGui.so+0xe7

44 0x7fc4631ba231 in Gui::Application::importFrom(char const, char const, char const*) from /usr/lib/freecad/lib/libFreeCADGui.so+0x211

45 0x7fc463288df5 in StdCmdImport::activated(int) from /usr/lib/freecad/lib/libFreeCADGui.so+0x5b5

46 0x7fc4632784ba in Gui::Command::_invoke(int, bool) from /usr/lib/freecad/lib/libFreeCADGui.so+0x2ca

47 0x7fc463278984 in Gui::Command::invoke(int, Gui::Command::TriggerSource) from /usr/lib/freecad/lib/libFreeCADGui.so+0x134

48 /usr/lib/libQt5Core.so.5(+0x2bdc00) [0x7fc460ebdc00]

49 0x7fc461b6bec7 in QAction::triggered(bool) from /usr/lib/libQt5Widgets.so.5+0x47

50 0x7fc461b718c7 in QAction::activate(QAction::ActionEvent) from /usr/lib/libQt5Widgets.so.5+0xb7

51 0x7fc461b7198e in QAction::event(QEvent*) from /usr/lib/libQt5Widgets.so.5+0x4e

52 0x7fc461b78b1c in QApplicationPrivate::notify_helper(QObject, QEvent) from /usr/lib/libQt5Widgets.so.5+0x9c

53 0x7fc463248cb1 in Gui::GUIApplication::notify(QObject, QEvent) from /usr/lib/freecad/lib/libFreeCADGui.so+0x91

54 0x7fc460e8cf98 in QCoreApplication::notifyInternal2(QObject, QEvent) from /usr/lib/libQt5Core.so.5+0x128

55 0x7fc46137427d in QShortcutMap::dispatchEvent(QKeyEvent*) from /usr/lib/libQt5Gui.so.5+0x2dd

56 0x7fc46136aae7 in QShortcutMap::tryShortcut(QKeyEvent*) from /usr/lib/libQt5Gui.so.5+0x67

57 0x7fc46132a158 in QWindowSystemInterface::handleShortcutEvent(QWindow*, unsigned long, int, QFlags, unsigned int, unsigned int, unsigned int, QString const&, bool, unsigned short) from /usr/lib/libQt5Gui.so.5+0x178

58 0x7fc46133fb12 in QGuiApplicationPrivate::processKeyEvent(QWindowSystemInterfacePrivate::KeyEvent*) from /usr/lib/libQt5Gui.so.5+0x92

59 0x7fc4613289a5 in QWindowSystemInterface::sendWindowSystemEvents(QFlags) from /usr/lib/libQt5Gui.so.5+0xb5

60 /usr/lib/libQt5XcbQpa.so.5(+0x64710) [0x7fc45b628710]

61 /usr/lib/libglib-2.0.so.0(g_main_context_dispatch+0x19b) [0x7fc45f31687b]

62 /usr/lib/libglib-2.0.so.0(+0xacc89) [0x7fc45f36dc89]

63 /usr/lib/libglib-2.0.so.0(g_main_context_iteration+0x32) [0x7fc45f315132]

64 0x7fc460ed7c4c in QEventDispatcherGlib::processEvents(QFlags) from /usr/lib/libQt5Core.so.5+0x6c

65 0x7fc460e8573c in QEventLoop::exec(QFlags) from /usr/lib/libQt5Core.so.5+0x12c

66 0x7fc460e90269 in QCoreApplication::exec() from /usr/lib/libQt5Core.so.5+0x99

67 0x7fc4631c34f4 in Gui::Application::runApplication() from /usr/lib/freecad/lib/libFreeCADGui.so+0x2064

68 freecad(+0x3990) [0x56428ccbb990]

69 /usr/lib/libc.so.6(+0x23290) [0x7fc46063c290]

70 /usr/lib/libc.so.6(__libc_start_main+0x8a) [0x7fc46063c34a]

71 freecad(+0x4a55) [0x56428ccbca55]

naiv import: Importing: /home/frog/3D/gridfinity/gridfinity-modular-vertical-jumper-cable-holder/Gridfinity vertical jumper wire holder v1.f3d ... parsing 'FusionAssetName[Active]/Breps.BlobParts/BREP.ea77fd3f-a96b-4817-92ee-e59a44d493b4.smbh' ... parsing 'FusionAssetName[Active]/Breps.BlobParts/BREP.881d4e64-e525-4585-93b8-f91cfb681a4a.smbh' ... parsing 'FusionAssetName[Active]/Breps.BlobParts/BREP.d6616bd2-f3f7-4457-aac0-e8783ed98749.smbh' ... parsing 'FusionAssetName[Active]/Breps.BlobParts/BREP.2f561c31-b184-499e-8253-1532384b7a10.smb' ... parsing 'FusionAssetName[Active]/Breps.BlobParts/BREP.803cfefa-063e-4d0b-a406-5c58c5b5b52b.smb' ... parsing 'FusionAssetName[Active]/Breps.BlobParts/BREP.dbf400a6-3be2-4eeb-aa94-2921885e78a4.smbh' ... parsing 'FusionAssetName[Active]/Breps.BlobParts/BREP.3ff8471a-0678-49ff-a9dd-baa9edc1a6f0.smb' ... parsing 'FusionAssetName[Active]/Breps.BlobParts/BREP.65b04ac6-67a9-4323-ba69-dd78d5ecfb04.smb' ... parsing 'FusionAssetName[Active]/Breps.BlobParts/BREP.81854b47-25d6-4ea8-8201-91999bf66b63.smbh' ... parsing 'FusionAssetName[Active]/Breps.BlobParts/BREP.53c51a1f-7423-411a-aa43-593362e86248.smb' ... parsing 'FusionAssetName[Active]/Breps.BlobParts/BREP.b1f864ef-81b8-49f1-99f1-351ad95c8261.smb' Can't apply wires for face ! Can't apply wires for face ! Can't apply wires for face ! Shape is not a shell Shape is not a shell Shape is not a shell Shape is not a shell Can't apply wires for face ! Can't apply wires for face ! Can't apply wires for face ! Can't apply wires for face ! Can't apply wires for face ! Can't apply wires for face ! Can't apply wires for face ! Shape is not a shell Shape is not a shell Shape is not a shell Shape is not a shell Shape is not a shell Shape is not a shell Shape is not a shell Shape is not a shell Shape is not a shell Shape is not a shell Shape is not a shell Can't apply wires for face ! Can't apply wires for face ! Can't apply wires for face ! Can't apply wires for face ! Can't apply wires for face ! Can't apply wires for face ! Can't apply wires for face ! Can't apply wires for face ! Shape is not a shell Shape is not a shell Shape is not a shell Shape is not a shell Shape is not a shell Shape is not a shell Shape is not a shell Shape is not a shell Shape is not a shell Shape is not a shell Shape is not a shell Program received signal SIGSEGV, Segmentation fault.

0 /usr/lib/libc.so.6(+0x38a00) [0x7f5a05a51a00]

1 0x7f59a9100141 in BRepSweep_Rotation::IsInvariant(TopoDS_Shape const&) const from /usr/lib/libTKPrim.so.7+0x31

2 0x7f59a9100200 in BRepSweep_Rotation::IsInvariant(TopoDS_Shape const&) const from /usr/lib/libTKPrim.so.7+0xf0

3 0x7f59a910b681 in BRepSweep_Trsf::Process(TopoDS_Shape const&, Sweep_NumShape const&) from /usr/lib/libTKPrim.so.7+0x71

4 0x7f59a910b8e7 in BRepSweep_Trsf::Init() from /usr/lib/libTKPrim.so.7+0x87

5 0x7f59a90fef1e in BRepSweep_Rotation::BRepSweep_Rotation(TopoDS_Shape const&, Sweep_NumShape const&, TopLoc_Location const&, gp_Ax1 const&, double, bool) from /usr/lib/libTKPrim.so.7+0x9e

6 0x7f59a9105274 in BRepSweep_Revol::BRepSweep_Revol(TopoDS_Shape const&, gp_Ax1 const&, double, bool) from /usr/lib/libTKPrim.so.7+0xe4

7 0x7f59a910d72f in BRepPrimAPI_MakeRevol::BRepPrimAPI_MakeRevol(TopoDS_Shape const&, gp_Ax1 const&, double, bool) from /usr/lib/libTKPrim.so.7+0x6f

8 0x7f59aa1a85d2 in Part::TopoShape::revolve(gp_Ax1 const&, double, bool) const from /usr/lib/freecad/lib/Part.so+0x102

9 0x7f59aa0a0433 in Part::TopoShapePy::revolve(_object*) from /usr/lib/freecad/lib/Part.so+0x203

10 0x7f59aa095d82 in Part::TopoShapePy::staticCallback_revolve(_object, _object) from /usr/lib/freecad/lib/Part.so+0x22

11 /usr/lib/libpython3.10.so.1.0(+0x155e48) [0x7f5a07755e48]

12 /usr/lib/libpython3.10.so.1.0(_PyObject_MakeTpCall+0x2ab) [0x7f5a0774f4eb]

13 /usr/lib/libpython3.10.so.1.0(_PyEval_EvalFrameDefault+0x575e) [0x7f5a0774a8ee]

14 /usr/lib/libpython3.10.so.1.0(_PyFunction_Vectorcall+0x79) [0x7f5a077562d9]

15 /usr/lib/libpython3.10.so.1.0(_PyEval_EvalFrameDefault+0x77a) [0x7f5a0774590a]

16 /usr/lib/libpython3.10.so.1.0(_PyFunction_Vectorcall+0x79) [0x7f5a077562d9]

17 /usr/lib/libpython3.10.so.1.0(_PyEval_EvalFrameDefault+0x77a) [0x7f5a0774590a]

18 /usr/lib/libpython3.10.so.1.0(_PyFunction_Vectorcall+0x79) [0x7f5a077562d9]

19 /usr/lib/libpython3.10.so.1.0(_PyEval_EvalFrameDefault+0x346) [0x7f5a077454d6]

20 /usr/lib/libpython3.10.so.1.0(_PyFunction_Vectorcall+0x79) [0x7f5a077562d9]

21 /usr/lib/libpython3.10.so.1.0(_PyEval_EvalFrameDefault+0x346) [0x7f5a077454d6]

22 /usr/lib/libpython3.10.so.1.0(_PyFunction_Vectorcall+0x79) [0x7f5a077562d9]

23 /usr/lib/libpython3.10.so.1.0(_PyEval_EvalFrameDefault+0x346) [0x7f5a077454d6]

24 /usr/lib/libpython3.10.so.1.0(_PyFunction_Vectorcall+0x79) [0x7f5a077562d9]

25 /usr/lib/libpython3.10.so.1.0(_PyEval_EvalFrameDefault+0x346) [0x7f5a077454d6]

26 /usr/lib/libpython3.10.so.1.0(_PyFunction_Vectorcall+0x79) [0x7f5a077562d9]

27 /usr/lib/libpython3.10.so.1.0(_PyEval_EvalFrameDefault+0x4eaf) [0x7f5a0774a03f]

28 /usr/lib/libpython3.10.so.1.0(_PyFunction_Vectorcall+0x79) [0x7f5a077562d9]

29 /usr/lib/libpython3.10.so.1.0(_PyEval_EvalFrameDefault+0x4eaf) [0x7f5a0774a03f]

30 /usr/lib/libpython3.10.so.1.0(+0x144120) [0x7f5a07744120]

31 /usr/lib/libpython3.10.so.1.0(PyEval_EvalCode+0x94) [0x7f5a077f1b94]

32 /usr/lib/libpython3.10.so.1.0(+0x202323) [0x7f5a07802323]

33 /usr/lib/libpython3.10.so.1.0(+0x1fda8a) [0x7f5a077fda8a]

34 /usr/lib/libpython3.10.so.1.0(PyRun_StringFlags+0x81) [0x7f5a077f4dc1]

35 0x7f5a07ae47e0 in Base::InterpreterSingleton::runStringabi:cxx11 from /usr/lib/freecad/lib/libFreeCADBase.so+0x70

36 0x7f5a0867bbdb in Gui::Command::_runCommand(char const, int, Gui::Command::DoCmd_Type, char const) from /usr/lib/freecad/lib/libFreeCADGui.so+0x9b

37 0x7f5a0867bd77 in Gui::Command::_doCommand(char const, int, Gui::Command::DoCmd_Type, char const, ...) from /usr/lib/freecad/lib/libFreeCADGui.so+0xe7

38 0x7f5a085ba231 in Gui::Application::importFrom(char const, char const, char const*) from /usr/lib/freecad/lib/libFreeCADGui.so+0x211

39 0x7f5a08688df5 in StdCmdImport::activated(int) from /usr/lib/freecad/lib/libFreeCADGui.so+0x5b5

40 0x7f5a086784ba in Gui::Command::_invoke(int, bool) from /usr/lib/freecad/lib/libFreeCADGui.so+0x2ca

41 0x7f5a08678984 in Gui::Command::invoke(int, Gui::Command::TriggerSource) from /usr/lib/freecad/lib/libFreeCADGui.so+0x134

42 /usr/lib/libQt5Core.so.5(+0x2bdc00) [0x7f5a062bdc00]

43 0x7f5a06f6bec7 in QAction::triggered(bool) from /usr/lib/libQt5Widgets.so.5+0x47

44 0x7f5a06f718c7 in QAction::activate(QAction::ActionEvent) from /usr/lib/libQt5Widgets.so.5+0xb7

45 0x7f5a06f7198e in QAction::event(QEvent*) from /usr/lib/libQt5Widgets.so.5+0x4e

46 0x7f5a06f78b1c in QApplicationPrivate::notify_helper(QObject, QEvent) from /usr/lib/libQt5Widgets.so.5+0x9c

47 0x7f5a08648cb1 in Gui::GUIApplication::notify(QObject, QEvent) from /usr/lib/freecad/lib/libFreeCADGui.so+0x91

48 0x7f5a0628cf98 in QCoreApplication::notifyInternal2(QObject, QEvent) from /usr/lib/libQt5Core.so.5+0x128

49 0x7f5a0677427d in QShortcutMap::dispatchEvent(QKeyEvent*) from /usr/lib/libQt5Gui.so.5+0x2dd

50 0x7f5a0676aae7 in QShortcutMap::tryShortcut(QKeyEvent*) from /usr/lib/libQt5Gui.so.5+0x67

51 0x7f5a0672a158 in QWindowSystemInterface::handleShortcutEvent(QWindow*, unsigned long, int, QFlags, unsigned int, unsigned int, unsigned int, QString const&, bool, unsigned short) from /usr/lib/libQt5Gui.so.5+0x178

52 0x7f5a0673fb12 in QGuiApplicationPrivate::processKeyEvent(QWindowSystemInterfacePrivate::KeyEvent*) from /usr/lib/libQt5Gui.so.5+0x92

53 0x7f5a067289a5 in QWindowSystemInterface::sendWindowSystemEvents(QFlags) from /usr/lib/libQt5Gui.so.5+0xb5

54 /usr/lib/libQt5XcbQpa.so.5(+0x64710) [0x7f5a00893710]

55 /usr/lib/libglib-2.0.so.0(g_main_context_dispatch+0x19b) [0x7f5a0471687b]

56 /usr/lib/libglib-2.0.so.0(+0xacc89) [0x7f5a0476dc89]

57 /usr/lib/libglib-2.0.so.0(g_main_context_iteration+0x32) [0x7f5a04715132]

58 0x7f5a062d7c4c in QEventDispatcherGlib::processEvents(QFlags) from /usr/lib/libQt5Core.so.5+0x6c

59 0x7f5a0628573c in QEventLoop::exec(QFlags) from /usr/lib/libQt5Core.so.5+0x12c

60 0x7f5a06290269 in QCoreApplication::exec() from /usr/lib/libQt5Core.so.5+0x99

61 0x7f5a085c34f4 in Gui::Application::runApplication() from /usr/lib/freecad/lib/libFreeCADGui.so+0x2064

62 freecad(+0x3990) [0x55cc00ab5990]

63 /usr/lib/libc.so.6(+0x23290) [0x7f5a05a3c290]

64 /usr/lib/libc.so.6(__libc_start_main+0x8a) [0x7f5a05a3c34a]

65 freecad(+0x4a55) [0x55cc00ab6a55]

```

about: [code] OS: Arch Linux Word size of FreeCAD: 64-bit Version: 0.20.2.29603 (Git) Build type: Release Branch: makepkg Hash: 930dd9a76203a3260b1e6256c70c1c3cad8c5cb8 Python 3.10.8, Qt 5.15.7, Coin 4.0.1, Vtk 9.1.0, OCC 7.6.3 Locale: English/United States (en_US) Installed mods: * parts_library * Assembly3 0.11.4 * 3DfindIT 1.2.0 * InventorLoader 1.3.0 * fasteners 0.4.53 [/code]

Error loading DSM's sab files

opened on 2023-01-11 13:22:24 by radovanma

I'm trying to import the sab files contained in RSDOC Design Spark Mechanical (v4 or V5) documents using the InventorLoader plugin (as native or convert to STEP), but some errors appear and the sab file won't open. I tested this on FreeCad versions 0.20.2 and 0.19 You can "mine" the sab file by renaming the .rsdoc file to a .zip file (TestFile.zip\SpaceClaim\Geometry\part1bodies.sab).

Here is the FreeCad Log: 14:04:32  Importing: C:/3Dparts/part1bodies.sab 14:04:33      Missing class implementation for '6NURTBZPF83TKQS3_EZRHXQCF6RKWDQMNC4MR27539N3QRPAFCNUSC6FBCA4R4Q3UARKFXPCBCPMJ-body%    Missing class implementation for 'string_attrib%    Missing class implementation for 'lump%    Missing class implementation for 'shell%    Missing class implementation for 'face%    Missing class implementation for '%    Missing class implementation for '%    Missing class implementation for 'loop% 14:04:33      Missing class implementation for 'plane%    Missing class implementation for '%    Missing class implementation for '%    Missing class implementation for '% 14:04:33      Missing class implementation for '%    Missing class implementation for 'coedge% 14:04:33      Missing class implementation for '%    Missing class implementation for '%    Missing class implementation for '% 14:04:33      Missing class implementation for '%    Missing class implementation for '% 14:04:33      Missing class implementation for '% 14:04:33      Missing class implementation for '% 14:04:33      Missing class implementation for '% 14:04:33      Missing class implementation for 'edge%    Missing class implementation for '%    Missing class implementation for '%    Missing class implementation for '% 14:04:33      Missing class implementation for 'cone%    Missing class implementation for '% 14:04:33      Missing class implementation for '% 14:04:33      Missing class implementation for '% 14:04:33      Missing class implementation for '% 14:04:33      Missing class implementation for '% 14:04:33      Missing class implementation for '%    Missing class implementation for '% 14:04:33      Missing class implementation for '%    Missing class implementation for '% 14:04:33      Missing class implementation for '%    Missing class implementation for '% 14:04:33      Missing class implementation for 'pcurve%    Missing class implementation for '%    Missing class implementation for 'vertex%    Missing class implementation for '%    Missing class implementation for 'straight%    Missing class implementation for '%    Missing class implementation for '%    Missing class implementation for '% 14:04:33      Missing class implementation for '%    Missing class implementation for '% 14:04:33      Missing class implementation for '% 14:04:33      Missing class implementation for '%    Missing class implementation for '% 14:04:33      Missing class implementation for '% 14:04:33      Missing class implementation for '%    Missing class implementation for '% 14:04:33      Missing class implementation for '%    Missing class implementation for '%    Missing class implementation for 'ellipse%    Missing class implementation for '% 14:04:33      Missing class implementation for '%    Missing class implementation for '%    Missing class implementation for '%    Missing class implementation for '%    Missing class implementation for ' [TestFile.zip](https://github.com/jmplonka/InventorLoader/files/10392657/TestFile.zip) % 14:04:33      Missing class implementation for '%    Missing class implementation for '%    Missing class implementation for '%    Missing class implementation for 'point%    Missing class implementation for '%    Missing class implementation for '%    Missing class implementation for '%    Missing class implementation for '% 14:04:33      Missing class implementation for '%    Missing class implementation for '% 14:04:33      Missing class implementation for '% 14:04:33      Missing class implementation for '%    Missing class implementation for '% 14:04:33      Missing class implementation for '%    Missing class implementation for '%    Missing class implementation for '%    Missing class implementation for '%    Missing class implementation for '% 14:04:33      Missing class implementation for '%    Missing class implementation for '% 14:04:33      Missing class implementation for '%    Missing class implementation for '%    Missing class implementation for '%    Missing class implementation for '%    Missing class implementation for '%    Missing class implementation for '%    Missing class implementation for '% 14:04:33      Missing class implementation for '%    Missing class implementation for '%    Missing class implementation for '%    Missing class implementation for '%    Missing class implementation for '%    Missing class implementation for '%    Missing class implementation for '%    Missing class implementation for '% 14:04:33      Missing class implementation for '%    Missing class implementation for '% 14:04:33      Missing class implementation for '% 14:04:33      Missing class implementation for '% 14:04:33      Missing class implementation for '%    Missing class implementation for '%    Missing class implementation for '%    Missing class implementation for '%    Missing class implementation for '%    Missing class implementation for '%    Missing class implementation for '%    Missing class implementation for '%    Missing class implementation for '%    Missing class implementation for '%    Missing class implementation for '%    Missing class implementation for '%    Missing class implementation for '%    Missing class implementation for '%    Missing class implementation for '%    Missing class implementation for '%    Missing class implementation for '% 14:04:33      Missing class implementation for '%    Missing class implementation for '% 14:04:33      Missing class implementation for '% 14:04:33      Missing class implementation for '%    Missing class implementation for '%    Missing class implementation for '%    Missing class implementation for '%    Missing class implementation for '% 14:04:33      Missing class implementation for '% 14:04:33      Missing class implementation for '%    Missing class implementation for '% 14:04:33      Missing class implementation for '%    Missing class implementation for '%    Missing class implementation for '%    Missing class implementation for '%    Missing class implementation for '%    Missing class implementation for '%    Missing class implementation for '%    Missing class implementation for '%    Missing class implementation for '%

TestFiles.zip

xlutils has been archived

opened on 2023-01-05 11:17:18 by wavexx

Just FIY, while attempting to package this I noticed https://github.com/python-excel/xlutils has been archived/deprecated for a while, with the suggestion to use openpyxl instead (not sure if openpyxl contains everything which is needed by InventorLoader).

Crashes importing *.f3d

opened on 2022-12-29 15:23:03 by mfraser

FreeCAD 0.21 crashes when trying to import shroud.f3d from https://github.com/spuder/ender2pro-raspberrypi/tree/main/CAD. Am I just expecting too much from this plugin?

Error loading .sat file

opened on 2022-08-30 09:22:14 by eldir

I'm getting an error trying to load a .sat file. Let me know if you need more information! It's a fresh installation of FreeCAD.

FreeCAD About

OS: Windows 10 Version 2009 Word size of FreeCAD: 64-bit Version: 0.20.29177 (Git) Build type: Release Branch: releases/FreeCAD-0-20 Hash: 68e337670e227889217652ddac593c93b5e8dc94 Python 3.8.10, Qt 5.15.2, Coin 4.0.1, Vtk 8.2.0, OCC 7.6.2 Locale: English/United Kingdom (en_GB) Installed mods: * InventorLoader 1.3.0

Error Message

10:13:19 Traceback (most recent call last): File "<string>", line 1, in <module> File "C:\Users\eldir\AppData\Roaming\FreeCAD\Mod\InventorLoader\.\importerIL.py", line 147, in open _open(filename, skip, only, root) File "C:\Users\eldir\AppData\Roaming\FreeCAD\Mod\InventorLoader\.\importerIL.py", line 127, in _open reader = read(filename) File "C:\Users\eldir\AppData\Roaming\FreeCAD\Mod\InventorLoader\.\importerIL.py", line 46, in read if (importerSAT.readText(filename)): File "C:\Users\eldir\AppData\Roaming\FreeCAD\Mod\InventorLoader\.\importerSAT.py", line 163, in readText result = reader.readText() File "C:\Users\eldir\AppData\Roaming\FreeCAD\Mod\InventorLoader\.\Acis.py", line 4952, in readText self._readHeaderText() File "C:\Users\eldir\AppData\Roaming\FreeCAD\Mod\InventorLoader\.\Acis.py", line 4851, in _readHeaderText self.date, data = getNextText(data) File "C:\Users\eldir\AppData\Roaming\FreeCAD\Mod\InventorLoader\.\Acis.py", line 4705, in getNextText count = int(m.group(1)) <class 'AttributeError'>: 'NoneType' object has no attribute 'group'

parser ipt freecad autodesk addon inventor freecad-addons sat acis step