Applying STEP Principles to Product Models in High Energy Physics Research

Size: px
Start display at page:

Download "Applying STEP Principles to Product Models in High Energy Physics Research"

Transcription

1 Applying STEP Principles to Product Models in High Energy Physics Research Miroslaw Dach, Nils Høimyr CERN, Geneva Janne Saarela Helsinki University of Technology Jouko Vuoskoski Institute of Particle Physics Technology, Espoo and CERN, Geneva March 1, 1994 Report TKK-F-A724 ABSTRACT STEP is a new International Standard to exchange and represent product model data. It uses an object-flavoured data specification language to specify the representation of the data. This report describes how the STEP principles can be applied to product models in high energy physics research. We present the design and implementation of a program where STEP principles were applied to detector models used by the GEANT detector simulation package. The design and implementation of the program were carried out using object-oriented tecnology. Possible applications which can profit from this program are discussed briefly. ISSN ISBN TKK OFFSET

2

3 Contents 1.0 Introduction STEP GEANT Principle of the Program Design of the Class Library Implementation of the Program Implementation of he Class Library Implementation of the Conversions Conversions from GEANT into the Class Library Conversions from the Class Library into GEANT Possible Applications for Detector Models Conclusions 12 Acknowledgments 12 References 13

4

5 Introduction 1.0 Introduction STEP [1, 2] (STandard for the Exchange of Product model data) is a new International Standard for representing and exchanging product model information. It includes an object-flavoured data specification language, EXPRESS [3], to describe the representation of the data. STEP defines also a physical transfer file [4]. STEP provides a systemindependent way of implementation. These features offered a possibility to apply the STEP principles to product models using modern object-oriented design and implementation. The object-oriented methodology is a style of thinking about given problems. The fundamental construct is the object. In object-oriented methodology a software is organized as a collection of discrete objects that incorporate both data structure and behavior. This is in contrast to conventional way of programming where data and behavior are separated. This report describes the design and implementation of a program where STEP principles were applied to detector models used by the GEANT [5] detector simulation package. The design of the program was carried out using the Object Modeling Technique (OMT) [6]. The C++ programming language [7] and the NIST STEP Toolkit [8] were used in the implementation. The program consists of the file I/O and the class library. It provides routines to access the class library. It includes routines to convert detector models between the program and GEANT. STEP physical files can be used to store or transfer GEANT detector models. The physical files are written according to the GEANT geometric representation. The file is a human-readable ASCII-file. The program is to be used as a basis to implement different applications. The class library access routines offer an environment to implement different applications within the program in order to manipulate or use GEANT detector models. 1.1 STEP STEP is a collection of standards to represent and exchange product information. The objective of STEP is to offer a system-independent mechanism to describe the product information in computer aided systems throughout its lifetime. It separates the representation of product information from the implementation methods. Implementation meth- Applying STEP Principles to Product Models in High Energy Physics Research 1 of 14

6 Introduction ods are used for data exchange. The representation offers a definition of product information to many applications. STEP provides also a basis for archiving product information and a methodology for the conformance testing of implementations. EXPRESS is a formal data specification language used to specify the representation of product information. The use of a formal data specification language facilitates development of implementation. It also enables consistency of representation. STEP specifies the implementation methods used for data exchange that support the representation of product information. STEP does not only define the geometric shape of a product it also includes topology, features, tolerance specifications, material properties, etc. necessary to completely define a product for the purposes of design, analysis, manufacture, test, inspection and product support. 1.2 GEANT GEANT is a detector simulation program used in the design of detectors used in High Energy Physics (HEP) experiments. The simulation program has been developed at CERN by the HEP community and it is now in use in more than 600 research institutions in over 50 countries. Its applications are not limited to physics, but range from space science to medical research. The GEANT version 3.20 to be released sometime in the future will have a new geometric modeler [9] which uses a constructive solid geometry (CSG) [10] approach. The internal geometric representation consists of half spaces. In GEANT a solid object composing a part of a detector is called a volume. Internally a volume is represented by a union of caves and a cave is represented by an intersection of half-spaces. The GEANT 3.20 user interface will be FORTRAN 77 code written using a so called Shape Definition Language (SDL) [9]. SDL contains a set of subroutine calls to define shapes. Volumes are parameterized instances of shapes. A shape is constructed by simple entities, operations on and between them, predefined volume primitives and Boolean operations. A volume is created by giving dimensions to a shape. A detector model is created by positioning volumes inside each other by specifying the coordinates and orientation. Special GEANT mechanisms like divisions, etc. [5] are applied to volumes in order to create a detector model which is suitable for fast tracking. GEANT is written in FORTRAN 77 and it uses the ZEBRA [11] memory manager. The current version, GEANT 3.16, offers 16 basic shapes, i.e. volume primitives, to construct a detector model. 2 of 14 Applying STEP Principles to Product Models in High Energy Physics Research

7 Principle of the Program 2.0 Principle of the Program The principle of the program is shown in Figure 1. A detector model is read either from a GEANT database file (RZ-file) using ZEBRA or from a STEP physical file and loaded into the class library. In the case of reading from an RZ-file, the GEANT entities are converted to object instances and loaded into the class library. The relationships between the entities are converted to pointers and loaded as attributes within the classes. The detector model can be written out in a STEP physical file or in a GEANT database file. The implementation of the program was performed in two parts: the class library creation and the actual program. The class library is created by compiling the EXPRESS schema of the GEANT geometric representation with an EXPRESS compiler. RZ-file STEP physical file Model of the GEANT geometric representation ZEBRA Conversions File I/O EXPRESS schema Instance handling routines GEANT class library EXPRESS compiler Figure 1 The principle of the program 3.0 Design of the Class Library In object-oriented design, in general, the leading idea is to identify objects and their relationships in a system. An object model describes the static structure of the objects and their relationships. An object diagram is a graph whose nodes are object classes and whose arcs are relationships among classes. In order to implement the class library for the program, we described the geometric representation of GEANT using object diagrams. The iteration of the diagrams was done with the help of instance diagrams. An instance diagram describes how a particular set of objects relate to each other. Applying STEP Principles to Product Models in High Energy Physics Research 3 of 14

