CHAPTER 1 INTRODUCTION TO COMPUTER AIDED DESIGN

Size: px
Start display at page:

Download "CHAPTER 1 INTRODUCTION TO COMPUTER AIDED DESIGN"

Transcription

1 CHATER INTRODUCTION TO COMUTER AIDED DESIGN Computer Aided Design, which is currently known as CAD, is in fact the integration of computer graphics, geometric modeling, and design. Computer graphics provides the visualization techniques. Geometric modeling provides the platform for modeling purposes, whilst the design is a process to come up with certain design. CAD is applicable to many areas, however the scope of CAD in this book is focused on the application to mechanical engineering.. HISTORY OF CAD The invention of SKETCHAD in 96 remarks the birth of CAD. Before the invention of SKETCHAD, computer has been used for numerical simulation using keyboard and punch card. With the invention of SKETCHAD by Ivan Sutherland in MIT Lincoln Laboratory, for the first time human can give command to computer using light pen. In fact, the graphical user interface using light pen was firstly done with the invention of SKETCHAD. ush button technique is used to give command to the computer and the geometrical input can be done using light pen. The invention of SKETCHAD was in fact contributed to many new inventions, constraint based drawing, D solid model with the ability to hide the hidden edges, and even hierarchical data structure that have been implemented in object oriented programming. Throughout the 96s, companies were interested to develop the CAD software for their own companies such as CADD by Mc-Donnell Douglas, CADAM -

