Page 1 of 1

Some basic questions about DXF files

Posted: Sat Nov 17, 2012 8:08 pm
by Cambridge Ray
I am attempting to develop a "dxf2pdf" application (I guess I don't have to tell you what it does :-) It is being written under Linux, but will eventually be ported to Windows.

Note on my background: Luckily, back in school I took a Master's level CS course, called "Computer Graphics" (which I finally get to put to good use!). The term project was an application that shifted, scaled, rotated and displayed a simple house, hopefully in real time. Due to the limited CPU power those days, it was mainly wireframe: since the hidden segment removal was too onerous, I ended up turning it off for a good show.

In short: I am familiar with the part about the 3 geometric transforms.

Having said that, we never covered things like "edges" or "extents". I am not fully clear on the concept of "polyline", as used in the DXF standard. In the textbook (authored by The Father of Computer Graphics himself), there was only one kind of entity: the line segment.

(To be continued)

-Ramon

Re: Some basic questions about DXF files

Posted: Sat Nov 17, 2012 8:27 pm
by Cambridge Ray
I modified the provided "test" application so it shows more details. I would like to better understand things like:

- Polyline parameters: flags, m, n, number
- Vertex bulge

But, alas, despite having a sizable collection of DXF files. All of them have zero values in those fields (except for "flags"). Apparently those fields are not very popular, or perhaps I need a wider variety of DXF sample files.

Additionally:

- The relationship between polylines and vertices.
- Points

-RFH

Re: Some basic questions about DXF files

Posted: Sat Nov 17, 2012 9:02 pm
by Cambridge Ray
Luckily, my universe of DXF files contain limited features and hence the application will only have to deal with the most common entities:

- Lines
- Text
- Polylines
- Vertices
- 3-D Faces

Furthermore, I ignore the Z dimension and am not doing any rotation.

Please notice the results that I have so far, in the attachment.

TIA,

-RFH