8 Design of the Class Library The object model of GEANT 3.20 geometric representation is described as object diagrams in Figures 3 and 4. The core objects are GEANT_volume and GEANT_shape. The model consists of two different kinds of information: geometric information (shape, volume and volume positioning information); topological information (relationships between geometric components). Geometric information contains the geometry of the shapes and their dimensions. It contains also the coordinates and orientation of the volumes. The topological information contains the links between the geometric components. The links between volumes (i.e. solids) define the mother-daughter relationships; a volume is always positioned inside a mother volume (except the global mother volume). The notations of object and instance diagrams in this report follow the Object Modeling Technique (OMT) [6]. In the Figure 4 some objects are repeated in order to clarify the diagram. The meaning of the symbols used in the diagrams are shown in Figure 2. Object class class class name name Object instance (class name) Association one to n class-1 class-1 nn class-2 class-2 Association one to many (empty ball zero or one) class-1 class-1 class-2 class-2 Aggregation class-1 class-1 class-2 class-2 Inheritance super-class super-class sub-class sub-class Figure 2 The OMT notations used in this report 4 of 14 Applying STEP Principles to Product Models in High Energy Physics Research

9 Design of the Class Library rotation_matrix rotation_matrix_number rotation_angles_array matrix_elements_array material material_name material_number atomic_weight atomic_number density shape shape_name see Fig daughter daughter_index x_coordinate y_coordinate z_coordinate volume volume_name number_of_parameters parameters_array division number_of_divisions step_of_division offset_of_division division_axis_nr volume_normal volume_divided daughter_p number_of_parameters parameters_array axis see Fig. 4 Figure 3 The object model of GEANT 3.20 volume representation Applying STEP Principles to Product Models in High Energy Physics Research 5 of 14

10 Design of the Class Library shape body body of_boolean basic body half-space body of_closed_face body body body of_revolution of_extrusion of_join 1,2 1,2 body point face axis line point face face face face body_of_box body_of_trd1 body_of_trd2 of_closed_line of_revolution of_extrusion of_join 2 1,2 body_of_trap body_of_tube body_of_tubs line axis line point body_of_cone body_of_cons body_of_sphe line line line of_entity of_revolution of_join body_of_para segment axis 2 point 2,3,4,5 line point vector Figure 4 The object model of GEANT 3.20 shape representation 6 of 14 Applying STEP Principles to Product Models in High Energy Physics Research

11 Implementation of the Program 4.0 Implementation of the Program The different parts of software which are used in the program are principally: C++ steering program; GEANT library routines; ZEBRA library routines; NIST STEP toolkit; C++ Binding for OSF/Motif. The C++ steering program is the main program which performs user actions and conversions between GEANT and the class library. The GEANT library routines are linked with the main program. They are needed for creating a detector model in the ZEBRA data structure. The ZEBRA library routines give access to a detector model which is saved in an RZ-file. The NIST STEP toolkit [8] provides routines to manage object instances and file I/O. It contains an EXPRESS compiler in order to create a C++ class library from an EXPRESS schema. A C++ Binding for OSF/Motif [12] is needed in order to create visual interface to the program. The US National Institute of Standards and Technology (NIST) has developed the NIST STEP toolkit to handle objects described in STEP. The toolkit is written in C++. The toolkit can be divided in three parts which are: Fed-X [14] EXPRESS compiler; a library to manage instances, attributes and file I/O; a visual interface to manipulate entities in X-windowing system. The NIST STEP toolkit library is linked with the main program. The library contains the InstanceManager class to manage object instances, the file I/O routines to perform the I/O to STEP physical files, and different Aggregate classes to manipulate attributes within the classes. These allow a conforming access to object instances. The visual interface of the toolkit is not used. Fed-X is a stand-alone program which reads an EXPRESS schema file as an input and creates C++ class definitions and methods in order to access attributes. When transferring data from GEANT to the class library, the C++ main program calls the FORTRAN routines of ZEBRA which transfer the RZ-file into memory. After this we can access the geometric data through ZEBRA banks from C++ and convert and transfer the data into object instances which are derived from the class library. When transferring data from the class library to an RZ-file, the C++ program calls GEANT library routines which transform the geometric information into ZEBRA data structures and create an RZ-file. 5.0 Implementation of he Class Library. EXPRESS is a data specification language. It allows the encapsulation of data, implement constraints and relationships among objects. In the EXPRESS language objects Applying STEP Principles to Product Models in High Energy Physics Research 7 of 14

12 Implementation of the Conversions are called entities. EXPRESS is not a programming language; it does not support input/ output elements, information processing etc. However, the EXPRESS language can be processed by a computer. With the assistance of the object diagrams we wrote the description of the GEANT 3.20 geometric representation in EXPRESS. All the geometric entities and the topology (i.e. relationships between geometric entities) of GEANT 3.20 have been expressed in an EXPRESS schema. By compiling the EXPRESS schema of the GEANT geometric representation, the corresponding class library is created. The Fed-X compiler is used to create C++ class definitions from EXPRESS schemas. The similarity between EXPRESS entities and C++ classes is shown in Figure 5. In addition to class definitions, Fed-X also creates methods to access attributes within the classes and data structures to store attributes. EXPRESS schema SCHEMA test;... ENTITY body_of_extrusion SUBTYPE OF (body); my_guide_line : line; my_face : face; END_ENTITY; END_SCHEMA; C++ class definition class SdaiBody_of_extrusion : public SdaiBody { protected: STEPentity * _my_guide_line ; STEPentity * _my_face ; public: SdaiBody_of_extrusion ( ); SdaiBody_of_ extrusion(sdaibody_of_extrusion& e ); ~SdaiBody_of_extrusion (); char *Name () { return Body_Of_Extrusion ; } int opcode () { return 24 ; } class SdaiLine * my_guide_line(); void my_guide_line (SdaiLine * x); class SdaiFace * my_face(); void my_face (SdaiFace * x); }; Figure 5 A C++ implementation of an EXPRESS schema 6.0 Implementation of the Conversions The NIST toolkit library includes the InstanceManager class which is a data structure manager not only to manipulate multiple instances of one set of class definitions (i.e. instances of one schema) but to manage multiple schemas as well. InstanceManager is a storage handler; it manages the object instances which are located somewhere in physical memory but belong to a specific class library. InstanceManager can either append, get, remove or find instances by name or index. 8 of 14 Applying STEP Principles to Product Models in High Energy Physics Research

