Geometry and Algorithms for COMPUTER AIDED DESIGN

Geometry and Algorithms for COMPUTER AIDED DESIGN

Geometry and Algorithms for COMPUTER AIDED DESIGN Erich Hartmann Department of Mathematics Darmstadt University of Technology October 2003 2 Contents 1 INTRODUCTION 7 1.1 Methods for DISPLAYING objects . 7 1.2 On the contents . 8 1.3 Software for displaying curves and surfaces . 9 1.4 On literature . 10 2 TOOLS 11 2.1 Structure of a CAD-program . 11 2.1.1 Global constants: The file ”geoconst.pas” . 11 2.1.2 Globale types: The file ”geotype.pas” . 11 2.1.3 Globale variables: The file ”geovar.pas” . 11 2.1.4 Capability of the graphics software . 12 2.2 Functions on IR, operations with vectors . 14 2.2.1 Functions on IR . 14 2.2.2 Operations with vectors . 14 2.3 Routines to Analytic Geometry . 17 2.3.1 Polarangle and quadratic equation . 17 2.3.2 Intersection line–line, circle–line, circle–circle . 17 2.3.3 Equation of a plane . 18 2.3.4 Intersection line–plane . 18 2.3.5 Intersection of three planes . 18 2.3.6 Intersection of two planes . 19 2.3.7 ξ-η–coordinates of a point in a plane . 19 2.3.8 Coordinates with respect of a new 3D-coordinate system . 19 2.4 Numeric: GAUSS-elimination, NEWTON-iteration . 19 3 PARALLEL/CENTRAL–PROJECTION 21 3.1 Orthographic Projection . 21 3.1.1 The projection formulae . 21 3.1.2 Procedures for orthographic projection . 22 3.2 Central projection . 23 3.2.1 The projection formulae . 23 3.2.2 Procedures for central projection . 24 4 CURVES 27 4.1 Planar Curves . 27 4.1.1 Definition and Representations of Planar Curves . 27 4.1.2 Arc length and curvature of a planar curve . 28 4.1.3 Offset Curves . 30 4.1.4 The normalform of a planar curve . 30 3 4.2 Displaying Parametric Curves in IR2 ........................... 32 4.3 Displaying implicit curves . 33 4.3.1 Marching algorithm . 33 4.3.2 Raster algorithm . 35 4.4 Intersection of two planar curves . 37 4.4.1 Intersection of a parametric curve and an implicit curve . 38 4.4.2 Intersection of two implicit curves . 38 4.4.3 Intersection of two parametric curves . 39 4.5 Foot points on planar curves . 39 4.5.1 Foot point on a parametric curve, curve inversion . 39 4.5.2 Foot point on an implicit curve . 40 4.5.3 Stable first order foot point algorithms . 41 4.6 B´ezier–curves . 42 4.7 Applications of the normalform . 43 4.7.1 Offset curves of implicit curves . 44 4.7.2 Bisector curves . 45 4.7.3 Numerical Parameterization of Curves . 46 4.8 Space Curves . 46 5 SURFACES 49 5.1 Definition and Representations of Surfaces . 49 5.2 The First and Second Fundamental Forms of a Surface . 50 5.2.1 The first fundamental form, arc length . 50 5.2.2 The second fundamental form, curvature . 50 5.3 Offset surfaces . 52 5.4 Normalform of a surface . 52 5.4.1 Definition of the normalform . 52 5.4.2 On the first and second derivatives of the normalform of a surface . 53 5.4.3 Cn–contact, Gn–contact . 55 5.4.4 G2–continuity theorems . 56 5.4.5 The curvature of an intersection curve . 57 5.5 Normalform of an implicit surface . 58 5.6 Normalform of a parametric surface . 59 5.7 Foot point on a parametric surface, surface inversion . 60 5.8 Stable first order foot point algorithms for surfaces . 61 5.8.1 Foot point algorithm for parametric surfaces . 61 5.8.2 Foot point algorithm for implicit surfaces . 61 5.9 The normalform of a space curve . 62 5.9.1 Definition of the normalform . 62 5.9.2 Foot point algorithm and evaluation of the normalform of a space curve . 63 5.9.3 Determining foot points on an intersection curve . 64 5.10 Applications of normalforms . 64 5.10.1 Approximation of a set of intersecting surfaces . 64 5.10.2 Approximation of intersecting pipe surfaces . 65 5.10.3 Numerical parametrization of implicit surfaces . 65 6 HIDDENLINE–ALGORITHM FOR NON CONVEX POLYHEDRONS 67 6.1 The Hiddenline-Algorithm . 67 6.2 Auxiliary procedures for the hiddenline algorithm . 71 6.2.1 The procedure aux polyhedron .......................... 71 6.2.2 The procedures aux quadrangle, aux cylinder, aux torus and displaying a parametrized surface . 71 4 6.3 Intersection of faces, intersection of two polyhedrons . 74 6.3.1 Intersection of faces bounded by planar polygons in IR3 . 74 6.3.2 Intersection of two polyhedrons . 76 6.4 IS line–polygonal patch, IS polygon–polyhedron . 78 6.4.1 Intersection of a line segment and a planar polygonal patch . 78 6.4.2 Intersection points of a polygon and a polyhedron . 79 7 TRIANGULATION OF IMPLICIT SURFACES 81 7.1 The triangulation algorithm (marching method) . 81 7.1.1 The idea of the algorithm . 81 7.1.2 The procedure surfacepoint ........................... 83 7.1.3 The data structure . 83 7.1.4 Step S0 . 84 7.1.5 Step S1 . 84 7.1.6 Step S2 . 84 7.1.7 Step S3 . 85 7.2 Examples . 87 7.2.1 Sphere . 87 7.2.2 Cylinder . 88 7.2.3 Torus . 88 7.2.4 Set of two intersecting surfaces . 88 7.2.5 G2-continuous blending of three cylinders . 89 7.3 Sample program: trisample.p .............................. 91 7.4 Ray tracing of triangulated surfaces with POVRAY . 92 8 INTERSECTIONS: CURVE – SURFACE, SURFACE – SURFACE 93 8.1 Intersection Curve – Surface . 93 8.1.1 IS parametric curve – implicit surface . 93 8.1.2 IS implicit curve – implicit surface . 93 8.1.3 IS implicit curve – parametric surface . 94 8.1.4 IS parametric curve – parametric surface . 94 8.2 Intersection surface – surface . 94 8.2.1 IS of two implicit surfaces . 94 8.2.2 IS of an implicit and a parametric surface . 96 8.2.3 IS of two parametric surfaces . ..

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    160 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us