2 by Lockheed etc. In Europe, researchers were focused on the development of D complex curve and surface formation, such development of Bezier curve based on the inventor name at Renault become the breakthrough in the development of algorithm for complex curve. At the late 96, the development of the commercialized CAD packages becomes the interest. Avions Marcel Dassault, a French aerospace company in 975, purchased a source-code license of CADAM from Lockheed to develop D CAD software program that was named as CATIA (Computer Aided Three Dimensional Interactive Application. In 97s, the development of solid modeling becomes the research interest. The introduction of Constructive Solid Geometry (CSG and Boundary Representation (BReps were the core for ADL and BUILD solid modeler respectively. Later in 98s, most commercial CAD packages started to use these modelers for their solid kernel. Then the development of CAD packages relies on the development of the platform; mainframe (late 97s, Unix Workstation (first half of 98, and Windows NT (early 99s. With the invention of Unix system, the parametric modeling becomes reality as its first concept introduced by SKECTCHAD. Amongst the leading vendors are Computervision (CADDS, Intergraph (IGDS and InterAct, McDonnell-Douglas (Unigraphics, GE/CALMA, IBM/Dassault (CADAM and CATIA, SDRC (I-DEAS and arametric Technology (ro/engineer. These vendors were supported by B-Reps solid kernel developer such as Spatial Technology (ACIS, EDS-Unigraphics (arasolid and Ricoh (Designbase. -

3 When Microsoft developed Windows NT and Intel developed entium processor with bits capability, C has now the capability to run parametric solid modeler and this cause the CAD industry to be totally revolutionized. In 99, Jon Hirschtick developed SolidWorks based on windows platform with the aim to make D CAD technology more accessible. Then 995, SolidEdge become the competitor to SolidWork and 999 CATIA is fully implemented using Windows NT based. The trend of parametric modelling has extended to include the usage of tool to keep track the data related to particular model as it is called as roduct Data Management (DM. The DM will include technical specifications of the product, specifications for manufacture and development, and the types of materials that will be required to produce goods. In the early s, full-fledged CAD packages with the integration of design process is implemented. Start with concept, and finally engineering analysis and manufacturing have been integrated and this reduces the time taken for design. Then, roduct Lifecycle Management (LM is integrated to the CAD packages to manage the entire lifecycle of a product efficiently and cost-effectively, from ideation, design and manufacture, through service and disposal. Currently, CAD packages can be divided into three categories; upper range price packages (CATIA, Unigraphics, etc, mid range price packages (Solidworks, Inventor, etc and freeware CAD packages (CadStd, CADVANNCE, etc. -

4 . CAD IN DESIGN ROCESS When talking about design, it is eventually talking about design process. Figure. shows the design process. Design starts with problem or need. When the need has been defined, a research background is carried out. The objective of the research background is to have in depth understanding related to the needs. The research background should come out with product design specification (DS. DS is the boundary of the design, all the concepts that will be developed in the next step must fulfill all the statements in the DS. When DS is developed, now it is the time to develop the solutions or most people will say design concepts. Important to mention here that the more solutions are, the better will be the final design. The key of producing a good solution is to have larger number of solutions to be considered. Then the the final appropriate design is selected. This final design can one of the designs or a new design resulting from the combination of two or more design. A good method to select final design should allow the design to be combined with other design to give more alternative designs. After the final design is developed, then detail design is carried out prior the development of the prototype. At this stage, a number of tools can be applied such as Design for Manufacturing and Assembly (DFMA, Failure Mode Effect Analysis (FMEA, or Value Engineering. Engineering analysis on the part of the design is also done at this stage. This stage will ensure every consideration has been taken into account. Then, the design is built and a number of testing is carried to ensure the final product serves its initial needs. Then, the engineering drawing, is produced as the final documentation to allow the design to be fabricated and manufactured. -4

5 Figure. Design rocess.. ALICATIONS OF CAD Following will discuss the engineering applications of the CAD... Modeling Most users use CAD packages to model parts and even the whole assembly of the design. Currently, parametric modeling becomes the modeling method adopted by most CAD packages. Even the drafting software has started to introduce parametric modeling, such as it has been introduced in AutoCAD. The modeling process starts with part model, and then a number of parts will be assembled to produce assembly model. Based on the part and assembled part, a complete documentation include detail and production drawing can be generated. Since all the files, part, assembly and drawing files, are linked to each other, any changes that is carried out on one of the files will cause similar alteration to be done on other files. To link between part and documentation, concept of work space and paper space is well adopted. The difference between the CAD packages, the implementation -5

6 of the concept. AutoCAD implements the concept in a single file, whilst most of the other CAD packages uses different file format in the implementation of the concept... Design Review and Evaluation Each model comprises the geometrical properties and attributes. Geometrical properties will ensure the spatial requirement for the model, whilst attributes will keep the properties of the model such as material, surface texture, or color. Both the geometrical properties and attributes of the model are the properties of the model and these properties are retrievable. Retrievable properties will allow the user to review and evaluate the design. For instance, mass and centroid of the parts are amongst the essential information to analyze the part. Even some of the modeling techniques are adopted from specific applications such as sheet metal, weldment, and mold. As such, when the model is created using sheet metal method, the model should be created based on base flange, then process such as folding or bending can be applied to create final part. In addition to the method of modeling based on the applications, models can also be reviewed whether it can be produced using the intended application. As such, CAD packages will indicate whether the specific model on the parts can be produced by certain machining process. Most of CAD packages provides features for user to review and evaluate the the part as well as assembled model. Interference checking is used to check whether the part will obstruct other part or will be obstructed by other parts... Full fledged design platform -6

7 When DM and LM are integrated to the model, CAD packages become the tool for full-fledged design platform. It commences from the modeling and follows with the design review and evaluation of the part and assembled model. Finally engineering analysis on design is carried out to ensure reliability of the design. Currently, motion analysis and finite element analysis becomes common features in most of CAD packages. Motion analysis will focus on the kinematics and dynamic effect of the parts when the assembly model in operation. Most of the application is moving part such as mechanism, piston etc. FEA will analyze the part when the load is applied to part during operation. Hence, all the related parameters on the design can be determined and geometrical properties of the design can be finalized. Nowadays, the modeling techniques to build the part are already established. Therefore, vendors are now developed very specific engineering applications for the CAD packages, as such human activity analysis becomes one of the applications for CATIA software. In addition to the engineering analysis tool developed by the CAD vendor itself, other engineering analysis that is developed by third party is also available in the market. This third party software can be integrated to the CAD packages...4 Automated Drafting and Modeling Every CAD packages will come with Application rogram Interface (AI as one of the features. The automation of drafting and modeling can be implemented by allowing the manual method of drafting or modeling to be done by the computers -7

8 through interface functions in AI. This allows the users to replace the repetitive modeling part to be carried out automatically. In certain cases, it requires engineering calculation to be carried out prior to modeling. Therefore, modeling using AI programming is suitable to be adopted as both engineering calculation and modeling can be done by programming...5 Design Wonder The programming using AI can be further extended to add intelligence to the system. All the previous applications focus on the development of the model. For the purpose of the design wonder, the system should be able to read the model and used the information from the model for design purposes. One good example of the implementation design wonder in CAD is MIT sketching whiteboard. This MIT sketching whiteboard is shown in Youtube in 6 (Figure. which is able to translate human sketch into motion simulation based on law of physics. Figure.: MIT Sketching Whiteboard. STANDARDIZATION IN CAD ACKAGES This section discusses the foundation principles that govern the representation of the part. Section.. will discuss the coordinate system (CS, starting with D CS and then follows with D CS. Then hand rule that governs these coordinate systems will be discussed in Section... Lastly, Section.. will discuss the concept of plane and its principles in plane creation and application for modeling. -8

9 .. Coordinate System Coordinate system (CS will label certain point in space. With the CS, the position of every entity can be labeled and thus the position, movement or displacement can be calculated. As for the geometric modelling, CS becomes an important element. There are many CSs available and each of them will have specific purpose. There is a number of CS types that are commonly being used in CAD, namely; Cartesian, Cylindrical and Spherical CS. The following discusses each of the CS in D plane and D environment. D lane CS D plane CS describes the position of the point in D plane. There are two type D plane CS which is Cartesian and Cylindrical CS. i Cartesian CS Cartesian CS is labeled by two components in form of (x, y. x is the coordinate along the X axis based on the horizontal distance in unit from the origin, whilst y is the coordinate along the Y axis based on the vertical distance in unit from the origin. For instance, point A and B are represented as (, and (,5 respectively as shown in Figure.. Figure.: Cartesian D coordinate -9

10 ii Cylindrical CS Cylindrical CS is founded by the circle that is formed by the point when the origin will be the center of the circle. The point will be described by the radius of the circle and the angle measured from the reference axis to the point. Therefore, cylindrical CS will be labeled as (R, as shown in Figure.4. Figure.4: olar cylindrical CS When the Cylindrical CS is mapped to the Cartesian CS, equations that govern the relationship between both CSs can be developed. Equation. and. will govern the relationship between x and y coordinate of Cartesian CS and the Cylindrical CS. Figure.5 illustrates these equations graphically x = R cos (. y = R sin Figure.5: Relationship between polar cylindrical and Cartesian CS -

11 Example. Fill in the blanks below to complete the Cartesian - Cylindrical olar Coordinates Conversion Table. Table Cartesian Coordinate Cylindrical Coordinate (-, 7 (a (b (, 5 (-5, (c (, (d Answer a To define the Cylindrical CS, radius R and angle should be calculated. Radius : R x y 7. 7 Angle : y tan 8.9 x o When angle is negative, there are possible solutions which are the angel measured will in the second and fourth quadrant. Since x coordinate is negative, the angle must be in the second quadrant. Therefore, angle: o o o Ans: (7.7, 98. o b Equation. and, will calculate the x and y coordinate respectively. Therefore, ( x, y = ( cos (5 o, sin (5 o -

12 Ans: (7.7, 9.9 c When R = and x = -5, y will y R x Ans: y =. - d Angle will be y tan x Since there are two solutions, tan 67. 4, 5 tan In the case of, the angle measured will be in the second quadrant Therefore o o o is measured at the third quadrant, Therefore, o o o Ans: =.6 o, 47.4 o D Coordinate System D CS is in fact the extension of D plane CS and it is used to label the point in D environment. In the case of D CS, Spherical CS is the additional CS together with the previous Cartesian and Cylindrical CS. Following discusses in detail all the three CSs. i Cartesian CS -

13 D Cartesian CS is described by three components, (x, y, z. Similar to the definition of x and y coordinate, the z coordinate is the distance along the Z axis from the origin. Figure.6 illustrates the definition of a point using D Cartesian CS. Figure.6: D Cartesian CS ii Cylindrical CS Description of cylindrical CS in D environment has similar representation of cylinder. The bottom side of the cylinder is described using D cylindrical CS with additional height along the Z axis. Therefore, the cylindrical CS is represented as (R,, z. Figure.7 demonstrates the cylindrical CS and its coordinates. As far as the relationship with Cartesian CS is concerned, only additional Z axis is added. The equations are as follows x = R cos, (. y = R sin z = z (.5 -

14 Figure.7: D cylindrical CS iii Spherical CS Spherical CS describes a point using the representation of sphere. Two D cylindrical CSs are combined to create a D space. The first cylindrical CS is on the horizontal plane, which is XY plane. The project point on XY will make angle with X axis. The other cylindrical CS is perpendicular to the first plane and the plane will go through the point. Angle is the angle of line from origin to point with Z axis. Figure.8 shows the both of the planes and the angle definitions. Figure.8: Spherical CS -4

15 the following. Finally the equations to relate between Cartesian CS and Spherical CS are as x r sin( cos( (.6 y r sin( sin( (.7 z r cos( (.8 Example. Fill in the blanks to complete the Cartesian - Cylindrical Coordinates Conversion Table. Table Cartesian Coordinate Cylindrical Coordinate Spherical Coordinate (-5, -7, 5 (a (b (c (d (4, o, 7 o a Cylindrical CS, radius and angle needs to be calculated Radius: R x y 8. 6 Angle: 7 tan o Since both x and y are negative, the angle must be measured at the third o o quadrant, therefore o z coordinate: z = 5 Ans: (8.6, 4.5 o, 5-5

16 b Spherical CS, radius R angle and need to be calculated. Radius will be R x y z 9. 9 Angle will be z cos 59.7 r o Since z is positive, = 59.7 o Angle will be y tan 54.5 x o Since both x and y are negative, the angle must be measured at the third quadrant, therefore o o o Ans: (9.9, 59.7 o, 4.5 o c Equation.6.8 are used to convert from Spherical CS to Cartesian CS. o o x r sin( cos( 4sin( cos(7. o o y r sin( sin( 4sin( sin(7 5. o z r cos( 4cos( 5.7 Ans: (-., 5., -5.7 d To convert from Spherical CS to Cylindrical CS, the Spherical CS must be converted to Cartesian CS first and it is followed with the conversion from Cartesian CS to Cylindrical CS Conversion from Spherical CS to Cartesian has been carried out as in (c. Therefore, the answer in (c is in Cartesian CS should be converted to Cylindrical CS. -6

17 Therefore, radius R and angle should be calculated. Radius will be R x y ( Angle = of spherical CS: = 7o Or by calculation y tan 9.9 x o Since x is negative, the angle is at second quadrant Therefore, o o o z coordinate z =-5.7 Ans: (.7, 7. o, Rule to handle coordinate system Most of CAD packages will follow the standard used in governing the CS. The first standard is the direction and position of the X, Y, and Z axis. When the principle axes are followed the standard, the direction either positive or negative distance can be set in the case linear distance is required. This is governed by Right Hand Rule to maintain the convention in angular measurement, whilst Curled Right Hand rule is used to set the angle convention according to the axis. Both hand rule will be discussed in the following. Right Hand Rule Right hand rule is used to set the direction of the X, Y, and Z axis. Figure.9 illustrates how the right hand rule governs the direction of the principle axes. Thumb will show the direction of X axis, whilst index and middle finger will govern the direction of Y and Z axis respectively. Using the right-hand rule, the direction of X, Y -7

18 and Z axis is known and at the same time, it will be used to set the convention of positive and negative distance. Figure.8: Right-Hand Rule Class discussion. Using Right-Hand Rule, label Y and Z axis based on the X axis for CS in Figure.9 (i and (ii Figure.9: Class Discussion. Curled Right Hand Rule -8

19 Curled right hand rule will govern the direction of positive angle as illustrated in Figure.. The thumb finger will show the direction of the axis and the curled finger shows the positive angle measurement. Based on the curled finger, counter-clockwise will be the positive angle measurement. Even though, this direction can be normally being used to govern the direction of rotation, some CAD packages allow the user to set the positive direction of angle measurement. Figure.: Curled Right Hand Rule Class discussion. The part has been rotated from its original position to the position shown in Figure.i.iii. Based on the CS shown, determine the axis of the rotation and the angle of rotation for each case. -9

20 Figure.: Class Discussion..4 D SATIAL UNDERSTANDING D spatial understanding is necessary prior to do modeling in D environment. The D spatial understanding covers the conversion between D model into its projection and vice versa, and prediction of shape when transformation is applied to the part. The understanding to convert from D model to D projection is similar understanding needed in creating the orthographic projection in engineering drawing. Similarly, the understanding of converting D model to D model is similar understanding in creating isometric projection from orthographic projection. The main idea is that the ability of the user to find the relationship between D projection and D model and vice versa. Figure. shows the requirement for the D understanding. The requirements are the ability to visualize D object into its D projection and vice versa. -

21 Figure.: D and D conversion In CAD packages, transformation will be applied to model when modeling the part is carried out. Rotation is the most frequent transformation applied to the part, for example when the user wants to select the face that is hidden from the projection, the part must be rotated first. Therefore, user must able to predict the shape when the rotation is carried. Figure. illustrates the understanding needed for D understanding. Firstly, user must be able to identify the transformation needed to position the part as its intended position as shown in Figure.a. Secondly, after the user is able to identify the transformation needed, the user must also have the ability to apply the transformation on the other part as demonstrated in Figure.b -

22 Figure.: Ability to identify the transformation and its final visualization shape. D spatial understanding is applicable when modeling. When dealing in D projection, illusion effect of the entities is one of the contributing errors while modeling. Some examples of the illusion effect are the following Entities that are drawn on different plane: This error is normally occurred when the sweeping or lofting process. For instance, the spline in Figure.4 seems to be on the plane that is perpendicular to plane where the profile is drawn. However, when the objects are viewed using two or more views, it reveals that the profile and the spline are on the same plane. Hence, sweeping process cannot be carried out and the software will prompt the error. Figure.4: Illusion of being on different plane Two parts that are seemed to be closed to each other: From certain projections, two parts seems to be closed to each other, but in reality they are far apart. Figure.5 shows that two parts seems to close to each other when the part is view using isometric view. In fact, the parts are far apart when the view is set to top view. Furthermore, due to the fact that the two parts are far apart, this cause one the part to be lost in the viewing screen when the user rotates the viewing projection. -

23 Figure.5: Illusion of being closed to each other. Therefore to handle the illusion effect during modeling, it is advisable for the user to rotate the viewing projection to allow the user to have better D spatial understanding..5 CONTENTS OF THE BOOK There are two objectives of this book. The first objective is to application of CAD packages for engineering purpose. This is discussed in Chapter 6. The second objective is to make the understanding on how the design wonder system works and this is discussed in Chapter 7. In order to achieve both aims, model representation, transformation matrices, and modeling techniques must be understood first. Chapter will discuss the model representation. Chapter discusses the transformation and its application. Chapter 4 discusses the parametric modeling and modeling technique. Chapter 5 discusses the neutral file with the aims to actual model representation which is theoretically discussed in Chapter. -

24 CHATER MODEL RERESENTATION This chapter will discuss the model representation. There are three types of model representation, which are wire frame, surface, and solid. Section.,., and. discuss in detail each representation respectively. Finally, Section.4 will discuss the cloud geometric representation which the latest model representation. Figure. shows the view at the cutting plane to illustrate graphically the difference between the wire frame, surface, and solid modeling. When wireframe model is been cut, points will be projected on the cutting plane as all the edges are made of wires. In the case of surface modeling which the part will be modeled using skin, lines will be projected on the cutting plane. Finally, when a solid part is been cut, the inner part with bounded edges of the part will be projected on the cutting plane. Figure. Illustration of the model representations using sectional plane -

25 Before proceed to the discussion of wire frame geometric modeling, the terminology of the wire frame presentation that is regularly been used in solid modeler and therefore, wire frame geometric modeler should be clarified. The wire frame presentation is also been used as term to indicate the visualization method of the model on the screen. The available visualization methods of the model depends on the CAD system. The most common visualization is wireframe, hidden line visible, hidden line removed, and shaded as shown in Figure.. This type presentation is just for visualization purposes. Despite these types presentation, the model is remained a solid model. Figure.: Various visualization techniques of solid model On the other hand, wireframe representation is the representation. Wireframe model causes the part to be modeled as a network of connected wires. The following discussion is focussed on the wire frame representation which is the latter one. -

26 . WIREFRAME RERESENTATION This section will discuss the wireframe representation. The discussion starts with the types of entities in wireframe representation in Section.. and then Sec.. discusses the mathematics of the wireframe representation. Section.. discusses in detail the curves. Finally, Section..4 discusses the disadvantages of wire frame representation... Entities Every model representation comprises entities. In wireframe representation, there are a number of entities. The entities are line, circle, arc, ellipse, and curve. Each entity is represented by the entity types and their geometry. Following shows the entities and their geometries Line: the coordinate of start and end points (Figure.a Circle: the center point and radius (Figure.b Arc: the center point, start and end angle. However, the geometry of arc may vary from one software to another such as the geometry of arc is the center point and start and end points (Figure.c Ellipse: the center point, major and minor radius. In some CAD packages, both ellipse and circle will be user the same entity. Circle is created when the major and minor radius is equal. (Figure.d Curve: is represented by the list of vertices and the vector controls each vertices. (Figure.e -

27 Figure.: Types of entities of wireframe Based on the above definitions, the definition of entities comprises the topology and geometry. The topology and geometry relationship is shown in Figure.4. In the case of wireframe entities, the topology data are edge and point and each topology data is described by their geometry. In the case of topology, the types of edge are the topology, namely; line, circle, arc, etc, whilst the mathematical representation of the edge is its geometrical data. Figure.4: Topology and geometry relationship of wireframe entities The topology and their geometry must be together in defining the entities. When topology and geometry is together, it has have its own advantage. When only the topology is used to represent the wireframe entities, two different lines will have the same representation and both of the lines cannot be distinguished. Therefore, -4

28 geometry will make each entity unique. Therefore, topology and geometry together they can make each model unique, no two models has the same low-level definition, determine the method to build the entities, determine the manipulation of the entities, and determine the position of the entities in space.. Mathematical Representation of the Entities Every entity in wire frame has the geometry in form of curve. The geometry of the curve is the mathematical equation that governs the curve. This curve representation can be categorized into two: implicit and parametric. Implicit Representation Curve is mathematically represented by a function. When the relationship of all the variables is given by an equation, this curve is represented implicitly. Therefore, the implicit representation of curve is as follows D curve: f (x, y = D curve f (x, y, z = The implicit representation of wireframe entities are as the follow: Line: x y y y( x x x ( y y y ( x x (. ( Where (x, y: start point (x, y: end point Circle x y r (. -5

29 Where r: radius of the circle x y Ellipse a b (. Where: a: radius measured along X axis b: radius measure along Y axis Curve n y i a i x i (.4 Where: ai: coefficient with n+ control points arametric representation Unlike implicit representation, the parametric representation each variable will be represented using separate mathematic equation. On each variable is controlled by free parameter t and this variable varies from to. D parametric equation D parametric equation x = x(t, y = y(t x = x(t, y = y(t, z = z(t Where t: free parameter There parametric representation for each entity will as follows: Line: x t x ( x x t ( y t y ( y y t (.5 ( Circle x( t r cos( t y( t r sin( t (.6-6

30 Ellipse x( t a cos( t y( t b sin( t (.7 Curve n x ( t i a i t i n y i ( t a t i (.8 i Implicit vs. arametric Curve The major difference between implicit and parametric curve is that the implicit requires all the variables in a single function, whilst the parametric curve will allow the representation based its variable component. Therefore, one of the advantages of implementing parametric modeling is that the modeling can be carried out based on the components. If the D environment, x and y component equation are involved and this D environment can be expanded to D environment by adding z component equations. Furthermore, handling the equations by components allows better programming style. Another advantage of parametric curve relies on the free parameter of the curve. The introduction of free parameter t in parametric equation will have the following advantages: i. Equally spaced vertices: Since the increment of free parameter is set to be equal, the curve generated will have an equally spaced curve. Figure.xa shows the circle that has been developed using implicit equation which the spacing -7

31 between vertices varies, whilst the equally spaced curve in Figure.5 is generated by implementing the parametric equation. Figure.5: Vertex spacing based on (a implicit and (b parametric equation ii. Suitable for component wise problem: Some of engineering problems will be easier to be solved when the components of equations are treated as independence. As such the projectile, dynamic of motion will be handled by its components and the curve produced is parametric curve in function time. Discussion. Based on the equation of circle and ellipse and the topology and geometry relationship, discuss where is the information on radius for the circle and the minor and major axis for the ellipse will be stored and why? Example. lot the curve generated using implicit and parametric equation for ellipse that has its center point at (,, the horizontal radius (major radius of mm, and the vertical radius (minor radius of 4 mm. Implicit Equation x y Equation for ellipse : a b, where a = and b = 4-8

32 x y Therefore 4 Based on y axis, the curve will be formed when x and y, therefore, the curve can be created by setting x from - to by increment of.5. Using the following, it will yield to two answer of y which y and y. x y, y The above equation is based on the center point of ellipse at the origin (,, therefore coordinate of x, y, and y must be translated to the new center point with is (,. Therefore, Table. can be formed. Table.: Vertices of the ellipse using implicit equations x y y x+xc y + Yc y+ yc When x and y,y are plotted, ellipse as in Figure.6 are formed. -9

33 Figure.6: Ellipse creation using implicit equation arametric Equation Equation.7 will create ellipse with its center point at the origin. However, in the center point of the ellipse is at (, and therefore, equation.7 will be transformed into the following equation. x( t cos( t y( t sin( t Table. shows the calculated values based on the equation. Table.: Vertices of ellipse using parametric equation generated. t x y From Table., the vertices are plotted and ellipse as shown Figure.7 is -

34 Figure.7: Ellipse generated using arametric Equation.. Synthetic curve representation Synthetic curve has been used widely in many applications such as in the modeling of the body of the car or mechanical part. The synthetic curve can be divided into two types based on how the curve is created using either interpolation or approximation method. Interpolation method will form a curve that will go through the vertices of the curve, whilst the approximation method will create a curve that may not go through the vertices. Normally curve is constructed by multiple small segment of curves. Therefore, the continuity at the incident vertex of two adjacent curves plays an important role to ensure the smoothness of the curve. The continuity starts from zero order (C as shown in Figure.8a when the curve is joined without any adjustment of the end vertices. When both curves are set to have the same tangent as shown in Figure.8b which is the first derivative, first-order continuity (C is created. The second derivative will cause both curves to have same tangent and center of the curvature as shown in Figure.8c, second-order continuity is created. The second order continuity curve is called Spline curve. -

35 Figure.8: Curve continuity... Interpolation method The basic interpolation method curve is cubic equation. The following formula is the mathematical representation of the cubic curve. t ( t t t a b c d (.9 where <= t <= Hermite Curve Hermite Curve is created based on two points. The first point is start point ( and the second one is the end point (. The start and end point are created when the free parameter is equal to and respectively. Hence, the two conditions are formed. Condition : when free parameter t =, start point is created ( = a b X Y c d (.9i Condition : when free parameter t =, end point is created ( =, therefore -

36 - Y X d c b a (.9ii However, these two conditions will not be able to solve the cubic equation that comprises of four unknowns (ap, bp, cp, and dp. Therefore, the other two known parameter is the tangent of the start and end points. Altogether they can solve all the cubic parameters. The tangent is the first continuity and it is the first derivative of equation.9 that will yield to equation. ( t d c b a t t (. Therefore, the tangent of the start point will be when free parameter t = of equation. and the tangent of the end point will be when free parameter t = of the same equation. Condition : The tangent of the start point when free parameter t =, ( = Y X d c b a (.i Condition4: The tangent of the end point when free parameter t =, ( = Y X d c b a (.ii

37 -4 When all the conditions are represented into one equation, equation. are formed d c b a p (. Therefore, coefficients for Hermite can be solved d c b a d c b a p p Finally, Hermite curve will be as equation.. t t t (t (. As far as the components is concerned the above matrices is expanded to y x y x y x y x t t t (t (.i Example. Draw Hermite curve if (, and (, with the following tangent i (, and (,-

38 ii (4, and (4,-, By inserting the value of coordinates and the tangent of the start and end point into equation.i: x y t t t Iteration process is carried out start with t = until t = with an increment of., equation,i will give the x and y coordinates as in Table.. When these coordinates are plotted, it will generate Hermite curve as shown in Figure.9a. Table.: Generated vertices for example.i t x y Similar approach is carried out on problem ii, as a result the following equation is generated and Table. shows the vertices. The curve generated is shown in Figure.9b. -5

39 x y t t t 4 4 Table.: Generated vertices for problem.ii t x y Figure.9: Generated Hermite curve Cubic Spline Hermite Curve is a curve generated when two point are given. In the case, there are n points (n >, n- Hermite curve can be drawn. Therefore, when two or more Hermite curve is combined, Cubic Spline is created. -6

40 The continuity of the points must be taken into consideration to ensure the smoothness of the Cubic Spline curve. In the case of Cubic Spline, second order continuity is set at the incident vertex of two adjacent Hermite curves. The first order continuity will set the tangents of two adjacent Hermite curves equal, whilst the second order continuity will ensure the radius of curve of the incident vertex is equal. Following shows the mathematical equation of the first and second order continuity of equation.9. First order continuity ( t t t a b c d (. Second order continuity9i- a b " ( t 6t (.4 c d Figure. shows the incident vertex of Hermite curve segment (i meets another Hermite curve segment (i and the conditions needs to be complied to ensure the smoothness of the curve. The conditions are i. The end point of segment (i- must be the same start point of segment (i. Therefore (i-( = (i( ii. The slope of the end point of segment (i- must be equal to the slope of the start point of segment (i. Therefore (i-( = (i( -7

41 -8 iii. The curvature of the end point of segment (i- must be equal to the curvature of the start point of segment (i. Therefore (i-( = (i( Figure.: Conditions for the incident vertex of two curve segments Based on the condition iii, the following equation can be derived (i-( = (i( ( ( ( ( ( ( ( ( 6 i i i i i i i i d c b a d c b a ( ( ( ( ( ( ( ( 6 i i i i i i i i Refer back to algebraic coefficient of a,b,c and d, the above equation will 6 [ (i- (i- + (i- + (i-] + [-(i- + (i- (i- (-] = [-(i + (i (i (i]

42 Since (i- = (i- (i- = (i- (i- = i (i- = i (i = i (i = i (i = i+ (i = i+ Simplification of the above equation yields to the following equation (i- + 4 i + (i+ = - (i- + (i+ In the case of the cubic spline that comprises of (m+ points, the equation will be i = unknown i = ( ( = - ( + ( i = ( ( = - ( + ( i = m- i = m (m- + 4 m- + (m= - (m- + (m unknown These equation will solve the unknown ( to (m-, whilst ( and (m are still unknown. There are two method of determining the ( and (m based on i. Cubic spline with known ( and (m The matrix form will be -9

43 - m m m m m m m m ( (. ( ( (.5i Therefore, the solution to vector tangent will be m m m m m m m m ( (. ( ( (.5ii ii. Natural Cubic Splines in which the second derivatives of the and m are set to zero ( Recall equation for the second derivative of the Hermite Curve is d c b a t t 6 ( " When ( = b( = b( = Recall Hermite curve equation

44 - d c b a p Therefore, when bp = - + = i = + = ( When m( = 6 a(m + b(m = a(m + b(m = When ap(m and bp(m are inserted, the equation will be expanded to 6 (m- 6m + (m- + m - (m- + m (m- m = i = m (m- + m = (m m- Therefore, the final equation will be ( ( (. ( ( ( m m m m m m m m m The vector tangent of each vertices will be

45 - ( ( (. ( ( ( m m m m m m m m m Example. Given four points, (,, (,, (4,4, and (6,. Calculate the tangent vector for each vertex based on i known tangent vector of (, and (-, and ii natural cubic splines using both methods. Based on the tangent vector, draw the curve. i Known tangent vector using recursive method. ( ( 4 4 When the component is included in the matrix form x x y Y x x y y x x y x ( ( ( ( 4 4

46 - ( (6 (4 ( Since there are four vertices, there will three (n- Hermite Curve. The properties of the Hermite will be as follows st curve: (,, (,, (,, (.67,. nd curve: (,, (4,4, (.67,., (.7, -.8 rd curve: (4, 4, (6,, (.7, -.8, (-, The Cubic spline is shown in Figure. Figure.: Cubic Spline with known and

47 -4 ii Natural Cubic Spline Insert all the parameter into the Natural Cubic Spline eqautions ( ( ( ( 4 4 Expanding the equation its x and y coordinates ( ( ( ( ( ( ( ( 4 4 y y x x y y x x y y x x y y x x Inserting,,, and 4 into the equations 4 ( 4 (6 ( (6 (4 (4 ( ( 4 4 Calculating the tangent of vertices for all the vertices 4 ( 4 (6 ( (6 (4 (4 ( (

48 Since there are four vertices, there are three Hermite segments will the following conditions st curve: (,, (,, (.56, -.444, (.689,.889 nd curve: (,, (4, 4, (.689,.889, (.89, -. rd curve: (4, 4, (6,, (.89, -., (.44,.556 The Cubic spline is shown in Figure. Figure.: Natural cubic spline.. Approximation method The second method of curve generation is approximation method. Unlike the Hermite and Cubic Spline, the curve will go through all the points. However, in approximation method, the points are used to control the curve and the curve may not go through the point. -5

49 The foundation of curve generation is the curve is generated from the blending function of the control points. The foundation equation for approximation method will be n ( t B i i( t i (.6 B B... B i i Where: i: point i Bi: blending function for i This blending function must satisfy the condition that the summation of the blending function is equal to. B ( t i n i B ( t i for all i t t (.7 Two most famous approximation method curve is Bezier and B-Spline that will be discuss in the following. Bezier Bezier curve is defined by two endpoints and the control points. The control points will control the tangent vector of the endpoints. Therefore, four points are the least minimum, which the start and the end point will be the two endpoints. The second and third points are used to control the gradient of the curve. The blending function is B i, n n i ( t ( t i!( n!! n t i,,..., n (.8-6

50 -7 When the basic Bezier equation is expanded on four vertices, the equation will be,,,,, ( ( B B B B t B t n i n i i (.9 The blending function will be, ( (!!! t t t B, ( (!!! t t t t B ( (!!!, t t t t B, (!!! t t t B When the blending functions are inserted to the equation, the equation becomes ( ( ( ( t t t t t t t Expanding the equation, ( 6 ( ( ( t t t t t t t t t t Based on the above, the matrix representation will be 6 ] [ ( t t t t (.i

51 x y x 6 y ( t [ t t t ] (.ii x y x y Example.4 Given four points, (,, (,, (4,4, and (6,. Draw the generated Bezier Curve. Using the free parameter from to by increment of., the coordinates of each vertices can be calculated as shown in Figure.4 Table.4: The vertices of the Bezier Curve t Xp Y generated. When the vertices are plotted, Bezier curve as shown in Figure. is -8

52 Figure.: Generated Bezier curve Note As mention previously, the and will control the tangent of the. This is shown in Figure.4. By moving at two different position will result in two different curves. ( a ( b Figure.4: Variation of tangent between and B-Spline Similar to Bezier Curve, B-Spline is controlled by its blending function. In the case of B-Spline that is created by four points, equation. can be used -9

53 -,4,4,4,4 ( ( ( ( ( t B t B t B t B t i (. The development of the blending function with four vertices comprises is shown in the following. Figure.5 to.8 shows illustrates the blending graphically and their mathematical representations are shown eq.i to.iv respectively. Figure.5: Blending function B, (,4 t t t t t t t t t t t t t B (.i Figure.6: Blending function B,4 ( ( ( 5 ( 5( ( 6 (,4 t t t t t t t t t t t t t B (.ii

54 - Figure.7: Blending function B,4 ( ( ( 5 ( 5( ( 6 (,4 t t t t t t t t t t t t t B (.iii Figure.8: Blending function B,4 4 ( ( ( 5 ( 5( ( 6 (,4 t t t t t t t t t t t t t B (.iv When the functions are combined and the range of t is set from to, the blending function is shown in Figure.9.

55 - Figure.9: Blending function t Refering to eq. and equation,i to.iv, equation.i and.ii are generated ( t t t t t t t t t t (.i 4 ( ( 6 ( ( 6 ( t t t t (.ii Equation.ii can be represented into eq ] [ ( t t t t.4

56 Example.5 Draw the B-Spline curve based on (,, (,, (4, 4, and (6, Using iteration of t, from to by increment of., vertices can be calculated using equation.4 which is shown in Table.5. Table.5: Vertices for B-Spline curve t X Y When these vertices are plotted, curve as shown in Figure. is generated. Figure.: The generated B-Spline curve Note: -

57 oint and will control the tangent of the curve. Therefore, by positioning at two different positions as shown in Figure. will generate two different curves. This is because and will set the tangent of the start and end point of the B- Spline curve. ( a ( b Figure.: Curve generated from two different positions of Furthermore, the generated B-Spline generated by point --- will not start and end at and. Therefore, to create B-Spline curve that will go through and, two additional points are needed. The first additional point is point - which is positioned before. The second additional point is point 4 that is positioned after. The conditions of the additional point are i the additional point must create straight line with and for - and and for point 4 ii Length of - must equal to and 4 must equal. With these conditions, - and 4 will be (-, -4 and (8, -4. To create the first segment of B-Spline curve, B-Spline is generated by four points -,,, and, whilst the third segment are created by point As a -4

58 result, three segments of B-Spline curve are created that starts at and ends at as shown in Figure.. Figure.: B-Spline curve starts from and ends at.. Disadvantages of wire frame Wireframe has its own disadvantages. The disadvantages are i. Multiple interpretations: Figure.a shows one wireframe which can be translated into various shape. ii. Ambiguous model: Some of the model can be created which is in fact unreal object as shown in Figure.b. iii. Unreal entities: Wireframe representation fails to model curve object. For example, one entity is introduced to represent the curve cylindrical face as shown in Figure.c. -5

59 Figure.: Disadvantages of wireframe representation. iv. Each entity is stored independently: the data on the entities are stored independently based on the entity. As such if n entities in the model wireframe, n data are required to have and have been treated as individual entity without the connectivity properties..4 SURFACE Surface is the extension of the wire frame. The basic equation for surface is based on parametric straight line that is connected by and. The coordinates when free parameter u can be calculated using equation.5 Q ( u ( u u (.5.4. Billinear Surface Where: u : free parameter u Billinear surface is a surface that is formed from four vertices using linear interpolation. Figure.4 shows the bilinear surface that is created. -6

60 Figure.4: Billinear Surface (, (, Q ( u, w ( u( w u( w ( u w uw (.6 (, (, Where u, w: free parameter u and w Example.6 Draw the vertices for every. free parameter increment of the bilinear surface that is constructed by the following four vertices (a (,, (,, (, 8, and (, 8 rior to inserting, the corresponding vertices must be matched vector defined in the formula. (, = (, (, = (, (, = (, 8-7

61 (, = (, 8 Q ( u, w ( u( w u( w ( u w uw 8 8 To calculate the vertices, double iterative is done on the free parameter. For every iteration of free parameter u must have a complete iteration from to of free parameter w. To demonstrate the iteration process, refer to the first and second column of Table.6. For every iteration of u and w, equation.6 will calculate each vertices and as a result, Table.6 shows the example vertices on the Billinear surface and Figure.5a shows the vertices on the Billinear surface Table.6: Vertices on the bilinear surface u w X Y ( b (,, (8.66, 5, (.66,.66, and 4 (5,

62 Similar step as done in (a is carried out here. Therefore, the corresponding vertices will be (, = (, (, = (8.66, 5 (, = (5, 8.66 (, = (.66,.66 Q ( u, w ( u( w u( w ( u w uw Table.7 shows examples of the calculated vertices and Figure.5b shows the resulted Billinear surface. Table.7: Vertices on the bilinear surface u w X Y

63 ( a ( b Figure.5: Billinear surfaces ( c (,,, (,,, (, 8,, and (, 8,8 Similar step as done in (a is carried out here. Therefore, the corresponding vertices will be (, = (,, (, = (,, (, = (, 8, 8 (, = (, 8, Q ( u, w ( u( w u( w ( u w uw This will produce points as some of the points are shown in Table.8. Table.8: oints for D bilinear surface x y z -4

64 lotting the vertices into surface will produce surface plot as in Figure.6a and the point point as in Figure.6b. Figure.6: D Billinear surface (a Surface and (b oint plot.4. Tabulated Surface Tabulated surface is created when a curve is translated along a plane that is perpendicular to plane of the curve. The curve is created on XY plane and then it will -4

65 translated along Z axis. When curve on plane XY is extended from (u, u,, w = and u from to to (u, u, w = and u from to, tabulated surface is generated. Example of tabulated surface is shown in Figure.6 and equation.7 is the mathematical formula to create the tabulated surface. Figure.7: Tabulated surfaces ( u, u, Q ( u, u, w ( w w (.7 ( u, u, where u, w is free parameter w and u Example.7 Generate the vertices that forms a cylindrical surface that is generated by circle with radius on XY plane and then the circle is along axis that is formed from (,, to (,,. Solution The foundation of the tabulated surface is the surface is formed by extruding the curve along predefined axis. Therefore, firstly the curve must be drawn first and then follow with the extrusion process. -4

66 Based on equation.8, to generate the tabulated surface, curve can be generated by using parametric equation.6 to draw circle with free parameter u from to Circle x( u, w cos( u y( u, w sin( u ( w z ( u, w w Similarly, the above equations can be integrated into a single equation.7. Q( u, u, w cos(u cos(u sin( u ( w w sin( u Table.8 shows the samples of vertices of the tabulated circle and Figure.8 shows the surface and point plot. Table.8: Vertices of the cylindrical surfaces u xp yp w zp

67 Figure.8: Generated Cylindrical Surfaces (a Surface and (b oint plot.4. Revolved surface When a curve is revolved along an axis, a revolved surface is created. Revolved surface can be created by revolving a curve along three possible axis, X, Y, and Z axis. In the case of the revolution along X axis, the curve can be drawn XY and ZX plane. Equation.7i and.7ii are the equations that govern the curve generation based on the revolution of X axis on plane XY and ZX plane respectively. Q( u, w x( u y( u cos(w sin( w sin( w cos(w (.7i -44

68 -45 cos( sin( sin( cos( ( (, ( w w w w u z u x w Q u (.7ii The second axis of revolution is along Y axis and therefore, the curve can be drawn on XY and YZ plane. Equation.8i and ii will govern the generation of a revolved surface on XY and YZ plane respectively. cos( sin( sin( cos( ( (, ( w w w w u y u x w Q u (.8i cos( sin( sin( cos( ( (, ( w w w w u z u y w Q u (.8ii Lastly, the axis of revolution is Z axis and the curve can be drawn on YZ and ZX plane. Equation.9i and ii will govern the revolved surface from the respective plane when it is rotated on Z axis. cos sin sin cos ( (, ( u z u y w u Q (.9i cos sin sin cos ( (, ( u z u z w u Q (.9ii

69 Figure.9: Revolved surface Example.8 a Generate the vertices on the toroidal surface. The toroidal surface is generated by drawing a circle with 5 radius at center point (,,. Then this circle is rotated about Y axis. Q( u, w 5cos( u 5sin( u cos(w sin( w sin( w cos(w Table.9: Vertices of the cylindrical surfaces u x(u y(u z w x(p y(p z(p

70 Figure.8: Generated Toroidal Surfaces b A Hermite with (,, (,, (, -, and (, is revolved along Y axis to generate a revolved surface. -47

71 cos(w sin( w Q( u, w u u u sin( w cos(w Based on the above equation, samples of vertices generated is shown in Table.. Figure.9 shows the surface and point plot generated from the equations. Table.: Vertices on the generated revolved surface u x(u y(u z w x(p y(p z(p

72 .4.4 Coons Surface Figure.9: Revolved surface of Hermite Curve Another surface is called coons surface. Coons surface is generated by four edges that create the boundary of the surface. Equation will govern the coons surface generation ( u, ( u, Q ( u, w ( w w ( u u (. (, w (, w When equation is expanded when u,v = and, it will yield to Q(, = (, Q(, = (, Q(, = (, Q (, = (, This shows eq (. will create surface based linear interpolation of bounded edged and another surface created based linear interpolation of points. Therefore, bilinear -49

73 surface based on four points should be deducted from eq (. to create proper equation for coons surface Q( u, w ( w ( u( w ( u, ( u, w ( u u (, w (, w u( w ( u w (, (, uw (, (, (. Samples of coons surface are shown in Figure.. Figure.: Sample of coons surface Example.9 Generate the coons surface that is formed by four edges. The u direction is formed by two Hermite curves with the following boundary condition Table.: -5

74 Figure.: Coon surface created by.5 Approximation Curve Surface Another surface is created by approximation curve surface such Bezier Surface, B- Spline, and NURBS surface. The basic equation of n m i j Bi k u B j k w, (, ( i, j Q( u, w (. Equation. can also be represented in matrix form -5

75 -5, (. w w w M M u u u w Q u T curve j i curve (. Where: [Mcurve] is matrix representation for the curve In the following, it will discuss the formation of Bezier and B-Spline surface, Bezier Surface Equation.8 and. show the blending function and its matrix representation respectively. Based on these equations, equation.4 and.5 can be used to generate Bezier surface. n i m j j i n j n i w w w n j n u u n i n w Q u, ( ( (!!(! ( (!!(!, ( (.4,,,,,,,,,,,,,,,, 6, ( u u u w u Q T T w w w 6 (.5 Based on the equation, it requires 6 points to create one patch pf Bezier surface Example. Create the Bezier surface using the 6 vertices as shown in Figure.

76 Figure.: 6 vertices Solution In the generation of Bezier surface, equation.5 is used. Equation.56 can be further developed into three based on the X, Y, and Z coordinates. Following shows the developed equations. x( u, w y( u, w z( u, w T T u u u M M [ w w w ] bezier M M bezier T T u u u M [ w w w ] bezier bezier T T u u u M [ w w w ] bezier bezier -5

77 Based on these equations, vertices for each iteration of u and w free parameter can be calculated. Examples of the vertices that form the Bezier surface are shown in Table.. Table.: Example of vertices to form the Bezier surface u w x y z These vertices are then plotted into vertex and surface plot as shown in Figure.a and.b respectively. -54

78 ( a ( b Figure.: Bezier Surface created by 6 vertices B-Spline Surface Similarly, by inserting matrix for B-Spline into equation., equation.6 is developed to generate B-Spline surface from four vertex B-Spline curve. Q ( u, w [ u u u ] 6 6 4,,,,,,,,,,,,,,,, T [ w w w ] T (.6 Example. Using the vertices shown in Figure., create the B-Spline surface. Solution Equation.6 can be further developed based on X, Y and Z coordinates as in the following. -55

79 x( u, w y( u, w z( u, w T T u u u M M [ w w w ] BSpline M B M B BSpline T T u u u M [ w w w ] BSpline Spline T T u u u M [ w w w ] BSpline Using iteration of the free parameter u and w, coordinates of the vertices on the B- Spline can be developed. Examples of the vertices are shown in Table.4. Spline Table.4: Example of vertices to form the B-Spline surface u w x y z

80 When these vertices are plotted, the B-Spline is generated as shown in Figure.4a and.4b for point and surface plot respectively. Take note that the B-Spline surface does not connected to any of the points on the boundary curve and this is because the nature of B-Spline curve. ( a ( b Figure.4: B-Spline surface created by 6 vertices. SOLID GEOMETRIC MODELLING The third type representation is solid geometry. This representation will regard the model as solid and therefore, certain criteria must be fulfilled to be considered as solid. The criteria are as the following: Boundary: The model must have boundary which will be the limit and contain the interior. Homogenous D: The model must not have any dangling edges. The edges must ensure the boundary and will always in contact with the interior Finite: The model must have finite size and can be described by a limited amount of information. -57

81 With the above criteria to be fulfilled by solid modeler, all the shortcomings posed by the wireframe and surface can be overcome. In the following, it discusses the types of solid modeler based on the development of the solid modeler... rimitive Objects/Instances Among the earliest solid representation is primitive object representation which the solid is represented by basic body such as box, cylinder, cone, torus, and sphere. Samples of the basic bodies are shown in Figure.5. Therefore, the solid model will be built based on these bodies. The geometrical properties will depend on the type of primitive body, as such one reference point, width, height, and width are the parameters required to build box... Extrude and revolved bodies Figure.5: rimitive Bodies/Instances In addition to primitive bodies, solid can also be created based on D profile. When the D profile is extruded along the normal of the profile plane, extrude body is created. In addition to extrusion of a profile to create solid model, the profile can also -58

82 be revolved along axis of rotation to create a revolved body. Extrude and revolved body is shown in Figure.6. Figure.6: extrude and revolved body Since extrude and revolved body are created from D profile, only the closed profiles can create the solid. Some of the profiles such as in the following will cause failure in solid creation. i. Open profile: Solid cannot be created when the profile is an open profile. On most modeller, extrusion or revolve of an open profile will create surface model. This is because the extrusion of curve in the case is profile will create a surface based the mathematics of surfaces. ii. Nested inner loop: Inner loop is another closed loop that is inside the D profile. The presence of inner loop shows the presence of void in the final solid model. However, in most solid modellers, they only allows only one hierarchy inner loop. In case of inner loop inside another inner loop, it is not allowed. Figure.7 shows profiles that are considered as valid and invalid profiles for open and nested profiles. In the case of nested inner profile, another inner -59

83 profile which is inside another inner profile will be considered invalid profile. This is because the inner profile will create a void volume and therefore, in void volume, any solid should not be present. In addition, in the case of the nested profile, an outer profile should be created by a single closed loop. The existence of nested profile indicates a number of profiles are needed to create the solid and some of the profiles are adjacent to each other. The presence of other profiles also indicates the solid will not have homogenous height or angle of revolution. This type of profiles will be regarded as invalid as a single extrusion and revolved of a profile will create homogenous height and angle of revolution respectively. Figure.7:Valid and invalid profile iii Axis of rotation cuts the profile (for revolved body: In the case of revolved body, the position of the axis of rotation will determine the final solid model. The axis can be one of the outer edges of the profile or another axis that is been offset from the profile. However, solid can be created if the axis will cut the profiles. Figure.8 shows some of the valid and invalid axis of rotation. -6

84 Figure.8: (a Valid and (b invalid axis of rotation.. Cellular decomposition The foundation of cellular decomposition is to divide the solid into smaller cells. The basic cells can be in form of cuboid or others. Figure.9 shows the cell decomposition of one solid based on cuboid cell and other. Figure.9: a Cuboid and b other cell decomposition of a solid model Cellular decomposition has its shortcoming especially when the cell is only partly occupied by solid and this cell is called as partly solid cell. The problem arises in the identification of the boundary between void and solid. The cellular that have both solid and void will generally regarded as partly occupied solid. -6

85 Regarding the cell as partly occupied cell will also cause another shortcoming. Two different solid will have similar representation when cellular decomposition is used to represent the solid. This is illustrated in Figure.4. Figure.4: Two solid models having same cellular decomposition representation Implementation of smaller cells will be the solution to overcome the above shortcomings faced by partly occupied cell. However, to have the whole model to be decomposed smaller will be very costly computationally. Start with larger cell and further decomposition is carried out on the partly occupied cell will reduce the computational cost. This method of decomposition is called Octree Adaptive Grid as shown in Figure.4. Figure.4: Implementation of Octree Adaptive Grid..4 Constructive Solid Geometry Constructive Solid Geometry (CSG represents solid as hierarchical tree of sub objects. At the leaves of the tree, or can be called as leaf nodes, will be the base body -6

86 such body A to G in Figure.4. The leaf node can be primitive bodies, extruded, or revolved bodies. When two or more leaf nodes are combined, they are connected through branches. The connection is done using Boolean Operation. Finally, the final object is created based on the Boolean Operation of the sub-objects as illustrated in Figure.4. A B C D E F G A U B C U D F U G H (C U D - (A U B J ((C U D - (A U B - (F U G - H - J Figure.4: CSG Tree The Boolean Operations are Union (U*: Union will combine two or more objects together. (Figure.4a Subtraction (-*: Subtraction will remove the object from the original object. There will be one original object and two or more objects to be removed. (Figure.4b Intersection (*: Intersection process will leave behind the intersected part of the selected bodies (Figure.4c. -6

87 Figure.4: Boolean Operation a Union, b Subtraction, and c Intersection Some of CSG representation goes further in classification of the base body by its halfspace. For instance, halfspace for cylinder is two planar surface and one cylindrical surface, while halfspace for cuboid is six planar surface as respectively shown in Figure.44a and.44b. Figure.45: Halfspace of a cylinder and b Cuboid.. Boundary Representation Modeller -64

88 The foundation B-Reps is the information is stored in form of topology and geometry data. The topology data shows the connectivity information that makes the solid and the geometry is the properties of the matter, whilst in the case of B-Reps, geometry is the properties of the respective topology data. To have better idea of topology and geometry is by taking an example of line. The topology of line is edge and both end points. Each topology will be described by its geometrical properties which curve and vertices are the geometrical properties for edge and point respectively. Table.5 shows some other example of topology and geometry data of other entities. Table.5: Entity Topology Geometry Line Curve Straight line oint Coordinate of the vertices Circle Curve Circular with radius oint Coordinate of the center point Arc Curve Arc with radius oint Spline Curve Curve List of point Center oint Coordinate of the vertices To elaborate further the topology and geometry, let take example both profiles in Figure.45. Both profiles have the same geometry information but they have different topology information. Figure.45: rofiles that have same topology with different geometry -65

89 In the case of profile in Figure.46, both profiles have the same topology but having different geometry information. Even a profile is been moved to another position, it will maintain the topology whilst having different geometrical data as the geometrical data relies on the position of the profile. Figure.46: rofiles that have different geometry with the same topology When the topology and geometry relationship is applied to solid model, the general relationship is shown in Figure.47. However, the topology and geometry relationship relies on the solid modeler kernel. Different kernel will have different relationship. The vertical relationship is the topology relationship which will maintain the integrity of the solid model, whilst the horizontal relationship is the relationship between specific topology and its geometry. However, not all topology will have geometry. -66

90 Figure.47: General topology and geometry of B-Reps modeler. Solid: Solid is the highest topology data. Solid has no geometry. Solid is made of connected faces that create the boundary of the solid. Face: Face is the next topology after solid. As far as topology is concerned, the connectivity between face is mapped. For example, Figure.48 shows the connectivity of a cylinder and cuboid. In the case of cylinder, it will have connectivity of F F F. The geometry will further classify the surface type of the face. Types of surface are planar, cylindrical, spherical, conical, and free form surface. In the case of the cylinder, the surface of F and F are plane, and the surface for F is cylindrical. ( a ( b Figure.48: Face connectivity of (a cylinder and (b cuboid -67

91 For each surface, it will be described by one normal vector, one reference vertex, and one vector on the surface. Figure.49 shows the geometrical properties of the surface. Figure.49: Types of surface Loop: Every face must have loop. Outer loop will make the outer boundary of the face, whilst the inner loop will create void space in the face. To maintain the side of the face either void or solid, counter clock wise loop direction is designated for outer boundary, whilst clockwise direction loop is designated for inner loop as illustrated in Figure.5. Figure.5: Direction of loops for outer and inner Edge: Loop will be further divided into edges that make up the outer or inner loop. The geometry of edge is the curve which is represented by parametric curve. The direction of loop is used to set start and end point of the curve. Since one edge will be shared by two faces and two loops, a single edge will declared twice based on its parent face as shown in Figure.5. The geometry of edge is curve. The type of curve has been discussed in Section

92 Figure.5: Direction of edges on the adjacent faces Vertex: Finally, every edge will have vertices. The geometry of the vertex is coordinate of the vertex. B-Reps modeler will store these topology and geometry data to maintain the integrity of the solid model. The actual topology and geometry data will be further discussed in Chapter 5. The topology relationship and the mathematical representation of its geometrical data will in fact determine the boundary of the solid. The mathematical representation of the surface will determine the point is whether above, on, or below the surface. The point is considered as inside the solid model when the point is below all of the surfaces. Moreover, some of surfaces are mathematically represented without any boundary. For instance, planar surface is infinite plane surface and cylindrical surface is in fact a cylindrical surface with infinite length. To main the boundary of the solid, other geometrical properties of other topology data will be referred. As such the boundary of the planar surface will be defined by the curve of the edges and finally the vertices of the point will set the boundary of the curve. -69

93 In all, Figure.5 shows network of the topology of a solid. The geometry of the topology can be defined on each topology. The search process can be carried out based on these connectivity. As such, the search of the adjacent vertex of a curve can be done by searching through edge. This search becomes more complex when the search for adjacent face of a vertex can only be carried out by searching through solid and then the search continues until all the faces that shares the same vertex are identified. Figure.5: Description of solid Euler oincare Law Euler oincare Law will govern the presence of the solid. Equation.7 is Euler oincare Law that governs the numbers of each topology. The solid is present when body (B is a round number. -7

94 (B- G = V E + F I (.7 Where B: number of bodies G: number of genus (hole V: number of vertex E: number of edges F : number of face I: number of inner loop The number of topology can be easily counted for polyhedral bodies, however of a cylinder, V =, E =, F =, and I = as shown in Figure.5. Figure.5: Topology Data for cylinder for Euler oincare Law However, Euler oincare Law cannot be used on the part that has intersected cylindrical faces as shown in Figure.54. Figure.54: Invalid parts for Euler oincare Law Example. -7

95 Show that Euler oincare Law will show that both models in Figure.55 are valid model. ( a ( b Solution Figure.55: Models To prove the models are valid models, the number of body (B in Euler oincare should be. Figure.56 shows graphically the number of genus, vertices, faces, inner loops, and edges of both models. Figure.56: The definition of genus, vertices, faces, inner loops and edges for models in Figure

96 For model in Figure.55a For model in Figure.55a (B- G = V E + F I (B - = (B- = B = B = (Ans Both models are valid models because the number of body in Euler oincare Law are equal to..4 OINT CLOUD RERESENTATION oint Cloud is represented by a set of points and the points are represented as coordinates of the point. These data sets are generated from D scanner, Contact Measuring Machines (CMM digitizer or any other digitizers. The aim of point cloud is for reverse engineering to model the part that has been digitized. The foundation of point cloud is the conversion of the set of points into mesh and then into surface and finally solid. There are a number of software has been developed based on cloud point representation. Some of point cloud softwares are stand alone and others can be integrated into main CAD packages as module. Amongst the issue in cloud point is the algorithm to filter noises in the data, stitch D point clouds together, and segmentation of the parts and generation of surface. Nowadays, the applications of cloud point can be seen as a tool for reverse engineering. Some researchers go further to use the point cloud to develop D anthropometric data [ref]. These D anthropometric data have direct implication on textile industries which the detail sizing of cloth can be developed. -7

97 Another application of point cloud is used as Graphical User Interface (GUI. By converting the point cloud of human body into human kinematic figure, any movement of certain body can be detected. X Box system and Smart Television are amongst the example of using this technology for their GUI. -74

98 CHATER TRANSFORMATION This chapter discusses the transformation in both D and D environment. Then, it will follow with the discussion on the compound transformation. The discussion proceeds with the application of transformation in the projection for visualization purposes. Finally, the discussion on the application of transformation in animation and modelling are followed.. D AND D TRANSFORMATION MATRIX Transformation has been used widely in any geometric modeling. Moving a circle on a screen requires transformation matrix, or even displaying the solid object also requires transformation matrices. In CAD, the transformation matrix will be applied to geometrical properties of the entities such as coordinates of the vertex. The geometrical properties can be represented in three forms; Cartesian coordinate, vector coordinate, and homogenous coordinate. Table. shows the representation of all the coordinate systems. Table.: Coordinate System Type D D Cartesian Coordinate (x,y (x, y, z -

99 - Vector Coordinate [x y] or y x [x y z] or z y x Homogenous Coordinate [x y ] or y x [x y z ] or z y x In the case of applying transformation matrix to the geometrical properties, homogenous coordinate system is the suitable representation. The third axis for D and fourth axis for D are in fact the homogenous axis. Basically, all the coordinates can be scaled individually on this axis. As in the above example, the homogenous coordinate is set to, it shows the scaling factor along the homogenous axis is and therefore, it will maintain its original coordinate system. Moreover, the introduction of homogenous coordinates allows the matrix calculation to be carried out and therefore, calculation related to geometrical properties will be easier to be done. c c c b b b a a a y x y x (. Where y x : homogenous representation of the coordinate after application of the transformation y x : Homogeneous representation of the original coordinate c c c b b b a a a : Matrix

100 Equation. shows the calculation using matrix. The matrix is applied to coordinate [x y ] and as a result, coordinates [x y ] are the resulted of the application of the matrix to [x y ]. Matrix in Eq. can be replaced with transformation matrix. As a result, Eq.. ca be applied to D (D. y x y x D Where: (. D : D transformation matrix Similarly, Eq. is applicable to D coordinate system y z x y z x D Where: D (. : D transformation matrix Similarly, the application of the transformation can have in other format as in Eq..4 and.5. x x y D y (.4 x x y y D (.5 z z In this book, format as in Eq. and. are used. D transformation is x matrix format, whilst D transformation is 4 x 4 matrix format. In Eq. and., there is only one vertex is used in the calculation, however in practical more vertices -

101 -4 are required. Therefore, Eq. and. are expanded to Eq..6 and.7 to cater n vertices. D n n n n y x y x y x y x y x y x (.6 Where x i, y i: Dcoordinate of i vertex after application of transformation xi, yi: D coordinate of i vertex before application of transformation D n n n n n n z y x z y x z y x z y x z y x z y x (.7 Where x i, y i, z i: coordinate of i vertex after application of transformation xi, yi, zi: D coordinate of i vertex before application of transformation rior to apply the matrix transformation, the model can be represented into homogenous matrix format. Following in Table. shows the representation of entities into their matrix representation. Table. Matrix representation of the sample entities Entities Matrix Representation

102 (,, Z (,, Y (,, (,, (,, (,, X (,,. FORMS OF TRANSFORMATION This section discusses the matrix of the selected transformation. The application of the transformation matrix will be similar regardless whether the D or D transformation. However, there are two differences between them, especially when the transformation requires reference. The first one, when D transformation requires a point as the reference, the same D transformation will require axis. The second one is when D transformation requires axis, the same D transformation requires plane. Figure. graphically illustrates the differences. -5

103 Figure. Differences between the reference of D and D transformation.. Translation Translation will move one entity to another position. Figure. shows the translation of D and D entities as well as the initial and final coordinates. Mathematically, Eq.8,.9, and. can be used to calculate the position after translation is applied. Figure. Translation of D and D entities x x x (.8 y y y (. -6

104 -7 z z z (. where x, y, z: translation based on the respective axis. The matrix representation for translation will be as follows y x T D (. z y x T D (... Rotation Rotation is a process to rotate an entity about rotation center. To rotate D entity, the rotation center will become the reference, whilst for D rotation, the reference for rotation will be an axis. Eq.4 and.5 will calculate the position of the vertex after rotation is applied on D entities and Figure. illustrates the D rotation. The center of rotation for both equation is at (, sin( cos( y x x.4 cos( sin( y x y.5

105 Figure. Rotation about a vertex In the case of D rotation, the rotation is carried out on axis, x, y, and z axis. The equation to calculate the position of the final entity after the rotation is applied according to the axis is as the following. X Axis: x x.6 y y cos( z sin(.7 z y sin( z cos(.8 Y Axis: x z sin( x cos(.9 y y. z z cos( xsin(. Z Axis: x x cos( y sin(. y xsin( y cos(. z z. following: These equations can form the following D and D matrices are as the D rotational matrix cos sin R D sin cos (. D rotational matrix: X axis -8

106 cos sin R DX (. sin cos D rotational matrix: Y axis cos sin R DY (.4 sin cos D rotational matrix: Z axis cos sin sin cos R DZ (.5 All the equations (Eq.4. and matrices (Eq.. are based on the assumption the center of rotation are at origin (, for D rotation and at the principal axis for D rotation. Any rotation that is carried out other than the origin for D and the principle axis for D, the rotational center should be transformed to the reference center point or principal axis. Therefore, translation should be carried out to transform the reference as the center or axis of rotation before applying the rotational matrix. The calculated vertices when rotation is applied is based on center or axis of the translated one. However, rotation should be carried on the specified vertex or axis, and therefore, the calculated vertices should be translated back to ensure rotation is based on the actual the center or axis. -9

107 In all, any rotation that is not at the center point for D or principal axis for D, translation is firstly carried out to make the reference point to be either center or principal axis and it is followed with the application of the rotation transformation. Finally, translation is carried out to make the calculated vertices to be referred to their earliest origin. Therefore, the procedure will be as follows: i. Translate the center or axis of rotation to its origin vertex or principle axis. In the case of D, the coordinate of rotation center will be used as the reference, whilst in the case of D, any vertex on the axis can be used as the reference. Let say, the actual center of rotation is (x, y and any point of the axis of rotation is (x, y, z. The translation should be done to ensure (x, y turns to (, and (x, y, z turns to (,,, therefore the translation matrix will be the negative value of every coordinate as such x and y for D will be deducted by the value x and y for D translation and additional z will be deducted by the value of z for D translation. The translation matrix before the application rotational matrices is D T D (.6 x y D T D (.7 x y z Therefore, the original vertices (xi, yi for D entities and (xi, yi, zi for D entities will be translated to (x i, y i and (x i, y i, z i respectively using.7 and.8 for D and D translation respectively. -

108 D n n n na A A A A y x y x y x A y x y x y x ( D n n n na na na A A A A A A z y x z y x z y x z y x z y x z y x (.8 This translation process will make the reference center point and principle axis to become (, and (,, respectively and this causes the rotational transformation can be carried out in step (ii. ii. Apply the rotation matrix As the translation matric converts the center point to (, for D or (,, for D, rotation can be applied to the entities. Eq.9 and. calculates the vertices when rotation matrix is applied that will transform (x A, y A or (x A, y A, z A to (x B, y B or (x B, y B, z B, respectively. D na na A A A A nb nb B B B B R y x y x y x y x y x y x (.9 D na na na A A A A A A nb nb nb B B B B B B R z y x z y x z y x z y x z y x z y x (. iii. Apply translation to compensate the application the first translation

109 - In step I, the application of the translation matrix will translate all the coordinates to its original position with the intention to make the center of rotation will be at its origin or principle axis. Therefore, at this step, it will translate back all the coordinates to their original position. Therefore, translation matrix is applied that has the negative value of the translation applied in step. The translation matrices are as follows: D y x T D (. D z y x T D (. The final vertices can be calculated using Eq. and. that will translate (x B, y B or (x B, y B, z B to (x C, y C or (x C, y C, z C to (x C, y C or (x C, y C, z C D nb nb B B B B nc nc C C C C T y x y x y x y x y x y x ( D nb nb nb B B B B B B nc nc nc C C C C C C T z y x z y x z y x z y x z y x z y x (.4 Example. a Create the transformation matrices when shape is rotated by 5 o in counter clockwise direction and point (4, 5 is the center of rotation,

110 b Calculate the transformed vertices if the polygon with the following vertices are been transformed using the similar rotation in (a. The vertices are (, 8, (6, 8, and (,. Solution (a Since the shape is not rotated at (,, the translation must be applied before and after the rotation matrix. Therefore, the compound matrix will be T R, comp T T 4 5 Dx = -4 and Dy = -5 to make rotation point transform from (4, 5 to (, o cos5 R sin 5 o sin 5 cos5 o o Rotation can be applied once the origin is transformed into (, T 4 5 Dx = 4 and Dy = 5 to make rotation point transform from (, to its original coordinate (4,5 As a result the compound transformation matrix will -

111 cos5 sin 5 sin 5 cos5 5 4 o o o o comp ( b The homogenous representation of the polygon will be polygon As a result, the final vertices after the transformation will be comp polygon y x y x y x Therefore, the respective transformed vertices will be (7.,.9, (., 4., and (6.8, 6.7 and Figure. illustrates the process of the rotation graphically

112 Figure. Example... Mirror Mirror is similar to process of sitting in a mirror, the reflection inside the mirror is actually the result of the mirroring process. In D, x and y axis are used as mirror and in D plane, plane xy, yz, and xz will become the mirror. Eq.5 and.6 are the matrices for D mirror. X axis M D X Eq.5 Y axis M DY Eq.6 Eq.6.8 are the matrices for D mirror based on the plane. -5

113 lane XY T D XY (.7 lane YZ T DYZ (.8 lane XZ T D XZ (.9 In mirror process, the mirror axis or planes are based on the principle axis. If the mirror axis or planes are not based the principle axis, translation matrix should be before to allow the mirror axis and plane to set on principle axis and after to convert the coordinates to their original coordinates. following. In D mirror process, the axis can translated into straight line equation as in the X axis y = (.4 Y axis x = (.4 Therefore, if the mirror process is carried out using axis other than X or Y axis, the mirror axis must be converted into X or Y axis that is having straight line equation as in equation.4 or.4 respectively. This is done by applying the translation matrix before mirror process can take place. This translation process will convert the mirror axis as X or Y principle axis. If the mirror axis is parallel to X axis, the equation of the mirror axis will -6

114 y = Cx (.4 where Cx: constant Therefore, to convert the mirror into X principle axis, translation matrix as in equation.4 is applied. T DX (.4 C x Then, the mirror can be applied as the mirror axis is equal to X principle axis. After that translation will be applied to convert all the coordinates to its original position. The translation matrix after the mirror will be as in equation.44. T DX (.44 C x In the case of the mirror axis is parallel to Y axis, the equation for mirror axis will be as in equation.45. x = Cy (.45 where Cy : constant Therefore, translation by Cy is carried out on x coordinate to change the mirror axis as principle y axis (or x =. Equation.46 will convert all the coordinates. T DY (.46 Cy -7

115 -8 Then, mirror process using Y principle axis is carried out. It will be followed with translation using equation.47 to make all the entities referred to their original coordinate system. y DY C T (.47 Similarly, in the case of D mirror, translation before (TD- and after ((TD- should be applied to homogenous matrix if the mirror plane is parallel to XY, YZ, or ZX plane. The translation matrices are as follows arallel to XY plane: z coordinate is constant (Zxy xy XY D Z T (.48 xy XY D Z T (.49 arallel to YZ plane: x coordinates is constant (Xyz yz YZ D X T (.5 yz YZ D X T (.5

116 -9 arallel to ZX plane: y coordinates is constant (Yzx zx ZX D Y T (.5 zx ZX D Y T (.5 However, the above matrices cannot be applied to non-parallel mirror axis or plane as shown in Figure.4. Mapping or compound matrices of rotation and translation are required. The non-parallel mirror axis or plane will be discussed mapping matrix and compound matrix. Figure.4 Non-parallel mirror axis or plane Example. A triangle with A (,, B (, and C (, has been subjected to the following transformation. Answer the following questions.

117 a Write homogenous representation of the triangle. b Write the composite transformation matrices when mirror is applied to the triangle using axis x = and the calculated the vertices after the mirroring process is carried out c Write the composite transformation matrices when mirror is applied to the triangle using axis x = - and the calculated the vertices after the mirroring process is carried out Solution a. The homogenous representation of the triangle is triangle b. Mirror axis x = is similar to mirror axis at Y principle axis, therefore the mirror matrik will be M DY Therefore, the vertices after being mirrored are -

118 - lg Y D e trian M y x y x y x Therefore A (-,, B (-,, and C (-,. Figure.5a illustrates graphically the mirroring process. c. When mirror axis x = -, the mirror must be converted to x = by translation x = before the mirroring process. After the mirroring process, it will be converted to its original coordinate by translation x = -, therefore the mirror matrik will be lg Y D e trian M y x y x y x Therefore A (-5,, B (-5,, and C (-6,. Figure.5b illustrates graphically the mirroring process.

119 ( a ( b Figure.5 Example...4 Scaling Scaling is carried out when we need to make certain entity bigger or smaller. The scaling process is referred to one origin vertex for both D and D scaling. Figure.6 illustrates the concept of scaling graphically. As a result of the scaling, the final coordinate is proportional to the scale that is applied, and this causes Eq.54 to.56 can be used calculating the final coordinates. -

120 - Figure.6 Scaling concept x = Sx x (.54 y = Sy y (.55 z = Sz z (.56 Based on these equations, the scaling matrices will be as the following: Y X D S S S (.57 Z Y X D S S S S (.58 Matrices in Eq.57 and.58 indicate the scaling can be done on individual axis. However, more commonly, the scale for all the axis is equal and therefore both matrices can be transformed to the following matrices.

121 C S D C (.59 C C S D (.6 C Therefore, since the origin of the scaling must be at (, or (,, for D and D respectively, translation before and after applying the scaling must be carried out if the reference vertex for scaling is not at (, or (,,. Example. A cube ( x x as shown in Figure.7a is transformed into the solid as shown in Figure.7b. Establish the transformation matrices for this transformation. The scaling matrix transformation based on reference point of (,, is as in the following and calculates the vertices after being scaled. Solution Figure.7 Example. Solution -4

122 -5 The homogenous representation of the cube is M To create the shape as in Figure.7b, the cube must be firstly scaled by 4 along the Y axis and then, followed with the translation by x = 4. Therefore, the transformation will be T S comp The vertices after being transformed will

123 comp T M M..5 Shearing Shearing is a process to translate entity along certain axis and the amount of translation increases linearly based on the height of point above the reference axis. Figure.8 Shearing If the shearing is carried out along the X axis, any point on X principle axis will not be translated. The point above the X principle be translated linearly by a product of a constant and y coordinate. Therefore, the new x coordinates can be calculated

124 using equation.6, whilst there is no change in y coordinate. This is graphically illustrated in Figure.8a. X axis: x x y (.6 y y (.6 Figure.8b illustrates the similar shearing process along the Y axis. Hence, the transformation of coordinates can be calculated using equation.6 and.64. Y axis: x x (.6 y x y (.64 Therefore, the D shear transformation matrices are as follows: Shearing along X axis. Sh DX (.65 Shearing along the Y axis. Sh DY (.66 In D, the shearing process can be done along the x axis, y axis, or z axis. If the shearing is carried out along the plane XY, translation will be carried out along the X and Y axis and at the same time, z coordinate will be maintained. Therefore, the following equation will calculate the translated coordinate lane XY x x z (.67-7

125 -8 z x y (.68 z z (.69 The shearing matrix will be as in equation.7 DXY S (.7 In similar manner, the shearing matrires along plane XZ and YZ will be as the following lane XZ: DXZ S (.7 Where: is constant for translation along X axis is constant for translation along Z axis lane YZ: DYZ S (.7 Where: is constant for translation along Y axis is constant for translation along Z axis Example.4 rofile A to L forms a letter M as shown in Figure.x. The intention is to draw an italic M, which vertical line is slanted by 5 o. Based on shearing transformation matrix, calculate all the respective points that form the italic letter M.

126 Figure.9 rofile M Solution Firstly, letter M profile must be represented as its homogenous representation M Then calculate the shearing factor o x x ysin(5 y y Therefore, = sin (5 o and the shearing matrix is Sh DX o sin(5-9

127 The italic M vertices are o sin( M * M..5 Mapping The application o global and local coordinate systems are been used during modelling. The need of the local coordinate system is due to the need of drawing entities on different plane. When the entities are drawn using the local coordinate system, the coordinates of the vertices will be referred to the local coordinate system. These entities must maintain the relationship with the global coordinate system and mapping process will maintain the relationship between two coordinate system. Figure. shows the two coordinate systems and point can be described by both of the coordinate system. Since currently is described by principle coordinate system, mapping matrix will calculate the coordinate of point when is the referred to second coordinate system. -

128 Figure. Mapping concept Normally the new coordinate will be rotated and translated, therefore the mapping matrix comprises of both transformation as shown in the following equations: D Mapping a a M D a a (.7 x y D Mapping a a a a a a M D (.74 a a a x y z For D matrix, a a and D matrix a a are the rotational matrix, while the last row of both matrices is the translation matrix. Therefore, it can be furthered expanded to the following matrices. D Mapping M D cos sin x sin cos y (.75 D Mapping -

129 R D X x cos sin sin cos y z (.76 R D Y cos sin x y sin cos z (.77 R D Z cos sin x sin cos y z (.78 arameters There are two parameters that need to follow convention; amount of translation in every axis and angle for rotation. In order to make the convention, we have to understand the foundation. Figure. shows that point needs to be mapped to the new coordinate system (X Y Referring to the principal coordinate system (XY, origin of the mapped coordinate system is (,. Currently is (x, y when it is referred to the principal coordinate system and we need to calculate the coordinate of when is mapped to X Y coordinate system. Similar situation occurs on the origin of both coordinate systems, both origins should be (,. To make the X Y coordinate system to be (,, the coordinate should be translated by Dx = - and Dy = -. Therefore, the amount of the translation needed will be the negative value of the origin of mapped (X Y coordinate system. -

130 The foundation of the translation is that it should be inverse to the amount of translation of the mapped cs. Similar for angle of rotation, it should be negative to conventional Right Hand Rule and as a result for the case in Figure., the rotation angle should be - o. lease take note that Right hand rule is used to set the positive or negative values of the angle. The previous mapping is based on the conventional coordinate system, means that the axis of x, y, and z is based on right hand rule. However, the mapping may occur and the coordinate system is not following the conventional one. Mapping the default coordinate system of the computer graphic system to the conventional coordinate system is not following the conventional coordinate system. Figure. shows the default position of the conventional and computer graphic system coordinate system. The origin of conventional coordinate system will be positioned at the bottom left of the screen, whilst the origin of the graphic screen coordinate system is at the top left of the screen. Visually, we can say that only the y axis is been rotated by 8 o. Figure. Mapping of the default CS graphic system to common cs -

131 Since matrices in equation.7 to.78 require all the axis of the rotated at the same angle, these matrices should be modified to cater the need of not having all the axis to be rotated at the same angle. Therefore, the matrices can be expanded to individual rotation on each axis on each column as stated in equation.79 for D and.8 for D. D Mapping nx ny M D ox oy (.79 x y D Mapping nx ny nz ox oy oz M D (.8 p p p x y z x y z The first column is the transformation needed for x coordinate, the second and the third column are the transformation needed for y and z coordinates respectively. Referring back to the problem in Figure. and assuming the translation matrix has been solved, point is the point using the graphic screen coordinate system and point is the mapped point using the principle coordinate system. The relationship between them is as follows: x = x y = -y Based on the above relationship of x n x n y, nx = and ny = to fullfil x = x x y y o x o y x y ox = and oy = - to fullfil y = -y Therefore, the mapping matrix will be -4

132 M D x y Similarly, the mapping matrix can be derived from the rotational matrix, where angle of rotation o and 8 o are used for x and y axis respectively. nx = cos x = cos o = ox = -sin y = -sin 8 o = ox = sin x = sin o = ox = cos y = cos 8 o = - As a result, the same mapping matrix is formed Example.5 Figure. shows a square is mirrored using axis. Answer the following questions based on the information given Figure. roblem of example.5 i. Write the homogeneous representation of the square ii. Calculate the coordinates of the mirror square using the compound transformation of rotation and translation. iii. Calculate the coordinates of the mirror square using the mapping transformation matrix -5

133 Solution i. The homogenous representation of the square [K] ii. Mirror using the translation and rotational matrix Figure.: Method To get all the coordinates of the square after being mirrored, the current CS have to go through the following transformation. a The coordinate system must move to point (, 5. This causes the point (, 5 turns to (, as shown in Figure.a. T 5-6

134 b Rotate the coordinate system by -4 o and this causes the mirror axis and x axis of the coordinate system to be coincided as shown in Figure.b. o cos( 4 o R sin( 4 o sin( 4 o cos( 4 c Mirror the square using x axis as the mirror axis as shown in Figure.c. M d Rotate the coordinate system by 4 as shown in Figure.d. R o cos(4 o sin( 4 sin( 4 cos(4 o o e Translate back the coordinate system to its original position as shown in Figure.e. T 5 Therefore the compound matrix is T R M R comp T iii. Method using the mapping matrix -7

135 Figure.4 Method a Mapping the square based on the X Y coordinate system as shown in Figure.4a. In mapping transformation matrix, two parameters, angle and translation, are required. = -4 O Dx = -.8cos (.4 o = -.6 Dy = -.8 sin (.4 o = Therefore, the mapping transformation matrix is Mp o cos( 4 o sin( 4.6 o sin( 4 o cos( b Mirror the square based on X axis as the mirror axis as shown in Figure.xxb. M -8

136 c Mapping back the square after the mirror using the original coordinate system as shown in Figure.xxc. = 4 O Dx = 5 Dy = Mp o cos(4 o sin( 4 5 sin( 4 cos(4 o o Therefore the compound matrix is Mp M comp Mp *Compound matrix for b and c is comp Example.6 By default every window created has its own Coordinate System (CS as shown in Figure.5a and the position is set by the raster position such as (, means raster in X and raster in Y direction. However, in practice the CS is set as in Figure.5b and according to units either mm or inches. If one raster is equal to.mm and the size of the window is raster vertical and raster horizontal. -9

137 Develop the transformation required to calculate the position of the entities in raster based CS (Figure.5a but for visualization purposes, it seems to refer to Normal CAD window CS (Figure.5b. The entities are comprises four lines to draw a if a mm square with the bottom left corner will be at (,. The position of the Normal CAD window CS is at (, of raster based CS. X Y default window, raster based window setting. Normal CAD window, unit (mm/ inch based window setting Y X Figure.5 Example.6 Solution The vertices of the square in mm are (,, (,, (,, and (,. Therefore, in raster unit, the vertices are (,, (,, (,, and (, and its homogenous representation will be [K] The next step is to apply the mapping matrix. Since the position of CAD package CS is at (, of the raster CS, therefore x = and y =. Therefore, the mapping matrix is -4

138 M D The transformed vertices will be K Therefore, to draw a mm square, the square comprise of (, 99, (, 99, (, 97, and (, 97 vertices must be drawn on the raster-based screen.. COMOUND TRANSFORMATION More often, multiple transformations are applied. The combination of these matrices is called compound transformation, such as the following:... comp. n (.8 As a result, the coordinates of vertices will be comp The main question arises whether the compound transformation should be order or it does not matter. Figure.6 shows the application of translation and rotation matrix. Figure.6a shows the translation is applied first and then follow with the -4

139 rotation, whilst Figure.6b shows the rotation is applied first and then follow with the translation. As a result, the mapped shape is not on the same position, which means that (.8 Figure.6 Application of transformation matrices Therefore, to create the compound transformation, it must be in sequence..5 ROJECTION USING TRANSFORMATION Most common, we will draw solid object in D. During manipulation during modeling or for documentation purposes, the need to project the model from different view is required. In changing the view point, transformation is applied to model. The orthographic and axometric projections will be discussed in the following section..5. Orthographic rojection Orthographic drawing is created when the object is projected on the basic three planes that are perpendicular to each other. The view point is assumed to be at infinity distance and this projection ray to be parallel to each other, therefore the projection is -4

140 one of the parallel perspective projections. As the projection ray is parallel to each other, it causes the projection is having the true length of the object. Figure.7 illustrates the concept of the parallel perspective. Figure.7 Concept of orthographic projection Furthermore, the plane for the orthographic projection is normal to the view ray. The basic of orthographic projection is when the object is projected to the three basic planes; XY, YZ, and ZX plane. The transformation matrices of orthographic projection on all the planes are as follows: lane XY O XY (.8 lane YZ O YZ (.84-4

141 lane ZX O ZX (.85 However, in engineering drawing, additional views, such as auxiliary and sectional views, is basically using orthographic projection. In order to create these additional views, mapping of the coordinate system is required before the projection transformation matrix is applied to create the views. Figure.8 shows the application of mapping transformation matrix before application of projection transformation matrix. Figure.8 Application mapping transformation to create auxiliary view projection Example.7 Figure.9a is a D part. Using the D part, develop the orthographic drawing. The bottom left vertex of the orthographic will be at (, of the D environment. The distance between the views is set to mm as shown in Figure.9b. The task is to develop the transformation matrices that is able to transform the vertices of D part into vertices that can be used to develop the orthographic drawing. -44

142 l ( a (b Figure.9 Example.7 Solution There are vertices of the part and the vertices are (,,, (,,, (,,, (,,, (,,, (,,, (,, 5, (5,,, (,,, and (, 5, and hence the homogenous representation will be M FRONT VIEW -45

143 -46 To create the front view, the part needs to project onto XY plane and by taking only the x and y coordinate, the front view can be formed * M TO VIEW To create the top view, rotation is carried along the X axis by 9 o. The rotation causes the plane ZX to be mapped onto plane XY. Then, D part is projected onto XY plane. Finally, translation with x =, y = 7, and z =

144 cos9 9 sin 9 sin cos * o o o o M SIDE VIEW To create the side view, the part must be rotated by -9 o along Y axis prior applying the projection of the D part onto the XY plane. Finally, translation by x = 7 is done to position the side view.

145 M * o cos( 9 o sin( 9 o sin( 9 o cos( 9 7 Table. shows the orthographic projection of each vertex on each view Vertex Front Top Side (,, (, (, 7 (7, (,, (, (, 7 (7, (,, (, (, 4 (4, (,, (, (, 4 (4, (,, (, (, 7 (7, (,, (, (, 7 (7, (,, 5 (, (, 55 (55, (5,, (5, (5, 4 (4, -48

146 (,, (, (, 4 (4, (, 5, (, 5 (, 4 (4, 5.5. Axometric rojection Axometric project will display the model in D on D projected plane. It is also one of the parallel perspective projections. Unlike the orthographic projection, it projects the true length of the object, the axometric projection may project a shorten projection of the objects. To create the axometric, the view point must be at angle a on plane XY and angle b from plane XY as shown in Figure.. Figure. Angle a and b to create axometric projection Based on view point, to create the axometric projection on graphic screen, it requires three transformation matrices, which are as follows: i Rotate the model at angle a on Y axis, ii Rotate the model at angle b on X axis, -49

147 iii roject the model to plane XY Therefore the compound transformation matrix axometric projection will be as the following: A R R O A DY D X ZX cos sin sin cos cos sin sin cos (.86 Based on the angle a and b, the axometric projections can be further classified as isometric, dimetric or trimetric projection and their properties are as follows: Isometric projection: when all the axes have been shorten at specific scale. Dimetric projection: two of the axes have been shorten at the same scale. Trimetric: when all the axes have been shorten at different scale. In the following, it will discuss the manipulation of angle a and b to create these projections. Isometric rojection Figure. shows a cube has been projected into isometric projection. To create an equal angle between axes and horizontal line on the right and left sides, the model must rotate by 45 o about Y axis (angle a. However, angle b from the plane XY will determine the angle Both angle b and are governed by h and w, and the equations for angle b and are as follows: -5

148 Figure. Basic isometric projection sin h w tan h w In the case of isometric projection for engineering drawing, the w is longer by to the h. Based on the above equations, angle should be o, and angle b is 5.6 o. In all, for isometric projection, angle a is 45 o, angle b is 5.6 o, and angle is o. Figure. show the possible isometric projections and the angle of a, b, and. -5

149 -5 Figure. ossible isometric projection with angle a, b, and Example.8 Calculate the vertices of box with 4 unit x 4 unit x unit when the box is projected using isometric projection. Solution The homogeneous representation of the box is K To generate the isometric projection, is 45 o, and is 5.6 o. Therefore the transformation matrix will be ZX X D Y D O R R A

150 Therefore, the vertices of the isometric projection are * K * K Figure.4 shows the isometric projection of the box, Figure.4 Isometric rojection of the box

151 Length along X axis: Line from (,, and (4,, will be transformed to (, and (.8,.6, therefore true length 4 will become.7. Length along Y axis: Line from (,, and (, 4, will be transformed to (, and (,.7, therefore true length 4 will become.7. Length along Z axis Line from (,, and (,, will be transformed to (, and (.4, -.8, therefore true length will become.64 Dimetric rojection Isometric projection will make the axes to be shorten at the same scale. Howeer, when two of the axes have been shorten at different scale from the other axis, it projects into a projection that is called as dimetric. More frequent, the x axis will be scaled differently and this causes the projection is not symmetric. Therefore, the rotation angle a should be larger than 45 o. Figure.5 show the possible dimetric projections and the angle of a, b, and. -54

152 Figure.5 ossible dimetric projection with angle a, b, and Dimetric projection will display the model is more realistic manner than isometric projection. Example.9 Calculate the transformed vertices of the box in example.8 i is set to 5 o, 6 o, 7 o, 8 o and is 4 o. -55

153 ii is 7 o, and is set to 4 o, o, o, o Solution (a Based on equation.86, by varying the and set = 4 o, the resultant vertices are shown in Table.4. Table.4 Vertices for various with = 4 o Vertices = 5 o = 6 o = 7 o = 8 o (,, (, (, (, (, (,, (.5, (.7, -.88 (.879, -.66 (.97, -.5 (4,, (.57,.9 (,.46 (.86,.46 (.695,.5 (4,, (4.,.69 (.7,,957 (.47,.94 (.664,.95 (4, 4, (.57, (, 5. (.68, 5.46 (.695, 5.6 (4, 4, (4., 4.77 (.7, 4.64 (.47, 4.88 (.664, 5.8 (, 4, (,.686 (,.686 (,.686 (,.686 (, 4, (.5,.87 (.7,.97 (.879,.4 (.97,.55 The dimetric projections based on the various angle are shown in Figure

154 Figure.6 The dimetric projections of various Solution (b Similarly, equation.86 is used, by setting = 7 o and varying the, the resultant vertices are shown in Table.5. Figure.7 shows each dimetric projection. Table.5 Vertices for various with = 7 o Vertices = 4 o = o = o = o (,, (, (, (, (, (,, (.879, -.4 (.879, -.7 (.879, -. (.879, -. (4,, (.68,.9 (.68,.798 (.68,.7 (.68,.6 (4,, (.47,.897 (.47,.47 (.47,. (.47,.59 (4, 4, (.68, (.68, 5. (.68, 5.8 (.68,

155 (4, 4, (.47, 5.45 (.47, 4.98 (.47, (.47, (, 4, (,.48 (,.5 (,.78 (,.945 (, 4, (.879,.76 (.879,.86 (.879,.558 (.879,.8 Figure.7 The dimetric projections of various.6 ALICATION OF TRANSFORMATION In addition the application of transformation on the management of CAD entities, transformation can also have other applications. Two of the applications are animation and modeling. Section.6. will discuss the application of transformation in animation and Section.6. will discuss the application on modeling purposes..6. Animation Animation is a process displaying a movement that is created by a series of picture or frame. Since animation is directly related to movement, transformation matrix can be -58

156 applied to create the animation. In the following it demonstrates the movement of the a car according the specified path as shown in Figure.8. The vehicle will brake until it stops before turning to the right and then the vehicle takes the corners at the same time accelerates. Finally the vehicle will continue to accelerate to reach the desire velocity and the vehicle will travel at the constant velocity. Figure.8 Animation of vehicle according to specified path Based on the travelling of the vehicle, the path can be divided into four sections. The sections are straight vertical path during braking, quarter circle path during turning to the right, straight path during accelerating after taking the corner, and finally straight path during travelling at the constant velocity. The initial homogenous representation of the path will be the vertices at the starting point for each path and the application of the transformation matrices will be based on the path and the position of the vehicle based on the time using dynamic of motion. Example. will demonstrate further to calculate the vertices for the first and the second path. Example. The first path in Figure.8 is 75 m which the vehicle will brake to stop from initial velocity of m/s. The vehicle will then accelerate to reach m/s at the end of path -59

157 based the path generated by radius of the quarter circle of 4.5 m. Then, the vehicle will accelerate to m/s within m and finally travel constantly at m/s for the rest of the journey which in the example for another 5 m. Solution Assume the vehicle is represented as a single point. Therefore the homogenous representation of the vehicle will be V x y First path from A and B The initial position of the vehicle will be V p The time taken for the vehicle to stop from initial velocity of m/s will be based on the v u at at v u s ut.5at s t( u.5at s t t max max ( u.5( v u.5( s u v When sy = 75 m, uy = m/s, and vy =, t = 5 sec. If the position of the vehicle is calculated based on every second, s(t for t = to 5 sec will be -6

158 -6 max.5 (.5 ( ( t a t u t s t a t u t s t u v a y y y x x x y Therefore, the translation the vehicle will be ( ( ] [ ] ][ [ ] [ * t S t S T V V y x p When t = to 5 is inserted to the equation, the translation of the vehicle will be in Table.6 Table.6 osition of the vehicle at time t Time (sec Distance s(t Time (sec Distance s(t m (, 8 (, (, (, 6 (, 8.67 (, (, 7 (, (, 4.67 (, 7 5 (, 4.67 (, (, 48 4 (, 74.67

159 7 (, (, 75 Second path from B to C For the second path, the starting point is at the point where the vehicle stops which is (, 75 and the time at point B will be set to. Similar, approach as path is used here except the motion will be in angular. t max.5( o where = /, o = and V r rad / s Hence, the time taken to the vehicle to complete path is t max = 4.7 sec.5( o Therefore, (t will be ( t ot.5t The rotation transformation will be (negative angle due to the clockwise direction cos( ( t sin( ( t sin( ( t cos( ( t R D The initial position of the vehicle for ath is V 75 p -6

160 The center of rotation will be at (4.5, 75. Since the center of rotation is not the origin, the cos( ( t sin( ( t sin( ( t cos( ( t * V p By inserting the time, the position of the vehicle at the specified is listed in Table.7. Table.7 osition of the vehicle at the specified time (ath Time (s osition (, 75 (., 75. (.8, 76.6 (.88, (.59, 79.7 (4.5, 79.5 ath Similar approach as in calculating the position of vehicle for ath, the initial known variables will be Distance travel s = m Initial velocity u = m/s Final velocity v = m/s Homogeneous representation of the vehicle: V p Based on these variables, time taken to travel will be 4.6 sec (tmax Therefore, the position of the vehicle with respect to time will be in Table.8 Table.8 osition of the vehicle at the specified time (ath Time (s

161 osition (4.5, 79.5 (8.6, 79.5 (.5, 79.5 (., 79.5 (8.6, 79.5 (4.5, 79.5 ath 4 The known variables for ath 4 Distance travel s = 5 m Initial velocity u = m/s Final velocity v = m/s Homogeneous representation of the vehicle: V p Based on these variables, time taken to travel will be 5 sec (tmax Therefore, the position of the vehicle with respect to time will be in Table.9 Table.9 osition of the vehicle at the specified time (ath 4 Time (s osition (4.5, 79.5 (44.5, 79.5 (54.5, 79.5 (64.5, 79.5 (74.5, 79.5 (8.7, 79.5 Figure.9 shows the vertices on the path. -64

162 .6. Modeling purposes Figure.9 Vertices of the path For the purposes of modelling, it is easier to model the part separately. This is because it is common to have one reference point on the part and all the dimension will be referred to this reference. Therefore, it will be easier, the origin of axis (,, is regarded as the reference point. After the part is drawn, then transformation matrices will be applied to the part to position the part on the intended place. Figure.9 shows application of the transformation to model robotic arm. The robotic comprises Arm, Arm, and Gripper. To ease the modelling process, each part will be modelled separately using the origin (, as the reference point as shown in Figure.9a. When the robotic arm is assembled, it should be assembled as shown in Figure.9b. Therefore, the transformation matrices are used to assemble the robotic arms. Figure.9 Application of transformation on robotic modelling To model Arm, Arm will be rotated by 45 o -65

163 * V arm V arm o cos(45 o sin( 45 sin( 45 cos(45 o O To model Arm, the arm must be rotated by o counter clock wise direction and followed with translation to the other end of arm. * V arm V arm o cos( o sin( sin( cos( o o o Lcos(45 Lsin( 45 o To model the gripper, the gripper must be rotated o clock wise direction and followed with translation to the other end of Arm. * V V gripper gripper o cos( o sin( o sin( o cos( Lcos(45 o Lcos( o o o Lsin( 45 Lsin( Example. The arms are modelled using AI function that is able to create a cube of x x. Therefore, the task is to model the upper and lower arms to be at intended position shown in Figure. from the basic cube of x x. The size of the lower arm is x x and upper arm is x x

164 Figure. Simplified robotic arm Solution The steps to model the lower and upper arm are as the following Step : Scaling to lower and upper (Figure.a Since the arm is built from a cube x x, scaling of the cube accordingly will create the lower and upper arm. The scaling of lower arm * L arm L arm The scaling of the upper arm * U arm U arm 5 Step : Translate the upper arm at the end of the lower arm (Figure.b * * U arm U arm Step : Rotate lower and upper arm along ve Y axis by 6 o (Figure.c The transformation for the lower arm. -67

165 -68 cos( sin( 6 sin( cos( * * o o o o L arm L arm The transformation for the upper arm 6 sin( cos(6 cos( sin( sin( cos( 6 sin( cos(6 * * o o o o o o o o U arm U arm Step 4: Rotate upper arm along +ve Y axis by o (Figure.d The center rotation is at the end of the lower arm which is ( cos(6 o, sin(6 o. Therefore, translation must be applied before and after the rotation matrix. 6 sin( cos(6 cos( sin( sin( cos( 6 sin( cos(6 * 4* o o o o o o o o U arm U arm Step 5: Rotate the lower and upper arm by 5 o along +ve Z axis (Figure.e The transformation for the lower arm. cos(5 sin(5 sin(5 cos(5 * 5* o o o o arm L arm L The transformation for the upper arm. 6 sin( cos(6 cos(5 sin(5 sin(5 cos(5 6 sin( cos(6 4* 5* o o o o o o o o U arm U arm

166 Figure. Steps to model the robotic arm Note: there are other possible compounded transformation to generate similar position of the arms..6. Kinematic of the open loop mechanism The transformation is also applicable to the kinematic study of the mechanism especially the open loop mechanism. The main interest in the kinematic study is the position of the arm. The movement of the arm depends on the joint types. Figure. shows the types of joint available can be used to build a mechanism. -69

167 Figure. Types of joints The prismatic joint will only allow the translation, whilst the revolutional joint will only allow the linkage at the center of the joint. Cylindrical joint will allow translation and revolution. The translation will be along the axis of the cylindrical joint and the revolution will be rotated at the center of the cylinder. Finally spherical joint will allow rotational movement in all direction X, Y, Z direction. Figure. shows one example of robotic arms. The arms comprises all revolutional joints except at the gripper which is prismatic. Even with the combination of revolutional joints of various axes will develop a complex movement. Figure. Sample of robotic arm -7

168 Example. Figure.4 shows one robotic arms. Develop the matrices that will calculate the position of point O based on angle,, and and the length of each arms L, L, and L. Figure.4 Robotic arm with three revolutional joints Solution To calculate the position of O, it relies on the position of C, B, and A. Therefore, position of A must be calculated first, then follows with the calculating the position of B and follow with position C. Assuming all the linkages are positioned horizontally along the X axis, therefore, the initial homogenous representation of linkages are Linkage : L L Linkage : L L Linkage : L L Calculating position B -7

169 -7 cos sin sin cos L B B y x Calculating position B cos( sin( sin( cos( y x y x B B L C C Therefore, position O cos( sin( sin( cos( y x y x C C L O O Therefore, the generic equation for open loop mechanism will be i i required i i i y x L y x

170 CHATER 5 NEUTRAL FILE Transfer of CAD files from one platform to another is common and even the model has to be transferred to another format to allow the model to be used for downstream activities. This transfer of part becomes possible with the neutral file. This chapter will further explore the neutral file to make understanding the capability of the neutral file. It starts will explanation on the neutral file ion Section 5.. Then, it is followed with the types of neutral files based on standard institutions that are responsible to develop the neutral files and the solid kernel in Section 5. and 5. respectively. Then, it discusses the neutral files based on the applications in Section 5.4. The chapter continues on the steps to comprehend the neutral files in Section 5.5. Then, case studies are carried to investigate what are transferred and lost when CAD files are transferred through neutral 5.6. Finally, the chapter concludes with some of the remarks on the neutral file in Section WHAT IS NEUTRAL FILE? The transfer of file between CAD platforms and even for downstream activities becomes requirement. Therefore, when every platform requires specific file, the number of file transfer will be exponentially increases with the number the number of CAD packages. This is illustrated as in Figure

171 Figure 5. File transfers requirement between CAD packages Therefore, neutral file is introduced with the aim to reduce the number of file transfer interfaces between CAD packages. Figure 5. shows the ideally structure of neutral file. Ideally, there will be one neutral file that will act as the interfaces between CAD packages and downstream activities. Figure 5. Ideal structure to interface between CAD packages. Despite the fact, it should be one neutral file that acts as the file transfer between platforms and applications, in reality, there are a number of neutral files. The neutral files can be classified into three groups based on their developer. The developers of the neutral files are standard institution, CAD packages or solid kernel, and specific applications. In the following section, it will discuss each type. 5-

172 5. STANDARD INSTITUTION The need to have one standard file transfer is the reason for the establishment of standard institution to deal with file transfer between CAD packages. It started when General Electric challenged CAD package developer to set up one standard body at one conference in 979. Hence, Interim Graphic Exchange Standard project under the responsibility of American National Standards Institute (ANSI was established after the conference. This project produces standard that is called as Initial Graphic Exchange Standard (IGES. In 98, the team released its first draft after two critical reviews and adopted to ANSI standard in 98. However, IGES was developed focused on the exchange of geometric data between CAD packages. However, as the CAD packages includes the entire life cycle of a product, Standard for the exchange of roduct Model Data (STE was developed by International Standard Organization (ISO under ISO standard since 984. Ten year later, in 984 the first parts of the standard were established. In the following, it will comprehend the content of the IGES and STE file. 5.. IGES IGES file is denoted by *.igs file extension and it is written using standard ASCII code. Therefore, IGES neutral file can be read and even edited by most of the text editor. Figure 5. shows portion of IGES file. This file is created from line from (, to (5,7 and circle with radius and center point (7, are drawn in AutoCAD. The following shows sample of IGES file. Autodesk DirectConnect version IGES version 5. S H,,H;, 7HUnknown,55HC:\line circle.igs,hautodesk DirectConnect G 7..7.,8H7..7.,,8,6,8,5,7HUnknown,.,,HIN,,.,5H G.54,.,.,9Hjamaltaib,7HUnknown,,,5H G.54; G 4 5-

173 4 D 4 D 4 D 4 AcDbCirc D 4 D 5 AcDbCirc D 6 4 D 7 AcDbLine D 8 4,.,.,.,6HGlobal; 4,.,.,.,7.,.,.,.,.,.,.,.,.;,.,.,.,.,.,.,.; 5,.,.,.,5.,7.,.; 7 4 S G 4D 8 4 T IGES file is formatted according to the line and each line will end with code to section the information belonged to. In all, there are five sections which are Start, Global, Directory Entry, arameter Data, and Terminate. To differentiate between the sections, code S, G, D,, and T for Start, Global, Directory Entry, arameter Data, and Terminate section respectively will be assigned to each line to show the line belongs to respective sections. Code S at the end the line shows the Start section. It contains the names of the source and receiving CAD systems. In this example, the conversion is carried out by Autodesk DirectConnect version and the file is transferred to IGES version 5.. If the file fails to be converted, one of the possibility is that the converter or IGES version is compatible. Then it is followed with the Global section that is coded as G at the end of the line. Global section provides the information of the file parameters such as in the following: arameter Delimiter Character = "," Record Delimiter Character = ";" roduct ID from Sender = "{Unknown}" File Name = "line circle.igs" System ID = "Autodesk DirectConnect 7..7." re-processor Version = "7. 7." Number of Bits for Integers = Single recision Magnitude = 8 5-4

174 Single recision Significance = 6 Double recision Magnitude = 8 Double recision Significance = 5 roduct ID for Receiver = "{Unknown}" Model Space Scale =. Unit Flag = - Inches Units = "INCH" Maximum Number of Line Weights = Size of Maximum Line Width =. Date & Time Stamp = ".54" Minimum User-intended Resolution =. Approximate Maximum Coordinate =. Name of Author = " jamaltaib" 7HUnknown, Authors Organization IGES Version Number = Drafting Standard Code = Model Creation/Change Date = = "{Unknown}" ".54" All the file parameters are placed in sequence with comma as the separator. As far as part is concerned, this Global section provides the setting for the part such as units and precision together the parameters that are set to the files such as author, time, etc. After the Global Section, it is followed by Directory Entry section. Directory Entry section is coded by letter D at the end of the line. The Directory Entry will give the information on the entity type. Two lines will be allocated for each entity and for every line, field is used and total of field will be allocated for each entity. The type of entity is coded as number that will be placed in the first field for each line. Some of the number coded entity are as the following Circular arc 8 lane Line 6 point 4 Transformation matrix For each entity, it will have fields which as the following: 5-5

175 Line Line Field : Entity type ( = Line Field : ointer will refer to parameter data line ( refer to line in parameter data Field : ointer to D section (default Field 4: Line font pattern Field 5: Level Field 6: ointer to section D line of view entity Field 7: ointer to section D entry of transformation matrix (Line : 4 Field 8: ointer to section D entry of label (not applicable line Field 9: Status. 4x-digit values to form 8-digit number, no spaces. Field : Line number within D section. (5, the first line the number must be odd Field : Entity type Field : Line weight to max Field : Color number: -8. Negative number refers to a Color Definition Field 4: Number of lines in the corresponding arameter Data for this entity Field 5: Form number for entities having more than one definition Field 6: Not used Field 7: Not used Field 8: Entity label, up to 8 chars. Field 9: Entity subscript number Field : Line number within D section (6, the second line must be an even number The information of Directory Entry data will be accompanied with the respective entity in arameter Data. The parameter data section is identified by the letter at the second field before the end of the line. The first field will be entity type number and follows comma delimeter and final for each parameter data section will end semi-colon delimeter. The number field depends on the entity type. For example, circle will have parameters which are entity type, x, y, and z of center point, radius and the transformation matric, whilst line will have seven parameters, entity number follows the x, y, and z of the start and end point. arameter data section will be followed with last line with termination line. This indicates the end of the file. 5-6

176 In all, it can be said that the IGES is quite difficult to comprehend. The entities from IGES file in Figure 5. comprises three entities and the IGES becomes more complex when the part is solid model. 5.. STE (Standard for the Exchange of roduct Model Data STE is the acronym for Standard for the Exchange of roduct Model Data. Currently, there is a number of neutral files such as IGES, SET, and VDAFS, therefore, International Standard Organization has decide to have Standard Exchange rotocol (STE. The aim of STE is to allow exchange of data between different platform without human intervention and integrate of data from different platforms. IN fact, STE is a computer interpretable representation of the data. Due to vast applications of CAD platform, STE is divided its protocol according to its applications which is called application protocol (A. Each A will be have number coded. Following is the list of available As. A : Explicit draughting. Simple D drawing geometry related to a product. No association, no assembly hierarchy. A, Associative draughting. D/D drawing with association, but no product structure. A, Configuration controlled D designs of mechanical parts and assemblies. A 4, Mechanical design using boundary representation A 7, Sheet metal die planning and design A 9, Composite and metallic structural analysis and related design 5-7

177 A 4, Core data for automotive mechanical design processes A 5, Materials information for the design and verification of products A 6, Furniture product data and project data A 4, Managed model based d engineering (under development A, Electronic assembly, interconnect and packaging design. The most complex and sophisticated STE A. A, Electrotechnical design and installation. A 7, lant spatial configuration A 5, Ship arrangement A 6, Ship moulded forms A 8, Ship structures A 5, Building elements using explicit shape representation A, Technical data packaging core information and exchange A, Systems engineering data representation A 7, Fluid dynamics has been cancelled and the functionality included in A 9 A 9, Dimensional inspection information exchange A, Exchange of design and manufacturing product information for cast parts A 4, Mechanical product definition for process plans using machining features A 8 - Application interpreted model for computer numeric controllers A 4, rocess plans for machined products A 9, roduct life cycle support 5-8

178 A, Functional data and schematic representation of process plants The STE file is formatted according to International Standard Organization ISO -. STE will have *.step or *.stp extension and the file is formatted according to ASCII code. Therefore, any text editor must be able to read and edit the files. In every STE file, it starts with a statement of ISO--; and ends with a statement of END-ISO--; All the information are stored in between these statements. The information can be grouped into two, namely Header and Data. For each section, it will start with the section name (such as HEADER; or DATA; and end the section with ENDSEC;. In the following, it shows sample of step file. ISO--; HEADER; FILE_DESCRITION (( STE A, ; FILE_NAME ( step fea.ste, 4--T7:9:4, (, (, SwSTE., SolidWorks, ; FILE_SCHEMA (( CONFIG_CONTROL_DESIGN ; ENDSEC; DATA; # = AXIS_LACEMENT_D ( NONE, #85, #4, #54 ; # = LINE ( NONE, #5, #65 ; # = LINE ( NONE, #64, #9 ; #4 = DIRECTION ( NONE, (.,.,. ; #48 = RODUCT_CONTEXT ( NONE, #94, mechanical ; #49 = DIMENSIONAL_EXONENTS (.,.,.,.,.,.,. ; #4 = ORIENTED_EDGE ( NONE, *, *, #,.F. ; #4 = ORIENTED_EDGE ( NONE, *, *, #8,.T. ; ENDSEC; END-ISO--; 5-9

179 The Header section comprises the information on the file. The information will be as the following; File description: STE A Implementation level: File name: step fea.ste Time: 4--T7: 9:4 Author: (, Organization: (, reprocessor version: SwSTE. Originating_system: Solid Work, Authorization: ( ; The Header section will give information on the files such as file name, time and date file creation. It also gives information on the system such as STE preprocessor version as well as the CAD platform where the file is created. After Header section, Data section will follow. The data section will start with DATA; and end with word ENDSEC;. This data section is formatted as such it starts with Instance name. Instance name is formatted with # and number. All the geometrical properties and attributes of the entity will be stored in this section. The data are stored based using the linkages of the lines. # = LINE ( NONE, #5, #65 ; As such in line # in data section is belonged to line. The line is not assigned to any specific name that is mentioned as NONE. Line #5 and #65 are the lines 5-

180 that have further information on the lines. Visiting all the related lines, the attributes and geometrical properties of the entities can be retrieved. 5. SOLID KERNEL Neutral files are also developed by the developer of the solid kernel such as ACIS and arasolid. In the following, it will discuss the neutral file developed by ACIS solid kernel. ACIS (Alan, Charles, Ian System ACIS is acronym to Alan, Charles, Ian System. ACIS file is indicated in.sat file name and it is formatted according to ASCII code. Therefore, the file is readable by any text editor that can read ASCII code. ACIS has reserved a number of characters to indicate the information. The reserved characters are $ : indicates a pointer definition in format of number. The number in fact indicates the lines that will have related information. - ($- will be set a null pointer definition. # : terminates an entity record. This symbol indicates end of the record of the specified : starts of string record. Since some of the information are stored in string format, any string format information will be indicated and followed with the information part. Following shows sample of ACIS file. 5-

181 5 SolidWorks 4 ACIS. NT 4 Tue Dec 9 :4: e-7 e- - body $ - - $- $ $- $- F # - name_attrib-gen-attrib $- - $- $- art # - lump $ - - $- $- $4 $ F # - rgb_color-st-attrib $- - $- $- $ # -4 shell $- - - $- $- $- $5 $- $ F # -5 face $6 - - $- $7 $8 $4 $- $9 reversed single F T # - point $- - - $- 5 # - straight-curve $- - - $ I I # -4 straight-curve $- - - $ I I # End-of-ACIS-data ACIS file ends the statement End-of-ACIS-data. header section The first three lines is the header section. The following is sample of the 5 SolidWorks 4 ACIS. NT 4 Tue Dec 9 :4: e-7 e- First line: First Integer: An encoded version number (.. Second Integer: The total number of saved data records, or zero. If zero, then an end mark is required. Third Integer: A count of the number of entities in the original entity list that were saved to the part file. Forth Integer: The least significant bit of this number is used to indicate whether or not history has been saved in this save file. 5-

182 Second line First Integer: String length for the product string: 5. Second String: ID for the product which produced the file: SolidWorks 4. Third Integer: String length for the ACIS version string:. Fourth String: ACIS version which produced the file: ACIS. NT. Fifth Integer: length for the date string: 4. Sixth String: Date file produced Tue Dec 9 :4: 4. Third line First Double: Number of millimeters represented by each unit in the model: Second Real: The smallest meaningful quantity. For CAD model, it can be translated as the smallest distance can be drawn e-- 7 Third Real: The ratio of smallest meaningful quantity to the largest meaningful quantity. e- From the fourth line onward until the word End-of-ACIS-data is the data section. It comprises the attributes and topological information on the entity. The first entity record must be body entity and the remaining will be in no particular order. The body record is indexed as sequence number. Each entity record consists of a sequence number, an entity type identifier, the entity data, and a terminator. Entity type identifier is unique string such body, lump, etc. - body $ - - $- $ $- $- F # 5-

183 Therefore the BODY data structure will refer to pointer $, $ - name_attrib-gen-attrib $- - $- $- art # - lump $ - - $- $- $4 $ F # Line with pointer is name_attrib_gen_attrib which store the transformation of the model. As far as pointer is concerned, it will refer to its parent pointer that is. B-Reps data are also stored in the data section. Body will be the highest hierarchy of data will refer to the next topological data which in the above example, it will refer to pointer. Line with pointer is lump. Therefore, lump will refer to pointer and 4 for further data and its parent pointer. From the body data, all the B- Reps data and attributes can be retrieved. The data sections ends with End of Sec. 5.4 SECIFIC ALICATIONS Neutral files are also been developed for specific applications. In the following, it discusses some of neutral developed using specific application Stereo Lithography file format Stereo Lithography file format has.stl extension. Solid model has been represented as a list of triangulated surface comprises of loop of three vertices. This file format has been widely in rapid prototyping machine and D printer. Following shows the portion of.stl file using ASCII format. solid art litho facet normal -.e+.e+.e+ outer loop vertex.e+.e+ 7.5e+ 5-4

184 vertex.e+ 5.e+ 7.5e+ vertex.e+.e+.e+ endloop endfacet Endsolid The level data will be stored and the levels are solid, facet, and loop. The data of each level will end with statement of Endsolid, Endfacet, and EndLoop for the solid, facet, and loop respectively. For every facet data, it starts with the facet normal and follows with the list of loops and for each loop, it will be described as three vertices using Cartesian Coordinate System. Figure 5. shows the solid part in Figure 5.a and its stereo lithography representation in Figure 5.b. shows every face of the part is converted to triangulated facet. The model will have one solid with a number of triangular facets. Each triangular facet comprises one loop with three vertices. Figure 5.: (a solid model and its (b stereolithography reprsentation 5.4. Virtual Reality Modeling Language (VRML 5-5

185 VRML has.wrl file extension. This file can be used in World Wide Web to show the solid part with the capability of animation. VRML file will store the shape, appearance, material, transformation, etc. The part is stored as simple shape such as cylinder, box, sphere, etc, or collection of D polygons.. Following shows portion of VRML file. #VRML V. utf8 Transform { children [ Shape { appearance Appearance { material Material { ambientintensity. shininess. transparency. } } geometry IndexedFaceSet { color Color { color [ ] } coord Coordinate { ] } 5.4. VDAFS (Verenung Deutsche Automobilindustrie Flachen Schnittstelle 5-6

186 VDAFS will transfer the CAD data into free surface model for the purposes of automobile industries. The file will have *.vda extension and the file is readable by any ASCII text editor. The following shows samples of VDAFS file. SLDWORKS = HEADER / *********************************************************************** VDAFS VERSION : SENDER DATA SENDER COMANY : UNKNOWN 5 SENDING DATE : /9/4 FILE NAME : part4.vda ART DATA ROJECT NAME : UNKNOWN DATE EFFECTIVE : /9/ RECEIVER DATA COMANY NAME : UNKNOWN 9 RECEIVER NAME : UNKNOWN *********************************************************************** SR = SURF /,,.E+,.E+,.E+,.E+, FC4 = FACE / SR,, 45 4, 46 CN4,.E+,.E+, 47 CN,.E+,.E+, 48 CN, -.E+,.E+ 4 SLDWORKS = END 44 There are two sections in the VDAFS file. It starts with header file that comprises VDAFS version, sender profile, part data and receiver data. Then, it follows with the data section that consists of geometrical and non-geometrical entity types. The geometrical data are, point, point set, curve, surface curve on surface and face, whilst the non-geometrical data are transformation matrix and list. 5-7

187 5.4.4 Graphic CAD model can also be converted to graphic such as bmp, tiff or jpeg format. Normally, graphical type conversion is used for documentation. The graphic format is basically D images of the parts and inserted directly to the documents. 5.5 HOW TO COMREHEND NUETRAL FILE Neutral file has been used as input by many researchers to make the developed system to be independent of the any CAD packages. Therefore, it is necessary to understand and comprehend the neutral. Furthermore, the topology and geometry will be studied. In this book, it is limited to STE and ACIS. In this study, a cylinder with the following geometrical properties are used; i Radius: mm ii Height: 4 mm iii Center point of bottom plane: (, iv Extrusion direction: + Z axis STE This is the step file for the above part. Since the focus of the discussion is on the shape data, the lines that contains the information non-shape data are deleted from the file. 5-8

188 DATA; # = LANE ( NONE, #7 ; # = DIRECTION ( NONE, (.,.,. ; #5 = DIRECTION ( NONE, (.,., -. ; #6 = CARTESIAN_OINT ( NONE, (.,.,. ; #7 = EDGE_CURVE ( NONE, #5, #5, #44,.T. ; # = DIRECTION ( NONE, ( -., -., -. ; # = AXIS_LACEMENT_D ( NONE, #5, #57, #5 ; #4 = CARTESIAN_OINT ( NONE, (.,.,. ; #5 = DIRECTION ( NONE, ( -.,.,. ; #6 = DIRECTION ( NONE, ( -., -., -. ; #7 = AXIS_LACEMENT_D ( NONE, #6, #, # ; # = ORIENTED_EDGE ( NONE, *, *, #7,.F. ; # = AXIS_LACEMENT_D ( NONE, #66, #, #78 ; #6 = ORIENTED_EDGE ( NONE, *, *, #57,.F. ; #7 = EDGE_CURVE ( NONE, #5, #8, #7,.T. ; #8 = VERTEX_OINT ( NONE, #56 ; #9 = DIRECTION ( NONE, (.,.,. ; # = CLOSED_SHELL ( NONE, ( #8, #55, #4, #79 ; # = CIRCLE ( NONE, #7,. ; #4 = CARTESIAN_OINT ( NONE, (.,.459E-5, 4. ; #6 = FACE_OUTER_BOUND ( NONE, #65,.T. ; #7 = AXIS_LACEMENT_D ( NONE, #54, #48, #9 ; #4 = CARTESIAN_OINT ( NONE, (.,., 4. ; #4 = CARTESIAN_OINT ( NONE, ( -.,., 4. ; #44 = DIRECTION ( NONE, (.,.,. ; #47 = ORIENTED_EDGE ( NONE, *, *, #7,.F. ; #48 = DIRECTION ( NONE, (.,.,. ; #5 = VERTEX_OINT ( NONE, #8 ; #5 = DIRECTION ( NONE, (.,.,. ; #5 = VECTOR ( NONE, #6,. ; #5 = EDGE_CURVE ( NONE, #8, #5, #,.T. ; #55 = EDGE_LOO ( NONE, ( #7, # ; #56 = CYLINDRICAL_SURFACE ( NONE, #,. ; #57 = EDGE_CURVE ( NONE, #6, #5, #9,.T. ; #6 = AXIS_LACEMENT_D ( NONE, #4, #9, # ; #64 = ORIENTED_EDGE ( NONE, *, *, #,.T. ; #66 = CARTESIAN_OINT ( NONE, (.,., 4. ; #7 = DIRECTION ( NONE, (.,.,. ; #74 = AXIS_LACEMENT_D ( NONE, #, #4, #7 ; #78 = DIRECTION ( NONE, ( -.,.,. ; #79 = ADVANCED_FACE ( NONE, ( #8, #,.F. ; 5-9

189 #8 = ADVANCED_FACE ( NONE, ( #, #56,.T. ; #8 = LANE ( NONE, # ; #8 = CARTESIAN_OINT ( NONE, (.,.45E-5,. ; #85 = AXIS_LACEMENT_D ( NONE, #7, #98, #5 ; #86 = SHAE_DEFINITION_RERESENTATION ( #7, #67 ; #87 = ORIENTED_EDGE ( NONE, *, *, #7,.T. ; #88 = DATE_TIME_ROLE ( creation_date ; #9 = CARTESIAN_OINT ( NONE, (.,., 4. ; #9 = CIRCLE ( NONE, #6,. ; #94 = CARTESIAN_OINT ( NONE, ( -.,., 4. ; #97 = CIRCLE ( NONE, #,. ; #96 = ORIENTED_EDGE ( NONE, *, *, #,.F. ; #98 = DIRECTION ( NONE, ( -., -., -. ; # = EDGE_LOO ( NONE, ( #6, #64 ; # = EDGE_CURVE ( NONE, #5, #6, #97,.T. ; # = EDGE_LOO ( NONE, ( #96, #6, #87, #7 ; #9 = DIRECTION ( NONE, (.,., -. ; # = CARTESIAN_OINT ( NONE, (.,.,. ; # = DIRECTION ( NONE, (.,.,. ; #4 = EDGE_CURVE ( NONE, #6, #8, #8,.T. ; #5 = CARTESIAN_OINT ( NONE, (.,., 4. ; #6 = DIRECTION ( NONE, (.,.,. ; # = DIRECTION ( NONE, (.,.,. ; # = DIRECTION ( NONE, ( -., -., -. ; # = AXIS_LACEMENT_D ( NONE, #9, #44, #46 ; #5 = VERTEX_OINT ( NONE, #66 ; #6 = ORIENTED_EDGE ( NONE, *, *, #7,.T. ; #7 = CARTESIAN_OINT ( NONE, (.,., 4. ; #8 = FACE_OUTER_BOUND ( NONE, #55,.T. ; # = VECTOR ( NONE, #,. ; # = FACE_OUTER_BOUND ( NONE, #,.T. ; #6 = MANIFOLD_SOLID_BRE ( Boss-Extrude, # ; #7 = ORIENTED_EDGE ( NONE, *, *, #4,.F. ; #8 = LINE ( NONE, #94, # ; #4 = DIRECTION ( NONE, (.,.,. ; #4 = ADVANCED_FACE ( NONE, ( #47, #8,.T. ; #44 = LINE ( NONE, #4, #5 ; #46 = DIRECTION ( NONE, (.,.,. ; #47 = FACE_OUTER_BOUND ( NONE, #,.T. ; #5 = CYLINDRICAL_SURFACE ( NONE, #85,. ; #54 = CARTESIAN_OINT ( NONE, (.,.,. ; #55 = ADVANCED_FACE ( NONE, ( #6, #5,.T. ; 5-

190 #56 = CARTESIAN_OINT ( NONE, ( -.,.,. ; #57 = DIRECTION ( NONE, (.,.,. ; #6 = ORIENTED_EDGE ( NONE, *, *, #4,.T. ; #6 = ORIENTED_EDGE ( NONE, *, *, #57,.T. ; #6 = LOCAL_TIME (, 4, 56., #54 ; #6 = VERTEX_OINT ( NONE, #4 ; #65 = EDGE_LOO ( NONE, ( #47, #6, #6, #75 ; #66 = CARTESIAN_OINT ( NONE, (.,.45E-5, 4. ; #68 = AXIS_LACEMENT_D ( NONE, #4, #5, #6 ; #7 = ORIENTED_EDGE ( NONE, *, *, #5,.F. ; #7 = CIRCLE ( NONE, #68,. ; ENDSEC; Figure 5.4 shows the B-Reps data structure retrieved from the cylindrical. The highest topology data will be line #6 which is called as Manifold Solid B-Reps and the next topology data is Closed Shell in Line #. Both Manifold Solid and Closed Shell is topological data without geometry. The next topology is Advanced Face, which has four faces; two cylindrical faces and two plane. Cylindrical Face: #8: Radius, Reference Coordinate: (,, 4 Reference Vector (,, - (-,, #55: Radius, Reference Coordinate: (,, 4 Reference Vector (,, - (-,, lane Face #4: Reference Coordinate: (,, 4, Ref Vector (,, Ref Vector (,, #79: Reference Coordinate: (,,, Ref Vector (,, 5-

191 Ref Vector (,, Figure 5.4: Example data structure for STE data The next topology after Advanced Face is Face Outer Bound and follows with Edge Loop. Both of these topologies has no geometry. Then it follows with the Oriented Edge that curve will be its geometrical properties. In the following discussion, it will expand the B-Reps data structure of one of the cylindrical face which is mentioned in line. This cylindrical face comprises Oriented Edges at line 96,6, 87, and 4. The oriented edges will have the following edges and as demonstrated in Figure 5.5. Edge 96: Vertices (,, 4 and (-,, 4 Circle with radius of and reference vector of (,, and (,, Edge 6: Vertices (,, 4 and (,, 5-

192 Line with vector of (,, - Edge 87: Vertices (,, and (-,, Circle with radius of and reference vector of (,, and (,, Edge 7: Vertices (-,, 4 and (-,, Line with vector of (,, - Figure 5.5: Definition of cylindrical face Based on the surface geometrical data, radius of the cylindrical face is stored into the face as this data is required to develop the mathematical equation for cylindrical face. However, at this stage this cylindrical face will have infinite length. Radius can also be retrieved from circle edge, this is because radius is require in the mathematic of circle generation. The length of the surface can be retrieved from the vertices of the line edge on the cylindrical face. Finally the B-Reps representation of the STE; data is shown in Figure

193 Figure 5.6 B-Reps data of STE 5.5. ACIS When the part is save as ACIS file, it will produce the following file: - body $ - - $- $ $- $- F # - lump $ - - $- $- $4 $ F # -4 shell $- - - $- $- $- $5 $- $ F # -5 face $6 - - $- $7 $8 $4 $- $9 forward single F T # -7 face $ - - $- $ $ $4 $- $ forward single F T # -8 loop $- - - $- $- $4 $5 F unknown # -9 cone-surface $- - - $ I I forward I I I I # - face $5 - - $- $6 $7 $4 $- $8 forward single F F # - loop $- - - $- $- $9 $7 F unknown # - cone-surface $- - - $ I I forward I I I I # -4 coedge $- - - $- $ $ $ $ reversed $8 $- # -6 face $4 - - $- $- $5 $4 $- $6 reversed single F F # -7 loop $- - - $- $- $7 $ F unknown # -8 plane-surface $- - - $- 4 forward_v I I I I # -9 coedge $- - - $- $8 $9 $ $ reversed $ $- # 5-4

194 - coedge $- - - $- $ $4 $9 $ forward $8 $- # - coedge $- - - $- $4 $ $ $ reversed $8 $- # - coedge $- - - $- $7 $7 $4 $ forward $7 $- # - edge $- - - $- $ e-6 $ $ $6 unknown F # -5 loop $- - - $- $- $7 $6 F unknown # -6 plane-surface $- - - $- forward_v I I I I # -7 coedge $- - - $- $ $ $8 $8 forward $7 $- # -8 coedge $- - - $- $ $9 $7 $8 reversed $ $- # -9 coedge $- - - $- $9 $ $7 $9 forward $ $- # - edge $- - - $- $4 - $4.4 $ $4 unknown F # - coedge $- - - $- $ $ $4 $4 forward $8 $- # - coedge $- - - $- $9 $8 $ $ forward $ $- # - edge $- - - $- $5 - $44.4 $ $45 unknown F # -4 vertex $- - - $- $ $46 # -5 vertex $- - - $- $ $47 # -6 ellipse-curve $- - - $- 4 I I # -7 coedge $- - - $- $4 $4 $9 $9 reversed $5 $- # -8 edge $- - - $- $ $ e-6 $7 $48 unknown F # -9 edge $- - - $- $ $ e-6 $9 $49 unknown F # -4 vertex $- - - $- $ $5 # -4 straight-curve $- - - $ e I I # -4 coedge $- - - $- $7 $7 $ $4 reversed $5 $- # -4 edge $- - - $- $ e-6 $ $ $5 unknown F # -44 vertex $- - - $- $4 $5 # -45 straight-curve $- - - $ I I # -46 point $- - - $ e-5 4 # -47 point $- - - $- - 4 # -48 ellipse-curve $- - - $- 4 I I # -49 ellipse-curve $- - - $- I I # -5 point $- - - $ e-5 # -5 ellipse-curve $- - - $- I I # -5 point $- - - $- - # End-of-ACIS-data 5-5

195 Figure 5.7 shows the sample of data structure of the above ACIS file. Line will be the highest topology which in this case is Body. Then follows with Shell. When two or more parts are in one file such as in the assembly drawing, there will be one body and each part will be treated as one shell. Then, it is followed with Face, the Face will have surface geometrical properties. In the case cylinder, there are for surfaces comprises two for each cone and plane surface. Cone Surface Line 9: Range <, > with radius, Vertex (,, 4, and vector (,, Line : Range <-, > with radius, Vertex (,, 4, and vector (,, lane Surface Line 8: Start point (,, 4, Vector (,, (,, Line 6: Start point (,,, Vector (,, (,, 5-6

196 Figure 5.7: Example BReps Data Structure The next topology after Face is Loop. Then, it is followed with Coedge and Edge. Coedge is introduced because Coedge will belong to specific face and at the same time, it will keep track of the direction loop by keeping track of the next and previous Coedge. On the other hand, one edge will be shared by two faces. As far as geometrical property is concerned, edge will have the geometry which is curve. Finally, vertex will be lowest topological data and the coordinate of the vertex will be its geometrical data. Line 9 cone surface will be described similar to STE data. The definition of cone surface and ellipse curve in ACIS is based on the start and end angle, whilst STE will use the start and end point of the surface and curve. The main reason for cylindrical surface is regarded as cone surface is that cone surface is the generic surface for cone and cylindrical. By setting various radius to 5-7

197 both edges of the cone, cylindrical and conical surfaces can be generated as illustrated in Figure 5.8. Figure 5.8: Various definitions of cone surface Figure 5.9. In all the topology and geometry reprsentation of B-Reps data is shown in 5-8

198 Figure 5.9 B-Reps data structure 5.5 CASE STUDY ON NEUTRAL FILE This section will discuss case study that is used to study the capability of the neutral file. In this section, the capability of STE neutral file of A and A 4 based on the part file and assembly file, In fact for each model that includes the part and assembly model should have the following information. 5-9

199 Shape data: Shape data includes the geometrical representation of the parts and the form features that builds the part. Moreover, fonts, color, and annotation are also regarded as part of the shape data. Non-shape data: The non-shape data incudes graphics data such as shaded images. It also includes the measuring unit of the model and the precision of the units. Design data: The design data includes the information that designers generate from geometric models for analysis purposes such as mass property, centroid, and finite element mesh. Manufacturing data: The manufacturing data includes tooling, NC tool paths, tolerancing, process planning, tool design, and bill of materials (BOM. In the following, it will convert part and assembly file using STE A and 4 file. Then the comparison will be made with the original file and the converted file with the intention to study the data that will be maintained and lost during file conversion process. In the case of the part file, the comparison will be made based on the feature manager and material, as well as shape, non-shape, and design data. Then, the comparison will be carried out on assembly model and the comparison is made based on the feature manager and the constraint set to assemble the part. The third study is carried out to analyze the capability of the feature recognition feature of the CAD packages in interpreting the imported part art File Figure 5.a shows the part file that has been used in this study. The part is constructed by three bosses. The bosses are resulted from extrusion processes. The feature manager is shown in Figure 5.b. The part is made of copper and being 5-

200 rendered using color and polished copper. The part is drawn using Solidwork 4-5. The part is converted and opened again using the same software. ( a ( b Figure 5. (a art and its (b feature manager The units of the file is been set according MMGS (milimeter, gram, second as shown in Figure 5.. Figure 5. Units setting 5-

201 Table 5. compares the feature manager and units for art of the original part and the ones that have been converted using STE A and A 4. It is observed that the features and material is lost during the conversion process. For the converted part, the CAD packages regardse the feature as Imported and material information is lost during conversion process. STE A 4 is able to transfer the information on Appearance, but the data is not the same as the original part. In the case of units, the converted file will use the default value as MKS (meter, kilogram, second. Table 5. Comparison of the feature manager and units Original art art imported from A art imported from A 4 Feature : extruded bosses Feature: Imported Feature: Imported Material: Copper Material: <not specified> Material: <not specified> Appearance: Color and olished copepr Appearance: none Appearance: type of colors File Setting: MMGS File Setting: MKS File Setting: MKS Table 5. compares the properties of the part between the original part and the imported part. Since the material fails to be retrieved by the imported part, any properties related to material will show differences in values. This is supported by Table 5. when the material of the original part has been removed and the properties of imported will be the same as the original part. This shows that there is no losses in the geometry of the part. Table 5. art roperties Original art art imported from A art imported from A 4 5-

202 Density:.gram/mm Density: gram/mm Density: gram/mm Mass: 94.8 gram Mass:.65 gram Mass:.65 gram Volume: 65.6 mm Volume: 65.6 mm Volume: 65.6 mm Surface Area: mm Surface Area: mm Surface Area: mm Center of mass (mm: (., 8.66,.6 rincipal axes of inertia Ix = (.,.97, -.6 Iy = (.,.6,.97 Iz = (.,.,. rincipal moments of inertia: ( grams * square millimeters Taken at the center of mass. x = y = z = Moments of inertia: ( grams * square millimeters Taken at the center of mass and aligned with the output coordinate system. Lxx = Lxy =. Lxz =. Lyx =. Lyy = Lyz = Lzx =. Lzy = Lzz = Moments of inertia: ( grams * square millimeters Taken at the output coordinate system. Ixx = Ixy =. Ixz =. Iyx =. Iyy = Iyz = -96. Izx =. Izy = -96. Izz = Center of mass (mm: (., 8.66,.6 rincipal axes of inertia Ix = (.,.97, -.6 Iy = (.,.6,.97 Iz = (.,.,. rincipal moments of inertia: ( grams * square millimeters Taken at the center of mass. x = y = z = Moments of inertia: ( grams * square millimeters Taken at the center of mass and aligned with the output coordinate system. Lxx = Lxy =. Lxz =. Lyx =. Lyy = Lyz = Lzx =. Lzy = Lzz = Moments of inertia: ( grams * square millimeters Taken at the output coordinate system. Ixx = 56.7 Ixy =. Ixz =. Iyx =. Iyy = Iyz = Izx =. Izy = Izz = 55. Center of mass (mm: (., 8.66,.6 rincipal axes of inertia Ix = (.,.97, -.6 Iy = (.,.6,.97 Iz = (.,.,. rincipal moments of inertia: ( grams * square millimeters Taken at the center of mass. x = y = z = Moments of inertia: ( grams * square millimeters Taken at the center of mass and aligned with the output coordinate system. Lxx = Lxy =. Lxz =. Lyx =. Lyy = Lyz = Lzx =. Lzy = Lzz = Moments of inertia: ( grams * square millimeters Taken at the output coordinate system. Ixx = 56.7 Ixy =. Ixz =. Iyx =. Iyy = Iyz = Izx =. Izy = Izz =

203 Table 5. art roperties (without material assigned to the original part Original art art imported from A art imported from A 4 Density =. grams per cubic millimeter Density: gram/mm Density: gram/mm Mass =.65 grams Mass:.65 gram Mass:.65 gram Volume = 65.6 mm Volume: 65.6 mm Volume: 65.6 mm Surface area = mm Surface Area: mm Surface Area: mm Center of mass: ( millimeters (., 8.66,.6 rincipal axes of inertia Ix = (.,.97, -.6 Iy = (.,.6,.97 Iz = (.,.,. rincipal moments of inertia: ( grams * square millimeters Taken at the center of mass. x = y = z = Moments of inertia: ( grams * square millimeters Taken at the center of mass and aligned with the output coordinate system. Lxx = Lxy =. Lxz =. Lyx =. Lyy = Lyz = Lzx =. Lzy = Lzz = Moments of inertia: ( grams * square millimeters Taken at the output coordinate system. Ixx = 56.7 Ixy =. Ixz =. Iyx =. Iyy = Center of mass (mm: (., 8.66,.6 rincipal axes of inertia Ix = (.,.97, -.6 Iy = (.,.6,.97 Iz = (.,.,. rincipal moments of inertia: ( grams * square millimeters Taken at the center of mass. x = y = z = Moments of inertia: ( grams * square millimeters Taken at the center of mass and aligned with the output coordinate system. Lxx = Lxy =. Lxz =. Lyx =. Lyy = Lyz = Lzx =. Lzy = Lzz = Moments of inertia: ( grams * square millimeters Taken at the output coordinate system. Ixx = 56.7 Ixy =. Ixz =. Iyx =. Iyy = Center of mass (mm: (., 8.66,.6 rincipal axes of inertia Ix = (.,.97, -.6 Iy = (.,.6,.97 Iz = (.,.,. rincipal moments of inertia: ( grams * square millimeters Taken at the center of mass. x = y = z = Moments of inertia: ( grams * square millimeters Taken at the center of mass and aligned with the output coordinate system. Lxx = Lxy =. Lxz =. Lyx =. Lyy = Lyz = Lzx =. Lzy = Lzz = Moments of inertia: ( grams * square millimeters Taken at the output coordinate system. Ixx = 56.7 Ixy =. Ixz =. Iyx =. Iyy =

204 Iyz = Izx =. Izy = Izz = 55. Iyz = Izx =. Izy = Izz = 55. Iyz = Izx =. Izy = Izz = 55. The same comparison is carried out on two more polyhedral parts (Figure a and b and one curved part (Figure c. As a result, there is no loss of the properties of the imported parts for polyhedral parts. However, the imported parts of the curved part show differences in the properties when they were compared with the original part. Table 5.4 shows the comparison of the properties between the art 5.c with the imported part using STE A and A 4. ( a ( b ( c 5-5

205 Figure 5. Tested parts Table 5.4 Comparison for art 5.c Original art 5.c art 5.c A art 5.c A 4 Density =. gram/mm Density =. gram/mm Density =. gram/mm Mass =.87 gram Mass =.94 grams Mass =.94 grams Volume = 87.4 mm Volume = mm Volume = mm Surface area = mm Surface area = 78.9 mm Surface area = 78.6 mm Center of mass: ( mm (-7.9, 5., 9.86 Center of mass: (mm (-7.9, 5., 9.85 Center of mass: (mm (-7.9, 5., 9.85 rincipal axes of inertia Ix = (.,.,.7 Iy = (.7,., -. Iz = (.,.,. rincipal axes of inertia Ix = (.,.,.7 Iy = (.7,., -. Iz = (.,.,. rincipal axes of inertia Ix = (.,.,.7 Iy = (.7,., -. Iz = (.,.,. rincipal moments of inertia: ( grams * square millimeters Taken at the center of mass. x = y = z = Moments of inertia: ( grams * square millimeters Taken at the center of mass and aligned with the output coordinate system. Lxx = Lxy = -.4 Lxz = 498. Lyx = -.4 Lyy = Lyz =.8 Lzx = 498. Lzy =.8 Lzz = Moments of inertia: ( grams * square millimeters Taken at the output coordinate system. Ixx = Ixy = Ixz = Iyx = Iyy = Iyz = Izx = Izy = rincipal moments of inertia: ( grams * square millimeters Taken at the center of mass. x = y = z = Moments of inertia: ( grams * square millimeters Taken at the center of mass and aligned with the output coordinate system. Lxx = Lxy = -.4 Lxz = 57.6 Lyx = -.4 Lyy = Lyz = -.6 Lzx = 57.6 Lzy = -.6 Lzz = Moments of inertia: ( grams * square millimeters Taken at the output coordinate system. Ixx = Ixy = Ixz = Iyx = Iyy = Iyz = Izx = Izy = rincipal moments of inertia: ( grams * square millimeters Taken at the center of mass. x = y = z = Moments of inertia: ( grams * square millimeters Taken at the center of mass and aligned with the output coordinate system. Lxx = Lxy =.8 Lxz = Lyx =.8 Lyy = Lyz = -.5 Lzx = Lzy = -.5 Lzz = Moments of inertia: ( grams * square millimeters Taken at the output coordinate system. Ixx = Ixy = Ixz = Iyx = Iyy = Iyz = Izx = Izy =

206 Izz = Izz = Izz = Assembly File The case study proceeds with the conversion of assembly file into STE A and A 4. Figure 5. shows the assembly model. The assembly has four parts; namely part, part, part, and part 4. The parts have been constraint that will only allow the part to slide on the part as part is rotated. This assembly file is saved as STE A and A4 and both STE files will be opened again. Figure 5.: Assmbly model Similar result from part file, STE A is able to import the shape only without any colour and STE A 4 is able to import the shape with colour. However, both files fail to import the constraint during assembly and this causes the original intention to show the movement fail. When both files are saved, both STE A files will save them as the original name. 5-7

207 Figure 5.4: Absence of constraint set during assembly for ( a STE A and ( b STE A CAD package conversion facility Most of the CAD packages provide facility to generate the features that will form the models. This conversion facility rely on the capability of feature recognition technique that is embeded inside the conversion facility. In the following, it will study the capability of the feature conversion facility by one of the CAD packages which is Solidwork 4-5. Figure 5.5 shows the part and the constraints have been set to the original part. Figure 5.5 Tested art and its sketch profile 5-8

208 Figure 5.6 shows the sketch profile has lost it dimensional constraint and causes the profile is not fully constraint. Therefore, feature recognition facility is able to develop the profile without any dimensional constraint. Figure 5.6 Sketch profile resulted from the feature recognition facility Then, the part in Figure 5. is tested using the feature recognition facility. The part is created using three extruded boss as shown in Figure 5.7a and their profiles are shown in Figure 5.7b 5.7d. 5-9

209 Figure 5.7 (a feature tree of art 5. and (b d its profile When the feature conversion facility on the imported part, two revolved and one boss extruded features are generated (Figure 5.8a which are not similar to the original part. The profiles of these features are shown in Figure 5.8b to 5.8d. 5-4

210 Figure 5.8: ( a feature tree and ( b d its profiles after application of feature recognition facility. 5-4

211 CHATER 6 ENGINEERING ALICATIONS This chapter discusses the engineering applications of CAD software. There are four applications that are discussed in this chapter. The first application is the use of CAD package as the tool in the design. The second application is the application sketch of the feature and parametric modelling for solving some of the engineering problem. Then, it is followed with the discussion the application of Application rogramming Interface (AI in the development of engineering related software. Finally, the application of the CAD packages in the development of the intelligent system which is regarded as Design Wonder will be discussed. 6. ALICATION : TOOL IN DESIGN The application of CAD packages to produce model, and engineering drawing for the visualization purposes has been discussed in previous chapter. This chapter will further discuss the engineering applications of the parametric and feature based modelling. The application focuses on the design review and evaluation as well as to make CAD package as s full-fledged design platform. Nowadays, CAD packages can become full-fledged design platform. It starts from the modelling of parts, then it follows with the assembly of the parts to become a complete design. With the part files and assembly file, the part and the assembled model can go through a number of design checking and evaluation tools that are available in the CAD software. Such tools are manufacturing verification, collision checking, and even FEA. When the part and assembly are fully complied with the 6-

212 design requirements, documentation of the design such as detail and assembly drawing can be produced. Figure 6. shows the design of small differential gear which modelling, clearance checking, FEA and documentation are integration in one CAD platform. Figure 6.: Examples of design checking and evaluation When CAD packages provides tools for design within a single platfrom, the design process becomes more efficient. The integrity of the design can be checked using FEA and if alteration of dimensions is required, the parametric modelling allows the alteration to be make directly to the part. With the advancement of the IT related technology, it is possible to make the different process in design to be carried out in diferent places in the world. When the modelling process is possible to be carried out on one part of the world, whilst on the other part of the world is sleeping. When the modelling is completed, the design can be shared electronically by other people from other part of the world and intergrity of the design can be evaluated. The amendment on the part will be continued by the people whose the part is originally modelled, whilst the people who are doing the verification are sleeping. Therefore, with the advancement of internet, cloud storage, 6-

213 and other IT related technology, the design process using CAD packages becomes boundariless and can be done continuously. 6. ALICATION : SKETCH BASED ALICATIONS This section discusses the applications of sketch is design related activities. Sketch can be used for vector analysis. Sketch can also be used to estimate the length of the mechanism as well as to estimate whether the locust of the mechanism. Both of these applications are founded with the basis that when the profile is fully constraint, any additional dimensions that are set to the profile will be regarded as driven dimension and this driven dimension cannot be changed by users as it relies on other dimension. Figure 6.a shows a profile that is been fully constraint and additional dimension as shown in Figure 6.b is regarded as driven dimension. ( a 6-

214 ( b Figure 6.: (a Fully constraint profile with (b driven dimension In the engineering application, the driven dimension will become the parameter to be identified. In the following, it will discuss the application of fully constraint profile with driven dimension in solving the vector analysis and animation of mechanism. 6.. Vector Analysis Vector analysis is used to calculate the force and relative velocity or acceleration. Equation 6. and 6. are used to calculate the force and relative velocity or acceleration. i n F T F i i (6. V B VA VA/ B (6. 6-4

215 Figure 6.a and 6.b illustrates the problems for equation 6. and 6. respectively. In the following, it will shows two examples of using the sketch profile in solving both problems. Figure 6.: roblems for equation 6. and 6.. Example 6. Figure 6.4: roblem for Example 6. Figure 6.4 shows three forces of F = N, F = 45 N and F = 6 N that pulls the hook. At the same, the hook will react with the same magnitude, but in the opposite direction of total force exerted to the hook. Using sketch, determine the magnitude and direction of the reaction force exerted by the hook. In this case, equation 6. will be 6-5

216 F T F F F Or, it can be translated as F T F 9 F 45 F tan Therefore, all the forces and their angle with one fix point will create fully constraint profile as shown in Figure 6.5a. Therefore, the line length and their angle are regarded as driver dimensions. The drivers dimensions means that the dimension can be changed. Since angle of F requires tan- (4./., equation is used to calculate the angle. 4 ( When another line is added to make the profile to be closed as shown Figure 6.5b, the profile is still fully constraint profile. Therefore, additional dimensions will be regarded as driven dimension. Therefore, the driven dimensions can be changed and they relies on the driver dimensions. Figure 6.5: Solution using sketch 6-6

217 The resultant force is N. 6.. Mechanism The fully constraint profile is applicable in mechanism design. Four bar linkages and slider crank mechanism are used to demonstrate the application of sketch. In the case of four bar linkages, there will be ground, and three other linkage to form the mechanism. One example is shown in Figure 6.6. There are dimensions needed, ground as L, and there other three linkages, L to L. The movement of mechanism can be produced when L is rotated by changing the angle. Figure 6.6: Example four bar linkages Based on the length of the linkages and the rotation of L, the sketch representation of the mechanism can be generated as shown in 6.7. Fully constraint can be achieved by setting the dimensions to all the linkages and angle of rotation for L and fixing the ground link. Fixing the ground is done by fixing on the ground link end with horizontal geometrical constraint. 6-7

218 Figure 6.7: A fully constraint profile for four bar linkage By changing the rotation angle of L, the movement of the mechanism can be visualized. Changing the angle can be carried out using dialogue box for angle dimension as shown in Figure 6.8. Slider on the dialogue box can be used to change the angle continuously. Figure 6.8: Dialogue box for angle dimension Since the movement of the mechanism can be fully visualized by sliding the arrow, the movement constraint can be detected if there is any. In the case of the above mechanism, it cannot be formed when the angle is from -9 (4 to 9 as shown in Figure

219 Figure 6.9: Limits for the mechanism Similar approach can be carried out to study the slider crank mechanism. The length of both linkages and the direction of slider must be set first. When the first linkage rotates, the slider will move and stroke can be achieved. Therefore, to have fully constraint profile of slider crank mechanism, length of both linkages and angle of rotation together with the point that is fixed to ground will make the slider crank profile to be fully constraint. When the profile is fully constraint, additional dimension to measure the stroke becomes driven dimensions. Fully constraint profile with one driven dimension is shown in Figure 6.. Figure 6. also shows that by changing the rotation angle of the linkage, different stroke length can be determined. Figure 6.: Slider crank mechanism Example

220 Figure 6. shows three types of mechanism. Draw the profile to represent each mechanism and set the constraint to make the profile fully constraint. Hence, the movement of the mechanism can be shown. Figure 6.: ( a prrp and (b rprr mechanism Solution The representation of the revolute joint is a pin joint and the representation of the prismatic is slider. a prrp mechanism (Figure 6.a This mechanism comprises two links. The ground link (L is set by two lines that are horizontal and vertical and the mechanism link (L is set by a straight line. The prismatic joint is set by constraining the end of L according to its allowable path which is horizontal on one end and vertical for the other end. The length of the mechanism will also constraint the mechanism to make it behave as it intended. The motion of the mechanism can be seen by the changing the angle between the mechanism and the ground. 6-

221 b rprr mechanism (Figure 6.b There are three linkages for this mechanism. The ground link (L and the second link (L are set by a line with specified length. The prismatic joint between link L and L is set by constraining the end point that touches L coincides with the line that represents the first link L. Finally, the movement of the mechanism can be seen by setting the angle between the first link L and ground link L. ( a ( b Figure 6.: The representation of the mechanism 6.. Sketch Block When a group of entities is treated as one entity, the entities must be grouped as sketch block. This sketch block can be used to show the animation of a mechanism. Examples of sketch block are shown in Figure 6..There are three sketch blocks; Two of the sketch blocks comprises of line and circle and the other sketch block is just a circle. 6-

222 Figure 6.: Example of sketch block The intention the sketch block to allow the circle of Sketch Block to be tangential to the lines Sketch Block and. As a result, the movement of Sketch Block will cause an opening of Sketch Block and as demonstrated in Figure 6.4. Figure 6.4: The intention to group the sketch blocks. This is possible by setting the appropriate geometrical constraints to the entities of the sketch blocks. The geometrical constraint that should be set are as follows: Center point of circle in Sketch Block : fix Line of Sketch block : horizontal 6-

223 Center points of both circles of Sketch Block and : Coincide Circle and both lines of Sketch and : tangent These geometrical constraints are shown in Figure 6.5. Figure 6.5: Geometrical constraints of the sketch blocks By further manipulating the drive and driven dimension, various problems can be solved. Example of problem are as follows: roblem : What is the position Sketch Block if the end opening is set as certain vertical length? Based on the problem, the dimension of the opening will be the drive dimensions, whilst the distance between the circle center point of Sketch Block and center point of the circle of either Sketch or will be set as driven dimension. Therefore, by setting the vertical dimension of the opening, it will force the Sketch Block to move to ensure the opening dimension is achieved. The position of the Sketch Block is shown by the driven dimension. This is shown in Figure

224 Figure 6.6: Drive and driven dimensions for roblem. roblem : What is the the vertical opening if the diameter of the Sketch Block and distance between the center point of Sketch Block and are set to constant value. Based on the problem, the driving dimensions are the diameter of Sketch Block and the distance between the center point of Sketch Block and. Whilst, the dimension of vertical distance of the opening is to driven. Figure 6.7 shows the distance between the center point of Sketch Block and is set to.8 in with various diameter of the Sketch Block. When both dimensions are set, they will affect the vertical distance of the opening. 6-4

225 Figure 6.7: roblem 6.. ower Transmission Engineering roblem In engineering, circle can represent pitch circle of a pulley or a gear in power transmission problem. ower can be transmitted through belt and the mating tooth of pair of gears. Both belt and gear can be modelled using sketch and therefore, sketch can be used to set the initial design parameter for power transmission engineering problem. Belt Two or more circles that represent pulley can be connected using belt command. Belt command also allows the user to set the connection as open or cross. This is possib;e by changing the direction of attachment (represents as arrow, belt configure can be changed from Figure 6.8(a and 6.8(b and vice versa. Similar action can be done on more than two pulleys as demonstrated in Figure 6.9. Figure 6.8: (a Open and (b cross belt configuration 6-5

226 Figure 6.9: More examples of belt connections In engineering problem, the length of the belt can be varied or selected fixed length. The length of the flat and round belt can be varied and therefore, the parameter to be sought directly from the belt properties. In the case of belt, such as V and timing belt, with fixed length, the sought parameter is center to center distance between two pulleys. This can be done by setting one of the pulley to be fixed and let the belt length be the driving. Figure 6. shows two different lengths of belt and the center to center distance will be the parameter to be sought. 75 mm 85 mm Figure 6.: Distance center to center with (a 75 mm and (b 85 mm belt Traction The other possible connection is traction type which can represent gear connection. The diameter of the circle represents the pitch circle of the gear. By selecting both 6-6

227 circle of the sketch block and choose traction to constraint both sketch blocks, connection between two circle using traction is created. This is demonstrated in Figure 6.. There are three sets of gear. Gear and is a single gear, whilst Gear has two gears with different diameter. By setting the traction between Gear with small gear of Gear and big gear of Gear with Gear, gear train as shown in Figure 6.b is produced. Figure 6.: Traction connection between gears 6..4 Engineering Applications of Sketch Blocks In the following, it will demonstrate the applications of sketch block in engineering problem. The discussion focusses on the constraints to be set. Example 6.: Mechanism for the cam movement In this example, it will demonstrate the application of sketch block in determining the displacement of the follower. Initially, there are five sketch blocks, named as SB 5 as shown in Figure 6.a. The final assembly of the mechanism is shown in Figure 6.b; when gear in SB rotates, it will drive gear in SB. As the gear in SB rotates, it will drive the pulley in SB to drive pulley in SB through belt. As a result of gear in SB rotates, cam will rotate. As the cam rotates, it will push and pull the follower according to its profile. The vertical movement of the follower will be guided by 6-7

228 follower guide. Finally, the vertical displacement of the follower will be the main driven dimension. ( a ( b Figure 6.: (a Initial sketch blocks and (b final mechansim 6-8

229 Solution Based on the working principle, SB will drive SB using traction connection, SB will drive SB using belt, SB will use its cam profile to push and pull SB4 and SB5 will guide the movement of SB4. Therefore; Constraint between SB and SB (Figure 6.a Fix: center point of SB Horizontal: center of SB and SB Traction: gear of SB and driven gear of SB. Constraint between SB and SB (Figure 6.b Horizontal: center of SB and center of pulley at SB Belt: pulley of SB and pulley of SB Constraint between SB and SB4 (Figure 6.c Vertical: both center points of SB4 Tangent: circle at the bottom of SB4 and outer profile of SB Constraint between SB4 and SB5 (Figure 6.d Fix: bottom left and top right of the follower guide Horizontal dimension: side of follower and side of the follower guide. The dimension is used to ensure the movement of the follower. 6-9

230 Vertical dimension: center of circle on the top of the follower and top edge of the follower guide. This dimension should be set as driven to allow the displacement can be measured. ( a ( b ( c ( d Figure 6.: Steps to create the mechanism 6-

231 When all the constraints are set to all the sketch blocks, displacement of the follower can be retrived from the animation when gear rotates. This is illustrated in Figure 6.4a and 6.4b. ( a ( b Figure 6.4: The movement of the mechanism Example 6.: Ergonomic Study of a chair Using the sketch block, your main task is to set the minimum and maximum height of a chair which the height of the chair is adjustable. The design specification states that the height of a person for Malaysian market to use ranges from.4 m to.8 m. Based on this information, discuss the implementation of the sketch block to estimate the suitable minimum and maximum height of the chair. Solution In this example, the aim is to set the range of height for chair for Malaysian market. Since the length of human part can be in form of ratio to the height, the human skeleton can be model using equations. The equations that estimate the length of the body parts are 6-

232 Foot length L =.5h Foot height L =.4h Lower leg length L =.4h Upper leg length L4 =.45h Upper body length L5 =.9h Head L6 =.8h Where h: height of the person Since the human can be modelled using equations, equations can be used. By using height as the global variables, the length of all the body parts can be calculated. Figure 6.5 shows the calculation of the body parts using equations features. Figure 6.5: Eqautions for body parts The body part can be drawn as ellipse which both ends of the major axis will be connected to other body part. Assuming the angle between the lower and upper leg is 85 o during sitting, the sitting position of the human can be modelled. Since the aim is to estimate the height of the chair, the vertical distance between the floor and lower leg is set as driven dimension. By setting the height in the equation to 4 m and 8 m, sitting position of.4 m and.8 m human can modelled as illustrated in Figure 6.6a and 6.6b respectively. The height of the chair should vary from 8 mm to 46 mm to cater the person with the height of.4 m to.8m. 6-

233 ( a ( b Figure 6.6: Sitting position of a human with (a.4 m and (b.8 m 6..5 Command in Solidwork The following are the commands that related to the sketch block. Make Block Make Block is a command to create a block after all the entities are selected. The pull down menu is Tools Block Make Block and shown in Figure 6.7a. The command can be also be activated after the entity selection is done by pressing the right button of the mouse. When pressing the right button of the mouse, pop-up menu as shown in Figure 6.7b appears and when icon make block is selected, sketch block is created. 6-

234 ( a ( b Figure 6.7: Make block command using (a pull down and (b pop-up menu Make ath Make path is a command to convert a number of entities as one path. This is applicable such as to form the profile of SB in Figure 6.a. The command can be activated by using pull down menu (Tools Sketch Tools Make ath or pressing right button of the mouse. Both methods are illustrated in Figure 6.8a and 6.8b respectively. 6-4

235 ( a ( b Figure 6.8: Make path using (a pull down and (b pop-up menu Belt/Chain Belt/Chain command is a command that is used to create belt or chain connection between two selected circles of two different sketch blocks. This command can be activated by using pull down menu (Tools Sketch Entities Belt/Chain as shown in Figure

236 Figure 6.9: Belt/Chain command using pull down menu Traction Traction is a constraint that is set between two circles of two different sketch blocks. When both sketch blocks of circles are selected, side menu as shown in Figure 6. appears and by selecting traction constraint, both circles will have traction connectivity. 6-6

237 Figure 6.: Side menu to set the traction connectivity 6. ALICATION : ROGRAMME INTERFACE (AI The most common method to build part or model is using the user interface. Users will model the part according the steps. If similar part is drawn by other user, similar steps should be followed. This shows there is a possible of waste of human resource when this kind of repetition happens. This setback can be overcome by using application interface program (AI. By imitating the command to model by method of programming, the program can be executed repeatedly and the model can be created. Moreover, the program can be created in such a way that user can define the important parameters of the part. In this section, it will not go through the detail of programming. However, it will start with a guide to create a VBA simple program using macro. With this macro, 6-7

238 the program can be extended to add user interface or mathematical equations. Finally, it will discuss the capability of AI programming by using two case studies. 6.. Macro Method Macro can be activated under the Tools pull down menu. There are five commands under macro the command are Run: to execute the macro Stop: to stop recording of the macro Record: to start the recording of the macro New: to start a macro Edit: to edit the macro Figure 6. shows the icon of the commands Figure 6.: Icon for macro command In the following discussion, program to build part in Figure 6. is demonstrated. Firstly, macro will record the step to build the part and as a result, VBA program is generated from this recording process. Using the program generated by the macro, explanation is done on the program and then follows with the modification of the program until the user is able to input the parameters using user interface. If the input is wrong, error prompting will be displayed. 6-8

239 Figure 6.: Illustrative example Start a new macro The recording of the macro starts by activating the macro record command. When the record command is activated, user can start draw the part, commencing from drawing profile (Figure 6.a and extruding the profile (Figure 6.b. Once the part is modelled, the recording can be stopped by pressing macro stop command. Then, the macro needs to be saved and named as mymacro.swp. Then, by pressing the macro edit command and select mymacro.swp file, programming windows appear and display the programming of the file. ( a ( b Figure 6.: Steps to build the model The recorded program is as the following ******************************************************************** C:\Temp\swx89\Macro.swb - macro recorded on 5/8/4 by user 6-9

240 ******************************************************************** Dim swapp As Object Dim art As Object Dim boolstatus As Boolean Dim longstatus As Long, longwarnings As Long Sub main( Set swapp = _ Application.SldWorks Set art = swapp.activedoc art.clearselection True Dim sksegment As Object Set sksegment = art.sketchmanager.createline(-.6,.6674, #,.7844,.75, # Set sksegment = art.sketchmanager.createline(.7844,.75, #, -.9, -.4, # Set sksegment = art.sketchmanager.createline(-.9, -.4, #, -.646, , # Set sksegment = art.sketchmanager.createline(-.646, , #, -.6,.6674, # Set sksegment = art.sketchmanager.createcircle(-.457, -.787, #, -.4, -.75, # art.shownamedview "*Trimetric", 8 art.clearselection True Dim myfeature As Object Set myfeature = art.featuremanager.featureextrusion(true, False, False,,,.6,.54, False, False, False, False, E-, E-, False, False, False, False, True, True, True,,, False art.selectionmanager.enablecontourselection = False End Sub rogram Explanation The first part of the program before Sub Main is the notation of the macro and variable global declaration. Any line that starts with symbol is the line that will not be executed by the program and it can be used to write note on the program. In the mymacro.swp program, the first three lines are a notation that has information of the macro. 6-

241 On the fourth line after the notation, variables are declared. Since the above variables are declared before the main program, they will be global declaration which means that the variables can be used by all the functions in the program. The following shows the first part of mymacro.swp: ******************************************************************** C:\Temp\swx89\Macro.swb - macro recorded on 5/8/4 by user ******************************************************************** Dim swapp As Object Dim art As Object Dim boolstatus As Boolean Dim longstatus As Long, longwarnings As Long Variable declaration is structured as follows: Dim variable_name As variable_type variable_name is the name of the variable assigned by the programmer, whilst the variable_type indicates the types of variables. A number of variable names can be assigned to a single variable type for each declaration. The type of variables are as follows i. Float or double: Dim A, B, C As Double, ii. Integer or long: Dim D As Integer iii. Array declaration: Dim oint( To 5 As Integer Dim oint As Variant iv. Structure data declaration: Type oint 6-

242 x As Double y As Double z As Double End Type Dim t( to As oint In addition to the variable declaration, the Solidwork entites have its own declaration. This declaration is applied to all solidwork entities such as feature, part, or line. Example of the entity declaration is in the following. Dim Feature As Object Dim sksegment As Object After the global variable declaration, the main program will follow. The main program starts with Sub main( statement and ends with End Sub statement. The main task of the program will be within the main program body. In case of Solidwork macro, activation of the solidwork will be the first line of the main program. Sub main( Set swapp = _ Application.SldWorks Set art = swapp.activedoc This is the body of the program End Sub In the main body, there are basically two main tasks. The first task is to draw four lines and circles and the second task is to extrude the profile with a given height. The following will be the programming for the former task. Dim sksegment As Object Set sksegment = art.sketchmanager.createline(-.6,.6674, #,.7844,.75, # Set sksegment = art.sketchmanager.createline(.7844,.75, #, -.9, -.4, # Set sksegment = art.sketchmanager.createline(-.9, -.4, #, -.646, , # Set sksegment = art.sketchmanager.createline(-.646, , #, -.6,.6674, # 6-

243 Set sksegment = art.sketchmanager.createcircle(-.457, -.787, #, -.4, -.75, # Firstly, lines and circle are solidwork entities and they named as sksegment and Object will be the variable type. Then, four lines are drawn using CreateLine function that belongs to SketchManager group and circle is drawn using CreateCircle function that is also belonged to same SketchManager group. To fully understand the meaning of the both function, AI Help Topics can be used and search for the commands. In case of lines, the parameters are (x, y, z, x, y, z and for circles, the parameters are (xc, yc, zc of the center point, xp, yp, zp of another point on circle. The coordinates are in meters. In the case of second task, it will be as the following: Dim myfeature As Object Set myfeature = art.featuremanager.featureextrusion(true, False, False,,,.6,.54, False, False, False, False, E-, E-, False, False, False, False, True, True, True,,, False Extruded is named as myfeature with Object type. FeatureExtrusion command that is belonged to FeatureManager group will extrude the profile and create the extruded part. For extrusion of a profile, there is a number variables needs to set. The explanation of the variables is as follows. Solidwork command for extrusion is pfeat = FeatureManager.FeatureExtrusion ( sd, flip, dir, t, t, d, d, dchk, dchk, ddir, ddir, dang, dang, offsetreverse, offsetreverse, translatesurface, translatesurface, merge, usefeatscope, useautoselect, t, startoffset, flipstartoffset Some of the variables are as follows. sd: flip TRUE: single ended FALSE: double ended TRUE to flip the direction to cut (not applicable for base mode 6-

244 dir TRUE to flip the direction to extrude t and t Blind Midlane 6 OffsetFromSurface 5 ThroughAll ThroughNext UpToBody 7 UpToSurface 4 UpToVertex To make the understanding of the variables easier, these variables are similar to the command used to extrude the profile. Figure 6.4 shows the variables that are input on the side menu during extrusion process. 6-4

245 Figure 6.4: Variables of the extrsuion AI function on the side menu 6.. MyFirst AI program When the macro is recorded, the program can be modified. In the next section, programming modification is carried out. The aim of the modification is to allow the user to key in the bottom left corner of the profile together with the height and width of the outer profile. The circle is assumed at the center of the profile. Then, the user is allowed to key in the radius of the circle. Finally, the program will verify whether the circle drawn will exceed the outer profile. If it exceeds, the program will ask the user to key different radius and advice the user the maximum radius should be key in. are as follows Therefore, the modification of the program will be carried stages. The stages i. Setting the variable assignment to the line and circle function ii. Creating the user input iii. rompting the error In the following, it will discuss the stage in detail. rogramming modification: assignment of the variables to line and circle The first task is to modify the program that draw the outer profile based i Coordinates of the bottom left corner of the outer profile, ii iii length and height of the outer profile, the radius of the inner circle, 6-5

246 iv height of the extrusion The inner circle is assumed to be located in the center of the outer profile. Based on this input, other coordinates can be calculated (refer to Figure 6.5 Figure 6.5: Calculation of the vertices of the profile The user input will be (x, y, length (L, height (H, and circle radius (R and based on this input, other variables will be as the following Coordinates of the outer profile: (x + L, y, (x+l, y+h, and 4 (x, y+h Center of the circle: C (x +.5L, y +.5H Step : Variable declaration In this program, the variables are coordinates, length, height, and radius. The length, height, and radius can be declared as double and coordinates can be declared as structured variable called as point. The additional lines for the program are: 6-6

247 Type oint this is declared as global variable x As Double y As Double End Type Dim L, H, R As Double L = # H = # R = 5# Dim ( To 4 As oint (.x = (.y = (.x = (.x + L (.y = (.y (.x = (.x + L (.y = (.y + H (4.x = (.x (4.y = (.y + H Dim C As oint C.x = (.x +.5 * L C.y = (.y +.5 * H Dim C As oint C.x = C.x + R C.y = C.y Dim extheight As Double extheight = Step : Inserting the related variables to the AI functions 6-7

248 Firstly, the lines drawn should be named as L to L4. Then, the respective variables will be replaced with the respective variables. The advantage of giving names to the entities is the names can be used as the method during entity selection. The insertion of the variables is indicated by the bold text. Dim L, L, L, L4, skcircle As Object Set L = art.sketchmanager.createline((.x, (.y, #, (.x, (.y, # Set L = art.sketchmanager.createline((.x, (.y, #, (.x, (.y, # Set L = art.sketchmanager.createline((.x, (.y, #, (4.x, (4.y, # Set L4 = art.sketchmanager.createline((4.x, (4.y, #, (.x, (.y, # Set skcircle = art.sketchmanager.createcircle(c.x, C.y, #, C.x, C.y, # Set myfeature = art.featuremanager.featureextrusion(true, False, False,,, extheight,, False, False, False, False, E-, E-, False, False, False, False, True, True, True,,, False Figure 6.6. As a result, the program can automate the process of solid creation such as in 6-8

249 Figure 6.6: Generated part after the program modification rogramming modification: user input Based on the previous program, the users are required to input these variables: i Coordinates of the the bottom left corner of the outer profile; (.x and (.y ii iii iv length and height of the outer profile; L and H the radius of the inner circle; R height of the extrusion; extheight To allow the user, user input interface can be used. Following shows the code to create the user input and its explanation is graphically demonstrated in Figure 6.7. Dim Message, Title, Default Message = "lease key in your (.x is " Title = "InputBox" Default = "." (.x = InputBox(Message, Title, Default 6-9

250 Figure 6.7: Variables for user input function variable. If the user is not key in any value, default value is set to the respective Similar, user input interface can be applied to other inputs. The codes are shown in the following Message = "lease key in your (.y is " Title = "InputBox" Default = "." (.y = InputBox(Message, Title, Default Message = "lease key in the Length of the outer profile: " Title = "InputBox" Default = "." L = InputBox(Message, Title, Default Message = "lease key in the Height of the outer profile: " Title = "InputBox" Default = "." H = InputBox(Message, Title, Default Message = "lease key in the Radius of the inner circle: " Title = "InputBox" Default = "" R = InputBox(Message, Title, Default rogramming modification: error prompting The next stage is to allow the program to prompt any error if any. When there is an error, it allows the user to input a new input. In this case, the possible error is when the radius of the circle is equal or larger than the shortest side of the outer boundary. Therefore the radius must be less than half of the side length. 6-4

251 The suitable conditional statement used here is IF-THEN-ELSE. The first conditional statement is to set the smallest length of the perimeter and the second conditional statement is to ensure the radius must be less than halve of the smallest length. If it is not, error will be prompted and ask the user to input again the radius of the circle. The basic IF-THEN-ELSE statement will be as the following: If Ans = Then End If (statement for TRUE The nested IF-THEN-ELSE statement will be as the following If Ans = Then (statement for TRUE Else If Ans = Then (statement for TRUE for Else if Else (statement for FALSE End If Hence, the additional code will be as the following. Dim Min_length As Double Min_length = Val(L If Val(L > Val(H Then Min_length = Val(H End If Min_length =.5 * Min_length If R = Min_length Or R > Min_length Then Dim Style, Response 6-4

252 Message = "The cirlce is larger than the outer profile" Title = "Msg Box" Style = vbokonly Response = MsgBox(Message, Style, Title Message = "lease key in new radius" Title = "InputBox" Default = Min_length -. R = InputBox(Message, Title, Default End If 6.. Tips to write good program Following will give tips to write a good program. These tips will make the program easy to read. Write note along with the code Writing a note together with the source code is a good practice to keep track of what has been written. In VBA, by writing single quote, it will indicate the line after the is non-executable line or it can be used as to write note. If Val(L > Val(H Then Min_length = Val(H End If if H is smaller than Use tab to differentiate between segments The whole program comprises of a number of segments. For example, in the if statement, the segment starts with the word if and ends with the word end if. Therefore, to make the segment more traceable, the whole if statement can be segmented using margin or tab as demonstrated in the following. 6-4

253 Fully utilization of global and local declaration Global and local declaration plays an essential role in programming. Variables that should be declared using global declaration, are the variables that have been used repetitively throughout the program and its subfunctions. Examples of variables are pi, gravity etc. 4 Write short source code with a number of functions When a long program is written using only the main function, it will be difficult to comprehend. Therefore, the solution of long programming is to have a number of functions. The functions can be divided based on task. Following shows samples of pseudo code with a number of functions. Sub Main( func( func( 6-4

254 End Sub Function func( End Function 6..4 Case Studies This section will show two case studies. The first case study will demonstrate the application of AI when the part is based on equation and user can easily model the part by key in the main parameter. The second case study is to demonstrate the utilization of the part in engineering application. Case Study : Modelling based on equations In this case study, modelling of upper part of human body is used. Based on the anthropometric data [ref], all the human parts can be modelled based on the height of the person. Figure 6.8a shows the data from anthropometric data of the human upper part based on height H and Figure 6.8b shows upper part of human body model that is formed based on the equation. 6-44

255 Figure 6.8: Anthropometric data (aslam thesis All the parts can be drawn using AI programming and then they can be assembled. As a result, model of human body can be drawn as shown in Figure 6.9 where three human body model with height.6 m,.7 m, and.8 m. Then, with this human body, further study based on ergonomic data can be carried out as such the demonstrated in Figure 6.4 to set the convenient dimensional for office furniture. As such, dimension A, C, and D can be used to set the dimension for the shelf, whilst dimension G and H can used to set the height of the chair. Figure 6.9: Various height of human body 6-45

256 Figure 6.4: Setting the convenient parametric study for office for office furniture b Recognition the features on the part Model is created based on the combination of features. These features are considered as a design or machining feature. Sample of design features are rib, protrusion, etc, whilst the sample machining features are slot, hole, etc. Design features are used during modelling process and machining features are used during machining process. Some of the design features have opposite characteristic to machining features. As such, when a extruded feature is cut from the part, the process to machine can be directly assumed as the machining of similar volume. This is contradicted when the extruded feature is added to the part, machining process cannot add the feature to the part. Therefore, there is a need to convert these types of design features to equivalent machining volumes. The machining volumes can be regarded as machining features. Figure 6.4 shows samples of design features and their equivalent design features. 6-46

257 Figure 6.4: Samples of protrusion features and their equivalent machining features AI programming is used to develop the feature conversion system. The program must be able to read the BReps data of the model and translates the information into meaningful machining features. The foundation of the searching process is the profiles that will form the extruded feature either as additional or cut feature. Therefore, the search process starts with the search of inner loop on the features. Figure 6.4 shows the framework to identify the machining features. 6-47

258 Figure 6.4: Framework to identify the machining features. Figure 6.4 and 6.44 show the capability of feature conversion system to identify the machining features from isolated, nested, and interacting features. Figure 6.4: Illustrative Sample 6-48

259 Figure 6.44: Illustrative Sample 6.4 ALICATION 4: DESIGN WONDER The engineering applications based on CAD has no limit. Engineering applications on CAD can be enhanced until it has its own intelligence. The intelligence will make the computer be able to interpret the model into meaningful entity. In the early, MIT AI Laboratory has successfully developed an intelligent system called ASSIST. ASSIST is a system that has the capability to interpret human sketch into meaningful component and applied physic to simulate the movement. ASSIST is able to read the image from human sketch even there is a minor error on the sketch. Then, ASSIST converts the images into D geometrical 6-49

260 model and based on the geometry of the model, simulation can be done that is governed by rule of physics. This is demonstrated as in Figure Firstly, human will draw the situation (Figure 6.45a. In this case, there is an error on sketch of the platform which the platform is not even. Then the system will translate the image into geometrical model and at the same time the human error will be handled by the system (Figure 6.45b. When the button RUN is pressed, based on the law of physics, the simulation is carried out. The car will move downward based the downward arrow to show the gravitational force. The crossed symbol will make the platform to be fixed and make the car to travel on the platform. The simulation is carried out and even the car will fall as it travels until it reaches the edges of the platform (Figure 6.45c. Figure 6.45: Intelligent system that (a read human sketch, (b convert into meaningful component, and (c simulate the movment With the principle of the ASSIST, MAGIC AER system is developed and a software hysic Illustrator was developed by MIT and Microsoft. Even, this may be the future of the CAD based project which have intelligence to bring the implementation of CAD at the very early stage of design. The foundation of the intelligence of the system is the reasoning on geometry of the entities. Since all the entities are represented by its geometry and topology, the reasoning to convert these low level entity representation into meaningful human 6-5

COMPUTER AIDED ENGINEERING DESIGN (BFF2612)

COMPUTER AIDED ENGINEERING DESIGN (BFF2612) COMPUTER AIDED ENGINEERING DESIGN (BFF2612) BASIC MATHEMATICAL CONCEPTS IN CAED by Dr. Mohd Nizar Mhd Razali Faculty of Manufacturing Engineering mnizar@ump.edu.my COORDINATE SYSTEM y+ y+ z+ z+ x+ RIGHT

More information

Computer Aided Design Applications MMJ 1543

Computer Aided Design Applications MMJ 1543 Computer Aided Design Applications MMJ 1543 Dr Jamaludin Mohd Taib jamalt@fkm.utm.my http://www.fkm.utm.my/~jamalt Lecture 1 1 Computer Aided Design Computer Graphics Geometric Modelling CAD Tools in design

More information

Introduction to Solid Modeling Parametric Modeling. Mechanical Engineering Dept.

Introduction to Solid Modeling Parametric Modeling. Mechanical Engineering Dept. Introduction to Solid Modeling Parametric Modeling 1 Why draw 3D Models? 3D models are easier to interpret. Simulation under real-life conditions. Less expensive than building a physical model. 3D models

More information

Geometric Modeling. Introduction

Geometric Modeling. Introduction Geometric Modeling Introduction Geometric modeling is as important to CAD as governing equilibrium equations to classical engineering fields as mechanics and thermal fluids. intelligent decision on the

More information

Curve Representation ME761A Instructor in Charge Prof. J. Ramkumar Department of Mechanical Engineering, IIT Kanpur

Curve Representation ME761A Instructor in Charge Prof. J. Ramkumar Department of Mechanical Engineering, IIT Kanpur Curve Representation ME761A Instructor in Charge Prof. J. Ramkumar Department of Mechanical Engineering, IIT Kanpur Email: jrkumar@iitk.ac.in Curve representation 1. Wireframe models There are three types

More information

VALLIAMMAI ENGINEERING COLLEGE

VALLIAMMAI ENGINEERING COLLEGE VALLIAMMAI ENGINEERING COLLEGE SRM Nagar, Kattankulathur 603 203 DEPARTMENT OF MECHANICAL ENGINEERING QUESTION BANK M.E: CAD/CAM I SEMESTER ED5151 COMPUTER APPLICATIONS IN DESIGN Regulation 2017 Academic

More information

Lecture 4b. Surface. Lecture 3 1

Lecture 4b. Surface. Lecture 3 1 Lecture 4b Surface Lecture 3 1 Surface More complete and less ambiguous representation than its wireframe representation Can be considered as extension to wireframe representation In finite element, surface

More information

Geometric Modeling Lecture Series. Prof. G. Wang Department of Mechanical and Industrial Engineering University of Manitoba

Geometric Modeling Lecture Series. Prof. G. Wang Department of Mechanical and Industrial Engineering University of Manitoba Geometric Modeling 25.353 Lecture Series Prof. G. Wang Department of Mechanical and Industrial Engineering University of Manitoba Introduction Geometric modeling is as important to CAD as governing equilibrium

More information

L1 - Introduction. Contents. Introduction of CAD/CAM system Components of CAD/CAM systems Basic concepts of graphics programming

L1 - Introduction. Contents. Introduction of CAD/CAM system Components of CAD/CAM systems Basic concepts of graphics programming L1 - Introduction Contents Introduction of CAD/CAM system Components of CAD/CAM systems Basic concepts of graphics programming 1 Definitions Computer-Aided Design (CAD) The technology concerned with the

More information

Chapter 9 3D Modeling

Chapter 9 3D Modeling Chapter 9 3D Modeling Copyright The McGraw-Hill Companies, Inc. Permission required for reproduction or display. 3D Modeling Snapshot Since Mid 1980 s become common place in industry Software Types Wireframe

More information

Lesson 3: Surface Creation

Lesson 3: Surface Creation Lesson 3: Surface Creation In this lesson, you will learn how to create surfaces from wireframes. Lesson Contents: Case Study: Surface Creation Design Intent Stages in the Process Choice of Surface Sweeping

More information

CATIA V5 Parametric Surface Modeling

CATIA V5 Parametric Surface Modeling CATIA V5 Parametric Surface Modeling Version 5 Release 16 A- 1 Toolbars in A B A. Wireframe: Create 3D curves / lines/ points/ plane B. Surfaces: Create surfaces C. Operations: Join surfaces, Split & Trim

More information

3. Preprocessing of ABAQUS/CAE

3. Preprocessing of ABAQUS/CAE 3.1 Create new model database 3. Preprocessing of ABAQUS/CAE A finite element analysis in ABAQUS/CAE starts from create new model database in the toolbar. Then save it with a name user defined. To build

More information

Geometric Modeling Systems

Geometric Modeling Systems Geometric Modeling Systems Wireframe Modeling use lines/curves and points for 2D or 3D largely replaced by surface and solid models Surface Modeling wireframe information plus surface definitions supports

More information

(Refer Slide Time: 00:02:24 min)

(Refer Slide Time: 00:02:24 min) CAD / CAM Prof. Dr. P. V. Madhusudhan Rao Department of Mechanical Engineering Indian Institute of Technology, Delhi Lecture No. # 9 Parametric Surfaces II So these days, we are discussing the subject

More information

Chapter 2 Parametric Modeling Fundamentals

Chapter 2 Parametric Modeling Fundamentals 2-1 Chapter 2 Parametric Modeling Fundamentals Create Simple Extruded Solid Models Understand the Basic Parametric Modeling Procedure Create 2-D Sketches Understand the Shape before Size Approach Use the

More information

COMPUTER AIDED ARCHITECTURAL GRAPHICS FFD 201/Fall 2013 HAND OUT 1 : INTRODUCTION TO 3D

COMPUTER AIDED ARCHITECTURAL GRAPHICS FFD 201/Fall 2013 HAND OUT 1 : INTRODUCTION TO 3D COMPUTER AIDED ARCHITECTURAL GRAPHICS FFD 201/Fall 2013 INSTRUCTORS E-MAIL ADDRESS OFFICE HOURS Özgür Genca ozgurgenca@gmail.com part time Tuba Doğu tubadogu@gmail.com part time Şebnem Yanç Demirkan sebnem.demirkan@gmail.com

More information

Sung-Eui Yoon ( 윤성의 )

Sung-Eui Yoon ( 윤성의 ) CS480: Computer Graphics Curves and Surfaces Sung-Eui Yoon ( 윤성의 ) Course URL: http://jupiter.kaist.ac.kr/~sungeui/cg Today s Topics Surface representations Smooth curves Subdivision 2 Smooth Curves and

More information

3D Modeling: Surfaces

3D Modeling: Surfaces CS 430/536 Computer Graphics I 3D Modeling: Surfaces Week 8, Lecture 16 David Breen, William Regli and Maxim Peysakhov Geometric and Intelligent Computing Laboratory Department of Computer Science Drexel

More information

Chapter 1 Introduction

Chapter 1 Introduction Chapter 1 Introduction GTU Paper Analysis (New Syllabus) Sr. No. Questions 26/10/16 11/05/16 09/05/16 08/12/15 Theory 1. What is graphic standard? Explain different CAD standards. 2. Write Bresenham s

More information

Lecture 2.2 Cubic Splines

Lecture 2.2 Cubic Splines Lecture. Cubic Splines Cubic Spline The equation for a single parametric cubic spline segment is given by 4 i t Bit t t t i (..) where t and t are the parameter values at the beginning and end of the segment.

More information

An introduction to interpolation and splines

An introduction to interpolation and splines An introduction to interpolation and splines Kenneth H. Carpenter, EECE KSU November 22, 1999 revised November 20, 2001, April 24, 2002, April 14, 2004 1 Introduction Suppose one wishes to draw a curve

More information

Solid Modeling: Part 1

Solid Modeling: Part 1 Solid Modeling: Part 1 Basics of Revolving, Extruding, and Boolean Operations Revolving Exercise: Stepped Shaft Start AutoCAD and use the solid.dwt template file to create a new drawing. Create the top

More information

Lesson 5 Solid Modeling - Constructive Solid Geometry

Lesson 5 Solid Modeling - Constructive Solid Geometry AutoCAD 2000i Tutorial 5-1 Lesson 5 Solid Modeling - Constructive Solid Geometry Understand the Constructive Solid Geometry Concept. Create a Binary Tree. Understand the basic Boolean Operations. Create

More information

Central issues in modelling

Central issues in modelling Central issues in modelling Construct families of curves, surfaces and volumes that can represent common objects usefully; are easy to interact with; interaction includes: manual modelling; fitting to

More information

Curves and Surfaces. Chapter 7. Curves. ACIS supports these general types of curves:

Curves and Surfaces. Chapter 7. Curves. ACIS supports these general types of curves: Chapter 7. Curves and Surfaces This chapter discusses the types of curves and surfaces supported in ACIS and the classes used to implement them. Curves ACIS supports these general types of curves: Analytic

More information

(Refer Slide Time: 00:01:27 min)

(Refer Slide Time: 00:01:27 min) Computer Aided Design Prof. Dr. Anoop Chawla Department of Mechanical engineering Indian Institute of Technology, Delhi Lecture No. # 01 An Introduction to CAD Today we are basically going to introduce

More information

Parametric Modeling. With. Autodesk Inventor. Randy H. Shih. Oregon Institute of Technology SDC PUBLICATIONS

Parametric Modeling. With. Autodesk Inventor. Randy H. Shih. Oregon Institute of Technology SDC PUBLICATIONS Parametric Modeling With Autodesk Inventor R10 Randy H. Shih Oregon Institute of Technology SDC PUBLICATIONS Schroff Development Corporation www.schroff.com www.schroff-europe.com 2-1 Chapter 2 Parametric

More information

INSTRUCTIONAL PLAN L( 3 ) T ( ) P ( ) Instruction Plan Details: DELHI COLLEGE OF TECHNOLOGY & MANAGEMENT(DCTM), PALWAL

INSTRUCTIONAL PLAN L( 3 ) T ( ) P ( ) Instruction Plan Details: DELHI COLLEGE OF TECHNOLOGY & MANAGEMENT(DCTM), PALWAL DELHI COLLEGE OF TECHNOLOGY & MANAGEMENT(DCTM), PALWAL INSTRUCTIONAL PLAN RECORD NO.: QF/ACD/009 Revision No.: 00 Name of Faculty: Course Title: Theory of elasticity L( 3 ) T ( ) P ( ) Department: Mechanical

More information

ASSIGNMENT 1 INTRODUCTION TO CAD

ASSIGNMENT 1 INTRODUCTION TO CAD Computer Aided Design(2161903) ASSIGNMENT 1 INTRODUCTION TO CAD Theory 1. Discuss the reasons for implementing a CAD system. 2. Define computer aided design. Compare computer aided design and conventional

More information

ME COMPUTER AIDED DESIGN COMPUTER AIDED DESIGN 2 MARKS Q&A

ME COMPUTER AIDED DESIGN COMPUTER AIDED DESIGN 2 MARKS Q&A ME6501 - COMPUTER AIDED DESIGN COMPUTER AIDED DESIGN 2 MARKS Q&A Unit I 1. What is CAD? Computer aided design (CAD) is the technology concerned with the use of computer systems to assist the creation,

More information

Solid surface modeling in AutoCAD

Solid surface modeling in AutoCAD Solid surface modeling in AutoCAD Introduction into 3D modeling Managing views of 3D model Coordinate Systems 1 3D model advantages ability to view the whole model looking inside the model collision checking

More information

3D Modeling Parametric Curves & Surfaces. Shandong University Spring 2013

3D Modeling Parametric Curves & Surfaces. Shandong University Spring 2013 3D Modeling Parametric Curves & Surfaces Shandong University Spring 2013 3D Object Representations Raw data Point cloud Range image Polygon soup Surfaces Mesh Subdivision Parametric Implicit Solids Voxels

More information

9. Three Dimensional Object Representations

9. Three Dimensional Object Representations 9. Three Dimensional Object Representations Methods: Polygon and Quadric surfaces: For simple Euclidean objects Spline surfaces and construction: For curved surfaces Procedural methods: Eg. Fractals, Particle

More information

I-deas NX Series Master Modeler Foundation capabilities for feature-based variational solid modeling

I-deas NX Series Master Modeler Foundation capabilities for feature-based variational solid modeling I-deas Series Master Modeler Foundation capabilities for feature-based variational solid modeling fact sheet www.ugs.com Summary I-deas Series Master Modeler is the core design module for the I-deas product

More information

Images from 3D Creative Magazine. 3D Modelling Systems

Images from 3D Creative Magazine. 3D Modelling Systems Images from 3D Creative Magazine 3D Modelling Systems Contents Reference & Accuracy 3D Primitives Transforms Move (Translate) Rotate Scale Mirror Align 3D Booleans Deforms Bend Taper Skew Twist Squash

More information

Mathematics High School Geometry An understanding of the attributes and relationships of geometric objects can be applied in diverse contexts

Mathematics High School Geometry An understanding of the attributes and relationships of geometric objects can be applied in diverse contexts Mathematics High School Geometry An understanding of the attributes and relationships of geometric objects can be applied in diverse contexts interpreting a schematic drawing, estimating the amount of

More information

In this chapter, we will investigate what have become the standard applications of the integral:

In this chapter, we will investigate what have become the standard applications of the integral: Chapter 8 Overview: Applications of Integrals Calculus, like most mathematical fields, began with trying to solve everyday problems. The theory and operations were formalized later. As early as 70 BC,

More information

Automated Drill Design Software

Automated Drill Design Software Automated Drill Design Software Athulan Vijayaraghavan March 19, 2006 Abstract This section of the report discusses a tool which can create automated 3D CAD drill models based on geometric as well as manufacturing

More information

3D Modeling Parametric Curves & Surfaces

3D Modeling Parametric Curves & Surfaces 3D Modeling Parametric Curves & Surfaces Shandong University Spring 2012 3D Object Representations Raw data Point cloud Range image Polygon soup Solids Voxels BSP tree CSG Sweep Surfaces Mesh Subdivision

More information

Exam 3 SCORE. MA 114 Exam 3 Spring Section and/or TA:

Exam 3 SCORE. MA 114 Exam 3 Spring Section and/or TA: MA 114 Exam 3 Spring 217 Exam 3 Name: Section and/or TA: Last Four Digits of Student ID: Do not remove this answer page you will return the whole exam. You will be allowed two hours to complete this test.

More information

LECTURE #6. Geometric Modelling for Engineering Applications. Geometric modeling for engineering applications

LECTURE #6. Geometric Modelling for Engineering Applications. Geometric modeling for engineering applications LECTURE #6 Geometric modeling for engineering applications Geometric Modelling for Engineering Applications Introduction to modeling Geometric modeling Curve representation Hermite curve Bezier curve B-spline

More information

Autodesk Conceptual Design Curriculum 2011 Student Workbook Unit 2: Parametric Exploration Lesson 1: Parametric Modeling

Autodesk Conceptual Design Curriculum 2011 Student Workbook Unit 2: Parametric Exploration Lesson 1: Parametric Modeling Autodesk Conceptual Design Curriculum 2011 Student Workbook Unit 2: Parametric Exploration Lesson 1: Parametric Modeling Overview: Parametric Modeling In this lesson, you learn the basic principles of

More information

Autodesk Inventor 6 Essentials Instructor Guide Chapter Four: Creating Placed Features Chapter Outline This chapter provides instruction on the follow

Autodesk Inventor 6 Essentials Instructor Guide Chapter Four: Creating Placed Features Chapter Outline This chapter provides instruction on the follow Chapter Four: Creating Placed Features Chapter Outline This chapter provides instruction on the following topics and provides exercises for students to practice their skills. Day Two Topic: How to create

More information

7 Fractions. Number Sense and Numeration Measurement Geometry and Spatial Sense Patterning and Algebra Data Management and Probability

7 Fractions. Number Sense and Numeration Measurement Geometry and Spatial Sense Patterning and Algebra Data Management and Probability 7 Fractions GRADE 7 FRACTIONS continue to develop proficiency by using fractions in mental strategies and in selecting and justifying use; develop proficiency in adding and subtracting simple fractions;

More information

Exercise Guide. Published: August MecSoft Corpotation

Exercise Guide. Published: August MecSoft Corpotation VisualCAD Exercise Guide Published: August 2018 MecSoft Corpotation Copyright 1998-2018 VisualCAD 2018 Exercise Guide by Mecsoft Corporation User Notes: Contents 2 Table of Contents About this Guide 4

More information

1. Introduction to Constructive Solid Geometry (CSG)

1. Introduction to Constructive Solid Geometry (CSG) opyright@010, YZU Optimal Design Laboratory. All rights reserved. Last updated: Yeh-Liang Hsu (010-1-10). Note: This is the course material for ME550 Geometric modeling and computer graphics, Yuan Ze University.

More information

OpenGL Graphics System. 2D Graphics Primitives. Drawing 2D Graphics Primitives. 2D Graphics Primitives. Mathematical 2D Primitives.

OpenGL Graphics System. 2D Graphics Primitives. Drawing 2D Graphics Primitives. 2D Graphics Primitives. Mathematical 2D Primitives. D Graphics Primitives Eye sees Displays - CRT/LCD Frame buffer - Addressable pixel array (D) Graphics processor s main function is to map application model (D) by projection on to D primitives: points,

More information

Chapter 12 Solid Modeling. Disadvantages of wireframe representations

Chapter 12 Solid Modeling. Disadvantages of wireframe representations Chapter 12 Solid Modeling Wireframe, surface, solid modeling Solid modeling gives a complete and unambiguous definition of an object, describing not only the shape of the boundaries but also the object

More information

PARAMETRIC EQUATIONS AND POLAR COORDINATES

PARAMETRIC EQUATIONS AND POLAR COORDINATES 10 PARAMETRIC EQUATIONS AND POLAR COORDINATES PARAMETRIC EQUATIONS & POLAR COORDINATES A coordinate system represents a point in the plane by an ordered pair of numbers called coordinates. PARAMETRIC EQUATIONS

More information

Intro to Modeling Modeling in 3D

Intro to Modeling Modeling in 3D Intro to Modeling Modeling in 3D Polygon sets can approximate more complex shapes as discretized surfaces 2 1 2 3 Curve surfaces in 3D Sphere, ellipsoids, etc Curved Surfaces Modeling in 3D ) ( 2 2 2 2

More information

CS123 INTRODUCTION TO COMPUTER GRAPHICS. Describing Shapes. Constructing Objects in Computer Graphics 1/15

CS123 INTRODUCTION TO COMPUTER GRAPHICS. Describing Shapes. Constructing Objects in Computer Graphics 1/15 Describing Shapes Constructing Objects in Computer Graphics 1/15 2D Object Definition (1/3) Lines and polylines: Polylines: lines drawn between ordered points A closed polyline is a polygon, a simple polygon

More information

Birkdale High School - Higher Scheme of Work

Birkdale High School - Higher Scheme of Work Birkdale High School - Higher Scheme of Work Module 1 - Integers and Decimals Understand and order integers (assumed) Use brackets and hierarchy of operations (BODMAS) Add, subtract, multiply and divide

More information

Isometries. 1 Identifying Isometries

Isometries. 1 Identifying Isometries Isometries 1 Identifying Isometries 1. Modeling isometries as dynamic maps. 2. GeoGebra files: isoguess1.ggb, isoguess2.ggb, isoguess3.ggb, isoguess4.ggb. 3. Guessing isometries. 4. What can you construct

More information

Module 5: Creating Sheet Metal Transition Piece Between a Square Tube and a Rectangular Tube with Triangulation

Module 5: Creating Sheet Metal Transition Piece Between a Square Tube and a Rectangular Tube with Triangulation 1 Module 5: Creating Sheet Metal Transition Piece Between a Square Tube and a Rectangular Tube with Triangulation In Module 5, we will learn how to create a 3D folded model of a sheet metal transition

More information

MAE 455 COMPUTER-AIDED DESIGN AND DRAFTING MIDTERM EXAM PRACTICE QUESTIONS. Name: You are allowed one sheet of notes.

MAE 455 COMPUTER-AIDED DESIGN AND DRAFTING MIDTERM EXAM PRACTICE QUESTIONS. Name: You are allowed one sheet of notes. 47 MAE 455 COMPUTER-AIDED DESIGN AND DRAFTING MIDTERM EXAM PRACTICE QUESTIONS Name: You are allowed one sheet of notes. 1. What constraints could be added to fully constrain the wireframe shown? Include

More information

Mathematics High School Geometry

Mathematics High School Geometry Mathematics High School Geometry An understanding of the attributes and relationships of geometric objects can be applied in diverse contexts interpreting a schematic drawing, estimating the amount of

More information

The goal is the definition of points with numbers and primitives with equations or functions. The definition of points with numbers requires a

The goal is the definition of points with numbers and primitives with equations or functions. The definition of points with numbers requires a The goal is the definition of points with numbers and primitives with equations or functions. The definition of points with numbers requires a coordinate system and then the measuring of the point with

More information

Graphics and Interaction Transformation geometry and homogeneous coordinates

Graphics and Interaction Transformation geometry and homogeneous coordinates 433-324 Graphics and Interaction Transformation geometry and homogeneous coordinates Department of Computer Science and Software Engineering The Lecture outline Introduction Vectors and matrices Translation

More information

Rational Numbers: Graphing: The Coordinate Plane

Rational Numbers: Graphing: The Coordinate Plane Rational Numbers: Graphing: The Coordinate Plane A special kind of plane used in mathematics is the coordinate plane, sometimes called the Cartesian plane after its inventor, René Descartes. It is one

More information

Engineering designs today are frequently

Engineering designs today are frequently Basic CAD Engineering designs today are frequently constructed as mathematical solid models instead of solely as 2D drawings. A solid model is one that represents a shape as a 3D object having mass properties.

More information

COMP30019 Graphics and Interaction Transformation geometry and homogeneous coordinates

COMP30019 Graphics and Interaction Transformation geometry and homogeneous coordinates COMP30019 Graphics and Interaction Transformation geometry and homogeneous coordinates Department of Computer Science and Software Engineering The Lecture outline Introduction Vectors and matrices Translation

More information

Lesson 1 Parametric Modeling Fundamentals

Lesson 1 Parametric Modeling Fundamentals 1-1 Lesson 1 Parametric Modeling Fundamentals Create Simple Parametric Models. Understand the Basic Parametric Modeling Process. Create and Profile Rough Sketches. Understand the "Shape before size" approach.

More information

A Comprehensive Introduction to SolidWorks 2011

A Comprehensive Introduction to SolidWorks 2011 A Comprehensive Introduction to SolidWorks 2011 Godfrey Onwubolu, Ph.D. SDC PUBLICATIONS www.sdcpublications.com Schroff Development Corporation Chapter 2 Geometric Construction Tools Objectives: When

More information

Background for Surface Integration

Background for Surface Integration Background for urface Integration 1 urface Integrals We have seen in previous work how to define and compute line integrals in R 2. You should remember the basic surface integrals that we will need to

More information

ME-430 Introduction to CAD Lecture Notes- Part 3

ME-430 Introduction to CAD Lecture Notes- Part 3 ME-43 Introduction to CAD Lecture Notes- Part 3 Dr. Rajesh N. Dave Office: 36 MEC (only during office hours); 28 YCEES Phone: 973 596-586 e-mail: dave@adm.njit.edu Web Page: web.njit.edu/~rdave Office

More information

GL9: Engineering Communications. GL9: CAD techniques. Curves Surfaces Solids Techniques

GL9: Engineering Communications. GL9: CAD techniques. Curves Surfaces Solids Techniques 436-105 Engineering Communications GL9:1 GL9: CAD techniques Curves Surfaces Solids Techniques Parametric curves GL9:2 x = a 1 + b 1 u + c 1 u 2 + d 1 u 3 + y = a 2 + b 2 u + c 2 u 2 + d 2 u 3 + z = a

More information

AutoCAD 2009 Tutorial

AutoCAD 2009 Tutorial AutoCAD 2009 Tutorial Second Level: 3D Modeling Randy H. Shih Oregon Institute of Technology SDC PUBLICATIONS Schroff Development Corporation www.schroff.com Better Textbooks. Lower Prices. AutoCAD 2009

More information

Acknowledgement INTRODUCTION

Acknowledgement INTRODUCTION Submitted by: 1 Acknowledgement INTRODUCTION Computers are increasingly being used for doing engineering drawings and graphics work because computers allow the graphics designer or the draughtsman to change

More information

Create Complex Surfaces

Create Complex Surfaces Create Complex Surfaces In this lesson, you will be introduced to the functionalities available in the Generative Surface Design workbench. Lesson content: Case Study: Surface Design Design Intent Stages

More information

Module 4A: Creating the 3D Model of Right and Oblique Pyramids

Module 4A: Creating the 3D Model of Right and Oblique Pyramids Inventor (5) Module 4A: 4A- 1 Module 4A: Creating the 3D Model of Right and Oblique Pyramids In Module 4A, we will learn how to create 3D solid models of right-axis and oblique-axis pyramid (regular or

More information

Dgp _ lecture 2. Curves

Dgp _ lecture 2. Curves Dgp _ lecture 2 Curves Questions? This lecture will be asking questions about curves, their Relationship to surfaces, and how they are used and controlled. Topics of discussion will be: Free form Curves

More information

Geometry Clean-up in. Numerical Simulations

Geometry Clean-up in. Numerical Simulations Geometry Clean-up in Numerical Simulations Scope of the this Presentation The guidelines are very generic in nature and has been explained with examples. However, the users may need to check their software

More information

CAD/CAM COURSE TOPIC OF DISCUSSION GEOMETRIC MODELING DAWOOD COLLEGE OF ENGINEERING & TECHNOLOGY- KARACHI- ENGR. ASSAD ANIS 4/16/2011 1

CAD/CAM COURSE TOPIC OF DISCUSSION GEOMETRIC MODELING DAWOOD COLLEGE OF ENGINEERING & TECHNOLOGY- KARACHI- ENGR. ASSAD ANIS 4/16/2011 1 CAD/CAM COURSE TOPIC OF DISCUSSION GEOMETRIC MODELING 1 CAD attempts to eliminate the need of developing a prototype for testing and optimizing the design CAD evaluates a design using a model with geometric

More information

Curves and Surfaces 1

Curves and Surfaces 1 Curves and Surfaces 1 Representation of Curves & Surfaces Polygon Meshes Parametric Cubic Curves Parametric Bi-Cubic Surfaces Quadric Surfaces Specialized Modeling Techniques 2 The Teapot 3 Representing

More information

The diagram above shows a sketch of the curve C with parametric equations

The diagram above shows a sketch of the curve C with parametric equations 1. The diagram above shows a sketch of the curve C with parametric equations x = 5t 4, y = t(9 t ) The curve C cuts the x-axis at the points A and B. (a) Find the x-coordinate at the point A and the x-coordinate

More information

Autodesk Inventor Design Exercise 2: F1 Team Challenge Car Developed by Tim Varner Synergis Technologies

Autodesk Inventor Design Exercise 2: F1 Team Challenge Car Developed by Tim Varner Synergis Technologies Autodesk Inventor Design Exercise 2: F1 Team Challenge Car Developed by Tim Varner Synergis Technologies Tim Varner - 2004 The Inventor User Interface Command Panel Lists the commands that are currently

More information

form are graphed in Cartesian coordinates, and are graphed in Cartesian coordinates.

form are graphed in Cartesian coordinates, and are graphed in Cartesian coordinates. Plot 3D Introduction Plot 3D graphs objects in three dimensions. It has five basic modes: 1. Cartesian mode, where surfaces defined by equations of the form are graphed in Cartesian coordinates, 2. cylindrical

More information

Solid Problem Ten. In this chapter, you will learn the following to World Class standards:

Solid Problem Ten. In this chapter, you will learn the following to World Class standards: C h a p t e r 11 Solid Problem Ten In this chapter, you will learn the following to World Class standards: 1. Sketch of Solid Problem Ten 2. Starting a 3D Part Drawing 3. Modifying How the UCS Icon is

More information

Lecture 7. Neutral File. Lecture 7 1

Lecture 7. Neutral File. Lecture 7 1 Lecture 7 Neutral File Lecture 7 1 What is neutral file? Without neutral file, we requires 2 N number of translator for N numbers of software. Translator Computer Computer Computer Computer Computer Neutral

More information

18.02 Final Exam. y = 0

18.02 Final Exam. y = 0 No books, notes or calculators. 5 problems, 50 points. 8.0 Final Exam Useful formula: cos (θ) = ( + cos(θ)) Problem. (0 points) a) (5 pts.) Find the equation in the form Ax + By + z = D of the plane P

More information

Curves. Computer Graphics CSE 167 Lecture 11

Curves. Computer Graphics CSE 167 Lecture 11 Curves Computer Graphics CSE 167 Lecture 11 CSE 167: Computer graphics Polynomial Curves Polynomial functions Bézier Curves Drawing Bézier curves Piecewise Bézier curves Based on slides courtesy of Jurgen

More information

CHAPTER 1 Graphics Systems and Models 3

CHAPTER 1 Graphics Systems and Models 3 ?????? 1 CHAPTER 1 Graphics Systems and Models 3 1.1 Applications of Computer Graphics 4 1.1.1 Display of Information............. 4 1.1.2 Design.................... 5 1.1.3 Simulation and Animation...........

More information

Computer Aided Engineering Design Prof. Anupam Saxena Department of Mechanical Engineering Indian Institute of Technology, Kanpur.

Computer Aided Engineering Design Prof. Anupam Saxena Department of Mechanical Engineering Indian Institute of Technology, Kanpur. (Refer Slide Time: 00:28) Computer Aided Engineering Design Prof. Anupam Saxena Department of Mechanical Engineering Indian Institute of Technology, Kanpur Lecture - 6 Hello, this is lecture number 6 of

More information

An Introduction to Autodesk Inventor 2010 and AutoCAD Randy H. Shih SDC PUBLICATIONS. Schroff Development Corporation

An Introduction to Autodesk Inventor 2010 and AutoCAD Randy H. Shih SDC PUBLICATIONS. Schroff Development Corporation An Introduction to Autodesk Inventor 2010 and AutoCAD 2010 Randy H. Shih SDC PUBLICATIONS Schroff Development Corporation www.schroff.com 2-1 Chapter 2 Parametric Modeling Fundamentals Create Simple Extruded

More information

For each question, indicate whether the statement is true or false by circling T or F, respectively.

For each question, indicate whether the statement is true or false by circling T or F, respectively. True/False For each question, indicate whether the statement is true or false by circling T or F, respectively. 1. (T/F) Rasterization occurs before vertex transformation in the graphics pipeline. 2. (T/F)

More information

Version 2011 R1 - Router

Version 2011 R1 - Router GENERAL NC File Output List NC Code Post Processor Selection Printer/Plotter Output Insert Existing Drawing File Input NC Code as Geometry or Tool Paths Input Raster Image Files Convert Raster to Vector

More information

Aerospace Sheet Metal Design

Aerospace Sheet Metal Design CATIA V5 Training Foils Aerospace Sheet Metal Design Version 5 Release 19 January 2009 EDU_CAT_EN_ASL_FF_V5R19 1 About this course Objectives of the course Upon completion of this course you will be able

More information

CS337 INTRODUCTION TO COMPUTER GRAPHICS. Describing Shapes. Constructing Objects in Computer Graphics. Bin Sheng Representing Shape 9/20/16 1/15

CS337 INTRODUCTION TO COMPUTER GRAPHICS. Describing Shapes. Constructing Objects in Computer Graphics. Bin Sheng Representing Shape 9/20/16 1/15 Describing Shapes Constructing Objects in Computer Graphics 1/15 2D Object Definition (1/3) Lines and polylines: Polylines: lines drawn between ordered points A closed polyline is a polygon, a simple polygon

More information

Curve and Surface Basics

Curve and Surface Basics Curve and Surface Basics Implicit and parametric forms Power basis form Bezier curves Rational Bezier Curves Tensor Product Surfaces ME525x NURBS Curve and Surface Modeling Page 1 Implicit and Parametric

More information

End-Term Examination

End-Term Examination Paper Code: MCA-108 Paper ID : 44108 Second Semester [MCA] MAY-JUNE 2006 Q. 1 Describe the following in brief :- (3 x 5 = 15) (a) QUADRATIC SURFACES (b) RGB Color Models. (c) BSP Tree (d) Solid Modeling

More information

Glossary of dictionary terms in the AP geometry units

Glossary of dictionary terms in the AP geometry units Glossary of dictionary terms in the AP geometry units affine linear equation: an equation in which both sides are sums of terms that are either a number times y or a number times x or just a number [SlL2-D5]

More information

Characterization of the Northwest Coast Native Art Ovoid

Characterization of the Northwest Coast Native Art Ovoid Characterization of the Northwest Coast Native Art Ovoid By: Nathaniel P. Wilkerson July 10, 2010 Probably the most predominant design unit in the art work, the Ovoid takes many shapes and forms. In theory

More information

Solidworks 2006 Surface-modeling

Solidworks 2006 Surface-modeling Solidworks 2006 Surface-modeling (Tutorial 2-Mouse) Surface-modeling Solid-modeling A- 1 Assembly Design Design with a Master Model Surface-modeling Tutorial 2A Import 2D outline drawing into Solidworks2006

More information

CSCI 4620/8626. Coordinate Reference Frames

CSCI 4620/8626. Coordinate Reference Frames CSCI 4620/8626 Computer Graphics Graphics Output Primitives Last update: 2014-02-03 Coordinate Reference Frames To describe a picture, the world-coordinate reference frame (2D or 3D) must be selected.

More information

Module 1: Basics of Solids Modeling with SolidWorks

Module 1: Basics of Solids Modeling with SolidWorks Module 1: Basics of Solids Modeling with SolidWorks Introduction SolidWorks is the state of the art in computer-aided design (CAD). SolidWorks represents an object in a virtual environment just as it exists

More information

Curves and Surfaces Computer Graphics I Lecture 9

Curves and Surfaces Computer Graphics I Lecture 9 15-462 Computer Graphics I Lecture 9 Curves and Surfaces Parametric Representations Cubic Polynomial Forms Hermite Curves Bezier Curves and Surfaces [Angel 10.1-10.6] February 19, 2002 Frank Pfenning Carnegie

More information

Skateboard. Hanger. in the Feature Manager and click Sketch on the Context toolbar, Fig. 1. Fig. 2

Skateboard. Hanger. in the Feature Manager and click Sketch on the Context toolbar, Fig. 1. Fig. 2 Chapter 3 Skateboard Hanger A. Sketch1 Lines. Step 1. Click File Menu > New, click Part Metric and OK. Step 2. Click Right Plane in the Feature Manager and click Sketch on the Context toolbar, Fig. 1.

More information

To graph the point (r, θ), simply go out r units along the initial ray, then rotate through the angle θ. The point (1, 5π 6

To graph the point (r, θ), simply go out r units along the initial ray, then rotate through the angle θ. The point (1, 5π 6 Polar Coordinates Any point in the plane can be described by the Cartesian coordinates (x, y), where x and y are measured along the corresponding axes. However, this is not the only way to represent points

More information

Design considerations

Design considerations Curves Design considerations local control of shape design each segment independently smoothness and continuity ability to evaluate derivatives stability small change in input leads to small change in

More information