13 Implementation of the Conversions The toolkit library includes the STEPfile class which implements the read and write operations to STEP physical files. By deriving an instance from this class, the corresponding InstanceManager and STEPfile can be linked together and file I/O can be implemented. At the code level the read and write operations are implemented by a single call to a member function of the STEPfile class. The toolkit has also routines to check the consistency and validity of the physical file during I/O operations. 6.1 Conversions from GEANT into the Class Library GEANT manages information via the ZEBRA memory management package. In GEANT 3.20 the geometric data is placed into two data structures: 1. shapes (SDL data structure); 2. volumes and their positioning information (JVOLUM data structure). SDL data consist of strings which are the arguments passed to shape creation subroutines. The strings are evaluated only when a corresponding call to volume creation routines is performed. Thus, the conversions of the GEANT geometric data must start from the JVOLUM data. When a volume is encountered, the corresponding shape (SDL data) is evaluated before creating the volume in the class library. The volume topology of GEANT detector models is determined by the mother-daughter relationships. A daughter volume is always placed inside a mother volume and they have links to each other. GEANT provides library routines to retrieve and store information in ZEBRA which is written in FORTRAN. Thus, the linking of C++ and FORTRAN had to be accomplished. 6.2 Conversions from the Class Library into GEANT GEANT detector models are created in three consecutive steps: 1. generating SDL calls (Shape Definition Language); 2. creating volumes by giving parameters to shapes; 3. positioning volumes. SDL is a language in GEANT 3.20 whereby new shapes are defined by the means of CSG. An example structure of a block (solid of extrusion) created by GEANT 3.20 is represented in the instance diagram shown in Figure 6. An SDL call for each entity can then be created from the SDL data of corresponding shape by using a postorder-tree traversal algorithm. The postorder-tree traversal algorithm is used since a shape is created starting from simple entities. This algorithm is easily implemented by using a virtual function [7] which always calls its components before creating its own SDL call. This function is then overridden in each class. A volume for GEANT is created using GEANT volume creation routines which assume that the corresponding shape has already been created. The dimensions and material are supplied as parameters. A special case called a divided volume can be created from an Applying STEP Principles to Product Models in High Energy Physics Research 9 of 14

14 Implementation of the Conversions existing volume by a call to division subroutines which divide the volume along a given axis into a specified number of slices. The volumes (excluding the global mother volume) are positioned inside a mother volume by specifying the mother volume, the coordinates within the mother volume and optionally a rotation matrix as parameters. A rotation matrix is used to rotate the volume in space. The volumes have a mother-daughter relationship. For example, when a block contains two other blocks and one of these two blocks contains two identical cylinders, the relations are as shown in the instance diagram in Figure 7. The volume My_cylinder is positioned twice inside My_block_2. Each item of positioning information contains links to mother and daughter volumes. Volumes have links to their daughters positioning data and to their own positioning data. Position and volume creation calls are performed in the following order: first creating the volume, then defining the possible rotation matrix and finally positioning the volume. (shape) My_shape_block (body_of_extrusion) My_body_of_extrusion (line_of_entity) My_guide_line (face_of_closed_line) My_face (point) P1 (point) P2 (line_of_entity) My_close_line (point) (point) (point) (point) P3 P4 P5 P6 Figure 6 An example of constructing a block in GEANT of 14 Applying STEP Principles to Product Models in High Energy Physics Research

15 Possible Applications for Detector Models (volume_normal) My_global_block (daughter) x 1,y 1,z 1 (daughter) x 2,y 2,z 2 (volume_normal) My_block_1 ( volume_normal) My_block_2 (daughter) x 3,y 3,z 3 (daughter) x 4,y 4,z 4 (volume_normal) My_cylinder Figure 7 The relationships between GEANT volumes 7.0 Possible Applications for Detector Models The program provides a framework to implement different applications. The program itself is capable to transfer detector models via STEP physical files which are written according GEANT schema. Different applications in order to manipulate or use GEANT detector models might be implemented within the program. For example, a detector model might be created from scratch and transferred to GEANT. Detector models might also be changed or they can be listed and checked. This kind of application could be easily implemented within the program. An application where graphical navigation through a detector model is possible could be implemented as well. Some existing STEP toolkits provide already these kinds of functions [14]. It is also possible to use the program for a geometry engine. A geometric modeler can make use of the instance handling routines, data structure and file I/O. The program can be used for implementing an interface between GEANT and CAD systems. This work is already under development at CERN. The interface application, Applying STEP Principles to Product Models in High Energy Physics Research 11 of 14

16 Conclusions called CADGE [15], will convert detector models between GEANT and CAD systems using STEP physical file as an exchange format. The conversions will be performed between GEANT and STEP Part 42 [16]. 8.0 Conclusions The design and implementation of a program where STEP principles were applied for detector models used by GEANT detector simulation program have been described. Possible applications which can profit from the program where discussed briefly. The program is linked with GEANT 3.16 since the version 3.20 is still under development. However, the both class libraries have been implemented. The conversions between GEANT and the class library are implemented for version 3.16 and only partly for version GEANT 3.16 has 16 basic volume primitives (i.e. shapes) to describe detector models. The current version of the program runs on SunOS and is compiled with g++ v The implementation of the program was a part of the GEANT-CAD interface project. The program serves as a basis for the project. The interface is still under development and the prototype version is expected to be ready in the summer The work on GEANT is specific to the High Energy Physics community, but the problem of the transfer of large engineering products from one CAD package to another is general and it is receiving a great deal of attention in various standards committees. The exchange format to be used, STEP, is now an ISO standard. The GEANT-CAD interface project will result in a real application whose target is the integrated management of data concerning the detectors throughout their lifetime. Nevertheless the project will give experience in the transfer of information via STEP in a very demanding application domain. At a moment where use of computer-based tools in the design and simulation of complex systems in industry is expanding, smooth exchange of complex product data in a heterogeneous environment is of ever-increasing importance. 9.0 Acknowledgments We are grateful to our colleagues at European Laboratory for Particle Research (CERN) for their help. In particular we would like to thank Federico Carminati and Mik Ferran. We are also grateful to the staff of US National Institute of Standards and Technology (NIST) and many others for their help in this project. Financial support is acknowledged from the Finnish Ministry of Trade and Education, Institute of Particle Physics Technology (HTI) in Espoo, Finland and from the European Laboratory for Particle Physics (CERN) in Geneva, Switzerland. 12 of 14 Applying STEP Principles to Product Models in High Energy Physics Research

