the new DXF-Exporter script is here
Any body knows if an importer of DXF can give me vertex groups?
I need them to parent an bvh armature on it on named groups…
I know it says so on the blender.org BUT I don’t know where to get it (the link goes to blendernation that comes back to the first page on blednder.org).
hi, sorry, don’t understand your problem.
Do you have a dxf model with armature? Curious, cause DXF doesn’t support armatures.
Vertex groups can be generated during import, though mainly for material/texture assigning.
My bad - I meant FBX … I was a bit tired when I posted, to much dancing with the format extensions ![]()
Yes I’ll have many characters (modeled, rigged and animated in 3DS Max), exported in FBX…
first step, through Motion Builder to get the bvh, to get the armature and it’s actions
Then in Blender, importing the *.bvh, also importing the model (in *.obj)
Finally, parenting the *.obj to the (imported) armature.
PROBLEM
first with bvh orientation between pose mode and neutral pose is causing me headaches but I’m working to modify the bvh import script to recalculate some data…
But then I have to make sure that the parenting done in Blender matches the one done in 3DS Max, or my mesh goes flying in all sorts of (wrong) directions.
Parenting through bone enveloppe or bone heat does not give great results, so if I can get the mesh in a format that gives me named vertex groups, that how I intend to parent de mesh to the armature.
The *.obj exporter of 3DS doesn’t give me the named vertex groups and I though that FBX might…
QUESTION
Is any of this plausible? will I get my named vertex groups ?
All or any hints might help :-))
Thanks in advance!
more chances to get right answer are in fbx thread
I don’t know if this matters to you guys but I’ve been trying for ages to convert ACIS solids from an Intellicad based program (Bricscad) with no sucsess… until now!!! (Bricscad does not export to 3DS nor does a decent conversion from solids to meshes).
The open design alliance has (probably for a long time) a DWG-DXF converter that transforms decently solids into meshes.
http://www.opendwg.org/guestfiles
It works for me!!
The open design alliance has (probably for a long time) a DWG-DXF converter that transforms decently solids into meshes.
there might come something even better in the near future… the vectorsection project is now planning dwg support… This would become totally cool!
Yorik, i am a little bit skeptic, cause i don’t see any activity on the site/svn since 05.2007. The python DXF/DWG stuff there is from 2003/4 and comes from PythonCAD project. I haven’t read it yet, but i doubt if there is an ACIS support.
nunogouveia, Open Design Alliance is not really an option for me, cause they don’t open their libraries for public. Nevertheless it may be interesting for daily business. I didn’t know that their converter supports ACIS-objects! What are the limitations?
DXF-Importer: updated version v1.12 - 2008.11.16:
- remove try_finally: should work now also for blender compiled with older version of python: 2.3 or 2.4
- add Bezier curves bevel radius support (default 1.0): assigning bevel object should work now
migius, thx for the plugin it helps me a lot.
But there one thing… When i export big plans, it exported into groups of object in one layer and self objects in another layer. In one layer… It hard to get something in this heap… 
So i need select certain group members and move it out from center, then set up offset in “object and links” panel. Could it do in automatic way like it was in old versions?
You are welcome.
I know this issue, but I don’t think the previous versions work different/better. For better understanding your question, could you show an example for “automatic way” in old versions?
pardon… It seems to be my mistake… it was standart dxf exporter which works wrong… ![]()
Awesome work, migius! I am currently converting about 100 dxf files, and this importer has about a 60% success rate, which is truly impressive. Thanks for all the hard work!
However, I am getting this error:
Traceback (most recent call last):
File "/Applications/blender 2.48/blender.app/Contents/MacOS/.blender/scripts/import_dxf.py", line 6223, in bevent
main(dxfFile)
File "/Applications/blender 2.48/blender.app/Contents/MacOS/.blender/scripts/import_dxf.py", line 4505, in main
drawEntities(drawing.entities, settings)
File "/Applications/blender 2.48/blender.app/Contents/MacOS/.blender/scripts/import_dxf.py", line 4704, in drawEntities
if entities_type: drawer(_type, entities_type, settings, block_def)
File "/Applications/blender 2.48/blender.app/Contents/MacOS/.blender/scripts/import_dxf.py", line 4833, in drawer
ob = entity.draw(settings)
File "/Applications/blender 2.48/blender.app/Contents/MacOS/.blender/scripts/import_dxf.py", line 2815, in draw
me.addVertGroup('side.band') ; me.assignVertsToGroup('side.band', list(set(vg_band)), 1.0, replace)
NameError: global name 'set' is not defined
It’s because the osx version of blender is compiled with python 2.3, which didn’t have sets as built-in objects. However if I add these lines to the top, it works flawlessly:
import platform
if platform.python_version() < '2.4':
from sets import Set as set
cheers!
set() in “list(set(vg_band))” is used only for filtering out double instances from vertex-indices lists. list(vg_band) do the job, but not quite clean.
so thank you for the osx-patch, i will integrate it to the official script version.
And what about the rest 40%? could you show me these not-working dxf-files?
Edit: i’ve decided to remove all set(), cause not necessary there - Blender 2.48 filters out double vector indices automatic.
DXF-Importer: updated version v1.12 - 2008.04.11 to get from wiki.blender.org/…/Manual/Import/DXF-3D:
- added support for DWG format - the code/idea is come from Stani
hi,
i cant reproduce the problems with DConvertCon.exe - it works with your dxf file here. (version 1.0. Copyright 2002, 355.840 Bytes)
The import error is localized: there are some hatch objects (“*X” BLOCKs) as members of other BLOCKs and the script could not manage it correct. I’ve made a patch and will offer it for download soon.
Quick solution for now: activate “n” option next to “Block”-button for import all noname / hatch blocks:
1937 objects imported from model space in 631.8392 sec. -----DONE-----
compare to “ignore noname blocks” variante
908 objects imported from model space in 44.6889 sec. -----DONE-----
Hi Conz3D,
correcture: DConvertCon.exe cant read your DWG file, because it supports only up to acad 2002 =r15 =AC1015, and your file is AC1018. Use instead “everyDWG.exe”.
The right syntax for DConvertCon.exe to prepare DXFr12 files is:
DConvertCon.exe your-file.dwg -acad11 -dxf
caution: there is no extra parameter for r12 format, use “-acad11” instead.
Edit: Meanwhile DXF-Importer script accepts also newer formats, so the “-acad11” parameter can be omitted.
hello,
Compiled with Python version 2.6.2.
Checking for installed Python... got it!
psyco not imported
DXF/DWG-Importer v1.12 - 2009.05.27 by migius *** start ***
Traceback (most recent call last):
File "<string>", line 1, in <module>
File "/home/eidam/.blender/blender/import_dxf.py", line 410, in <module>
extCONV_PATH = os.path.join(Blender.Get('scriptsdir'),extCONV)
File "/usr/lib/python2.6/posixpath.py", line 67, in join
elif path == '' or path.endswith('/'):
AttributeError: 'NoneType' object has no attribute 'endswith'
Saved session recovery to /tmp/quit.blend
Blender quit
blender 2.49a + python 2.6, no traces after python 2.5. on windows (same blender version, python 2.5) no errors. workarounds/fixes highly appreciated.
gl&hf, ask for more info if needed 
hi Eidam655,
it looks like a problem in python module: /lib/python2.6/posixpath.py. I cant reproduce it on my machine.
You are on linux i suppose, so possible workaround:
the console output of this code (started in blender texteditor with Alt-p) will give you ‘your_blender_scripts_dir_full_path’:
import Blender; print Blender.Get('scriptsdir')
use it to change the line (410?) in import_dxf.py:
from: extCONV_PATH = os.path.join(Blender.Get('scriptsdir'),extCONV)
to: extCONV_PATH = 'your_blender_scripts_dir_full_path/' + extCONV
if still does not work do this: edit two lines in import_dxf.py. This patch will deactivate dwg support and will suppress the error:
#-------- DWG support ------------------------------------------
extCONV_OK = True
extCONV = 'DConvertCon.exe'
#extCONV_PATH = os.path.join(Blender.Get('scriptsdir'),extCONV)
if 1: #not os.path.isfile(extCONV_PATH):
the output of
import Blender; print Blender.Get('scriptsdir')
is
None
although scripts in the Scripts window are visible.