CAD Topology and Geometry Basics
-
Upload
andrey-dankevich -
Category
Education
-
view
2.173 -
download
18
description
Transcript of CAD Topology and Geometry Basics
![Page 1: CAD Topology and Geometry Basics](https://reader033.fdocuments.net/reader033/viewer/2022050706/54b4d8f54a79593d368b46eb/html5/thumbnails/1.jpg)
Topology and Geometry Basics
Andrey Dankevich
June 2010
![Page 2: CAD Topology and Geometry Basics](https://reader033.fdocuments.net/reader033/viewer/2022050706/54b4d8f54a79593d368b46eb/html5/thumbnails/2.jpg)
Agenda
CAGD Topology
CAGD Geometry
Parametric curves and surfaces
Bezier curves, B-Splines, NURBS
![Page 3: CAD Topology and Geometry Basics](https://reader033.fdocuments.net/reader033/viewer/2022050706/54b4d8f54a79593d368b46eb/html5/thumbnails/3.jpg)
Introduction B-Rep is a method for representing shapes using the limits.
B-Rep models are composed of two parts:
Topology describes how elements are bounded and connected.
Geometry describes the shape of each individual element.c
![Page 4: CAD Topology and Geometry Basics](https://reader033.fdocuments.net/reader033/viewer/2022050706/54b4d8f54a79593d368b46eb/html5/thumbnails/4.jpg)
![Page 5: CAD Topology and Geometry Basics](https://reader033.fdocuments.net/reader033/viewer/2022050706/54b4d8f54a79593d368b46eb/html5/thumbnails/5.jpg)
Topology
![Page 6: CAD Topology and Geometry Basics](https://reader033.fdocuments.net/reader033/viewer/2022050706/54b4d8f54a79593d368b46eb/html5/thumbnails/6.jpg)
Topology is a branch of mathematics concerned with spatial properties preserved under continuous deformation (stretching without tearing or gluing); these properties are the topological invariants.
On its own, topology defines a "rubber" model.
![Page 7: CAD Topology and Geometry Basics](https://reader033.fdocuments.net/reader033/viewer/2022050706/54b4d8f54a79593d368b46eb/html5/thumbnails/7.jpg)
Topological entities
Topological entities comprise all the entities that are used to construct the structure or skeleton of a model.
![Page 8: CAD Topology and Geometry Basics](https://reader033.fdocuments.net/reader033/viewer/2022050706/54b4d8f54a79593d368b46eb/html5/thumbnails/8.jpg)
Bodies body is the highest level topological entity.
When we construct models we will create bodies, rather than stand-alone lower topological entities.
A body is composed of one or more components, where a component is a set of connected entities.
![Page 9: CAD Topology and Geometry Basics](https://reader033.fdocuments.net/reader033/viewer/2022050706/54b4d8f54a79593d368b46eb/html5/thumbnails/9.jpg)
Bodies Type Dim Description
Acorn 0 An isolated vertex.
Wire 1 A set of connected edges.
Sheet 2 A set of connected faces.
Solid 3 A solid region.
General 0, 1, 2, 3,
Or mixed
A connected set of: regions, faces, edges, vertices
![Page 10: CAD Topology and Geometry Basics](https://reader033.fdocuments.net/reader033/viewer/2022050706/54b4d8f54a79593d368b46eb/html5/thumbnails/10.jpg)
Manifold bodies A manifold is a mathematical
term for an object that locally resembles a line, a plane, or a space.
Euler equation:
v – e + f – h = 2(s – p), v – vertices; h – hole loops; e – edges; s – shells; f – faces; p – passages.
![Page 11: CAD Topology and Geometry Basics](https://reader033.fdocuments.net/reader033/viewer/2022050706/54b4d8f54a79593d368b46eb/html5/thumbnails/11.jpg)
Shell - is a connected collection of oriented faces (each used by the shell on one or both sides of the face) and edges.
![Page 12: CAD Topology and Geometry Basics](https://reader033.fdocuments.net/reader033/viewer/2022050706/54b4d8f54a79593d368b46eb/html5/thumbnails/12.jpg)
Face - is a bounded subset of a surface, whose boundary is a collection of zero or more loops.
![Page 13: CAD Topology and Geometry Basics](https://reader033.fdocuments.net/reader033/viewer/2022050706/54b4d8f54a79593d368b46eb/html5/thumbnails/13.jpg)
Loop - represents a connected portion of the boundary of a face. It consists of a chain of coedges (fins).
![Page 14: CAD Topology and Geometry Basics](https://reader033.fdocuments.net/reader033/viewer/2022050706/54b4d8f54a79593d368b46eb/html5/thumbnails/14.jpg)
Fin (coedge) - represents the oriented use of an edge by a loop.
A fin has logical ‘sense’ indicating whether the fin’s orientation, and therefore the orientation of its owning loop, is the same as its owning edge.
![Page 15: CAD Topology and Geometry Basics](https://reader033.fdocuments.net/reader033/viewer/2022050706/54b4d8f54a79593d368b46eb/html5/thumbnails/15.jpg)
Edge - is a bounded piece of a single curve.
Its boundary is a collection of zero, one or two vertices.
Each edge contains a record of its sense relative to its underlying curve.
![Page 16: CAD Topology and Geometry Basics](https://reader033.fdocuments.net/reader033/viewer/2022050706/54b4d8f54a79593d368b46eb/html5/thumbnails/16.jpg)
Vertex - represents a point in space.
![Page 17: CAD Topology and Geometry Basics](https://reader033.fdocuments.net/reader033/viewer/2022050706/54b4d8f54a79593d368b46eb/html5/thumbnails/17.jpg)
Topology traversal
![Page 18: CAD Topology and Geometry Basics](https://reader033.fdocuments.net/reader033/viewer/2022050706/54b4d8f54a79593d368b46eb/html5/thumbnails/18.jpg)
Topological entities
![Page 19: CAD Topology and Geometry Basics](https://reader033.fdocuments.net/reader033/viewer/2022050706/54b4d8f54a79593d368b46eb/html5/thumbnails/19.jpg)
Geometry
![Page 20: CAD Topology and Geometry Basics](https://reader033.fdocuments.net/reader033/viewer/2022050706/54b4d8f54a79593d368b46eb/html5/thumbnails/20.jpg)
Point point is a zero-dimensional object that represents a location or
position in a given space.
A point that resides in a one-dimensional space (that is, it resides on the real line) is often called a parameter.
A point that resides in a two-dimensional space defining the domain of a parametrically defined surface is often termed a parametric location or a parametric position.
A point that resides in the three-dimensional object space is often called a point, a location, or a position.
![Page 21: CAD Topology and Geometry Basics](https://reader033.fdocuments.net/reader033/viewer/2022050706/54b4d8f54a79593d368b46eb/html5/thumbnails/21.jpg)
Curve Curves are 1-dimensional, in the sense that for parametric curves
you need a single parameter to obtain a point on the curve;
The parameter of the curve is u;
Each curve maps a single parameter value u into a 3-dimensional point (x,y,z);
![Page 22: CAD Topology and Geometry Basics](https://reader033.fdocuments.net/reader033/viewer/2022050706/54b4d8f54a79593d368b46eb/html5/thumbnails/22.jpg)
Surface surface is two-dimensional manifold in a three-dimensional space,
with a single geometrical definition.
A parametric surface maps a rectangle defined within a 2D real vector space (called parameter space) into a 3D real vector space (often called object space)
![Page 23: CAD Topology and Geometry Basics](https://reader033.fdocuments.net/reader033/viewer/2022050706/54b4d8f54a79593d368b46eb/html5/thumbnails/23.jpg)
Natural surface normals
Surface Natural orientation
plane along its plane normal
cylinder away from its axis
cone away from its axis
sphere away from its center
torus away from the circle described
by its major axis
![Page 24: CAD Topology and Geometry Basics](https://reader033.fdocuments.net/reader033/viewer/2022050706/54b4d8f54a79593d368b46eb/html5/thumbnails/24.jpg)
Continuity Continuity is a measure of the smoothness of a curve or surface.
Parametric continuity, denoted by Cn, describes the maximum derivative of a parametric equation that is continuous.
Geometric continuity, denoted by Gn, is a geometric property describing the smoothness of a that is independent of parameterization.
G0 curve or surface is positionally continuous.
A G1 curve or surface has continuous tangent directions, although the magnitude of tangent vectors may not be continuous.
A G2 curve has a continuous radius of curvature.
![Page 25: CAD Topology and Geometry Basics](https://reader033.fdocuments.net/reader033/viewer/2022050706/54b4d8f54a79593d368b46eb/html5/thumbnails/25.jpg)
A G2 Surface
![Page 26: CAD Topology and Geometry Basics](https://reader033.fdocuments.net/reader033/viewer/2022050706/54b4d8f54a79593d368b46eb/html5/thumbnails/26.jpg)
A Surface with a Non-G2 Discontinuity
![Page 27: CAD Topology and Geometry Basics](https://reader033.fdocuments.net/reader033/viewer/2022050706/54b4d8f54a79593d368b46eb/html5/thumbnails/27.jpg)
A Surface with a Non-G1 Discontinuity
![Page 28: CAD Topology and Geometry Basics](https://reader033.fdocuments.net/reader033/viewer/2022050706/54b4d8f54a79593d368b46eb/html5/thumbnails/28.jpg)
A Surface with a Non-G0 Discontinuity
![Page 29: CAD Topology and Geometry Basics](https://reader033.fdocuments.net/reader033/viewer/2022050706/54b4d8f54a79593d368b46eb/html5/thumbnails/29.jpg)
Parametric curves and surfaces
![Page 30: CAD Topology and Geometry Basics](https://reader033.fdocuments.net/reader033/viewer/2022050706/54b4d8f54a79593d368b46eb/html5/thumbnails/30.jpg)
Implicit and parametric forms f(x,y) = 0 – implicit curve.
– f(x,y) = x2 + y2 – 1 = 0 – a unit circle at origin.
C ( u ) = ( x(u), y(u) ), a ≤ u ≤ b.
– C(u) = ( cos(u), sin(u) ), 0 ≤ u ≤ π/2.
f(x,y,z) = 0 – implicit surface.
– f(x,y) = x2 + y2 + z2 – 1 = 0 – a unit sphere.
S ( u, v ) = ( x(u, v), y(u, v), z(u, v) ), a ≤ u ≤ b.
– x(u,v) = sin(u)cos(v)
– y(u,v) = sin(u)sin(v)
– z(u,v) = cos(u); 0 ≤ u ≤ π; 0 ≤ v ≤ 2π.
![Page 31: CAD Topology and Geometry Basics](https://reader033.fdocuments.net/reader033/viewer/2022050706/54b4d8f54a79593d368b46eb/html5/thumbnails/31.jpg)
![Page 32: CAD Topology and Geometry Basics](https://reader033.fdocuments.net/reader033/viewer/2022050706/54b4d8f54a79593d368b46eb/html5/thumbnails/32.jpg)
Coordinate system dependent/independent, the parametric equations are also vector equations and hence the coord sys independence
Given a point determine if its on the curve or surface easy in the implicit case difficult in the parametric case
Generating points on the curve or surface easy in the parametric case, difficult in the implicit case.
Notion of order in parametric equations, you can generate an ordered set of points on the curve. The tangent direction is the direction of increasing parameter values.
![Page 33: CAD Topology and Geometry Basics](https://reader033.fdocuments.net/reader033/viewer/2022050706/54b4d8f54a79593d368b46eb/html5/thumbnails/33.jpg)
Line Data:
– P0 – start point,
– P1 – end point.
Parametrization:
– C ( u ) = ( 1 – u ) * P0 + u * P1.
![Page 34: CAD Topology and Geometry Basics](https://reader033.fdocuments.net/reader033/viewer/2022050706/54b4d8f54a79593d368b46eb/html5/thumbnails/34.jpg)
Arc The arc is centered at the origin, and is parameterized by the angle of rotation from the first plane
unit vector in the direction of the second plane vector.
Data:
– V1[3] - First vector that defines the plane of the arc;
– V2[3] - Second vector that defines the plane of the arc;
– Origin[3] - Origin that defines the plane of the arc;
– start_angle - Angular parameter of the starting point;
– end_angle - Angular parameter of the ending point;
– Radius - Radius of the arc.
Parametrization:
– u' (the unnormalised parameter) = (1 - u) * start_angle + u * end_angle;
– C(u) = radius * [cos(u') * V1 + sin(u') * V2] + origin.
![Page 35: CAD Topology and Geometry Basics](https://reader033.fdocuments.net/reader033/viewer/2022050706/54b4d8f54a79593d368b46eb/html5/thumbnails/35.jpg)
Plane The plane entity consists of two perpendicular unit vectors (e1 and e2), the normal to the plane
(e3), and the origin of the plane.
Data:
– E1[3] - Unit vector, in the u direction;
– E2[3] - Unit vector, in the v direction;
– E3[3] - Normal to the plane;
– Origin[3] - Origin of the plane.
Parametrization:
– S(u,v) = u * e1 + v * e2 + origin
![Page 36: CAD Topology and Geometry Basics](https://reader033.fdocuments.net/reader033/viewer/2022050706/54b4d8f54a79593d368b46eb/html5/thumbnails/36.jpg)
Cylinder The generating curve of a cylinder is a line, parallel to the axis, at a distance R from the axis. The
radial distance of a point is constant, and the height of the point is v.
Data:
– E1[3] - Unit vector, in the u direction;
– E2[3] - Unit vector, in the v direction;
– E3[3] - Normal to the plane;
– Origin[3] - Origin of the plane.
– Radius - Radius of the cylinder.
Parametrization:
– S(u,v) = radius * [cos(u) * e1 + sin(u) * e2] + v * e3 + origin.
![Page 37: CAD Topology and Geometry Basics](https://reader033.fdocuments.net/reader033/viewer/2022050706/54b4d8f54a79593d368b46eb/html5/thumbnails/37.jpg)
Bezier curves, B-Splines, NURBS
![Page 38: CAD Topology and Geometry Basics](https://reader033.fdocuments.net/reader033/viewer/2022050706/54b4d8f54a79593d368b46eb/html5/thumbnails/38.jpg)
Spline “hierarchy”
![Page 39: CAD Topology and Geometry Basics](https://reader033.fdocuments.net/reader033/viewer/2022050706/54b4d8f54a79593d368b46eb/html5/thumbnails/39.jpg)
Bezier curve - A special form of a polynominal curve.
Given n+1 points P0, P1, P2, ... and Pn in space, the control points, the Bézier curve defined by these control points is
the point that corresponds to u on the Bézier curve is the "weighted" average of all control points, where the weights are the coefficients Bn,i(u).
![Page 40: CAD Topology and Geometry Basics](https://reader033.fdocuments.net/reader033/viewer/2022050706/54b4d8f54a79593d368b46eb/html5/thumbnails/40.jpg)
Examination of cases - Linear Bézier curves
- Quadratic Bézier curves
- Cubic Bézier curves
![Page 41: CAD Topology and Geometry Basics](https://reader033.fdocuments.net/reader033/viewer/2022050706/54b4d8f54a79593d368b46eb/html5/thumbnails/41.jpg)
Properties of a Bézier curve All basis functions are non-negative.
The sum of the basis functions at a fixed u is 1
The degree of a curve is number of control points - 1
Open curves always pass through first and last point.
Tangent at first point is given by the direction of the first segment of control polygon.
the same curve (and properties) exist when starting with the last control point.
Convex hull property.
Variation Diminishing property.
Affine Invariance.
![Page 42: CAD Topology and Geometry Basics](https://reader033.fdocuments.net/reader033/viewer/2022050706/54b4d8f54a79593d368b46eb/html5/thumbnails/42.jpg)
De Casteljau's Algorithm Choose a point C in line segment AB such that C divides the line
segment AB in a ratio of u:1-u. i.e. C = (1 - u)A + uB
![Page 43: CAD Topology and Geometry Basics](https://reader033.fdocuments.net/reader033/viewer/2022050706/54b4d8f54a79593d368b46eb/html5/thumbnails/43.jpg)
Constructing Bézier curves
![Page 44: CAD Topology and Geometry Basics](https://reader033.fdocuments.net/reader033/viewer/2022050706/54b4d8f54a79593d368b46eb/html5/thumbnails/44.jpg)
Limitations of Bézier curves More complicated shapes require higher order Bezier curves.
Bézier curves can not be modified “locally”. Movement of any control point will affect the whole curve.
![Page 45: CAD Topology and Geometry Basics](https://reader033.fdocuments.net/reader033/viewer/2022050706/54b4d8f54a79593d368b46eb/html5/thumbnails/45.jpg)
Basic spline curves Instead of considering EVERY control point when evaluating a
point, only consider closest k.
The B-spline curve is composed of segments, each of degree k-1.
![Page 46: CAD Topology and Geometry Basics](https://reader033.fdocuments.net/reader033/viewer/2022050706/54b4d8f54a79593d368b46eb/html5/thumbnails/46.jpg)
Basic spline equation Bézier basis functions are used as weights. B-spline basis functions
will be used the same way; however, they are much more complex
![Page 47: CAD Topology and Geometry Basics](https://reader033.fdocuments.net/reader033/viewer/2022050706/54b4d8f54a79593d368b46eb/html5/thumbnails/47.jpg)
Basic spline data Multiple segments:
Order = k
Number of control points = n
Number of knots = n + k
Knot vector, eg {0, 1, 2, 3, 4, 5, 7, 8}
Number of segments:
n-k+2 for open curves
n-k+1 for closed curves