17 References 10.0 References [1] International Organization for Standardization: ISO Industrial Automation Systems and Integration - Product Data Representation and Exchange - Overview and Fundamental Principles (ISO TC 184/SC4, 1992) [2] Bradford M. Smith: The STEP Project (ISO bulletin, June 1992) [3] International Organization for Standardization: ISO Industrial Automation Systems and Integration - Product Data Representation and Exchange - Clear Text Encoding of the Exchange Structure (ISO TC 184/SC4, 1992) [4] International Organization for Standardization: ISO Industrial Automation Systems and Integration - Product Data Representation and Exchange - Description Methods: The EXPRESS Language Reference Manual (ISO TC 184/SC4, 1992) [5] R. Brun and F. Carminati: GEANT Detector Description and Simulation Tool (CERN Program Library, W5013, 1993) [6] J. Rumbaugh et. al.: Object-Oriented Modeling and Design (Prentice-Hall, Inc., 1991) [7] K. Weiskamp and B. Flaming: The Complete C++ Primer (Academic Press, Inc., 1992) [8] K.C. Morris, D. Sauder, S. Ressler: Validation Testing System: Reusable Software Component Design (National Institute of Standards and Technology, Gaithersburg, MD, NISTIR 4937, 1992) [9] J. Vuoskoski: The New Geometrical Modeller of GEANT 3.20 (1993, unpublished) [10] M. Mäntylä: An Introduction to Solid Modeling (Computer Science Press, 1988) [11] R. Brun, M. Goossens and J. Zoll: ZEBRA - Data Structure Management System (CERN Program Library, Q100, 1991) [12] K. Seetharaman, C. F. Rei, B. R. Montague: A C++ Binding for OSF/Motif (Univ. of Lowell, 1990) [13] Clark, S.N., Libes, D.: Fed-X: The NIST Express Translator (National Institute of Standards and Technology, Gaithersburg, MD, NISTIR 4822, 1992) [14] Peter R. Wilson: Processing Tools for EXPRESS (Rensselaer Polytechnic Institute, CII 7015, 1992) [15] J. Vuoskoski: CADGE - A Proposal for a General CAD-GEANT Interface Application (Helsinki University of Technology, Report TKK-F-A715, 1993) [16] International Organization for Standardization: ISO Industrial Automation Applying STEP Principles to Product Models in High Energy Physics Research 13 of 14

18 References Systems and Integration - Product Data Representation and Exchange - Geometric and Topological Representation (ISO TC 184/SC4, 1992) 14 of 14 Applying STEP Principles to Product Models in High Energy Physics Research

REPORT SERIES HU - SEFT RD U3. The CADIN T Interface in GEANT. N. Hsbimyr, J. Vuoskoski. CERN. Geneva. Switzerland ISSN

REPORT SERIES HU - SEFT RD U3. The CADIN T Interface in GEANT. N. Hsbimyr, J. Vuoskoski. CERN. Geneva. Switzerland ISSN Ln U RESEARCH INSTITUTE FOR HIGH ENERGY PHYSICS REPORT SERIES HU - SEFT RD 1994 - U3 The CADIN T Interface in GEANT N. Hsbimyr, J. Vuoskoski CERN. Geneva. Switzerland \. x'.. KL (3 ISSN 0788-3587 UNIVERSITY

More information

Introduction to Geant4

Introduction to Geant4 Introduction to Geant4 Release 10.4 Geant4 Collaboration Rev1.0: Dec 8th, 2017 CONTENTS: 1 Geant4 Scope of Application 3 2 History of Geant4 5 3 Overview of Geant4 Functionality 7 4 Geant4 User Support

More information

A Geometrical Modeller for HEP

A Geometrical Modeller for HEP A Geometrical Modeller for HEP R. Brun, A. Gheata CERN, CH 1211, Geneva 23, Switzerland M. Gheata ISS, RO 76900, Bucharest MG23, Romania For ALICE off-line collaboration Geometrical modelling generally

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

Using STEP in exchange of digital product information.

Using STEP in exchange of digital product information. Using STEP in exchange of digital product information. Authors Department of Electro-Technology Faculty of Electrical Engineering Czech Technical University in Prague Technická 2, 166 27 PRAHA 6, Dejvice

More information

Generalized Document Data Model for Integrating Autonomous Applications

Generalized Document Data Model for Integrating Autonomous Applications 6 th International Conference on Applied Informatics Eger, Hungary, January 27 31, 2004. Generalized Document Data Model for Integrating Autonomous Applications Zsolt Hernáth, Zoltán Vincellér Abstract

More information

TGeoCad: an Interface between ROOT and CAD Systems

TGeoCad: an Interface between ROOT and CAD Systems TGeoCad: an Interface between ROOT and CAD Systems C Luzzi 1 2 and F Carminati 2 1 University of Ferrara, Via Giuseppe Saragat, 1, 44020 FE, Italy 2 CERN, 1211 Geneva 23, Switzerland E-mail: cluzzi@cern.ch

More information

Fundamentals of STEP Implementation

Fundamentals of STEP Implementation Fundamentals of STEP Implementation David Loffredo loffredo@steptools.com STEP Tools, Inc., Rensselaer Technology Park, Troy, New York 12180 A) Introduction The STEP standard documents contain such a large

More information

Short Notes of CS201

Short Notes of CS201 #includes: Short Notes of CS201 The #include directive instructs the preprocessor to read and include a file into a source code file. The file name is typically enclosed with < and > if the file is a system

More information

CS201 - Introduction to Programming Glossary By

CS201 - Introduction to Programming Glossary By CS201 - Introduction to Programming Glossary By #include : The #include directive instructs the preprocessor to read and include a file into a source code file. The file name is typically enclosed with

More information

Solids as point set. Solid models. Solid representation schemes (cont d) Solid representation schemes. Solid representation schemes (cont d)

Solids as point set. Solid models. Solid representation schemes (cont d) Solid representation schemes. Solid representation schemes (cont d) Solid models Solid models developed to address limitations of wireframe modeling. Attempt was to create systems which create only complete representations. Modelers would support direct creation of 3D

More information

UNIT - V DHARANI KUMAR.S/AP/MECH

UNIT - V DHARANI KUMAR.S/AP/MECH UNIT - V DHARANI KUMAR.S/AP/MECH CAD Standards are a set of guidelines for the way Computer-aided design (CAD) drawings should appear, to improve productivity and interchange of CAD documents between different

More information

Implementing manufacturing feature based design in CAD/CAM

Implementing manufacturing feature based design in CAD/CAM Implementing manufacturing feature based design in CAD/CAM T. Szecsi School of Mechanical and Manufacturing Engineering, Materials Processing Research Centre, Dublin City University, Dublin 9, Ireland

More information

An Introduction to Subtyping

An Introduction to Subtyping An Introduction to Subtyping Type systems are to me the most interesting aspect of modern programming languages. Subtyping is an important notion that is helpful for describing and reasoning about type

More information

Data structures for electronic product catalogues for building services. Part 2: Geometry

Data structures for electronic product catalogues for building services. Part 2: Geometry INTERNATIONAL STANDARD ISO 16757-2 First edition 2016-11-15 Data structures for electronic product catalogues for building services Part 2: Geometry Structures de données pour catalogues électroniques

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

Designing Procedural 4GL Applications through UML Modeling

