114 lines
		
	
	
		
			2.9 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
			
		
		
	
	
			114 lines
		
	
	
		
			2.9 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
| <?php
 | |
| 
 | |
| // builder
 | |
| // ================================================================================================
 | |
| 
 | |
| // library   
 | |
| // - pad
 | |
| // - via
 | |
| // - text
 | |
| // - pattern
 | |
| // - component
 | |
| 
 | |
| // netlist
 | |
| // - component
 | |
| // - net
 | |
| 
 | |
| // pcb design
 | |
| // - pcbDesignHeader
 | |
| // - layerDef
 | |
| // - multiLayer
 | |
| //   - via
 | |
| //   - pattern
 | |
| 
 | |
| // - layerContents 1 - top
 | |
| //   - line
 | |
| //   - text
 | |
| // - layerContents 2 - bottom
 | |
| //   - line
 | |
| //   - text
 | |
| // - layerContents 3 - board
 | |
| //   - line
 | |
| //   - polygon
 | |
| 
 | |
| // - layersStackup
 | |
| 
 | |
| 
 | |
| 
 | |
| // create header
 | |
| // ================================================================================================
 | |
| $out_file = "p/" . $proj[$PROJ_ID]['dir'] . "/sprint05_pcad.pcb";
 | |
| $ascii = "SPRINT05_PCAD.PCB";
 | |
| $ts = date("Y m d H i s");
 | |
| $cr = "Copyright © 2009-".date("Y")." Sprinter Reverse Team";
 | |
| 
 | |
| $hdr = "ACCEL_ASCII \"$ascii\"\r\n";
 | |
| $hdr .= "\r\n";
 | |
| $hdr .= "(asciiHeader\r\n";
 | |
| $hdr .= "  (asciiVersion 3 0)\r\n";
 | |
| $hdr .= "  (timeStamp $ts)\r\n";
 | |
| $hdr .= "  (program \"Sprinter php parser\" \"01.00.1234\")\r\n";
 | |
| $hdr .= "  (copyright \"$cr\")\r\n";
 | |
| $hdr .= "  (fileAuthor \"RomanRom2\")\r\n";
 | |
| $hdr .= "  (headerString \"\")\r\n";
 | |
| $hdr .= "  (fileUnits Mil)\r\n";
 | |
| $hdr .= "  (guidString \"\")\r\n";
 | |
| $hdr .= ")\r\n";
 | |
| 
 | |
| file_put_contents($out_file, $hdr, LOCK_EX);
 | |
| 
 | |
| 
 | |
| 
 | |
| // create library
 | |
| // ================================================================================================
 | |
| 
 | |
| // lib begin
 | |
| $pcad_lib  = "(library \"Library_1\"\r\n";
 | |
| file_put_contents($out_file, $pcad_lib, FILE_APPEND | LOCK_EX);
 | |
| 
 | |
| include("p/" . $proj[$PROJ_ID]['dir'] . "/lib_via.php");
 | |
| include("p/" . $proj[$PROJ_ID]['dir'] . "/lib_text.php");
 | |
| include("p/" . $proj[$PROJ_ID]['dir'] . "/lib_pad.php");
 | |
| include("p/" . $proj[$PROJ_ID]['dir'] . "/lib_pattern.php");
 | |
| include("p/" . $proj[$PROJ_ID]['dir'] . "/lib_component.php");
 | |
| 
 | |
| // lib end
 | |
| $pcad_lib = ")\r\n";
 | |
| file_put_contents($out_file, $pcad_lib, FILE_APPEND | LOCK_EX);
 | |
| 
 | |
| 
 | |
| 
 | |
| // create netlist
 | |
| // ================================================================================================
 | |
| 
 | |
| // netlist begin
 | |
| $pcad_net  = "(netlist \"Netlist_1\"\r\n";
 | |
| file_put_contents($out_file, $pcad_net, FILE_APPEND | LOCK_EX);
 | |
| 
 | |
| include("p/" . $proj[$PROJ_ID]['dir'] . "/net.php");
 | |
| 
 | |
| // netlist end
 | |
| $pcad_net = ")\r\n";
 | |
| file_put_contents($out_file, $pcad_net, FILE_APPEND | LOCK_EX);
 | |
| 
 | |
| 
 | |
| 
 | |
| // create pcb design
 | |
| // ================================================================================================
 | |
| 
 | |
| // pcb begin
 | |
| $pcad_pcb  = "(pcbDesign \"PcbDesign_1\"\r\n";
 | |
| file_put_contents($out_file, $pcad_pcb, FILE_APPEND | LOCK_EX);
 | |
| 
 | |
| include("p/" . $proj[$PROJ_ID]['dir'] . "/pcb_header.php");
 | |
| include("p/" . $proj[$PROJ_ID]['dir'] . "/pcb_layerdef.php");
 | |
| include("p/" . $proj[$PROJ_ID]['dir'] . "/pcb_multilayer.php");
 | |
| include("p/" . $proj[$PROJ_ID]['dir'] . "/pcb_layers.php");
 | |
| include("p/" . $proj[$PROJ_ID]['dir'] . "/pcb_stackup.php");
 | |
| 
 | |
| // pcb end
 | |
| $pcad_pcb = ")\r\n";
 | |
| file_put_contents($out_file, $pcad_pcb, FILE_APPEND | LOCK_EX);
 | |
| 
 | |
| 
 |