export ACIS option in DXF importer crashes and ACIS objects are not imported #51476

Closed
opened 6 years ago by matali23 · 6 comments

System Information
Windows 7 x64

Blender Version
Broken: 1cfc481

Short description of error
When ticking the option to export ACIS, the import will try to create a file with a very long name and crash. Without this option, it works, although ACIS object won't be imported.

Exact steps for others to reproduce the error
I can't provide the file as I have no rights on it. But it seems the addon create a xxx_surface_.sat, then xxx_surface_.001.sat, then xxx_surface_.001.001.sat, etc. adding 001 on each next sat file, until reaching the windows limit.
replacing line 1310 in do.py with

name = name[0:-4] + "." + str(len([n for n in self.acis_files if name in n])).zfill(3)

solves the problem, but solids are still not imported.

**System Information** Windows 7 x64 **Blender Version** Broken: 1cfc481 **Short description of error** When ticking the option to export ACIS, the import will try to create a file with a very long name and crash. Without this option, it works, although ACIS object won't be imported. **Exact steps for others to reproduce the error** I can't provide the file as I have no rights on it. But it seems the addon create a xxx_surface_.sat, then xxx_surface_.001.sat, then xxx_surface_.001.001.sat, etc. adding 001 on each next sat file, until reaching the windows limit. replacing line 1310 in do.py with > name = name[0:-4] + "." + str(len([n for n in self.acis_files if name in n])).zfill(3) solves the problem, but solids are still not imported.
Poster

Changed status to: 'Open'

Changed status to: 'Open'
Poster

Added subscriber: @matali23

Added subscriber: @matali23
cnd was assigned by matali23 6 years ago
Poster

I learned as much as I could about Python as you asked and did my best.

I learned as much as I could about Python as you asked and did my best.
cnd commented 6 years ago
Collaborator

Changed status from 'Open' to: 'Archived'

Changed status from 'Open' to: 'Archived'
cnd closed this issue 6 years ago
cnd commented 6 years ago
Collaborator

Here the importer relies on the dxfgrabber library . I have been in contact with its developer a lot when developing the dxf importer. He says, there is no open documentation on DXF solids, since AutoDesk just inserts solids in binary format into the dxf. He was only able to export the solids to sat files. So the behaviour you experience is not a bug "but a feature". We could also just ignore the solids completely, as it was the case with the former dxf importer. At the time when developing the dxf importer there was no python library to read sat files. Therefore, you might rephrase your problem as a feature request. But I am not able to help you with this right now - even if you find a python library for sat files.

Apparently you try to import quite a big file, if you hit the limits of windows? You might try to import the file to another software and export it to a different format. FBX importer might be able to deal with solids.

Here the importer relies on the [dxfgrabber library ](https://github.com/mozman/dxfgrabber). I have been in contact with its developer a lot when developing the dxf importer. He says, there is no open documentation on DXF solids, since AutoDesk just inserts solids in binary format into the dxf. He was only able to export the solids to sat files. So the behaviour you experience is not a bug "but a feature". We could also just ignore the solids completely, as it was the case with the former dxf importer. At the time when developing the dxf importer there was no python library to read sat files. Therefore, you might rephrase your problem as a feature request. But I am not able to help you with this right now - even if you find a python library for sat files. Apparently you try to import quite a big file, if you hit the limits of windows? You might try to import the file to another software and export it to a different format. [FBX ](http://download.autodesk.com/global/docs/motionbuilder2014/en-us/index.html?url=files/GUID-D1C279AB-42EB-4483-BE90-858C9DF81F04.htm,topicNumber=d30e32613) importer might be able to deal with solids.
Poster

ok, I can understand. Maybe adding a warning or UI feedback about ignored elements would help users to understand what happened.
What about the patch? I think those line don't do what was intended and at least in this case, it solve the problem by incrementing 001 to 002 to 003 instead of making the name always longer with 001, 001.001, 001.001.001, 001.001.001.001, etc.

ok, I can understand. Maybe adding a warning or UI feedback about ignored elements would help users to understand what happened. What about the patch? I think those line don't do what was intended and at least in this case, it solve the problem by incrementing 001 to 002 to 003 instead of making the name always longer with 001, 001.001, 001.001.001, 001.001.001.001, etc.
Sign in to join this conversation.
No Label
good first issue
legacy module/Animation & Rigging
legacy module/Core
legacy module/Eevee & Viewport
legacy module/Grease Pencil
legacy module/Modeling
legacy module/Nodes & Physics
legacy module/Pipeline, Assets & IO
legacy module/Platforms, Builds, Tests & Devices
legacy module/Python API
legacy module/Rendering & Cycles
legacy module/Sculpt, Paint & Texture
legacy module/User Interface
legacy module/VFX & Video
legacy project/2.81
legacy project/2.82
legacy project/2.83
legacy project/2.90
legacy project/2.92
legacy project/2.93
legacy project/3.0
legacy project/3.1
legacy project/3.2
legacy project/3.4
legacy project/Add-ons (BF-Blender)
legacy project/Add-ons (Community)
legacy project/Alembic
legacy project/Animation & Rigging
legacy project/Asset Browser
legacy project/Automated Testing
legacy project/BF Blender: 2.8
legacy project/BF Blender: After Release
legacy project/BF Blender: Next
legacy project/BF Blender: Regressions
legacy project/BF Blender: Unconfirmed
legacy project/Blender 2.70
legacy project/Blender Cloud
legacy project/Code Quest
legacy project/Collada
legacy project/Compositing
legacy project/Core
legacy project/Cycles
legacy project/Datablocks and Libraries
legacy project/Dependency Graph
legacy project/Documentation
legacy project/EEVEE & Viewport
legacy project/Freestyle
legacy project/Game Data Conversion
legacy project/Game Engine
legacy project/Game Physics
legacy project/Game Python
legacy project/Game UI
legacy project/Geometry Nodes
legacy project/Good First Issue
legacy project/Grease Pencil
legacy project/Images & Movies
legacy project/Import/Export
legacy project/Infrastructure: Blender Buildbot
legacy project/Infrastructure: Blender Web Assets
legacy project/Infrastructure: Websites
legacy project/Modeling
legacy project/Modifiers
legacy project/Motion Tracking
legacy project/Nodes
legacy project/Nodes & Physics
legacy project/OpenGL Error
legacy project/Overrides
legacy project/Papercut
legacy project/Physics
legacy project/Pillar
legacy project/Pipeline, Assets & I/O
legacy project/Platform: Linux
legacy project/Platform: macOS
legacy project/Platforms, Builds, Tests & Devices
legacy project/Platform: Windows
legacy project/Python API
legacy project/Render & Cycles
legacy project/Render Pipeline
legacy project/Sculpt, Paint & Texture
legacy project/Straightforward Issue
legacy project/Text Editor
legacy project/Tracker Curfew
legacy project/Translations
legacy project/USD
legacy project/User Interface
legacy project/UV Editing
legacy project/VFX & Video
legacy project/Video Sequencer
legacy project/Virtual Reality
papercut
Priority › High
Priority › Low
Priority › Normal
Priority › Unbreak Now!
Status › Archived
Status › Confirmed
Status › Duplicate
Status › Needs Information from Developers
Status › Needs Information from User
Status › Needs Triage
Status › Resolved
straightforward issue
Type › Bug
Type › Design
Type › Known Issue
Type › Patch
Type › Report
Type › To Do
No Milestone
No project
No Assignees
2 Participants
Notifications
Due Date

No due date set.

Dependencies

No dependencies set.

Reference: blender/blender-addons#51476
Loading…
There is no content yet.