scratchcomputing at gmail.com
Tue Oct 28 17:37:32 CET 2008
# from Erwin Zierler
# on Tuesday 28 October 2008 02:04:
>Concerning the Open Design Alliance, if I understand their policy
> correctly they offer differrent forms of membership. The (lowest)
> Associate Membership (as well as all higher levels of membership)
> supposedly gives you access to their download area but I am not quite
> sure I understand what exactly you get there? The OpenDWG Toolkit
> 'enables you to write C or C++ language programs that read and write
> DWG and DXF files'. Ok, but do you also get access to any source code
> which would make it possible to write for instance a DWG reader in
> python? Maybe you can clarify this?
First let me be clear that VectorSection does not use the ODA libraries,
nor does my plan for .dwg support depend on them. ODA is not and does
not intend to be an open-source compatible license. And with their
changes to the download terms long ago (see also lx-viewer), they have
made it impossible for community projects to depend on even as a black
box. And it is a black box (unless you buy in at a very high level.)
So, no ODA for me.
They did publish their findings from reverse engineering the .dwg
format, which Art used to implement some dwg classes (which can be
found in the pythoncad repository.)
> If I have to decide whether to support this effort (via funding or
> code contribution or both) it is crucial to me to have full access to
> source code that enables me to read binary DWG files
My implementation in VectorSection will be GPL and written in C+Perl.
For any language with a YAML implementation (C, Perl, Python, Ruby),
you'll be able to simply open a read pipe and load the entities into
data structures. Convenience libraries may be written in various
languages, but these would initially just be a set of accessors.
> including ALL geometry, i.e. also ACIS entities. Otherwise I can use
> existing code and stay with DXF/3DS import (which is undoubtedly less
> convenient but it does work).
ACIS entities are an entirely different format within .dwg/.dxf. I've
looked at trying to decipher that before, but there doesn't seem to be
any information available on it. So, as far as I know, any effort on
that would be starting from zero. It's not on the roadmap, but I agree
that it would be really useful.
More information about the PythonCAD