Designing Procedural 4GL Applications through UML Modeling Designing Procedural 4GL Applications through UML Modeling Shiri Davidson Mila Keren Sara Porat Gabi Zodik IBM Haifa Research Lab Matam - Advanced Technology Center Haifa 31905, Israel (shiri, keren, porat,

More information

LABORATORY 1 REVISION

LABORATORY 1 REVISION UTCN Computer Science Department Software Design 2012/2013 LABORATORY 1 REVISION ================================================================== I. UML Revision This section focuses on reviewing the

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

ISO INTERNATIONAL STANDARD. Language resource management Feature structures Part 1: Feature structure representation

ISO INTERNATIONAL STANDARD. Language resource management Feature structures Part 1: Feature structure representation INTERNATIONAL STANDARD ISO 24610-1 FIrst edition 2006-04-15 Language resource management Feature structures Part 1: Feature structure representation Gestion des ressources linguistiques Structures de traits

More information

Overview of Product Information Interoperability Using STEP (ISO 10303)

Overview of Product Information Interoperability Using STEP (ISO 10303) Overview of Product Information Interoperability Using STEP (ISO 10303) Diego Tamburini 1997 For Georgia Tech ME6754 et al. 5/98 Updates - M. C. Ramesh 11/00 Updates - R. Peak 1 Product Information Interoperability

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

STEP-based feature modeller for computer-aided process planning

STEP-based feature modeller for computer-aided process planning International Journal of Production Research, Vol. 43, No. 15, 1 August 2005, 3087 3101 STEP-based feature modeller for computer-aided process planning S. M. AMAITIK* and S. E. KILIC Department of Mechanical

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

Introduction Primitive Data Types Character String Types User-Defined Ordinal Types Array Types. Record Types. Pointer and Reference Types

Introduction Primitive Data Types Character String Types User-Defined Ordinal Types Array Types. Record Types. Pointer and Reference Types Chapter 6 Topics WEEK E FOUR Data Types Introduction Primitive Data Types Character String Types User-Defined Ordinal Types Array Types Associative Arrays Record Types Union Types Pointer and Reference

More information

Solid Modelling. Graphics Systems / Computer Graphics and Interfaces COLLEGE OF ENGINEERING UNIVERSITY OF PORTO

Solid Modelling. Graphics Systems / Computer Graphics and Interfaces COLLEGE OF ENGINEERING UNIVERSITY OF PORTO Solid Modelling Graphics Systems / Computer Graphics and Interfaces 1 Solid Modelling In 2D, one set 2D line segments or curves does not necessarily form a closed area. In 3D, a collection of surfaces

More information

TOWARDS STEP-BASED CAD/CAPP/CAM SYSTEMS

TOWARDS STEP-BASED CAD/CAPP/CAM SYSTEMS 6th International DAAAM Baltic Conference INDUSTRIAL ENGINEERING 24-26 April 2008, Tallinn, Estonia TOWARDS STEP-BASED CAD/CAPP/CAM SYSTEMS Amaitik, S.M. Abstract: This paper presents an overview of standard

More information

SOME 024: Computer Aided Design. E. Rozos

SOME 024: Computer Aided Design. E. Rozos SOME 024: Computer Aided Design E. Rozos Introduction to CAD theory part 2 Lesson structure Why Solid modelling Solid modelling methods Representation based Manufacturing based Solid modelling storage

More information

GUIMesh: a tool to import STEP geometries into Geant4 via GDML

GUIMesh: a tool to import STEP geometries into Geant4 via GDML GUIMesh: a tool to import STEP geometries into Geant4 via GDML Abstract M. Pinto a *, P. Gonçalves a a LIP-Lisboa, Av. Gama Pinto, n.2, piso 3, 1649-003 Lisboa, Portugal Detailed radiation analysis of

More information

B.Sc. Final B.SC. PART-III PAPER I COMPUTER ORGANIZATION II

B.Sc. Final B.SC. PART-III PAPER I COMPUTER ORGANIZATION II TEACHING & EXAMINATION SCHEME For the Examination - 2015 COMPUTER SCIENCE B.Sc. Final THEORY Pd/W Exam. Max. (45mts.) Hours Marks 150 CS.301 Paper I Computer Organisation II 2 3 50 CS.302 Paper II Programming

More information

Fundamentals of Programming Languages. Data Types Lecture 07 sl. dr. ing. Ciprian-Bogdan Chirila

Fundamentals of Programming Languages. Data Types Lecture 07 sl. dr. ing. Ciprian-Bogdan Chirila Fundamentals of Programming Languages Data Types Lecture 07 sl. dr. ing. Ciprian-Bogdan Chirila Predefined types Programmer defined types Scalar types Structured data types Cartesian product Finite projection

More information

Integration of Parametric Geometry into IFC-Bridge

Integration of Parametric Geometry into IFC-Bridge Integration of Parametric Geometry into IFC-Bridge Yang Ji 1, Jakob Beetz 2, Nicholas Nisbet 3, Peter Bonsma 4, Casimir Katz 5, André Borrmann 1 1 Computational Modelling and Simulation Group, Technische

More information

Standard Component Library Design and Implementation for Plastic Injection Mold Design with a CAD Tool

Standard Component Library Design and Implementation for Plastic Injection Mold Design with a CAD Tool Standard Component Library Design and Implementation for Plastic Injection Mold Design with a CAD Tool Y. S. Ma* G. A. Britton, S. B. Tor, E. Gunawan C. H. Lee School of Mechanical and Production Engineering,

More information

CAD/CAPP Integration using Feature Ontology

CAD/CAPP Integration using Feature Ontology CAD/CAPP Integration using Feature Ontology Christel Dartigues *, Parisa Ghodous **, Michael Gruninger ***, Denis Pallez**, Ram Sriram*** *I3S UNSA-CNRS - 2000, route des lucioles, Les Algorithmes - bât.

More information

What are the characteristics of Object Oriented programming language?

What are the characteristics of Object Oriented programming language? What are the various elements of OOP? Following are the various elements of OOP:- Class:- A class is a collection of data and the various operations that can be performed on that data. Object- This is

More information

Weiss Chapter 1 terminology (parenthesized numbers are page numbers)

Weiss Chapter 1 terminology (parenthesized numbers are page numbers) Weiss Chapter 1 terminology (parenthesized numbers are page numbers) assignment operators In Java, used to alter the value of a variable. These operators include =, +=, -=, *=, and /=. (9) autoincrement

More information

Object oriented data analysis in ALEPH

Object oriented data analysis in ALEPH EPS-HEP99 Abstract # 5-707 Parallel sessions: 6 Plenary sessions: 5 ALEPH 99-056 CONF 99-03 June 30, 999 PRELIMINARY OPEN-99-250 30/06/99 Object oriented data analysis in ALEPH The ALEPH Collaboration

More information

Introduction to Programming Using Java (98-388)

Introduction to Programming Using Java (98-388) Introduction to Programming Using Java (98-388) Understand Java fundamentals Describe the use of main in a Java application Signature of main, why it is static; how to consume an instance of your own class;

More information

Three-Dimensional Reconstruction from Projections Based On Incidence Matrices of Patterns

Three-Dimensional Reconstruction from Projections Based On Incidence Matrices of Patterns Available online at www.sciencedirect.com ScienceDirect AASRI Procedia 9 (2014 ) 72 77 2014 AASRI Conference on Circuit and Signal Processing (CSP 2014) Three-Dimensional Reconstruction from Projections

More information

CSG obj. oper3. obj1 obj2 obj3. obj5. obj4

CSG obj. oper3. obj1 obj2 obj3. obj5. obj4 Solid Modeling Solid: Boundary + Interior Volume occupied by geometry Solid representation schemes Constructive Solid Geometry (CSG) Boundary representations (B-reps) Space-partition representations Operations

More information

Fundamentals of Programming Languages

Fundamentals of Programming Languages Fundamentals of Programming Languages 1. DEFINITIONS... 2 2. BUILT-IN TYPES AND PRIMITIVE TYPES... 3 TYPE COMPATIBILITY... 9 GENERIC TYPES... 14 MONOMORPHIC VERSUS POLYMORPHIC... 16 TYPE IMPLEMENTATION

More information

GEOMETRIC OBJECTS AND TRANSFORMATIONS I

GEOMETRIC OBJECTS AND TRANSFORMATIONS I Computer UNIT Graphics - 4 and Visualization 6 Hrs GEOMETRIC OBJECTS AND TRANSFORMATIONS I Scalars Points, and vectors Three-dimensional primitives Coordinate systems and frames Modelling a colored cube

More information

IJCSI International Journal of Computer Science Issues, Vol. 9, Issue 5, No 2, September 2012 ISSN (Online):

IJCSI International Journal of Computer Science Issues, Vol. 9, Issue 5, No 2, September 2012 ISSN (Online): www.ijcsi.org 126 Automatic Part Primitive Feature Identification Based on Faceted Models Gandjar Kiswanto 1 and Muizuddin Azka 2 1 Department of Mechanical Engineering, Universitas Indonesia Depok, 16424,

More information

INSTITUTE OF AERONAUTICAL ENGINEERING

INSTITUTE OF AERONAUTICAL ENGINEERING INSTITUTE OF AERONAUTICAL ENGINEERING (Autonomous) Dundigal, Hyderabad -500 043 INFORMATION TECHNOLOGY TUTORIAL QUESTION BANK Name : PRINCIPLES OF PROGRAMMING LANGUAGES Code : A40511 Class : II B. Tech

More information

Virtual Plant for Control Program Verification

Virtual Plant for Control Program Verification 2011 International Conference on Circuits, System and Simulation IPCSIT vol.7 (2011) (2011) IACSIT Press, Singapore Virtual Plant for Control Program Verification Sangchul Park 1 + and June S. Jang 2 1

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

Class diagrams. Modeling with UML Chapter 2, part 2. Class Diagrams: details. Class diagram for a simple watch

Class diagrams. Modeling with UML Chapter 2, part 2. Class Diagrams: details. Class diagram for a simple watch Class diagrams Modeling with UML Chapter 2, part 2 CS 4354 Summer II 2015 Jill Seaman Used to describe the internal structure of the system. Also used to describe the application domain. They describe

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

FRAMEWORK OF THE EXTENDED PROCESS TO PRODUCT MODELING (XPPM) FOR EFFICIENT IDM DEVELOPMENT

FRAMEWORK OF THE EXTENDED PROCESS TO PRODUCT MODELING (XPPM) FOR EFFICIENT IDM DEVELOPMENT FRAMEWORK OF THE EXTENDED PROCESS TO PRODUCT MODELING (XPPM) FOR EFFICIENT IDM DEVELOPMENT Ghang Lee, Ph.D. Associate Professor, glee@yonsei.ac.kr, Corresponding Author Sungil Ham, Ph.D. / Postdoctoral

More information

CS6301 PROGRAMMING AND DATA STRUCTURES II QUESTION BANK UNIT-I 2-marks ) Give some characteristics of procedure-oriented language. Emphasis is on doing things (algorithms). Larger programs are divided

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

