Plug-in for AUTODESK Inventor files

Need help, or want to share a macro? Post here!
Forum rules
Be nice to others! Respect the FreeCAD code of conduct!
Post Reply
jmplonka
Posts: 138
Joined: Tue Dec 20, 2016 7:47 am
Location: Vaihingen (Enz), Germany

Plug-in for AUTODESK Inventor files

Post by jmplonka »

Hello!
I'm currently working on an importer for Autodesk (R) Inventor (R) files. Simply because my son hat a license from school and it will end in 2 years ;)
Current status:
  • * Inventor files are OLE2 files
    * iProperties can be imported and some of them can be attached to the FreeCAD files.
    * embeded Excel workbooks are added to FreeCAD document.
Next Steps:
  • * display sketches with lines, etc.
* The AddOn requres therefore the python packages for xlrd, xlutils and xlwt
The project is currently located on https://github.com/jmplonka/InventorLoader.
Any help (eg. retrieving the coordinates or the names of objects) is highly welcome.
Last edited by jmplonka on Wed Aug 09, 2017 4:02 pm, edited 1 time in total.
User avatar
DeepSOIC
Veteran
Posts: 7896
Joined: Fri Aug 29, 2014 12:45 am
Location: used to be Saint-Petersburg, Russia

Re: Load or Import AUTODESK Inventor files

Post by DeepSOIC »

Hi!
Feature Announcements subforum is for announcing new features of base FreeCAD, so I moved your announcement to "Python scripting and macros" subforum. We don't have a dedicated forum for announcements regarding add-on modules, both this and Open Discussion forums will do.

You can ask Yorik to include your module to add-on gathering
jmplonka
Posts: 138
Joined: Tue Dec 20, 2016 7:47 am
Location: Vaihingen (Enz), Germany

Re: Load or Import AUTODESK Inventor files

Post by jmplonka »

Hallo,
Sorry for posting in the wrong subforum and thanks for moving.
- Jens
ickby
Veteran
Posts: 3116
Joined: Wed Oct 05, 2011 7:36 am

Re: Load or Import AUTODESK Inventor files

Post by ickby »

Hello,

This seems to be na cnice project! Do you have any reference for the format like a specification? Or do you reverse engineer it? If so, it is ASCII format?
jmplonka
Posts: 138
Joined: Tue Dec 20, 2016 7:47 am
Location: Vaihingen (Enz), Germany

Re: Load or Import AUTODESK Inventor files

Post by jmplonka »

Hi
Hope it'll be a nice project for others as well...
The files are are OLE2 format.
Inside there are properties, sometimes embedded Excel workbooks and the inventor data files. Some of them contains compressed sections.
A detailed format description I haven't found until now. So ther parser is based on reverse engeneering.
jmplonka
Posts: 138
Joined: Tue Dec 20, 2016 7:47 am
Location: Vaihingen (Enz), Germany

Re: Load or Import AUTODESK Inventor files

Post by jmplonka »

Hi,

just startet to dokument the file format. https://github.com/jmplonka/InventorLoa ... Format.odt
BTW: The current parser dumps the found data to the Report view. Look like:

Code: Select all

Reading: D:/Workspace/Inventor/files1/500M.ipt
	'3': 
	6b12d008-b54a-4d14-b56c-674aa482a8ec [15]
	[0001,8008,1FCC,0000]
	[0000,8008,1C52,0000]
	[0000,0000,0000,8001,0064,2328,0000,0000,0000,0000,0001,8008,1FCC,0000]: 18307934-64fd-48b7-b303-1a61372c6785
	[0001,0001]
	[0000,0000,0001,0000,0000,0000]
	PmGraphicsSegment
		[0,0071,011B,0015,1BE4,107F]
		PmGRxSegmentType: [006A,0000,0000,8008,1C52,0000]
		 1: 00,00,0,[0034,0000,0000,0000],0002
		 2: 01,01,0,[0040,0000,0000,0000],0009
User avatar
yorik
Founder
Posts: 13660
Joined: Tue Feb 17, 2009 9:16 pm
Location: Brussels
Contact:

Re: Load or Import AUTODESK Inventor files

Post by yorik »

Hi Jens,
fantastic!! This will interest a lot of people... The support of proprietary file formats in open-source projects is always a very complicated matter, because no documentation exists. Thanks a lot for this!
As DeepSOIC said, when you feel your project is taking flight and you would like it to be listed in our addons list at https://github.com/FreeCAD/FreeCAD-addons (so it can be easily installed by users, directly from within FreeCAD), just tell me.
jmplonka
Posts: 138
Joined: Tue Dec 20, 2016 7:47 am
Location: Vaihingen (Enz), Germany

Re: Load or Import AUTODESK Inventor files

Post by jmplonka »

Hi,

first working prototype is ready 8-)

The plugin can either import or open Inventor Part Files.

Working Feature:
  • Import 2D-Sketches with Points, Lines, (Arc-)Circles and (Arc-)Ellipses.
Feel free to have a look at https://github.com/jmplonka/InventorLoader.

I made some screenshots (ref. Attachments)
Attachments
The original file in Inventor
The original file in Inventor
Demo-Status-0.1_Inventor.png (28.64 KiB) Viewed 22228 times
The imported file in FreeCAD with opened Sketch
The imported file in FreeCAD with opened Sketch
Demo-Status-0.1_FreeCAD.png (184.98 KiB) Viewed 22228 times
HoWil
Veteran
Posts: 1279
Joined: Sun Jun 14, 2015 7:31 pm
Location: Austria

Re: Load or Import AUTODESK Inventor files

Post by HoWil »

Really nice.
Do you think you can also port 2D parts? Is it the same procedure and does only need to be implemented?
Since you 'understand' at least some 2D sketch-elements you could also write an exporter for that?!
BR,
HoWil
jmplonka
Posts: 138
Joined: Tue Dec 20, 2016 7:47 am
Location: Vaihingen (Enz), Germany

Re: Load or Import AUTODESK Inventor files

Post by jmplonka »

HoWil wrote:Really nice.
Do you think you can also port 2D parts? Is it the same procedure and does only need to be implemented?
Since you 'understand' at least some 2D sketch-elements you could also write an exporter for that?!
BR,
HoWil
Thank you :)
I think, I didn't got the point. Perhaps I explain the next steps, what I'm planning to do:
a) add extrusion/pad, pocket support,
b) add fillet and phase, ...
c) revolution, groove, loft and sweep...
d) mirror, pattern
e) boolean operations
I hope that somewhere in between, I'm able to link the names of the browser view to the corresponding 3D objects...
Currently I stick to FreeCAD 0.16 that doesn't support splines or text in sketches. so this feature will be skipped. ;)
Perhaps your idea is included but if you are thinking in the opposite direction: an importer for Inentor to support FreeCAD files - no way :D
Post Reply