Dxf Programming Language
DPL is a full featured programming environment, aimed at processing text files in general and DXF (Drawing eXchange Format) files specifically. It allows the user to program in a simple text-based language, using a text editor, and produces tight token-based binary code files which can be distributed, if desired. The programming vocabulary is rich and loosely based on the stack-oriented Hewlett Packard calculators. DPL provides an integrated program debugging environment and uses compound object types as data.
DPL is somewhat experimental, but can process text files (or co-ordinate/numerical data in text format) easily. DPL can still do work for you!
Why?
DXF files, while intending to be "universal" do not often translate easily from system to system. Often, modifications need to be made to DXF files before a CAD system can read them properly. While the files are text-based (theoretically allowing the use of an editor such as Wordpad or Notepad), they are usually of a size which overwhelms most editors. DPL can process DXF files of unlimited size!
How?
DPL processes DXF files sequentially and can edit DXF objects "on the fly", in a manner similar to Unix's SED (stream editor). While this may seem cumbersome, it allows for input files of unlimited size. DPL's programming language is specifically tailored to DXF notation and has, in addition, numerous text file handling routines. It also possess a large number of mathematical routines, sufficient for the most complex task.
What else?
DPL was primarily developed to solve processing problems in the DXF environment (ie. object transformation, file translation, etc.). Because DPL has a rich mathematical base built-in, it can also be used to solve mathematical scenarios, including matrix operations. Want to play with matrices? DPL's built-in matrix operations include the following programming words, listed by DPL's -V (vocabulary) routine:
| HEX | * | / | + | - |
| ABS | CHS | 1/X | SIZE | BYTES |
| CONCAT | SUB | DELETE | INSERT | GET |
| PUT | OBJ-> | ->ARRAY | POS | REVPOS |
| NPOS | REVNPOS | OBJTYPE | OBJTYPENUM | REVOBJ |
| SORT | DOTPROD | ->2D | CROSSPROD | VECTORLEN |
| DIRCOS | DIMENSION | TRANSPOSE | GETROW | GETCOL |
| ARRAY->ROWS | ARRAY->COLS | SWAPROWS | SWAPCOLS | N*ROW |
| ROW+ROW | ECHELON? | DELETEROW | DELETECOL | INSERTROW |
| INSERTCOL | IDENTITY |
DPL's own CMDLIST word lists 281 separate operational words or syntax symbols - DPL's vocabulary is quite comprehensive!
DOWNLOAD DPL
Current version: Beta 3 (Nov. 2002)
Download DPL here, along with text documentation (for DPL and some AutoCAD versions) as well as a few examples. Since DPL is a DPMI (Dos Protected Mode Interface) application, it requires the Borland DPMI runtime support files (not included in the basic DPL package). They should be placed in the same directory as DPL, or may be placed on your computer's path - see DPMIUSER.TXT for more information.
| DPL (documentation, examples, etc.) | dpl.zip | (313,424 bytes) |
| Borland DPMI runtime support files (required!) | dpmifiles.zip | (63,161 bytes) |
|
|
Back to SRS Home |