Chapter 6 Introduction to Defining Classes

Chapter 6 Introduction to Defining Classes Introduction to Defining Classes Fundamentals of Java: AP Computer Science Essentials, 4th Edition 1 Objectives Design and implement a simple class from user requirements. Organize a program in terms of

More information

3D Modeling: Solid Models

3D Modeling: Solid Models CS 430/536 Computer Graphics I 3D Modeling: Solid Models Week 9, Lecture 18 David Breen, William Regli and Maxim Peysakhov Geometric and Intelligent Computing Laboratory Department of Computer Science

More information

Software Paradigms (Lesson 3) Object-Oriented Paradigm (2)

Software Paradigms (Lesson 3) Object-Oriented Paradigm (2) Software Paradigms (Lesson 3) Object-Oriented Paradigm (2) Table of Contents 1 Reusing Classes... 2 1.1 Composition... 2 1.2 Inheritance... 4 1.2.1 Extending Classes... 5 1.2.2 Method Overriding... 7 1.2.3

More information

ETSI ETR 346 TECHNICAL December 1996 REPORT

ETSI ETR 346 TECHNICAL December 1996 REPORT ETSI ETR 346 TECHNICAL December 1996 REPORT Source: ETSI TC-RES Reference: DTR/RES-06013-1 ICS: 33.020 Key words: Testing, TTCN, abstract test suite, validation Radio Equipment and Systems (RES); Trans-European

More information

Python Scripting for Computational Science

Python Scripting for Computational Science Hans Petter Langtangen Python Scripting for Computational Science Third Edition With 62 Figures 43 Springer Table of Contents 1 Introduction... 1 1.1 Scripting versus Traditional Programming... 1 1.1.1

More information

Solid Modeling Lecture Series. Prof. Gary Wang Department of Mechanical and Manufacturing Engineering The University of Manitoba

Solid Modeling Lecture Series. Prof. Gary Wang Department of Mechanical and Manufacturing Engineering The University of Manitoba Solid Modeling 25.353 Lecture Series Prof. Gary Wang Department of Mechanical and Manufacturing Engineering The University of Manitoba Information complete, unambiguous, accurate solid model Solid Modeling

More information

Pro/ENGINEER Concepts

