CAD Standards 5.1 Chapter 5 CAD Standards 5.1. Introduction The purpose of CAD standard is that the CAD software should not be device-independent and should connect to any input device via a device driver and to any graphics display via a device drive. The graphics system is divided into two parts: the kernel system, which is hardware independent and the device driver, which is hardware dependent. The kernel system, acts as a buffer independent and portability of the program. At interface ‘X’ , the application program calls the standard functions and sub routine provided by the kernel system through what is called language bindings. These functions and subroutine, call the device driver functions and subroutines at interface ‘Y’ to complete the task required by the application program (Fig.5.1.). Fig.5.1. Graphics Standard CAD Standards 5.2 5.2. Various standards in graphics programming The following international organizations involved to develop the graphics standards: ACM ( Association for Computer Machinery ) ANSI ( American National Standards Institute ) ISO ( International Standards Organization ) GIN ( German Standards Institute ) Fig.5.2. Graphics Standards in Graphics Programming As a result of these international organization efforts, various standard functions at various levels of the graphics system developed. These are: 1. IGES (Initial Graphics Exchange Specification) enables an exchange of model data basis among CAD system. 2. DXF (Drawing / Data Exchange Format) file format was meant to provide an exact representation of the data in the standard CAD file format. 3. STEP (Standard for the Exchange of Product model data) can be used to exchange data between CAD, Computer Aided Manufacturing (CAM) , Computer Aided Engineering (CAE) , product data management/enterprise data modeling (PDES) and other CAx systems. 4. CALS ( Computer Aided Acquisition and Logistic Support) is an US Department of Defense initiative with the aim of applying computer technology in Logistic support. CAD Standards 5.3 5. GKS (Graphics Kernel System) provides a set of drawing features for two-dimensional vector graphics suitable for charting and similar duties. 6. PHIGS ( Programmer’s Hierarchical Interactive Graphic System) The PHIGS standard defines a set of functions and data structures to be used by a programmer to manipulate and display 3-D graphical objects. 7. VDI (Virtual Device Interface) lies between GKS or PHIGS and the device driver code. VDI is now called CGI (Computer Graphics Interface). 8. VDM (Virtual Device Metafile) can be stored or transmitted from graphics device to another. VDM is now called CGM (Computer Graphics Metafile). 9. NAPLPS (North American Presentation- Level Protocol Syntax) describes text and graphics in the form of sequences of bytes in ASCII code. 5.3. Graphics Kernel System (GKS) The Graphical Kernel System (GKS) was the first ISO standard for computer graphics in lowlevel, established in 1977. GKS offers a group of drawing aspects for 2D vector graphics appropriate for mapping and related duties. The calls are defined to be moveable across various programming languages, graphics hardware, so that applications noted to use GKS will be willingly portable to different devices and platforms. Fig.5.3. Layers of GKS The following documents are representing GKS standards: The language bindings are called in ISO 8651 standard. ANSI X3.124 (1985) is part of ANSI standard. ISO/IEC 7942 noted in ISO standard, first part of 1985 and two to four parts of 1997-99. ISO 8805 and ISO 8806. CAD Standards 5.4 The main uses of the GKS standard are: To give for portability of application graphics programs. To assist in the learning of graphics systems by application programmers. To offer strategy for manufacturers in relating practical graphics capabilities. The GKS consists of three basic parts: i) A casual exhibition of the substances of the standard which contains such things as how text is placed, how polygonal zones are to be filled, and so onward. ii) An official of the descriptive material in (i), by way of conceptual the ideas into separate functional explanations. These functional descriptions have such data as descriptions of input and output parameters, specific descriptions of the result of every function should have references into the descriptive material in (i), and a description of fault situation. The functional descriptions in this division are language autonomous. iii) Language bindings are an execution of the abstract functions explained in (ii). in a explicit computer language such as C. GKS arrange its functionality into twelve functional stages, based on the complexity of the graphical input and output. There are four stages of output (m, 0, 1, 2) and three stages of input (A, B, C). NCAR GKS has a complete execution of the GKS C bindings at level 0 A. 5.3.1. GKS Output Primitives GKS is based on a number of elements that may be drawn in an object know as graphical primitives. The fundamental set of primitives has the word names POLYLINE, POLYMARKER, FILLAREA, TEXT and CELLARRAY, even though a few implementations widen this basic set. i) POLYLINES The GKS function for drawing line segments is called ‘POLYLINE’. The ‘POLYLINE’ command takes an array of X-Y coordinates and creates line segments joining them. The elements that organize the look of a ‘POLYLINE’ are (Fig.5.3): Line type Line width scale factor : thickness of the line. Polyline color index : solid, dashed or dotted. : color of the line. CAD Standards 5.5 Fig.5.3. GKS POLYLINES ii) POLYMARKERS The GKS ‘POLYMARKER’ function permits to draw symbols of marker centered at coordinate points. The features that control the look of ‘POLYMARKERS’ are (Fig.5.4.): Marker characters : dot, plus, asterisk, circle or cross. Marker size scale factor : size of marker Polymarker color index : color of the marker. Fig.5.4. GKS POLYMARKERS iii) FILLAREA The GKS ‘FILL AREA’ function permits to denote a polygonal shape of a zone to be filled with various interior shapes. The features that control the look of fill areas are (Fig.5.5.): CAD Standards FILL AREA interior style : solid colors, hatch patterns. FILL AREA style index : horizontal lines; vertical lines; left slant lines; 5.6 right slant lines; horizontal and vertical lines; or left slant and right slant lines. Fill area color index : color of the fill patterns / solid areas. Fig.5.5. GKS FILLAREA iv) TEXT The GKS TEXT function permits to sketch a text string at a specified coordinate place. The features that control the look of text are: Text font and precision : text font should be used for the characters Character expansion factor : height-to-width ratio of each character. Character spacing : additional white space should be inserted between characters Text color index : color the text string Character height : size of the characters Character up vector : angle the text Text path : direction the text should be written (right, left, up, or down). Text alignment : vertical and horizontal centering options for the text string. CAD Standards 5.7 Fig.5.6. GKS TEXT v) CELL ARRAY The GKS CELL ARRAY function shows raster like pictures in a device autonomous manner. The CELL ARRAY function takes the two corner points of a rectangle that indicate, a number of partitions (M) in the X direction and a number of partitions (N) in the Y direction. It then partitions the rectangle into M x N sub rectangles noted as cells. Fig.5.7. GKS CELL ARRAY CAD Standards 5.8 5.4. Standard for exchange images A graphics standard proposed for interactive Three Dimensional applications should assure different criteria. It should be introduced on platforms with changing graphics abilities without sacrificing the graphics quality of the primary hardware and without compromising control over the hardware’s function. It must offer a normal interface that permits a programmer to explain rendering processes quickly. To end with, the interface should be flexible adequate to contain additions, hence that as new graphics operations become important, these operations can be given without sacrificing the original interface. OpenGL meets these measures by giving a simple interface to the basic operations of 3D graphics rendering. It supports basic graphics primitives, basic rendering operations and lighting calculations. It also helps advanced rendering attributes such as texture mapping. 5.4.1. Open Graphics Library OpenGL draws primitives into a structured buffer focus to a various selectable modes. Every Point, line, polygon, or bitmap are called as a primitive. Each mode can be modified separately; the parameters of one do not affect the parameters of others. Modes defined, primitives detailed, and other OpenGL operations explained by giving commands in the form of procedure calls. Fig.5.7. Schematic diagram of OpenGL Figure 5.7 shows a schematic diagram of OpenGL. Commands go into OpenGL on the left. The majority commands may be collected in a ‘display list’ for executing at a later time. If not, commands are successfully sent through a pipeline for processing. The first stage gives an effective means for resembling curve and surface geometry by estimating polynomial functions of input data. The next stage works on geometric primitives explained CAD Standards 5.9 by vertices. In this stage vertices are converted, and primitives are clipped to a seeing volume in creation for the next stage. All ‘fragment’ created is supplied to the next stage that executes processes on personal fragments before they lastly change the structural buffer. These operations contain restricted updates into the structural buffer based on incoming and formerly saved depth values, combination of incoming colors with stored colors, as well as covering and other logical operations on fragment values. To end with, rectangle pixels and bitmaps by pass the vertex processing part of the pipeline to move a group of fragments in a straight line to the individual fragment actions, finally rooting a block of pixels to be written to the frame buffer. Values can also be read back from the frame buffer or duplicated from one part of the frame buffer to another. These transfers may contain several type of encoding or decoding. 5.4.2. Features of OpenGL i) Based on IRIS GL OpenGL is supported on Silicon Graphics’ Integrated Rater Imaging System Graphics Library (IRIS GL). Though it would have been potential to have designed a totally new Application Programmer’s Interface (API), practice with IRIS GL offered insight into what programmers need and don’t need in a Three Dimensional graphics API. Additional, creation of OpenGL similar to Integrated Rater Imaging System Graphics Library where feasible builds OpenGL most likely to be admitted; there are various successful IRIS GL applications, and programmers of IRIS GL will have a simple time switching to OpenGL. ii) Low-Level A critical target of OpenGL is to offer device independence while still permitting total contact to hardware. Therefore the API gives permission to graphics operations at the lowest level that still gives device independence. Hence, OpenGL does not give a suggestion for modeling complex geometric objects. iii) Fine-Grained Control Due to minimize the needs on how an application utilizing the Application Programmer’s Interface must save and present its information, the API must give a suggestion to state entity parts of geometric entities and operations on them. This fine-grained control is necessary so that these CAD Standards 5.10 mechanism and operations may be defined in any order and so that control of rendering operations is comfortable to contain the needs of various applications. iv) Modal A modal Application Programmer’s Interface arises in executions in which processes function in parallel on different primitives. In that cases, a mode modify must be transmit to all processors so that all collects the new parameters before it processes its next primitive. A mode change is thus developed serially, stopping primitive processing until all processors have collected the modifications, and decreasing performance accordingly. v) Frame buffer Most of OpenGL needs that the graphics hardware has a frame buffer. This is a realistic condition since almost all interactive graphics run on systems with frame buffers. Some actions in OpenGL are attained only during exposing their execution using a frame buffer. While OpenGL may be applied to give data for driving such devices as vector displays, such use is minor. vi) Not Programmable OpenGL does not give a programming language. Its function may be organized by turning actions on or off or specifying factors to operations, but the rendering algorithms are basically fixed. One basis for this decision is that, for performance basis, graphics hardware is generally designed to apply particular operations in a defined order; changing these operations with random algorithms is generally infeasible. Programmability would variance with maintenance of the API close to the hardware and thus with the objective of maximum performance. vii) Geometry and Images OpenGL gives support for managing both 3D and 2D geometry. An Application Programmer’s Interface for utilize with geometry should also give guidance for reading, writing, and copying images, because geometry and images are regularly joint, as when a Three Dimensional view is laid over a background image. Various per-fragment processes that are applied to fragments beginning from geometric primitives apply uniformly well to fragments corresponding to pixels in an image, making it simple to mix images with geometry. CAD Standards 5.11 viii) Depth buffer The only hidden surface removal technique given by OpenGL is the depth buffer. This statement is in line with that of the graphics hardware having a frame buffer. Added hidden surface removal techniques may be applied with OpenGL, but it is assumed that such techniques are not supported in hardware and hence need not be supported openly by OpenGL. ix) Local Shading The only shading techniques offered by OpenGL are local. That is, techniques for finding surface color such as ray-tracing that need obtaining data from other parts of the view are not openly supported. The reason is that such techniques need information of the global scene database, but so far dedicated graphics hardware is planned as a pipeline of localized operations and does not give services to save and traverse the huge amount of necessary data to characterize a complex scene. x) Rendering Only OpenGL gives access to only rendering operations. There are no services for getting user input from devices like keyboards and mice, hence it is anticipated that any method under which OpenGL runs must give such services. The results of OpenGL rules on the frame buffer are finally controlled by the window method that assigns frame buffer resources. The window system finds which part of the frame buffer OpenGL can contact and communicate to OpenGL how those parts are structured. 5.5. Data Exchange standards Area of data transfer between various CAD environments is a well developed one for a number of years and the dominant importance of CAD communication between manufacturers and their suppliers has become more visible. In the early years of CAD business, software packages were expanded which were engaged as direct translators between various systems. Visibly, these packages were applied with huge victory. However, as the various CAD vendors were increased, the impracticality of applying direct translators becomes additional apparent. Thus, a little number of neutral format translators created by different associations in various countries was launched into the engineering market. Several of these translators were tailor ended for precise industries and others were established as standard tools by various authorized standard organizations. A few of these standards such as Standard for Exchange of Product data (STEP), Data exchange File (DXF), Product Data Exchange Specifications (PDES) and Initial Graphics Exchange Specifications (IGES) have established more admired with CAD system users and vendors. CAD Standards 5.12 IGES was initially established by National Aeronautical and Space Administration and National Bureau of Standards in 1979. Shortly it was accepted and recognized by American National Standard Institute (ANSI) as a standard tool format. As a result, IGES has become a suitable and generally used neutral format translator by different CAD system vendors. Even though a few translators are more broadly utilized than IGES, this neutral format translator has been through a number of revisions and has confirmed logically a comprehensive tool in transferring information for parts designed by wireframe, surface or solid models. Transferring information between unlike CAD systems must contain the complete product report saved in its database. Four types of modeling data contain this explanation. They are (i) shape, (ii) non shape, (iii) design and (iv) manufacturing data. Shape data has of both geometrical and topological data as well as part attributes. Non shape data has graphic information such as shaded images and model global information as measuring of the database and the announcement of saving the database numerical values. Design data has done with the information that designers create from models for analysis use. Manufacturing data has of information as tolerance, process planning, tool design and bill of material. The data layout that are planned to communicate product data among CAD should addressexchange these four types of data. The requirement to data exchange modeling is openly motivated by the requirement to combine and computerize the design and manufacturing methods to get the maximum advantages from CAD system. Fig.5.8. Translators CAD Standards 5.13 Several unlike CAD systems are in existence and here communication problems occur as every system utilize its own scheme - definite data structure to store product data; that is each system saves drawings and modeling demonstration in its own way. This issue has two solutions: direct and indirect. The direct solution involves translating the modeling data saved in a product data base openly from one CAD format to another, generally in one step. The indirect solution is more common and adopts the attitude of some existing CAD system (Fig.5.8). 5.5.1. Evolution of Data exchange format A general technique of translation is through an intermediary format. The distribution of CAD system exports out to this format and getting CAD system examines in this format. Some systems are autonomous of the CAD vendors being defined by standards institutes while others, even if owned by a company, are extensively utilized and are viewed as quasi industry standards. It is gradually more common for companies having these quasi industry standards to further the use of their layouts by openly publishing these data formats. The figure 5.9 shows the evolution of the data exchange format and the various existing standards 0. where GE – General Electric Company USAF –United State Air force ICAM – Integrated Computer Aided Manufacturing IGES – Initial Graphics Exchange Specification ANSI – American National Standard Institute SET – Standard Exchange Transfer CAM-I – Computer Aided Manufacturing International PDDI – Product Data Definition Interface PDES – Product Data Exchange using STEP. STEP – Standard Transfer and Exchange Product. ESPRIT – European Commission and is led by West Germany. CAD Standards 5.14 Fig.5.9. Data Exchange Format 5.6. IGES The Initial Graphics Exchange Specification (IGES) is a file format which describes a vendor neutral data format that permits the digital exchange of data among CAD systems. IGES is the comprehensive standard and is developed to convey the complete product description with that of manufacturing and any other related information. Applying IGES, a CAD client can exchange product model data in the form of route diagrams, wireframe, and solid representations. Applications carried by IGES contain conventional engineering drawings, analysis of models, and further manufacturing tasks. IGES file contains six sub-sections they are (i) Flag Section: It is a ASCII format. (ii) Start Section: man- readable opening. Data have is basically for the person who would be giving out this for other application. CAD Standards 5.15 (iii) Global Section: contains information about element of the product, company, drafting standards etc. (iv) Directory Entry Section: All entry here is fixed in size has 20 fields and 8 character each. To give an index for the file and to have attribute data such as color, line type matrix. (v) Parameter Data section: It has data linked with units. A free format is allowable for maximum convenience and also has pointers. (vi) Terminate Section: This section has the sub-totals of the proofs present. This would constantly hold a single record. It is likely that some design method is lost. 5.6.1. IGES Specifications Initial Graphics Exchange Specification (IGES) was developed for the transmission of CAD data between dissimilar CAD systems as a neutral data format. Even if the IGES format does not offer appropriate data format for manufacturing applications in downstream, it can be accepted as the major driving force to obtain the international standard of product data and the data exchange format. In order to transfer data, translation is completed from one local format to the neutral file and then to another local format. As shown in Figure 5.10., the number of processors required to transfer data among N dissimilar CAD systems using a neutral file is 2 * N. Fig.5.10.Translation using a Neutral File IGES file is simple a document that identifies what should go into a data file. Programmers should create software to translate from system format to the IGES format or IGES format to system format. The program that transforms from a indigenous CAD format to IGES format is called as preprocessor. The program that translates from IGES format to another target format is called as postprocessor (Fig. 5.11.). CAD Standards 5.16 Fig.5.11. IGES translators 5.6.2. Structure of IGES file Like other CAD systems, IGES is based on the theory of entities. Entities could varies from fundamental geometric entities, such as points, lines, and arcs, to extra complicated objects, such as dimensions and subfigures. Entities in IGES are divided into three categories as follows: (i) Geometric entities : arcs, lines, and points that define the object. (ii) Annotation entities : dimensions and notes and visualization of the object. (iii) Structure entities : associations between other entities in IGES file. An IGES file is having a sequence of records. The file formats treat the product definition to be exchanged as a file of entities, every entity being signified in a standard format, to and from which the local representation of a particular CAD system can be mapped. IGES file is created in terms of ASCII characters as a sequence of 80 records. Fig.5.12. IGES file structure As shown in the figure 5.12 an IGES file contains of five sections which must be in the following order: Start section, Global section, Directory Entry section, Parameter Data section, and Terminate section. CAD Standards 5.17 i) Start Section The Start section is a normal readable beginning to the file. It is generally explained as a ‘PROLOGUE’ to the IGES file. This section has data such as the names of the source and receiving CAD, and a short report of the product being changed. ii) Global Section The Global section has data that explain the preprocessor and information required by the postprocessor to interpret the file. The following parameters are defined in the Global section: a) Characters utilized as delimiters between individual accesses and between records, b) IGES file name itself, c) Software version of sending system along with Vendors, d) The representation of integers and single and double precision floating point numbers, e) The file generation date with time, f) Model space scale, g) Model units, h) Minimum resolution and maximum coordinate values, i) IGES file’s author name. iii) Directory Entry Section (DE) The DE section is a list of all the units described in the IGES file collectively with certain features connected with them. The entry for all data engages two 80-character documentations which are separated into a total twenty 8-character fields as shown in Table 5.1. The fields have the unit type number such as 100 for circle, 110 for lines, etc. The second field has a pointer to the parameter data entry. The pointer of an entity is basically its series number in the DE section. A few of the entity elements identified in this section are line font, layer number, transformation matrix, line weight, and color. Table.5.1. Structure of Directory Section Column 1-8 9-16 Line 1 Entity Entry Pointer Parameter Entry Pointer Line 2 … 49-56 Transformation Matrix … 65-72 Visible Entity Switch 73-80 Sequence Number Sequence Number CAD Standards 5.18 iv) Parameter Data Section (PD) The PD section has the real data describing all entity listed in the DE section as shown in Table 5.2. For example, a straight line is described by the two end point’s coordinates. Although all entity has always two records in the DE section, the number of records needed for each entity in the PD section varies from entity to entity which is depends on the amount of data. Parameter data are located in free format in columns 1 through 64. The parameter delimiter is added to divide parameters (usually a comma) and the record delimiter is added to end the list of parameters (usually a semicolon). Both delimiters are described in the Global section. Columns 66 through 72 on all PD records have the entity pointer defined in the first record of the entity in the DE section. Table.5.2. Structure of Parameter Data Section Field Circle 1 100 Line 110 2 3 4 Z X Y (center of circle) X1 Y1 Z1 (Start point) 5 6 X1 Y1 (start point) X2 Y2 ( end point) 7 8 X2 Y2 (end point) …. 73-80 Sequence Number Sequence Number v) Terminate Section The Terminate section has a single record which defines the number of records in every of the four preceding sections for verification purposes. 5.6.3. The IGES Extraction Methodology This approach focused to achieve the combination between CAD and CAM. Different CAD saves the related data to the design in their personal databases. Structures of these databases are dissimilar from each other. As a result no common or standard structure has so far created yet that can be utilized by all CAD software. For that basis this research will try to create an Intelligent Feature Recognition Methodology (IFRM) which has the capacity to communicate with the variousCAD/CAM systems. The part design is initiated through CAD and it is signified as a solid model by utilizing CSG technique as a design tool. The solid model of the part design has dissimilar solid primitives united together to form the needed part design. The CAD creates and provides the geometrical data of the part design in the form of an ASCII file that is applied as standard format which gives the projected methodology the capability to communicate with the different CAD/CAM systems. CAD Standards Fig.5.13. IGES Extraction Methodology 5.19 CAD Standards 5.20 The geometrical boundary data of the part design is analyzed by an attribute identification program that is developed specifically to collect the features from the geometrical data based on the geometric reasoning and object oriented advances. The feature recognition program is able to identify these features: slots, pockets, inclined surfaces, holes and steps, etc. These features are called manufacturing data that are mapped to process planning as an application for CAM. Figure 5.13 shows the layout of the projected methodology. The intelligent feature recognition methodology (IFRM) has three main phases: (i) a data file converter, (ii) an object form feature classifier and (iii) a manufacturing features classifier. The first phase changes a CAD data in IGESIB-rep format into a proposed object oriented data structure. The second phase organized dissimilar part geometric features acquired from the data file converter into different feature teams. The third phase maps the removed features to process planning's requirement. Figure5.14. shows a basic flowchart of data (IGES file) extraction and classification details. Fig.5.14. Flowchart of extraction and classification of features 5.6.4. Basic IGES Entities IGES is a standard file format for the information defining the object drawing in 3D CAD systems in B-rep structure. The opening fields in IGES format have an object's geometric and topological data. The geometric data has the definition of lines, planes, circles, and added geometric entities for a given object, and the topological data describing the relationships between the object's CAD Standards 5.21 geometric parts, for example, in conditions of loops. An external loop provides the position of major geometric shapes and an internal loop signifies a projection or a depression on an external loop. The primary IGES entities, which are connected to representing a solid in B-rep structure, are descrined in the following subsection: a) Line (entity 110) A line in IGES file is described by its end points. The coordinates of start point and end point are incorporated in parameter data section of this entity. b) Circular Arc (entity 100) To signify a circular arc in modeling space, IGES provides the data including a new plane (XT ,YT) in where the circular lies, the coordinates of center point, start point, and end point. A new coordinate system (XT, YT, ZT) is specified by moving the original coordinate system (Xo, Yo, Z0) through a transformation matrix and all coordinates of points connected to this new coordinate system. The order of finish points is counterclockwise about ZT axis. c) Transformation Matrix (entity 124) This entity can provide the relative position information between two coordinate systems, XO,YO,ZO coordinate system and XT,YT, ZT coordinate system. d) Surface of Revolution (entity 120) A surface is generated by rotating the generator (line entity) about the axis of rotation from the start position to the end position. The generator can be a conic arc, line or circular arc. The rotation angles are counterclockwise about the positive direction of rotation axis. e) Point (entity 11 6) A point is described by its coordinates (X, Y, Z). CAD Standards 5.22 f) Direction (entity 123) A direction entity is a non-zero vector in Three Dimensional that is described by its three components with respect to the coordinate axes. g) Plane surface (entity 190) The plane surface is described by a point on the plane and the normal direction to the surface. h) Vertex List (entity 502) This entity is utilized to find the vertex list which contains all the vertexes of the object. i) Edge List (entity 504) This entity is utilized to find the edge list which contains all the edges of the object. j) Loop (entity 508) This entity is operated to find the loops which involved in all the faces of the object. k) Face (entity 51 0) This entity is focused to find faces which have of the object. l) Shell (entity 514) The shell is defined as a set of edge-connected faces. The normal of the shell is in the similar direction as the normal of the face. 5.6.5. Topology of IGES The basic geometric elements of a 3D CAD model based on B-Rep description are vertex, edge and face. The mixed entities like shell and loops have basic geometric entities. Shells and loops are the topological units since only topological but not geometric data is provided to them. A solid machining object (O) model can be defined as where V, E and F are the group of object vertices, edges and faces, respectively, and v, e, f are their elements. In this equation, each edge has two vertices and is allocated by two adjacent surfaces. All face contains specific edges enclosing a specific 2D or 3D shape. The closed chain of CAD Standards 5.23 edges in a surface can form one or more loops. The external loop joined the face and the others are placed inside the face. 5.6.6. IGES Testing An IGES test library prepared by the committee which allows testing of the basic implementation of an entity. The library does not allow variations to be checked that occur in production data due to numerical and computational errors. These variations must be tested by implementers and users. The common methods of testing are: 1. Reflection test 2. Transmission test 3. Loop back test 1. Reflection test Fig.5.14. Reflection Test During the Reflection test an IGES file created by a system’s preprocessor id read by its own post processor to create an another model. It is used to develop that a system’s processors could read and write common entities, making them symmetric. 2. Transmission test During this test an IGES file of a model created by a source system’s preprocessor transferred to a target system whose post-processor is used to recreate the model on the target system. Transmission test determines the capabilities of the pre-processor and post –processor of the source and target system respectively. CAD Standards 5.24 Fig.5.15. Transmission test 3. Loopback test In this Loopback test an IGES file created by the source system is read by the target system which creates another IGES file and then transfers this file back to the source system to read. Loopback test checks the pre and post processors of both the source and the target systems. Fig.5.16. Loopback test 5.6.7. Advantages and Limitation of IGES Advantages of IGES: i) Saves drawing data in an ASCII which can then be transfer between various users. ii) IGES initially maintained drawings and wireframes, and was later expanded to maintain surfaces and solids. iii) Permits seeing and editing of geometry using any CAD tool powered of interpreting STEP geometry and cracks the need between CAD systems and product definition. iv) More valuable for grouping mechanical fundamentals in certain view. v) Added in the assembly plan having all connector elements. vi) Simple for derivation of the hidden information contents. CAD Standards 5.25 Limitations of IGES: i) Does not have a formal data model. ii) Lack of a formal data model, issues during file handling, hard to realize file formats. iii) If there is a mistake in the IGES file, it is very complicate to find the mistake and also correction. iv) Issue of unfinished exchange due to a variety of ‘FLAVORS’ added by CAD vendors. v) IGES does not maintain lifecycle data which may be applicable for engineering applications other than design. 5.7. STEP Standard for the Exchange of Product model data (STEP) is a latest ISO International Standard for signifying and transferring product model data. It comprises an object-flavored data specification language, EXPRESS, to define the illustration of the data. STEP signifies implementation techniques, for occasion, a transfer file, and recommends various resources, example: geometric and topological demonstration. The growth of STEP began in 1984 as a worldwide collaboration. The aim was to describe a standard to cover all features of a product, during its lifetime. This kind of challenge was not been made before. STEP is a gathering of standards to signify and exchange product information. The major parts of STEP are previously international standards, although many parts are still under progress. The progress is performed under the umbrella of the International Standards organization. The aim of STEP is to provide system-independent method to explain the product data in computer aided systems throughout its lifetime. It divides the illustration of product data from the implementation systems. Implementation systems are used for data exchange. The illustration offers a definition of product data to several applications. STEP gives also a basis for archiving product data and a method for the conformance testing of implementations. EXPRESS is a proper data specification language utilized to define the representation of product data. The application of a formal data specification language facilitates growth of implementation. It also allows stability of representation. STEP states the execution methods used for data exchange that sustains the illustration of product data. STEP does not only describe the geometric shape of a product: it also has topology, features, tolerance specifications, material properties, etc. require to completely describe a product for the purposes of design, inspection analysis, manufacture, and product support. The need of STEP is very modest but it is growing all the time. CAD Standards 5.26 The most of CAD method vendors has executed or is implementing STEP pre processors - and post-processors for their CAD methods. STEP is a developing standard that will cover the entire product life cycle in words of data sharing, storage and exchange. It is the most significant and largest attempt ever established in engineering and will restore current CAD exchange standards. 5.7.1. Components of STEP The ISO 10303 describing models on which translators are known as Application Protocols (APs). Every AP is related to one or more lifecycle stages of a defined product class. However, the APs themselves are created on the foundation of a set of Integrated Resources (IRs), major fundamental makes that can be specialized and applied for a wide variety of uses. The numbering method for elements of the standard is difficult. Essentially, the 01x series of parts is concerned with defined resources and the 02x series with implementation systems. Standards are in the 03x series describes the validation of translators for conformance with the standard. The 04x series has combined Generic Resources, which give the basic building blocks of the standard. In addition, a higher-level set of Integrated Application Resources in the 1xx series. The Application Protocols show in the 2xx series, even if some of their fundamental reusable parts have now been individually standardized in the 5xx series - these are called as Application Interpreted Constructs (AICs). The AIC attitude is at present being practiced further, and the purpose is that in future purpose protocols will be collected from sets of reusable standard Application Modules. The resources and application protocols of the standard are as follows: Part 001: Overview and fundamental principles Part 011: EXPRESS language reference manual Part 021: Clear text encoding of the exchange structure Part 022: Standard data access interface Part 023: C++ language binding to the standard data Part 027: Java programming language binding to the standard data Part 041: Fundamentals of product description and support Part 042: Geometric and topological representations Part 043: Representation structures Part 044: Product structure configuration CAD Standards 5.27 Part 045: Materials Part 046: Visual presentation Part 047: Shape variation tolerances Part 049: Process structure and properties Part 101: Drafting Part 104: Finite element analysis Part 105: Kinematics AP 201: Explicit drafting AP 202: Associative drafting AP 203: Configuration with controlled design AP 207: Die for Sheet metal planning and design AP 224: Mechanical product definition for process planning s AP 225: Building elements applying explicit shape representation 5.7.2. STEP Architecture The architecture of STEP is developed to maintain the development of standards for product data sharing. The architecture is governed by the following theories: (1) the range of what is standardized and what is tested is set at the stage of ‘an application,’ (2) application needs are based on a model of a business actions, (3) application needs are standardized with natural language, and (4) a planning is defining how the application needs are assured using a STEP data model. The key data model includes the STEP standards are called as application protocols (APs). As described below, an AP has the following major parts: An Application Activity Model (AAM) defining the business practice data model supports. An Application Reference Model (ARM) defining the data requirements. A scheme for data structures founded on the STEP incorporated resources (IRs), described an Application Interpreted Model (AIM), that is the basis for executions of the standard. CAD Standards 5.28 Fig.5.16. Initial AP Structure STEP creators have made an alert assessment to focus on the data needed by business practices rather than on the procedures themselves as the procedures can change over time while the underlying data needs are longer lasting. This aims on STEP to support data exchange, some structures of data sharing, as well as long-term data maintenance. To that end, the STEP group has developed a data specification language, EXPRESS, as well as execution systems for file exchange and data access interface based on that language. The AIM of an AP is defined applying EXPRESS. An implementation of an AP should apply the AIM technique in grouping with one of the execution methods. STEP standardizes conformance testing systems and abstract test groups to assist certification of AP completions. An AP can state conformance classes (CC) permitting certification of conformance to a particular subset of the AIM. Application Interpreted Constructs (AICs) were established to the STEP architecture to allow cooperative utilize of multiple APs in a business enterprise. An AIC states that a part of an AIM that may be utilized to exchange product data common to two or more APs. However, an AIC does not record the common needs into the AIM. CAD Standards 5.29 5.8. CALS Continuous Acquisition and Life-cycle Support (CALS) is a United States Department of Defense initiative for electronically confining military documentation and linking related data. The proposal has developed a number of standard protocols for the replacement of electronic information with commercial suppliers. These standards are noted as ‘CALS’. CALS standards have been accepted by several other allied nations. The CALS method has allowed IGES and STEP as formats for digital data. CALS consist of standards for electronic data exchange, electronic technical records, and guidelines for process development. CALS was initially called as Computer-aided Acquisition and Logistic Support. 5.8.1. Functions of CALS a) Evaluate system analyses on the execution of CALS-related programs; review and update the Government Concept of Operation and the CALS Implementation Plan (CALSIP); give input and suggestions to apply CALS needs as referenced in the Joint Services CALS Reference Toolkit, to contain cost analysis, and tradeoff learning for different CALS execution alternatives. b. Execute attainment and logistics research studies to establish and advise results to issues connected with contractor and government for weapons systems technical data in digital form. c. Analysis the combination of contractor’s dependability and maintainability design tools that support CAD and engineering systems. d. Execute CALS connected evaluations of the Army capabilities to collect, save, distribute, and use weapon system technical information in digital form, which will progress life cycle maintenance, training, and spare parts purchase. e. Supply inputs and suggestions for the expansion of the CALS portion of acquisition documentation for particular methods. 5.9. Communication Standards Successful communication among computer centers and remote terminals is necessary to maximum usage of current data processing resources. However, there are major compatibility issues to be solved due to the broad variations inherent in available ADP and communications systems and equipment. Initiations are being taken to solve these issues by recognizing and developing identical standards and practices to satisfy the requirements of specific, and in some cases common, societies of interest. CAD Standards 5.30 The various professional societies, trade associations, government agencies and national and international standards bodies, are engaged in these activities. A review of the relationships between these organizations, their existing efforts, and some fifty existing standards affecting to communications must be of interest to everybody concerned with information processing and communications. 5.9.1. Computer Graphics Metafile (CGM) A computer graphics metafile (CGM) is freely available file format in an international standard. It is utilized in Two Dimensional format for: Vector graphics Raster graphics Text CGM has various function provisions and entity illustrations in its format and it utilizes object- oriented methods for image production. A metafile contains information that illustrates other files. CGM’s graphics data interchange format applicable to Two Dimensional computer graphics. It stands alone from some detailed application, system, device or platform. CGM format has the data and the commands for graphical component rebuilding to send an image through object-oriented methods. The CGM format helps a different range of graphic data and geometric primitives where graphic files are explained in a text source file that can be collected into a binary file. The CGM file format isn't frequently used for Web pages because it has been restored most classically by Scalable Vector Graphics (SVG) and CAD. The Web-CGM, however, was expanded by the World Wide Web Consortium which supports CGM utilization on the Web. Elements CGM: For the strings in text primitive entities of CGM, character codes are required. The character codes applied are based on the ISO standard. This standard explains the method of seven and eight bit character codes are built up. It also explains a registration process by which certain definite coding can be registered. As shown the figure 5.17., the seven bit code table from ISO 2022 consists of eight columns and sixteen rows. CAD Standards 5.31 Fig.5.17. CGM 7-bit Code table The seven bits of a character are labeled b1 to b7, bits b7, b6 and b5 are columns and bits b4, b3, b2 and b1 are the rows of the code table. To address a particular code ISO2022 utilizes a ‘column / row’ notation. For example ‘1/11’ is the bit combination in column-1 and row-11 of the code chart with the binary value of 0011011, which is the escape character (ESC). Fig.5.18. CGM 8-bit Code table As shown in the figure 5.18, the 8 bit code table from ISO 2022 has sixteen columns and sixteen rows. Bits b8 through b5 are represents the column address, bits b4 through b1 are represents the row CAD Standards 5.32 address. In a ‘column/row’ notation, the column numbers are written with two digits. Hence, the escape symbol would be addressed by the bit combination ‘01/11’ in an eight bit code table. Character coding of the CGM: The character coding of the CGM matches to the regulations for code extension defined in ISO 2022 in the type of complete coding systems. The character encoding of the CGM is illustrations of the metafile which is focused at reducing the storage area needed for the metafile. This coding is thus optimized to be applied for storage of images or for transfer of images between dissimilar computer systems. This compressed coding requires additional load on exchange effort to be executed during encoding and decoding the metafile. The parts of the CGM character coding are collected of commands and operands. This allows an analyst does not distinguish a particular command to skip and ignore it. This also gives for the extensibility of the character code CGM. The character coding of the CGM is based on the similar notational rules as the coding techniques in ISO 2022. When the metafiles interchange, it will start with the coded Begin Metafile element and end with coded End Metafile element. Each CGM elements has other than the op-code, one or more parameters and every parameter have one or more bytes. While the op-codes have a 0 in bit 7 of ever byte, the parameters have a 1 in bit 7 of every byte. Every the parameters are encoded using either a ‘Basic format’ or a ‘Bit stream format’ or both. In the basic format, the bytes have the structure as shown in the figure 5.19. Fig.5.19. CGM Basic format 5.9.2. Computer Graphics Interface (CGI) The Computer Graphics Interface (CGI) defines the interface between device independent and its parts of a graphics scheme. The CGI is located between the GKS method and the graphical workstations. If both the graphic system and the workstation have an interface which is leads to this standard, no translation between the protocol and they can be associated directly. CAD Standards 5.33 However, such a translation is essential. Particularly if the practical capability of the device is lower to those which projected by the graphics system, an emulation of missing functions is must. This is completed by a graphics device driver. It changed commands and data from the device independent graphics system into the form essential by a real input / output graphics device. The aim of the CGI standard is stop compatibility, not only the hardware and the physical link, but on the side of the procedure between any graphics system and graphical work station. As is the case all other standards, an explanation of the function is divided from the description of the coding in the CGI as well. The functional explanation has in several elements of a multipart standard. Currently, at least three coding are required which use the same methods and partly the same elements as the CGM coding: Character coding and binary coding and clear text coding. The standard draft lists the following design requirements for the CGI: a. The Computer Graphics Interface should offer a suitable set of functions for the description of a wide range of a pictorial data. b. The Computer Graphics Interface should give an appropriate set of functions for the required session control of a wide range of graphics devices. c. The Computer Graphics Interface should address the extra usual and necessary features found on graphical devices openly and should give access to less common services via an escape mechanism. d. The design of the Computer Graphics Interface should not prevent expansion of the standard at a later phase to cover services currently non-standardized. CGI Elements: i) Control Elements The control elements are required to begin and end a dialogue with a device. A model utilized in this part is the concept of compromise which gives the graphic system with the ability to enquire, across the CGI, the potentials of the attached device. Dependent on this data, the graphic method can adjust its behavior consequently. ii) Output and Attributes Output and Attributes parts and their explanation are the same to the output and attribute elements in the CGM. CAD Standards 5.34 iii) Segmentation Elements Segmentation Elements connected to GKS sections are restricted. This comprises the segmentation functions restricted in the GKSM. As in GKS, output primitives, attributes and certain control elements can be collected in segments. Such sections can be created, deleted, renamed and copied. Segments have several of segment attributes which can be modified dynamically. iv) Input Elements The CGI draft has the parts for taking graphical and non-graphical input from a device. The main input ideas, such as the input modes and the input classes are taken from the practical standard of the GKS family. v) Raster Elements The CGI standard defines a set of parts for creating, modifying, retrieving and displaying of pictures which are had in array of pixels in the graphical workstation. The rater parts set allow the definition, manipulation and display of portions of the total array of pixels. CGI Coding: There will be three coding in the CGI which are openly resulting from the CGM coding. The character coding will match to the ISO standards ISO 646 and ISO 2022. This coding optimizes a density of information, but it requires more coding and decoding efforts. The binary coding will be so simple to create and to interpret on various computer systems. A clear text coding can be developed, viewed and edited with a standard text editor. It is has a related structure as many higher programming languages. CGI coding is also appropriate for the addition of pictures in documents, when both text and pictures are enclosed in normal text files. Along with coding, language binding of the CGI is also achievable. Mainly, there are two methods of mapping the CGI elements to language bindings: (i) a multi-procedure mapping and (ii) a one-procedure mapping. In a multi procedure mapping, each CGI parts would be mapped on one procedure. This could be carried out like the CKS language bindings. In a one-procedure mapping, every CGI parts would be routed to one procedure, with the first parameter selecting the element type. The parameters of the parts are passed through a general parameter list. ****************************** CAD Standards Part A – Review Questions: 5.1. Write short note on ‘ CAD with Graphics Standard’. 5.2. List the various International organizations involved to develop graphics standards. 5.3. Write the various standard functions at different levels of the graphics. 5.4. Define GKS. 5.5. Write down primary purpose of the graphics standard. 5.6. What are the three basic parts of GKS. 5.7. Write short note on GKS Poly makers. 5.8. Define GKS Fill area. 5.9. What is GKS Cell array? 5.10. Write short note on ‘Standard for exchange image’. 5.11. Compare Direct and Indirect translators. 5.12. Define IGES standard. 5.13. What are the sub sections of IGES file? 5.14. Write short note on ‘IGES file structure’. 5.15. Draw the IGES file structure. 5.16. Draw the structure of Directory section. 5.17. List out basic IGES entities. 5.18. Write the topology of IGES. 5.19. What is IGES testing? 5.20. Write the advantages and limitations of IGES. 5.21. Define STEP standard. 5.22. What is CALS? 5.23. List the basic functions of CALS. 5.24. What is communication standards ? 5.25. Write down CGM bit stream format. 5.26. List out the design requirements for the CGI. 5.27. Write down the elements of CGI. 5.28. Define CGI coding. Part B – Review Questions: 5.1. Describe Graphics Standards in Graphics programming. 5.2. Explain various layers of GKS. 5.3. Describe GKS output primitives in detail. 5.35 CAD Standards 5.4. Explain OpenGL with schematic diagram. 5.5. Explain the features of OpenGL. 5.6. Discuss Data Exchange Standards in detail. 5.7. Explain evolution of Data Exchange format. 5.8. Describe the structure of IGES file. 5.9. Explain IGES file extraction methodology. 5.10. Explain IGES entities with format. 5.11. Write an algorithm for extracting Geometric entities from CAD file. 5.12. Explain IGES common testing methods. 5.13. Describe the components of STEP with geometric Data structure. 5.14. Explain STEP architecture with neat sketch. 5.15. Describe the CGM with its elements. 5.16. Compare CGM and CGI. ******************* 5.36