You are on page 1of 5

An introduction to CAD

Introduction: distribution system automation is built on 5 pillars which are computer programming, 
computer aided design & drafting (CADD), system supervisory & data acquisition systems (SCADA), 
local networks including LAN & WAN and geographic information systems (GIS) including global 
positioning system (GPS) software & receivers. In this article an introduction to CAD systems will be 
presented. The CAD packages are the tools used to automate the drafting/designing/engineering 
processes in almost all industries & technical operations. The CAD program was 1 of the first tools to 
be used to automate the technical offices of any organization. Such CAD packages have been in use 
(commercially) for over 20 years in consulting firms, industrial plants, refineries, petrochemical plants, 
utilities and other sectors of the industry. They produce drawings of every type: electrical, mechanical, 
civil, architecture, process, instrumentation,....etc. Depending on the user field of interest, the CAD 
system can tie in with other automating/analysis/production packages, for example CAM (computer 
aided manufacturing) & GIS (Geographic information systems). Over the recent few years a lot of 
development took place with respect to CAD systems. The interface between the user and software is 
becoming easier & similar to other off­the­shelf general software packages. The drawings can be 
checked against specified standards. The drawings can be sent over the internet for viewing or marking 
& checking. The attributes (fields) of the drawn objects (entities) can be accessed via other non­CAD 
software packages. The drawing can be fed into another program for analysis or displaying detailed 
information. 
Components of a CAD system: they can be classified broadly into the software and the hardware. The 
software being the program that the user will interact with to draw, modify, store & plot his/her work. 
The hardware contains the workstations (or personal computers), the plotter & the server (for 
networked systems). 
The software: it provides the user with all the necessary tools to draw/sketch, modify, add dimensions, 
cross hatch, send & plot his/her drawing. These tools are displayed on the monitor's screen. The 
program will allow more than 1 approach for entering the commands or performing the required 
functions. The screen may be divided into the following sections: menu bar (or sometimes called pull­
down menus), standard tool bar, ribbon bar (or object properties tool bar), drawing window with cursor, 
draw (quick) tool bar, modify tool bar, coordinate system icon, model & layout tab, command window 
with command line, status line with toggle buttons and feature (history) tree. In general, when a tool bar 
icon is clicked 1 of 3 actions will take place: a dialog box will be displayed, a function (sub­tool) bar 
will be displayed having additional functions that relate to the clicked tool bar icon or a specific action 
occurs. 
The hardware: The personal computer will be a Pentium or compatible microprocessor with adequate 
amount of RAM (64 MB or more preferred), compatible operating system, SVGA (or VGA) monitor 
card, hard drive with sufficient space (capacity) to install the software package, mouse, parallel 
communication port, serial communication port and modem to connect to the Internet. The plotter 
connected to the network can be classified into either vector or raster devices. The first receives the 
information (to be plotted) sent by CAD programs (as vectors (lines based on mathematical coordinate 
data) and handles it directly (as is­vectors). The latter handles the information received indirectly i. e. 
translating the vector data to form an image composed of dots (raster). An example for a vector device 
is the pen plotter. Any of the following is a raster devices: dot matrix (impact) printers, thermal, laser & 
electrostatic printers/plotters. 
  
How does a CAD system work? Vectors are used to describe specific objects (entities) defining their 
size, position & geometry. The image seen on screen in a CAD application is only a visual 
representation of the vector file. The vector information in a CAD file is mathematical (it is not stored 
as an image). All CAD software packages uses vector objects instead of raster. The primary benefits is 
the ability to precisely describe, create, scale & manipulate individual entities. All graphics objects are 
modeled in relation to a fixed world coordination systems with global origin at the bottom left corner of 
the drawing area (X­axis pointing to the right, Y­axis pointing upward). At any time the user can set up 
a temporary user coordinate system by moving the origin and/or rotating the axis. All data is entered 
relative to that temporary axis system (but is converted automatically & stored in world coordinates). 
An entity is the smallest object that can be placed on the screen, for example Line, Circle, Arc, Text, 
Polylines. The entities are stored & referenced in the drawing database. Each entity has a detailed 
description in the CAD database. For example the single line may contain the following attributes 
(equivalent to column heading or field in a database): entity name, entity type, layer upon which the 
line is drawn, colour of line, beginning XY coordinate, ending XY coordinate, line type plus other data 
that is needed to fully describe the entity. An entity list for a circle may contain entity name (which is a 
hexadecimal number, it changes every time a drawing is opened, it is never saved), entity type (in DXF 
group code it is 0, text string ­fixed­ eg. "CIRCLE", :LINE",..), colour (in DXF group code is 62), 
primary point (10, the center of a circle as in this case or the start point of a line or text entity), floating 
point values (40, radius of a circle or text height) & layer name (8, eg. "0", "LAYER1",..). The CAD 
database objects include both geometrical objects such as circles, lines, polylines, ...etc and non­
geometrical objects as symbol tables & dictionaries. 
The CGMs (computer graphics metafile) are created to become the final output that end users will look 
at, the IGES (initial graphic exchange specification) files are used for engineering data interchange 
between different CAD systems. To publish engineering drawings to the Internet, the completed CAD 
drawing (.dwg or .dxf files) is rasterized (convert to a raster file format) that can be viewed by a Web 
browser. The rasterized format can be for example PNG, JPEG, GIF. These can be published using IMG 
tag in HTML. Certain plug­ins to the browsers can allow the user to view DXF, DWG, HPGL or DWF 
(hybrid format) without the need to rasterize such drawings. It also allows him/her to modify the 
drawing prior to saving it to a local drive. 
XML (extensible markup language) is a markup language designed to describe data rather than 
displaying them. HTML is used for the latter purpose. XML tags are not defined. It is used with DTD 
(document type definition) to describe the data. For web­based (enabled) CAD software, it is 
considered ideal as it allows for the definition of any number of information tags. It allows an unlimited 
definition of tags that describe the data. The schema (dictionary) has to be stored at a known location 
on the Internet. The schema for a CAD system has to answer the following question: how lines, text, 
arcs and other entities are presented in XML? Any application that requires these tags to process them, 
looks them up at that Internet location. HTML specifies how data is displayed in a browser, XML 
defines the content (data) of the page. XML can be used in conjunction with HTML/Javascript, CSS 
(cascading style sheet) or XSL (extensible stylesheet language) to provide the data to the user in the 
required format and expected details. 
Tasks of a CAD system: the facilities and provisions that a CAD system has to provide to the user, today, 
differ a lot than only a few years ago. Before, the main purpose of a CAD system was to assist in 
producing & plotting (obtaining a hard copy of) drawings like layout, assembly, single line, detailed and 
production (shop) drawings. The plotter may be connected to the local network and found on the local 
site or at a remote one. The design and the necessary drawings can be done at 1 location. The server 
that is connected to a leased telephone line or a dial up one can be used to send the drawings to another 
city (where the shop or site is located) or even another country to make hard copies available, where 
they are needed. The drawings produced had to be reviewed manually to verify that they adhere to the 
organization standards and drawn per customer specifications. For consistency purpose, a symbols 
library is built and included in the CAD software, thus it can be used to present the different devices 
and equipment that will be  shown on the different drawings. The organization manual may include a 
copy of such symbols, how to access them, on which layer (level) each symbol has to be inserted as 
well as each other object or block of objects is to be located and the necessary information regarding 
the style of the different lines, text & dimensioning standards. A simple programming language (or 
scripting language) and a development environment  was also included with the CAD program. They 
are used to customize the CAD environment (menus, tool bars & dialog boxes) as well as automating 
the repetitive CAD operations. This was then but nowadays the intelligent CAD systems offer much 
more tools to the users as well as CAD & standards managers. Some of these new facilities are: the 
drawings can be sent over the Internet to obtain approvals or get reviewed, marked up & sent back (all 
electronically), the designs produced by such software can be found on the Internet available for 
modification and other diagrams/sketches can be added to them, the drawings can be compared with 
the company's and / or standards organization's and/or customer standards and the discrepancies 
reported in more than 1 way, more control on the entities attributes & properties, improved & easier 
dimensioning, ease of text objects scaling, a programming environment that allows building 
applications that communicate faster with the core CAD program, adding run time functions to the 
existing CAD classes & data acquisition provision. 
Going back to the basics, the fundamental functionality of a CAD program would include: 
1) Creating or accessing files as drawings, plots, merge. 
2) Editing functions as undo, redo, cut/copy, paste, mode. 
3) 2D viewing functions as zoom, pan, show, hide. 
4) Drawing facilities which create objects (entities) such as lines, circles, arcs, polylines. 
5) Dimension functions. 
6) Selecting & unselecting functions. 
7) Modifying functions as transform, fillet, modifying text. 
8) Query functions which inquire about objects as measure. 
9) Tools functions as symbols, attributes, preferences. 
Some of these functions are accessed from the drop down menus other from the tool bars and some are 
available to be run from menus as well as tool bars. Certain commands are only available from the 
command line. 
The programming environment can be as simple as a text editor, where the commands (statements), 
keywords & instructions are entered in a blank document. It is then saved to the disk with the 
appropriate file extension, as text document. The programming (interpreted) language provides the 
following functionality: 
1) The entry point to the function, the file can contain more than 1 function. 
2) The user input related statements which cover picking a point on the screen, entering a real number 
to the program, entering a second point on the screen, entering a string of text, entering a distance 
(using the keyboard or by picking a second point on the screen), entering an angle in radians (using the 
keyboard or the mouse). 
3) The assignment operator or command. 
4) The print statements which allow the program to simply print a message on the command line (a 
prompt) or to print & return an expression. 
5) The arithmetic operations which includes the addition, subtraction, multiplication, division, 
increment and decrement. 
6) The line entity operations like the calculation of the distance between 2 points, the second point in a 
line given the first point & an angle, obtaining the intersection of 2 lines, returning an angle between 2 
points. 
7) The execution of the core CAD functions like drawing lines, polylines, circles, dimensioning and 
other commands executed through the drop­down menu or tool bars. 
8) The list operations like displaying the values in the list variable, taking a list apart & displaying only 
certain values found in the list variable, joining 2 or more lists together, returning the number of 
elements in a list, looks for a duplicate returning the duplicate plus all the other member from it to the 
end of the list, looking for an element in a list variable from a group of list variables returning the list 
with the indicated variable, constructing a new list with an indicated element placed at the beginning of 
the list. 
9) The data type conversions which convert a real number into an integer, convert an integer to a real 
number, return a string from a real number, convert a real number into a string convert a string into an 
integer, convert an integer into a string. 
10) Conditionals (decision making), looping & iterations like testing for equality, the equivalent to the 
standard if­the­else, for­next & loop­while/until loops. 
11) Operations on entities like selecting entities, obtaining the entity name, extracting the entity list, 
substituting 1 aspect for another in a group of lists, returning the length (number of selections), 
modifing the entity list & writing it back to the drawing database. 
12) Operations on text like changing text height and distance (space) between text lines. 
13) String manipulation functions like converting the string of text from lower to upper case, 
concatenating 2 strings into 1, returning the number of characters in a string, returning part of a string 
from a specified position within the string 
14) Miscellaneous functions like returning as ASCII code for a character, returning the character for the 
indicated ASCII code, changing the selected entity or object layer, erasing the screen, moving from the 
graphics screen to the text one and vice versa. 
  

You might also like