Pro/ENGINEER Concepts 1 Pro/ENGINEER Concepts Becoming a Pro/ENGINEER user means learning to think in terms of how the components of a design interact, and to think ahead to how those interactions may change. At the simplest

More information

CPSC 3740 Programming Languages University of Lethbridge. Data Types

CPSC 3740 Programming Languages University of Lethbridge. Data Types Data Types A data type defines a collection of data values and a set of predefined operations on those values Some languages allow user to define additional types Useful for error detection through type

More information

Java How to Program, 10/e. Copyright by Pearson Education, Inc. All Rights Reserved.

Java How to Program, 10/e. Copyright by Pearson Education, Inc. All Rights Reserved. Java How to Program, 10/e Education, Inc. All Rights Reserved. Each class you create becomes a new type that can be used to declare variables and create objects. You can declare new classes as needed;

More information

1. Write two major differences between Object-oriented programming and procedural programming?

1. Write two major differences between Object-oriented programming and procedural programming? 1. Write two major differences between Object-oriented programming and procedural programming? A procedural program is written as a list of instructions, telling the computer, step-by-step, what to do:

More information

On 17 June 2006, the editor provided the following list via an to the convener:

On 17 June 2006, the editor provided the following list via an  to the convener: ISO/IEC JTC 1/SC 22/WG 9 N 471 List of AIs Approved per Resolution 50-8 James W. Moore, Convener 23 June 2006 Resolution 50-8 reads as follows: "Noting WG9's approval of the amendment to ISO/IEC 8652 and

More information

Java- and CORBA-Based Network Management. Mika Leppinen, Pekka Pulkkinen, and Aapo Rautiainen

Java- and CORBA-Based Network Management. Mika Leppinen, Pekka Pulkkinen, and Aapo Rautiainen Project Reports Java- and CORBA-Based Network Management Mika Leppinen, Pekka Pulkkinen, and Aapo Rautiainen Nokia Research Center Nokia developed the Distributed Computing Platform prototype to support

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

This document is a preview generated by EVS

This document is a preview generated by EVS INTERNATIONAL STANDARD ISO 10161-1 Third edition 2014-11-01 Information and documentation Open Systems Interconnection Interlibrary Loan Application Protocol Specification Part 1: Protocol specification

More information

Distributed Engineering Data Management (EDM) using HyperText

Distributed Engineering Data Management (EDM) using HyperText Distributed Engineering Data Management (EDM) using HyperText Nils Høimyr CERN/CN Computer Support for Engineering (CE) group Juha Lappalainen CERN/PPE, Institute of Particle Physics Technology, Helsinki

More information

Geographic Information Fundamentals Overview

Geographic Information Fundamentals Overview CEN TC 287 Date: 1998-07 CR 287002:1998 CEN TC 287 Secretariat: AFNOR Geographic Information Fundamentals Overview Geoinformation Übersicht Information géographique Vue d'ensemble ICS: Descriptors: Document

More information

Introduction to Computer Graphics

Introduction to Computer Graphics Introduction to 1.1 What is computer graphics? it would be difficult to overstate the importance of computer and communication technologies in our lives. Activities as wide-ranging as film making, publishing,

More information

White Paper 3D Geometry Visualization Capability for MCNP

White Paper 3D Geometry Visualization Capability for MCNP White Paper 3D Geometry Visualization Capability for MCNP J. B. Spencer, J. A. Kulesza, A. Sood Los Alamos National Laboratory Monte Carlo Methods, Codes, and Applications Group June 12, 2017 1 Introduction

More information

LAB # 2 3D Modeling, Properties Commands & Attributes

LAB # 2 3D Modeling, Properties Commands & Attributes COMSATS Institute of Information Technology Electrical Engineering Department (Islamabad Campus) LAB # 2 3D Modeling, Properties Commands & Attributes Designed by Syed Muzahir Abbas 1 1. Overview of the

More information

Unit 7. Functions. Need of User Defined Functions

Unit 7. Functions. Need of User Defined Functions Unit 7 Functions Functions are the building blocks where every program activity occurs. They are self contained program segments that carry out some specific, well defined task. Every C program must have

More information

2. The object-oriented paradigm

2. The object-oriented paradigm 2. The object-oriented paradigm Plan for this section: Look at things we have to be able to do with a programming language Look at Java and how it is done there Note: I will make a lot of use of the fact

More information

New software library of geometrical primitives for modeling of solids used in Monte Carlo detector simulations

New software library of geometrical primitives for modeling of solids used in Monte Carlo detector simulations Journal of Physics: Conference Series New software library of geometrical primitives for modeling of solids used in Monte Carlo detector simulations To cite this article: Marek Gayer et al 2012 J. Phys.:

More information

SOFTWARE ENGINEERING. Software Specification Software Design and Implementation Software Validation. Peter Mileff PhD

SOFTWARE ENGINEERING. Software Specification Software Design and Implementation Software Validation. Peter Mileff PhD Peter Mileff PhD SOFTWARE ENGINEERING Software Specification Software Design and Implementation Software Validation University of Miskolc Department of Information Technology Software Specification...

More information

Introduction to Solid Modeling

Introduction to Solid Modeling Introduction to Solid Modeling Hongxin Zhang and Jieqing Feng 2007-01-15 State Key Lab of CAD&CG Zhejiang University Contents Solid Representations: An Introduction Wireframe Models Boundary Representations

More information

Introduction to ANSYS DesignModeler

Introduction to ANSYS DesignModeler Lecture 5 Modeling 14. 5 Release Introduction to ANSYS DesignModeler 2012 ANSYS, Inc. November 20, 2012 1 Release 14.5 Preprocessing Workflow Geometry Creation OR Geometry Import Geometry Operations Meshing

More information

G Programming Languages - Fall 2012

G Programming Languages - Fall 2012 G22.2110-003 Programming Languages - Fall 2012 Lecture 3 Thomas Wies New York University Review Last week Names and Bindings Lifetimes and Allocation Garbage Collection Scope Outline Control Flow Sequencing

More information

INTEGRATED BUILDING SIMULATION TOOL - RIUSKA

INTEGRATED BUILDING SIMULATION TOOL - RIUSKA INTEGRATED BUILDING SIMULATION TOOL - Jokela M, Keinänen A, Lahtela H, Lassila K Insinööritoimisto Olof Granlund Oy BOX 59, 00701 Helsinki, Finland ABSTRACT A new integrated simulation system for the building

More information

Class diagrams. Modeling with UML Chapter 2, part 2. Class Diagrams: details. Class diagram for a simple watch

Class diagrams. Modeling with UML Chapter 2, part 2. Class Diagrams: details. Class diagram for a simple watch Class diagrams Modeling with UML Chapter 2, part 2 CS 4354 Summer II 2014 Jill Seaman Used to describe the internal structure of the system. Also used to describe the application domain. They describe

