OakPDT Drawing
From Just Solve the File Format Problem
				
								
				(Difference between revisions)
				
																
				
				
								
				Ccawley2011  (Talk | contribs)  | 
			Ccawley2011  (Talk | contribs)   | 
			||
| Line 45: | Line 45: | ||
|-  | |-  | ||
| || Struct || Error information  | | || Struct || Error information  | ||
| + | |-  | ||
| + | | || Struct || Layer information  | ||
| + | |-  | ||
| + | | || Double || Dimension scale  | ||
| + | |-  | ||
| + | | || Integer || Number of functions (<code>n</code>)  | ||
| + | |-  | ||
| + | | || Array || <code>n</code> function table entries  | ||
|-  | |-  | ||
! colspan="3" | Symbol table entry  | ! colspan="3" | Symbol table entry  | ||
| Line 133: | Line 141: | ||
|-  | |-  | ||
| 4 || Null-terminated string ||  | | 4 || Null-terminated string ||  | ||
| + | |-  | ||
| + | ! colspan="3" | Layer information  | ||
| + | |-  | ||
| + | | 0 || Array || 64 bytes  | ||
| + | |-  | ||
| + | | 64 || Array || 64 bytes  | ||
| + | |-  | ||
| + | | 128 || Byte ||  | ||
| + | |-  | ||
| + | | 129 || Byte ||  | ||
| + | |-  | ||
| + | | 130 || Byte ||  | ||
| + | |-  | ||
| + | | 131 || Array || 10 bytes  | ||
| + | |-  | ||
| + | ! colspan="3" | Function table entry  | ||
| + | |-  | ||
| + | | 0 || Null-terminated string||  | ||
| + | |-  | ||
| + | | || Integer ||  | ||
| + | |-  | ||
| + | | || Integer ||  | ||
|-  | |-  | ||
|}  | |}  | ||
Revision as of 11:18, 11 October 2022
Overview
OakPDT is a 2D parametric CAD system for RISC OS. On RISC OS systems, files in this format typically have a filetype of CAD ("PDT Dwg").
Format details
| File Header | ||
|---|---|---|
| 0 | Byte | Major version number of the file format (always 1) | 
| 1 | Byte |  Minor version number of the format
  | 
| 2 | Null-terminated string |  The_Design_System or Oak_P_D_T_Drawing
 | 
| 20 | Integer |  Number of symbols (s)
 | 
| 24 | Array |  s symbol table entries
 | 
| Integer |  Size of drawing definition (v)
 | |
| Array |  v bytes
 | |
| Byte | Paper size | |
| Struct | Window definition | |
| Struct | Grid information | |
| Struct | Text information | |
| Struct | Dimension information | |
| Struct | Line style information | |
| Integer |  Number of scalars (n)
 | |
| Array |  n scalar table entries
 | |
| Struct | Error information | |
| Struct | Layer information | |
| Double | Dimension scale | |
| Integer |  Number of functions (n)
 | |
| Array |  n function table entries
 | |
| Symbol table entry | ||
| 0 | Byte | |
| 1 | Byte | |
| 2 | Byte | |
| 3 | Byte | |
| 4 | Integer | |
| 8 | Integer | |
| Window definition | ||
| 0 | Double | |
| 8 | Double | |
| 16 | Double | |
| 24 | Double | |
| Grid information | ||
| 0 | Double | |
| 8 | Double | |
| 16 | Double | |
| 24 | Double | |
| 32 | Integer | |
| 36 | Integer | |
| Text information | ||
| 0 | Double | |
| 8 | Double | |
| 16 | Double | |
| 24 | Integer | |
| Dimension information | ||
| 0 | Double | |
| 8 | Double | |
| 16 | Double | |
| 24 | Double | |
| 32 | Integer | |
| 36 | Integer | |
| 40 | Integer | |
| 44 | Integer | |
| Line style information | ||
| 0 | Integer | |
| 4 | Integer | |
| 8 | Integer | |
| 12 | Integer | |
| Scalar table entry | ||
| 0 | Integer | |
| 4 | Null-terminated string | |
| Error information | ||
| 0 | Integer | |
| 4 | Null-terminated string | |
| Layer information | ||
| 0 | Array | 64 bytes | 
| 64 | Array | 64 bytes | 
| 128 | Byte | |
| 129 | Byte | |
| 130 | Byte | |
| 131 | Array | 10 bytes | 
| Function table entry | ||
| 0 | Null-terminated string | |
| Integer | ||
| Integer | ||