| 
<?php/******
 * CAD2D
 *
 * [CAD2D] class create 2 dimensional engineering drawing.
 * Entity Data are strore in the associative array.
 * Class draw the drawing on image after entity data.
 * This class is free for the educational use as long as maintain this header together with this class.
 * Author: Win Aung Cho
 * Contact [email protected]
 * version 1.0
 * Date: 10-02-2023
 *
 ******/
 require_once ("../src/cad2d.php");
 
 $model2d = new CAD2D();
 $model2d->drawGrid(-50, -50, 300, 600, 50);
 // basic line entity
 $ent = array(
 'p1' => array(
 'x' => 0,
 'y' => 0
 ) ,
 'p2' => array(
 'x' => 200,
 'y' => 400
 )
 );
 $model2d->lineWidth(2);
 $model2d->setColor(BLUE);
 $model2d->drawLine($ent);
 
 // line type
 $ent['p1']['y'] += 50;
 $ent['p2']['y'] += 50;
 $ent['pat'] = DASHDOT;
 $ent['ltscale'] = 5.0;
 $model2d->setColor(RED);
 $model2d->drawLine($ent);
 
 // line with offset
 $ent['pat'] = null;
 $ent['p1']['y'] += 50;
 $ent['p2']['y'] += 50;
 $ent['off1'] = 50;
 $ent['off2'] = - 50;
 $model2d->setColor(GREEN);
 $model2d->drawLine($ent);
 
 // line width
 $model2d->setColor(BLUE);
 $ent = [];
 $ent['p1'] = [x => 50, y => 0];
 $ent['p2'] = [x => 200, y => 350];
 $t = 1;
 
 for ($i = 0;$i < 300;$i += 50)
 {
 $model2d->lineWidth($t);
 $model2d->drawLine($ent);
 $t++;
 $ent['p1']['x'] += 50;
 $ent['p2']['y'] -= 50;
 }
 
 $fname = "cadline.png";
 imagePng($model2d->canvas, './images/'.$fname);
 imagedestroy($model2d->canvas);
 
 echo "<img src='images/$fname?u=".time()."'/>";
 ?>
 
 |