More information

Stylus Studio Case Study: FIXML Working with Complex Message Sets Defined Using XML Schema

Stylus Studio Case Study: FIXML Working with Complex Message Sets Defined Using XML Schema Stylus Studio Case Study: FIXML Working with Complex Message Sets Defined Using XML Schema Introduction The advanced XML Schema handling and presentation capabilities of Stylus Studio have valuable implications

More information

Bellevue Community College Summer 2009 Interior Design 194 SPECIAL TOPIC: SKETCHUP

Bellevue Community College Summer 2009 Interior Design 194 SPECIAL TOPIC: SKETCHUP Class Session: TTh 6:00 pm 8:00 pm Credit Hours: Two (2) Location: A262 Door Code: 349499 (through A254) Instructor: Greg Wharton Office: by appointment Hours: by appointment or email email: gwharton@gmail.com

More information

Table 2 1. F90/95 Data Types and Pointer Attributes. Data Option. (Default Precision) Selected-Int-Kind

Table 2 1. F90/95 Data Types and Pointer Attributes. Data Option. (Default Precision) Selected-Int-Kind Chapter 2 Data Types Any computer program is going to have to operate on the available data. The valid data types that are available will vary from one language to another. Here we will examine the intrinsic

More information

Experiences with Open Inventor. 1 Introduction. 2 HEP Visualization in an Object-Oriented Environment

Experiences with Open Inventor. 1 Introduction. 2 HEP Visualization in an Object-Oriented Environment Experiences with Open Inventor Joseph Boudreau University of Pittsburgh, Pittsburgh, PA, 15260 USA Abstract The Open Inventor(OI) library is a toolkit for constructing, rendering and interacting with a

More information

Chapter 1: Object-Oriented Programming Using C++

Chapter 1: Object-Oriented Programming Using C++ Chapter 1: Object-Oriented Programming Using C++ Objectives Looking ahead in this chapter, we ll consider: Abstract Data Types Encapsulation Inheritance Pointers Polymorphism Data Structures and Algorithms

More information

Physically-Based Modeling and Animation. University of Missouri at Columbia

Physically-Based Modeling and Animation. University of Missouri at Columbia Overview of Geometric Modeling Overview 3D Shape Primitives: Points Vertices. Curves Lines, polylines, curves. Surfaces Triangle meshes, splines, subdivision surfaces, implicit surfaces, particles. Solids

More information

Python Scripting for Computational Science

Python Scripting for Computational Science Hans Petter Langtangen Python Scripting for Computational Science Third Edition With 62 Figures Sprin ger Table of Contents 1 Introduction 1 1.1 Scripting versus Traditional Programming 1 1.1.1 Why Scripting

More information

A System for Managing the CLEO III Detector Geometry

A System for Managing the CLEO III Detector Geometry A System for Managing the CLEO III Detector Geometry Christopher D. Jones University of Florida Abstract A description of the detector's geometry is needed for several software tasks, e.g. Monte Carlo

More information

Programming Languages Third Edition. Chapter 7 Basic Semantics

Programming Languages Third Edition. Chapter 7 Basic Semantics Programming Languages Third Edition Chapter 7 Basic Semantics Objectives Understand attributes, binding, and semantic functions Understand declarations, blocks, and scope Learn how to construct a symbol

More information

EDMS. Architecture and Concepts

EDMS. Architecture and Concepts EDMS Engineering Data Management System Architecture and Concepts Hannu Peltonen Helsinki University of Technology Department of Computer Science Laboratory of Information Processing Science Abstract

More information

The ITAPS Mesh Interface

The ITAPS Mesh Interface The ITAPS Mesh Interface Carl Ollivier-Gooch Advanced Numerical Simulation Laboratory, University of British Columbia Needs and Challenges for Unstructured Mesh Usage Application PDE Discretization Mesh

More information

CS112 Lecture: Primitive Types, Operators, Strings

CS112 Lecture: Primitive Types, Operators, Strings CS112 Lecture: Primitive Types, Operators, Strings Last revised 1/24/06 Objectives: 1. To explain the fundamental distinction between primitive types and reference types, and to introduce the Java primitive

More information

Introduction. Primitive Data Types: Integer. Primitive Data Types. ICOM 4036 Programming Languages

Introduction. Primitive Data Types: Integer. Primitive Data Types. ICOM 4036 Programming Languages ICOM 4036 Programming Languages Primitive Data Types Character String Types User-Defined Ordinal Types Array Types Associative Arrays Record Types Union Types Pointer and Reference Types Data Types This

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

2D1358 Object Oriented Program Construction in C++ Exercises & Labs. Course Registration / Accounts. Course Literature

2D1358 Object Oriented Program Construction in C++ Exercises & Labs. Course Registration / Accounts. Course Literature 2D1358 Object Oriented Program Construction in C++ Exercises & Labs Lecturer: Frank Hoffmann hoffmann@nada.kth.se Assistents: Danica Kragic danik @nada.kth.se Anders Orebäck oreback @nada.kth.se Peter

More information

Designing Procedural 4GL Applications through UML Modeling

Designing Procedural 4GL Applications through UML Modeling Designing Procedural 4GL Applications through UML Modeling Shiri Davidson, Mila Keren, Sara Porat, Gabi Zodik IBM Haifa Research Lab Matam - Advanced Technology Center Haifa 31905, Israel {shiri, keren,

More information

Modeling Basics for 3D Printing Using AutoCAD

Modeling Basics for 3D Printing Using AutoCAD Modeling Basics for 3D Printing Using AutoCAD William Work CAD Manager Join us on Twitter: #AU2014 Who am I? Architect CAD Manager I am an architect and CAD manager with a firm of more than three hundred

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

INTERNATIONAL STANDARD

INTERNATIONAL STANDARD INTERNATIONAL STANDARD IEC 61360-2 Edition 2.1 2004-02 Edition 2:2002 consolidated with amendment 1:2003 Standard data element types with associated classification scheme for electric components Part 2:

More information

Computer Aided Design. Solid models and B-REP

Computer Aided Design. Solid models and B-REP Solid models and B-REP 1 Classical modelling problem : the intersection 3 independent representations of the intersection : - a 3D NURBS curve (giving points in the global XYZ coordinate system) - a 2D

More information

«Computer Science» Requirements for applicants by Innopolis University

«Computer Science» Requirements for applicants by Innopolis University «Computer Science» Requirements for applicants by Innopolis University Contents Architecture and Organization... 2 Digital Logic and Digital Systems... 2 Machine Level Representation of Data... 2 Assembly

More information