This repository contains the mathematical model, documentation, functional descriptions and source files of the Engineering Drawing as a part of COP290 Course at IIT Delhi.
Team Members: Anubhav Palway (2016CS10368), Sunil Kumar (2016CS10314).
Design and implement a software package for Engineering drawing with the following functionalities:
- We should be able to interactively input or read from a file either
i) an isometric drawing and a 3D object model or
ii) projections on to any cross section. - Given the 3D model description we should be able to generate projections on to any cross section or
cutting plane.
- Given two or more projections we should be able to interactively recover the 3D description and
produce an isometric drawing from any view direction.
Input Format:
-
To Draw the 3d object:
- Press n.
- Press 'u' for positive x-axis and 'j' for negative x-axis.
- Press 'i' for positive y-axis and 'k' for negative y-axis.
- Press 'o' for positive z-axis and 'l' for negative z-axis.
- Press n.
-
Using text file:
- To generate projections from 3d object:
- First line gives type i.e, zero for 3d to 2d
- Next line gives n, number of shapes.
- Next n lines gives the points for basic shapes in the following format:
Basic shapes include point(1), line(2), triangle(3) and quadrilateral(4)
First the number of points according to the shape and then the x,y,z coordinates.
E.g.- 3 (1,1,0) (0,0,0) (0,1,0) //This is for a triangle
- First line gives type i.e, zero for 3d to 2d
- To generate 3d object from 2d projections:
- First line gives type i.e., one for 2d to 3d
- Next line gives n, number of points for top projections.
- Next n lines gives the points (x,y,z coordinates with spaces in between them)
- Next line contains e, number of the edges in top projection.
- Next e line should contain 2 integers, i, j, denoting an edge between vertex i and vertex j as per the order of input of vertices (order starting from 0)
- First line gives type i.e., one for 2d to 3d
- To generate projections from 3d object:
-
Executing the code:
cd Cop290/codes/src/
make
Without any file
./cadmake
With File
./cadmake <input.txt>
-
Additional Commands: </br> 't' to save. 'w' to zoom out. 's' to zoom in. Arrow keys to rotate. 'x' and 'y' to reset x and y rotation respectively.