0% found this document useful (0 votes)
72 views87 pages

The Flow Approach To Swept Volume

The document describes a thesis titled "The Flow Approach to Swept Volume" by Haitao Jiang submitted to NJIT. The thesis develops a method to represent swept volumes based on sweep differential equations and sweep vector field flows. For a given sweep and object, it computes a set of candidate boundary points using selection criteria based on vector field behavior. It then trims this set using topological principles and extended sweep concepts to obtain the true boundary of the swept volume. The method can handle cases where the swept volume has holes and can be extended to 3D sweeps. Several 2D examples are given to illustrate the prototype software developed.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
72 views87 pages

The Flow Approach To Swept Volume

The document describes a thesis titled "The Flow Approach to Swept Volume" by Haitao Jiang submitted to NJIT. The thesis develops a method to represent swept volumes based on sweep differential equations and sweep vector field flows. For a given sweep and object, it computes a set of candidate boundary points using selection criteria based on vector field behavior. It then trims this set using topological principles and extended sweep concepts to obtain the true boundary of the swept volume. The method can handle cases where the swept volume has holes and can be extended to 3D sweeps. Several 2D examples are given to illustrate the prototype software developed.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 87

New Jersey Institute of Technology

Digital Commons @ NJIT

Theses Electronic Theses and Dissertations

1-31-1993

The flow approach to swept volume


Haitao Jiang
New Jersey Institute of Technology

Follow this and additional works at: https://digitalcommons.njit.edu/theses

Part of the Applied Mathematics Commons

Recommended Citation
Jiang, Haitao, "The flow approach to swept volume" (1993). Theses. 1767.
https://digitalcommons.njit.edu/theses/1767

This Thesis is brought to you for free and open access by the Electronic Theses and Dissertations at Digital
Commons @ NJIT. It has been accepted for inclusion in Theses by an authorized administrator of Digital Commons
@ NJIT. For more information, please contact [email protected].
Copyright Warning & Restrictions

The copyright law of the United States (Title 17, United


States Code) governs the making of photocopies or other
reproductions of copyrighted material.

Under certain conditions specified in the law, libraries and


archives are authorized to furnish a photocopy or other
reproduction. One of these specified conditions is that the
photocopy or reproduction is not to be “used for any
purpose other than private study, scholarship, or research.”
If a, user makes a request for, or later uses, a photocopy or
reproduction for purposes in excess of “fair use” that user
may be liable for copyright infringement,

This institution reserves the right to refuse to accept a


copying order if, in its judgment, fulfillment of the order
would involve violation of copyright law.

Please Note: The author retains the copyright while the


New Jersey Institute of Technology reserves the right to
distribute this thesis or dissertation

Printing note: If you do not wish to print this page, then select
“Pages from: first page # to: last page #” on the print dialog screen
The Van Houten library has removed some of the
personal information and all signatures from the
approval page and biographical sketches of theses
and dissertations in order to protect the identity of
NJIT graduates and faculty.
ABSTRACT

The Flow Approach to Swept Volume

by
Haitao Jiang

In this thesis, a method for representing swept volume based on the sweep

differential equation and sweep vector field flow is developed. This method can be

used to determine the boundary representation of a swept volume generated by any

polygonal object undergoing a general smooth 2-D sweep. For any given sweep and

object, a. set of candidate boundary points is computed using a selection criterion

based on vector field behavior. The set of candidate boundary points is then trimmed

in order to obtain the true boundary of the swept volume. This trimming procedure

is based on some simple topological principles and it utilizes the concept of extended

sweep. This method is more general and efficient than existing approaches (e. g. it

can readily deal with the cases in which the swept volume area. has "holes") and can

easily be extended to 3-D sweeps; the 3-D extension is discussed but only briefly.

Several examples are given to illustrate the implementation of the prototype software

for 2-D sweeps which has been developed in conjunction with this research.

Keywords: Swept volume, Geometric modeling, NC machining


THE FLOW APPROACH TO SWEPT VOLUME

by
Haitao Jiang

A Thesis
Submitted to the Faculty of
New Jersey Institute of Technology
in Partial Fulfillment of the Requirements for the Degree of
Master of Science

Department of Mathematics

January, 1993
APPROVAL PAGE

THE FLOW APPROACH TO SWEPT VOLUME

Haitao Jiang

Dr. Denis Blackmore, Thesis Advisor


Professor of Mathematics, NJIT

Dr. Ming Leu, Committee Member


Professor of Mechanical Engineering
and Sponsored Chair in Manufacturing/Productivity, NJIT

D Jonathan Luke, Committee Member


Assistant Professor of Mathematics, NJIT
BIOGRAPHICAL SKETCH

Author: Haitao Jiang

Degree: Master of Science in Applied Mathematics

Date: January, 1993

Undergraduate and Graduate Educations:

• Master of Science in Applied Mathematics,


New Jersey Institute of Technology, Newark, NJ, 1993

• Master of Engineering in Computer Engineering,


Wuhan Institute of Hydraulic & Electrical Engineering,
Wuhan, P. R. China, 1990

• Bachelor of Engineering in Computer Engineering,


Wuhan Institute of Hydraulic & Electrical Engineering,
Wuhan, P. R. China, 1987

Major: Applied Mathematics


This thesis is dedicated to
My wife Qing Yan
ACKNOWLEDGMENT

I would like to express my sincere gratitute to professor Denis Blackmore, my

graduate advisor who introduced me into this interesting problem. I owe a lot to

him for his constant guidance, encouragement, patience, and help in turning my

ideas into rigorous mathematical expressions and proofs. He also helps me a lot on

non—academic affairs; my thanks to him are beyond my words.

Thanks are also due to professor M. C. Leu of the Department of Mechanical and

Industrial Engineering for his valuable insights into the problems. Also, I would like

to express my special thanks to professor J. Luke of the Department of Mathematics,

who was always willing to help me on the programs and the machine environments.

My thanks to Mr. Kyung Geun Pak, who is a member of our research team, for

his ideas and good explanations of NC machining and robotics during our meetings.

Also, I would like to thank my friends: Xiaoming Xiong, Kang Wu, Feng Bao, Fei

Yu, Yongchun Liu, Chen Xu, Song Chen, Mingfu Fang and all the others, for their

friendship and help on different aspects of this project.

The author was supported by an WIT research assistantship and NSF Grant

DDM-9114355 during the course of this research. This support is gratefully acknowl-

edged.

vi
TABLE OF CONTENTS

Chapter Page

1 INTRODUCTION 1

1.1 Literature Survey 1

1.2 Envelope Theory Approach 3

2 TEORETICAL PRELIMINARIES 13

3 THE THEORY OF THE SWEEP FLOW APPROACH 18

3.1 The General Evaluation Procedure 18

3.2 The Selection of Candidate Boundary Points 1.9

3.3 The Global Trimming Procedure for the Candidate Boundary Points . 27

4 IMPLEMENTATION OF PROTOTYPE SOFTWARE


IN 2-D SPACE :34

4.1 Overview of the Whole Process 35

4.2 Implementation of Candidate Points Selection Procedure 37

4.3 Implementation of Trimming Procedure 42

4.4 Some Examples 47

5 SOME IDEAS ON 3-D EXTENSIONS 64

6 CONCLUSIONS 68

APPENDIX A: PROOF OF THE ALGORITHM 4.1 70

REFERENCES 73

vii
LIST OF FIGURES
Figure Page

1 Envelope of a family of circles whose centers are along the x axis 5

2 Swept volume of a line segment undergoing a 2-D sweep 8

3 Envelope curve of the swept volume of a line segment 9

4 The global nature of the sweep process 20

5 Illustration of partition of the boundary 23

6 Global trimming procedure from extended sweep point of view 28

7 A 2-D example of singular case in the global trimming 31

S The object in example 4.1 38

9 The swept volume in example 4.1 39

10 The candidate boundary points of example 4.1 43

11 Deciding whether a point is inside a polygon or not 46

12 The boundary points after global trimming of example 4.1 4S

13 The final boundary of the swept volume of example 4.1 49

14 The swept volume of example 4.2 52

15 The candidate boundary points of example 4.2 53

16 The boundary points after global trimming of example 4.2 54

17 The boundary representation of the swept volume of example 4.2 55

18 The swept volume of example 4.3 56

19 The candidate boundary points of example 4.3 57

20 The boundary points after global trimming of example 4.3. 58

21 The boundary representation of swept volume in example 4.3 59

22 The swept volume of example 4.4 60

23 The candidate boundary points of example 4.4 61

24 The boundary points after global trimming of example 4.4. 62

viii
25 The boundary representation of swept volume in example 4.4 63

IX
CHAPTER 1

INTRODUCTION

1.1 Literature Survey

The swept volume is the set of points in Euclidean space traversed by a solid object

undergoing a continuous Euclidean motion (sweep). Evaluation and representation

of the swept volume of an object undergoing a rigid-body motion have many im-

portant applications in manufacturing automation, such as NC machining program

verfication, the path planning and manipulation of robots, etc.

There are several different solid modeling schemes for representing swept vol-

umes on which evaluation procedures are based. A representation scheme should, in

principle, contain all the geometric properties of the swept volume and automatically

support a variety of applications. The selection of the representation scheme really

depends on the applications for which it is intended; however, here we shall discuss

only the two most commonly used schemes, which are constructive solid geometry

and boundary representation.

• Constructive Solid Geometry

Constructive Solid Geometry (CSG) represents an object as Boolean combi-

nations of primitives through operators called regularized set union (Ս*), in-

tersection (∩*), difference (--* ) and complement (c*) [16]. The regularized set

operators are extensions of the corresponding standard set operators, followed

by a regularization process, which guarantees that an operation on valid solids

results also in a valid solid. The primitives are the basic geometric objects on

which different solids are built: the commonly used primitives include blocks,

cylinders, cones and tori. The different. primitives that a system can support

directly decide the capacity of the system. CSG representation is essentially a


9

binary tree, whose root represents the entire solid, whose leaves are the primi-

tives, and whose internal nodes are the regularized Boolean operations or rigid

motions. Each internal node can also be considered to represent a solid which is

the part of the entire solid obtained by applying the operation to its two sons.

The main advantage of this scheme is that it corresponds closely to how the

solid is actually constructed; however, much of the geometric information is in

implicit form which requires the application programs to have some procedures

for evaluating the geometric properties of the solid in this representation.

Boundary Representation

As indicated by its name, Boundary Representation represents a solid by its

boundary. The boundary should be expressible as a set of surfaces. If the

underlying manifolds of these surfaces are difficult to determine, they are often

approximated by a set of patches whose underlying manifolds are known. Two

of the most commonly used patches are the planar patch (which is a line segment

in 2—D space) and the bicubic patch. The main advantage of this scheme is

that the boundary is expressed explicitly, as is all of the important geometric

information, which makes Boundary Representation very useful for a. variety of

applications.

For the details and other solid modeling schemes, readers can refer to [17], [18], [19].

Much research has been done in order to evaluate the swept volume and obtain

various solid geometric representations. Sungertekin and Voelcker did a. feasiblity

study of using the PADL solid modeling system for simulation of NC programs (see

[221). Since PAM, uses Constructive Solid Geometry (CSG) to represent solids, the

cost of simulation is proportional to the fourth power of the number of tool move-

ments and this is computationally prohibitive. Drysdale, Jerard and their students
3

used surface discretization and normal vectors to indicate the geometry (see [8], [10]);

this is computationally more efficient than the CSG representation since its compu-

tation time is linearly proportional to the number of cutting movements. However, in

this method the cutter swept volume is not explicitly represented; instead the points

of intersection between the lines of surface normals and the cutter swept volume are

computed. The method of employing envelope theory to model the swept volume

using boundary representation has been studied by K. K. Wang, W. P. Wang, Sam-

bandan, etc. (see [20], [23], [24]). Due to its close relationship with our research, we

will briefly introduce the basic theory of the envelope method and describe the most

recent work being clone in this area. in the following section.

1.2 Envelope Theory Approach

There are many equivalent ways to define the envelope of a family of curves:

Definition 1.1 If there is a curve to which some of the curves of a family

x,t) = 0 are tangent and if the point of tangency describes a curve as t


F ( x,

varies, the curve is called the envelope (or part of the envelope if there are

t) such curves) of the family


several = 0.

Definition 1.2 If we have a family of surfaces (or curves), then the envelope

can be defined as another surface (or curve) that is tangent at each of its points

to some member of the family [6].

It is also useful to think of an envelope as the limit of the points in which neighboring

curves of the family intersect; this is sometimes taken as the definition of the envelope:

lim 1/∆t [F(x, t) — F(x, t + ∆t)] = lim Ft(x.t + 0 ∆t) = Ft(x, t) = 0


∆t-0 ∆t-0
4

To find the envelope of a family, it is easy to prove from the definition that the points

on the envelope must satisfy the following two conditions:

Ft(x, t) = 0
F(x,

(1)
(2)

where Ft denotes the partial derivative of F with respect to t.

Once we have these two equations, the equation of the envelope of the family

= 0 may be found by solving them simultaneously to find a parametric

equation x = ϕ( or by eliminating t from the equations to obtain the envelope

equation in the form of 1 ϕ(x) = 0.

t)2 + y2 - 1 1.1 Find the envelope of F(x, t ) = 0.


Example (x—

We compute F,(x, 1) = —2(x — t) = 0. By eliminating t from these two equations,

we obtain y = +1, which is the equation of the envelope. This example is shown in

Figure 1.

The above concepts and methods can be easily extended to finding the envelope of

a family of curves with k parameters, say Ft1(x, 1 , t 2, • • • tk) = 0. For


(x,
t1(x, example, if the
Ft2(x,

family has 2 parameters, ) = 0, the conditions for the envelope are:

) = 0 (3)
(4)
(5)

If we want to apply the envelope theory directly to the problem of determining the

boundary of a swept volume, some difficulties may arise. A first difficulty may occur

in the process of obtaining the equation of the envelope; the locus found by the

process described above may contain curves other than the envelope. For instance

if the curves of the family F = 0 have singular points and if x = ϕ(t) is the locus
5

Figure 1 Envelope of a family of circles whose centers are along the x axis
6

of the singular points as t varies, (1.) and (2) will hold, thus the rule for finding the

envelope leads also to the locus of the singular points. Other extraneous factors may

also be introduced in performing the elimination. We must take special care in the

eliminaton process, otherwise not only may extraneous solutions be mistaken for the

envelope, but the envelope may be missed completely.

Example 1.2 Consider y — sin tx, = 0 and t — x -1 y = 0. The families of curves


sin-1

are identical, and it is geometrically clear that y = ±1 is their envelope. This is

precisely the result if we eliminate t from F = 0 and Ft = 0 of the first family. But

if we apply the same process to the second, we will find = 1 0, which does not.

vanish and hence indicates no envelope.

The above process should be checked carefully using the implicit function theorem.

A second difficulty can occur when the actual object is a finite piece of an infinite

object. Direct application of the envelope equation often yields points which are not

on the boundary of the swept volume. This is illustrated in the following example.

Example 1.3 Consider the swept. volume of the line segment {I y l< 1,x = 0}.

under the following general 2-I) motion:

[x] [ξ(t)] cosθθ(t)(t)


[cos —] sin==> cosθx +cos
(ξ0(t)] η sinθ) = 0 [ye
[x0]
θ [yσt ] = + [η(t)] [ sinθ(,]i)
xa(t) = -2cosθθ/2sinθ += - cotysin

where ( x0, y0) describes the inital position of the points. From the sweep equation

above, it is easy to derive the equation for the whole swept volume (or the family of

line segments produced while sweeping); namely:

y — ya(t)/ x — xa(t) = yb(t) — ya(t)/ xb(t)—

where xa(t), ya(t)), xb(t), yb(t)) are the positions of the end points at time t .


7

sin θ ]sin
[ 0θx ,]]y, t)
F(
Ft( sin0θξ:(ξ]
[ -= θ[-x θsin
x cos + θy+sinθcos
++
θ
ysinθ θ—η—ηsinθ
(—cosθ = 0 + η sinθ) = 0 (6)
) cosθ
(ξ)] (7)

Solving for the envelope x = x(t),y = y(t), we obtain


= +
det θ

Notice that

If θ ≠ 0, then:
= +-

[ -θ
==> = + -
==> = + ---------------------------------------

[ y ] [ η] θ [ θ
y 77 9. _ cos 0(e cos 0 + sin 0
[y] [ η[ ] x ] θ [ ξ ][ θ 1 [

ξθsin
When in θ=]θ(
in
4t, [xηξ] and
]θ ξθ[[η]y ξ]]=[[0 η θξ [] =
] [ x ][θ(t) [ θθ[swept
ξ ] π1+ t, ξthe θ cossin θ++ η+ sin
s θ volume η sin
sin θ)θ and
θ)][ cos0θ[thesinenvelope
θ in ηθ[s-i]n]θ θ]cos sin
]][θ+θθ]
[x] [θη]
θ[y][cosθsin(t)θθobtained
cos[ ]sin-θθθ(t)] θ[ξ] θcos,cos[from
sincos[ξ
θ ]
the above equations are shown in figures 2 and 3. One can clearly see the portion

of the envelope which is not part of the swept volume boundary; this is due to the

finite extent of the object undergoing the sweep, that is, the line family equation we

derived is in fact the equation of a line of infinite length which contains the swept

line segment.

The envelope we obtain thus is actually the envelope of the family of lines, which

also contains points which are outside the line segment being swept.
8

Figure 2 Swept volume of a line segment undergoing a 2-D sweep


9

Figure 3 Envelope curve of the swept volume of a line segment


10

F( x , y, t) = 0
Ft( 0 :: x cosθ + y sinθ θ ++ —ηη sinθ
ξ(ξ sinθ ) =0
If the 0 = 0, then the equation for the envelope is undefined since we are dividing

by zero. Nevertheless, useful information can still be obtained from the equations.

θ =0 ==>

This system of equations may not have a solution at all or will have infinitely many

solutions if ξ . θ + η sinθ

A third difficulty lies in the fact that in order to obtain the envelope, one usually

needs to solve a system of nonlinear equations using numercial methods, which may

require large amount of CPU time. In this case, one may put some restrictions on

the shape of the object or on the type of sweep in order to simplify the problem (e.

g. [15]).

In one of the most recent and successful efforts using envelope theory. Samban-

dan[20] took an indirect approach to solving the envelope equations. He developed

an envelope criterion which basically is equivalent to our candidate boundary point.


cos
selection criterion. On the edge across which there is a discontinuity of surface nor-

mals, he adjusted the definition of the normal there in order to apply the envelope

criterion. Due to the difficulty of evaluating the velocity at given points, he used an-

other alternative which requires the computation of the instantaneous rotation center

of the motion at each time instant and then found the points on the boundary of

the object whose distances from the instantaneous rotation center are local extrema.

This computational work, as we shall see in the following chapters, is uncessary if

the problem is considered in the context of sweep differential equations and sweep

vector fields.
11

In addition, Sambandan's approach has other features which we shall try to

improve on using our method; They are:

• He developed a local higher order derivative criterion to reduce the number

of candidate boundary points. It required the computation of higher order

derivatives. These derivatives were checked to see if they were zero, and if

they were not zero, their sign had to be determined. This may cause numerical

difficulties and may not be completely reliable; in particular, the criterion will

not be applicable if all of the derivatives vanish, and it may produce incorrect

results when some of the derivatives are very close to zero in value. This may

explain why he did not implement this criterion in his programs.

• The trimming procedure developed by Sambandan can not deal with the case

when the swept volume has "holes ", i. e. when the boundary of a planar swept

volume has more than one connected component.

• Sambandan's trimming procedure apparently cannot he extended to 3-D swept

volumes.

Recently, Blackmore and Leu [2], [3], [4], [5] have developed a very general method

for analyzing and representing swept volume which they called the sweep differential

equation approach. Their approach has several points in common with the envelope

method; in fact, it can be shown that the envelope method can be derived from the

sweep differential equation approach. The algorithm for computing planar swept vol-

ume which we develop in this thesis is directly based on the approach of Blackmore

and Len. It will be shown that this approach leads to several theoretical and compu-

tational improvements of existing methods for characterizing and illustrating swept

volumes.

The organization of this paper is as follow: In chapter 2, we introduce some basic

notations and definitions, as well as sonic basic theorems of the sweep differential
12

equation approach which will be used extensively in the succeeding chapters. The

sweep flow method, including our candidate boundary points selection criterion and

global trimming procedure are developed in chapter 3. In chapter 4, we describe

the implementation of the prototype software in the 2-D case which is based upon

the theory proposed in chapter 4. Some examples are also given to illustrate the

utility of our procedure. In chapter 5, we briefly discuss the extension of the sweep

flow method to the 3-D case. In chapter 6, we make some relevent observations

and remarks concerning the contents of this thesis and possible future research work.
CHAPTER 2

TEORETICAL PRELIMINARIES

In this chapter, we will introduce some notations and definitions, as well as some

basic theorems which will be used rather extensively in the sequel. For more details,

one can refer to [2] and [3]. The real numbers will be represented by R. Let Rn
Rn

• n Euclidean n-space consisting of n-tuples of real numbers


denote
........ ) x 1, x2
x = (x x ,

with the usual inner product (.,.) and norm ║ • ║ defined by

‹x, y› = Σn
k yk and ║x║ = (x, x)1/2
k=1

The members of are often called n-vectors.

n → Euclidean group E( n ) is composed of all mappings


The of the form x → n

ξn+ Ax, where ξ ϵ , and A ϵ SO(n ); here SO( n ) is the special orthogonal group

consisting of all real, it x n orthogonal matrices A with det A = l.


Definition 2.1 A sweep σ is a continuous mapping of the unit interval [0, 1] into the

group E( n ) of rigid motions in the , which is initially the identity. Let at denote

the value of sweep at time t, t ϵ [0,1], then we can write the sweep equation:

σt (x) = A )x+ t t ξ( (

where : [0, 1] RI' and A : [0, 1] -4 SO(n) are continous and satisfy (0) = 0 and

A(0) = I. Here the use of the unit time interval [0,1] in our definition involves no

loss of generality, since the parameter can always be scaled to range between 0 and

1.

Definition 2.2 Let a be a sweep and Al be an object in R". The swept volume of

M generated by a is the region:

ϵ M,
S0( σt (x): x
M ) t=ϵ {[0,1]}

13
14

The sets σt(M) = {σt (x): x ϵ M} are the t.-sections of M generated by the sweep

σ and σ(x) = {σt(x) : t ϵ [0,1]} is the σ-trajectory of x.

Definition 2.3 Let σt = ξ (t) + A(t)x


) be a smooth sweep (i. e. a sweep for which

ξ and A have continuous derivatives of all orders). The sweep vector field(SVF)

corresponding to σ is the smooth vector field Xσ defined by

ξ
+
XσA(x,
AT t = (ξt(t)
)))ξ(t)) —
(x

We call the differential equation

= ξXσ
= x≡=ξ(t)
Xσ (x, t ) ) + A(+t ) A(t)AT(t)(x
A T ( t )(x — —
AT
dx/dt =1 sdx/t

associated with this vector field the sweep differential equation (SDE) of a. Here

the dot. denotes differentiation with respect to t and the superscript denotes the

transpose. It should be noted that (t ) (t ) ϵ o( n) for t ϵ [0.1].where o(n) =

{Bnxn : B + B = 0} is the set of real skew-symmetric matrices.

Definition 2.4 A smooth sweep a is autonomous if its sweep differential equation

is an autonomous differential equation.


dt/
A necessary and sufficient condition for σ to be autonomous is that ∂Xσ /∂t = 0; that is,

the sweep vector field Xσ is independent, of time variable t. It can be shown (see [2])

that the SDE of an autonomous sweep has the form

x = Bx + c

Definition 2.5 The extended sweep differentail equation (E.51)12) of a is defined as:
15

which can be written in the more concise form

X*σ u
where (x, t) and u ),1). X*σ is called the extended sweep vector field

(ESVF) of σ.

σ
Definition 2.6 If σt ξ1] → E( n)
: [0, n ) is a sweep defined by (t ) + A(t)x, the (x)
du/
mapping σ* : [0, 1] → x R defined by σ*(x,t) = (σ (x), s +t) is its extended

sweep. The sweep. The extended swept volume of the object M under the sweep σ is

u {ՍS*σs((Mσ):(s ϵ[M0,)1]} σ
= Sσ( M )II (S*σ (M))
==( ) * X = s

Where M is identified with M x 0 = {(x,t): x ϵ M, t = 0} in Rn x R.

The connection between the swept volume and extended swept volume is given by

following lemma:

Lemma 2.1

II : RRn+1 → Rn
Where the projection II(x,t) is defined to be the natural projection onto the

first n coordinates ; namely, x.

Definition 2.7 Let M be an.codimension 1 submanifold of A sweep σ is of type

I with respect to (wrt) M if the mapping.

ΣM
n→ :M x [0,1]
Sσ ( ) c

defined by

Σ( x,t ) = σt

satisfies the following properties:

• If x int ( M ) , then σt
ϵ = Σ x,t ϵ Int(Sσ(M)),
16

• If x ϵ ∂M , then σt(x) ϵ Fr(Sσ(


S ( M ))) for every t ϵ (0,1).

Here Int denotes the (topological) interior and Fr the frontier or boundary of a set.

Otherwise, we say that σ is of type II wrt M.

Note that Int ( M )) and ∂M refer to subsets of M defined in terms of its manifold

structure. Int ( So (M )) and Fr(Sσ(M)) refer to the relative topology of So (M) as

a subset of
Int(Sσ (see [7] ). In particular, x ϵ if there exists an open

( σ U C))
neighborhood U of x in Rn such that , and x ϵ Fr , the frontier

(or boundary) of Sσ( M ) , if n


every open neighborhood of x in contains points of

both and itsσcomplement.

Definition 2.8 A smooth sweep σ is regular with respect to (wrt) M if the smooth

mapping Σ is a homeomorphism
σ of M x [0,1] onto and is a smooth diffeomor-

phism on the interior of M x [0, 1]. We say that σ is regular periodic wrt M when

σ1( M ) = M and Σσinduces a homeomorphism from M x 1 to which is a

smooth diffeomorphism on the interior of where S l is the unit circle. If a is

.not regular or regular periodic. it is singular wrt M


Rn
R
Theorem 2.1 Let M be as defined above and a be a smooth map. Then a is of type

I wrt. M if σ is regular or regular periodic wrt M.

Theorem 2.2 Let σ be a smooth sweep in Rn and M be a codimension I submanifold

as described above. Suppose that, the sweep vector field Xσ(x,t) is nonvanishing on

σσt(M)
(M) and is transverse (not tangent) to the interior of
t(M) for every 0 ≤ l ≤ 1 .

Sσ addition, suppose that


In never intersects itself, or more precisely, the natural

projection II of the extended swept volume onto the swept volume is injectire (one-

to-one). Then σ is regular wrt M (and therefore of type I wrt M).

The proofs of the above theorems can be found in [2].

The nontangency hypothesis of this theorem can be readily checked as follows:


17

Define

T(x,t) = (X (σt (x), tt)), N t (σt (x))


) N0 (x))) , A(= (Xσ (σt (x), t

(8)

Nt : 0 ≤ t ≤ 1 is a collection of unit vector fields such


where the unit normal family Nt

that is normal to σt ( M ) at every point t of the interval [0, 1]. It is easy to see

that the nontangency condition is tantamount to the requirement that T be nonzero

on Int(M) x [0, 1].

Definition 2.9 The tangency condition refers to the following equation:

T (x, t) = 0 ( 9)
CHAPTER 3

THE THEORY OF THE SWEEP FLOW APPROACH

3.1 The General Evaluation Procedure

In this chapter, we will introduce the basic theory of the sweep flow approach to the

swept volume problem, which can he stated as follows:

Given an object M and smooth rigid sweep σ, and the sweep time in-

terval [0, 1], we want to obtain the boundary representation of the swept

volume generated by the object M undergoing the sweep a during the

time interval [0, 1].

The assumption of unit time interval [0, 1] here will result in no loss of generality,

since any time interval can be scaled to range between 0 and 1.

Generally speaking, our evaluation scheme is similar to the "local generation

and global trimming"category as in [201 etc., however, several improvements can be

made in comparsion to the existing approaches.

Our general evaluation process can be outlined as follows:

Input:

Solid object M

Sweep differential equation:

ξ) (x— T A + ξ = σ =X x

The unit time interval [0, 1].

Local generation and trimming:

Divide the time interval [0,1] into a finite number of

intermediate instants. At each time instant, generate

the candidate boundary patches which satisfy the cri-

18
19

terion we will describe in the sequel. We will use the

local trimming procedure to immediately trim out those

candidate boundary patches which belong to the interior

of the swept volume.

Global trimming:

Trim those candidate boundary patches which are in

fact members of the interior of the swept volume and

thus produce the boundary patches of the swept volume.

The global trimming will include two steps: initial global

trimming and secondary global trimming.

Boundary forming:

Connect the boundary patches, properly to form the

piecewise approximation of the boundary of the swept

volume.

Output:
R
Boundary representation of the swept volume

The trimming process is necessarily global since the boundary patch of swept

volume at some time t i may belong to the interior of the swept volume at t j, where

t j may greater than ti.


t i or less than This is illustrated in figure 4. In fact, effec-

tive implementation of the trimming procedure is the most challenging part of our

research.

3.2 The Selection of Candidate Boundary Points

It has been shown in Weld & Leu[25] ( see also [24] ) that for any given sweep σ,, if

the object M is a compact, n-


n dimensional submanifold of possessing a piecewise
Figure 4 The global nature of the sweep process
21

smooth boundary ∂M , the swept volume of the object M is given by

U∂MSσ(∂M))
Sσ(M)==MSσ(
Sσ(M)

and this will reduce to

ϕ ∩ σt
if= M for t ϵ (0,1).
( M ) This means that the swept volume of the

- imensional manifold M is actually determined by the swept volume of ∂M, which is


nd

of codimension 1 in the object M . In what follows, we shall assume that the object M

is a compact, n- dimensional submanifold of Rn


R3 with a piecewise smooth boundary.

Blackmore & Leu [5] study the linear, circular and helical sweeps in which

constitute one special class of sweep which they call autonomous sweeps, and use a

technique they call the boundary flow method(BFM), which is based on the sweep

differential equation approach, to compute the swept volume.

Our approach, which is also based on the sweep differential equations and sweep

vector fields can be viewed as the natural extension of the BFM to general sweeps.

At any time t, the boundary of the object M can be partitioned into three sets:

∂ (Mt)= M(t)Ս ∂o (Mt)Ս ∂+ (M)t

∂o M(t) is
Where ∂+M(t ) is called the instantaneous ingress point set, the set of

instantaneous grazing points and ∂_(Mt) is theinstantaneousegres point set.A

point x ϵ ∂M is an instantaneous ingress point at time t if the sweep vector at x at

time t is directed into the interior of M , it is an instantaneous egress point if the sweep

vector at x at time t is directed out of the interior of M; otherwise it is a grazing

point. From this definition, it is straightforward to decide if a point x ϵ ∂M is an

ingress, egress or grazing point at time t. This may be done as follows: If x belongs

to a smooth portion of ∂M , and N( x , t ) is the normal vector to ∂M at x pointing

into the interior of the object M, we set T ( x, t ) = (Xσ(x, t ), N (x,t)). Then x is an


22

instantaneous ingress point, egress points or grazing point at time / according as the

sign of T(x , t) is positive, negative or zero, respectively. If x belongs to the edge of

two contiguous smooth portions of ∂M , then it can he assumed to have two normal

N12(x, t),
vectors—the normal vectors of the abutting smooth surfaces, say N ,(x,t). It

is an instantaneous ingress point, egress points or grazing point at time t according

as the signs of T1 (x, t ) and T2 (x, t ) are both positive, both negative or otherwise,

respectively.

In general, a point x can belong to k surfaces which abut each other at x (e.

g. the vertex of a cube in 3-D space), then we can assign k normal vectors to it,

say N1
Nk , • , , and it is an instantaneous ingress point, egress points or

grazing point at time t ),


according •
as the signs
• of T
,1 Tk are all positive,

all negative or otherwise, respectively. A point x can also belong to a surface; but

have a 1-parameter family of normal vectors associated with it (e. g. the vertex of

a Tα
cone in 3-D space). The sign of the family can then be used to determine

ingress, egress and grazing points in the obvious way. Figure 5 is a 2-D example of

boundary partition.

Notice that the definition for a grazing point on smooth portions of 0i11 coincides

with the tangency condition of chapter 2, that is:

,Ntt (σt(x))
T (x, t) = (Xσ (σt(x),,(tt ) N0
,A (x)))

= (

=0 (1)

The relationship between grazing points and envelope points is given by the following

theorem:

Theorem 3.1 Given an object M undergoing a smooth sweep σ, the grazing points of

the smooth portion of ∂M(t) (Tide points that satisfy the tangency condition T (x, t) =
23

Figure 5 Illustration of partition of the boundary


24

0, x ϵ ∂M ) as t ranges over [0,1] are the envelope points of the family σt(∂M ) ,

[0,1].

x belong to the smooth portion of ∂M . Then by a standard result of


Proof. Let x0

differential topology(
0 see [14] ), there exists an open
n neighborhood U of in and

a nsmooth function f : U → such that

U =W= f x0)U =∩0}ϵ∂M


: ({x0

It is not difficult to see that the family


,,(x0)
, {σt
› ›A(t)
t)t),
AT Xσ( ) : 0 ≤ t ≤ 1} is characterized by
(W∇σt(x0

F (x,t) = 0
R
where

F(x, t ) = f (σt-1(x)) = f(AT(t) (x - ξ(t)))

The envelope points of the family {σt ( W )} are obtained from the equations

F(x, t )
Ft(x, = 0

) = 0

Using the chain rule, we compute that

= AT (ξ( -ATσξξ(t))
∂/∂tf f (x( -)(x
)(x-
))), (x0
t(x0
AT( ),AT-) ) ξ(t))
[ȦAT(x
,(x
(x --ATξξ)
AT( - AT-ξ(t)ξ]
Xσ(x,
([AȦT(x - ξ) - ξ]›
t›)››,

( = ‹∇

since AAT = I implies that ȦAT + AȦT = 0. Hence

Ft
Ft(x, t) = - ‹ ∇

from which we conclude that

= = σt(x0
,--t)‹‹∇Xσ(

= — (X,( 0-t(x°, 1 ),A(/) V 1.(x° ))


25

But, since is normal to W ,

KN ,

where N defines
x the normal family(x0)
x0 and K is a positive nonzero constant. Hence

0
0 Ft(σt( , t )) = K T ( ,t) (2)

and therefore we see that envelope points coincide with points satisfying T = 0. This

completes the proof.


- ›A(t)∇
,=(x0)
t), )
Theorem 3.2 Let σ be a given smooth sweep in and M an object. Then the

boundary of the swept volume of M satisfies the following formula:


n Rn
Rn
R

∂ M)
(t
(0)
(3)
(1) { ∂ Ս1
}
Ս∂ _σt=0 ∂+
Sσ(M) C

where t ϵ [0, 1]

Here we use C instead of = because of the global nature of the sweep process which

we mentioned before.

Proof. We first note that by the properties of the object M there exists a. piecewise

smooth function f : n → in the interior of M . f is positive


such that f is negative

(x
on the ∇
exterior 0of M and ∇f f vanishes
(x0 on the boundary of M . This implies that the

function F : x [0,1] → R defined by

F ( x,t ) = f (AT (t )(x — ξ(t)))

∂∂
characterizes the t-sections of the swept volume of M as follows:

n ((0) {x ϵn
t ))Ս∂= {x : F(x,t)<
F(x,t)= 0}

intM
(t)
(t)
(t) = ϵextM


}
={x n : F (x, t)> 0

Let ϵ - ‹It
for some 0 ≤ t =≤ 1. is easy to see that ∂+
Xσ(σt(x0 + (1)U may

contain boundary points of the swept volume so we shall assume that


26

x00 E 30/(0 for some 0 < t < 1. This


Clearly the proof is complete if we show that x

will be done by contradiction.


x0
x ∂ ϵ 0 x
∂ Suppose, on0 the contrary, that ϵ∂ for someo 0≤ 1
<or
t

for some 0 ≤ t o < 1. We shall only show that to leads to

a contradiction, since the proof of the contradictory nature of the second supposed

alternative is analogous. The definition of an ingress point implies that there is an

0 ≤ e < t o such 0that F ( , t ) is a strictly increasing function of t on (to — ϵ, to + ϵ).

0 F(x
As , to ) = 0,
0 we infer that F( , t o — ϵ)) < 0, which implies that belongs to

0o —
the interior of M(t ϵ). Hence there exist an open neighborhood Ս of such that
M

σto-c U C M( ( M ) C Sσ ( M )

This contradicts0our basic premise that ϵ ∂ Sσ , and this concludes the proof.

Corollary 3.1 Let σ be a linear, circular or helical sweep in. R3 such that Xσ has

Sao zeros in the object M and Sσ (∂M) has no self-intersections. Then the boundary

of the swept volume of M is given by the formula

∂Sσ (M) = Sσ(∂0M(0)) Ս ∂_M Ս ∂+M (1))

Proof. From the above theorem, the proof of this corollary is straightforward. Since

the linear, circular or helical sweeps in R3 have have been shown in [4] to constitute

the class of autonomous sweeps for which the sweep vector geld is independent of

time t, we see that,


(0)

x ϵ ∂ M (0) ==> σt ∂ (x) ϵ σt (∂ 0 MM(0)) = (t)M 0 (0) M ∂ 0


(t) ∂ t=0 ( 1 σ Ս S = =>

(1) M ∂_ Ս + in((to
As there are no intersections, the global trimming is unnecessary ) case, and we
tothis

can use = instead of C in the formula (12). Thus the proof is complete.
27

3.3 The Global Trimming Procedure for the Candidate Boundary


Points

The candidate boundary patch selection process results in a set of candidate boundary

patches which are guaranteed to contain the boundary of the swept volume.

In order to trim those candidate bounday patches or the portions of candidate

patches which belong to the interior of the swept volume, we need an efficient way of

determining whether or not a patch belongs to the interior of some t-section of the

swept volume.

The global trimming procedure can also be viewed from the extended sweep

point of view. The extended swept volume,


n+1which is imbedded in spacetime, is

much better behaved than the swept volume


n in since it has no self-intersections.

Figure 6 is an example of an extended swept volume of a 2-D sweep. By intuition,

one can immediately see that a candidate boundary point x0 should not be kept if

the line x = xo intersects the interior of the extended swept volume. If this line does

not intersect the interior of the extended swept volume, but intersects the boundary

at more than one point, it may not be a boundary point; such cases will be handled

by a secondary global trimming procedure.

Although it is very difficult to implement a general global trimming procedure

for , it is possible to construct efficient algorithms for specific dimensions (like

the algorithm we will describe in theRn


Rimplementation chapter for 2-D space). In

addition, we shall see that there are local trimming techniques which can immediately

be applied to certain grazing points.

Implementation of a global trimming procedure is quite problematical, but a

theoretical characterization is not at all difficult as shown by the following result.

Theorem 3.3 (Global Trimming Criterion) Let σ be a smooth sweep of the form(t)xandlryMξb(e+=oσjActwhianrezdbycon-
28

Figure 6 Global trimming procedure from extended sweep point of view


29

tinuous,
:= {x ϵ piecewise smooth function f n → R such that intM
M
1.
:f

(AT(t)(x
)ff(x)
iff =- ξ(t))).
(x) > 0}. Set Then
0}F(x,t)
and fx ϵ (U1
x
= satisfies
extM = {x∂0ϵM(t)Ս∂+M
t=0
following (0)Ս∂-M(1)
nconditions:
: is a point of a ∂Sσ (

F(x,t)> 0 V E[0,1]

2. If x satisfies (1) and F(x, ti) = 0 for more than one ti ϵ [0, 1] then it

should also satisfy following condition: ∀ nbd U of x, there exists y ϵ U such that.

F (y ,t) > ∀ t ϵ [0,1]

Proof. The proof of this theorem is quite straightforward. From Theorem 3.2 as

we have already proven, if σ is a given smooth


n sweep in and M an object. then

the boundary of the swept volume of M satisfies the following formula:

"

Also we notice that the function F : n x [0,1] → R defined by F(x, t) = f(AT(t)(x —

ξ(t))) characterizes the t —sections of the swept volume of M as follows::

{x (x,∂t)
F (x, 0} t)
M (t)<==
0}{x

intM(t)=

extM(t) = {x ϵ Rn:F(x,t)>0)
n R ϵ Rn
∀,
x ϵ {Ս1t=0 ∂ M satisfies F (x,t) ≥ 0,∀
if x also ϵ [0, 1],

x does not belong to the interior of any t—section of the swept volume, and so is a

point of ∂Sσ(M) except possibly for singular cases (one of which we illustrate using
∂∂-M+M
Ս2-D
Ս ∂Sσ
Ս∂∂-M
Ս Ս1t=0 ∂ 0M(t)
(0)
(1)
(M)0C { (t)
a} }
example in Figure 7). From Figure +M
7, we can see that even through x does

not belong to the interior of any t-section of the swept volume which means that it

satisfies condition (1), it still belongs to the interior of the swept (x)
volume and needs
< 0}∂M = {x ϵ n
to be trimmed. We notice that x satisfies F(x, ti) = 0 for more than one t i ϵ [0.1].
30

In these cases, we need to add condition (2) which means that no neighborhood of

x is completely contained in the swept volume of M because it contains a point

which is in the complement of every t-section of M . Thus the proof is complete.

Definition 3.1 Trimming those candidate boundary points which do not satisfy

the condition (1) is called initial global trimming. Secondary global trimming is the

elimination of those candidate boundary points which satisfy (1) but not (2).

As a practical corollary, we have the following result:

Theorem 3.4 (Local Trimming Procedure) Let a be a given smooth sweep in ,

∂ M
and the object. At time t, suppose xo belongs to the smooth portion of
M(t) and

is a grazing point. Then xo is not a valid boundary point if T(x0 ,t — ∆ t) > 0 or

T(x0,t + ∆(t) < 0 for positive and arbitarily small ∆ t.

Proof. We will prove only the case T(x o, t — At) > 0, since the proof of the second

case is analogous.

Let F(x, t) describe the object at time t with F(x,t) < 0, F(x, t) = 0 and

F (x, t ) > 0 representing the interior, boundary and exterior of object, respectively.

From the previous theorem, we know that if xo is a grazing point on the smooth

portion of boundary of M (t ), it satisfies

Rn
F(x , t) = 0

Ft (x00, t ) = 0

By Taylor's theorem, we can expand F(xo, t 0 ) as follows:

F (xo, to ) = F (xo, to — ∆t) Ft(xo, to — ∆ t ) ∆ t + o(∆t ) = 0

where At is positive and arbitarily small. Hence

F(xo,

∆ to — ∆t ) = — Ft (xo, to — ∆ t + o( )
31

Figure 6 A 2-D example of singular case in the global trimming


32

So if T( ,t0 — ∆t ) > 0, from (11) and the fact that ∇ F points out of M , we know

that Ft (xo,t0 — ∆t )
(xo,t0 0, which implies that

This means that 0 of the M(t0 — ∆t ), hence


belongs to the interior is an interior

point of the swept volume. This completes the proof.

We observe that when is a grazing point of the smooth portion of ∂M

one can also expand the Taylor series in another way:

(t0 )+

From which we can easily obtain the following result which is the "higher ordei

criterion" Sambandan proved in [20].

Let a cochmension-1 face f of the solid 6; in be given by an implicit

equation F (x) = 0 and let F (x) > 0 denote the region in which is

outside the solid generator. Let P be a. point on the face which satisfies

the envelope criterion, i. e., F ( P ) = Ft ( P ) = 0. Then, there exists a

neighborhood U ( P ) of P on the envelope of the face f that will be on

the boundary of or outside the swept


Rn
Rn volume if

either ∂/k∂tk =0 ∀ k > k<N N t 0, ∂ = / k t ∂ /


x0
x0
or Ǝ an even integer N > 0 such that

1. ∂k N ∂ 2.

i. e. , the first non-vanishing derivative must be of even order and be

0 ΣNk=2∂t
k + ΣNk=2 ∂= k/
positive.
= ∂k/k∂tF (—
(x
kFF(( t0 —+ ∆t
(-∆t ,,t0 )<0
o(│∆t│N)
o(│∆t│N
∆t
33

Hence P is included in the type-2 patch (envelope curve). If N is even

but the condition 2 is not satisfied, then Ս(P ) lies on the side of f that

contains the swept volume and hence need not be included in the type-2

patch. If N is odd, Ս( P ) may lie partially in the swept volume.

It is instructive to compare Sambandan's local trimming procedure with that of

Theorem 4.2. First, we observe that Theorem 4.2 applies to any grazing point on

a smooth portion of ∂M(t), whereas Sambandan's procedure is inconclusive if the

first nonvanishing derivative is of odd order. Second, although theoretically possible,

it may be very difficult to find F (x, t) for even a simple object. M and sweep σ in

practice. It is, in general, much easier to check the sign of T (x,t ) than it is to

compute F(x, t) and its various derivatives with respect to t.


CHAPTER 4

IMPLEMENTATION OF PROTOTYPE SOFTWARE IN 2-D


SPACE
xo

In this chapter, we will describe the implementation of the theory developed in chap-

ter 3 for evaluating the boundary representation of the swept volume generated by a

planar polygonal object undergoing a general 2-D smooth rigid motion.

The given object M , which is a n-sided polygon, will be represented by a se-

quence of its vertices in the order in which they are encountered when marching

counter-clockwise along its boundary. We observe that the configuration of the ob-

ject at any time t, which is denoted as M(t), is completely defined by the positions of

(t)), t
its vertices, ϵ [0,1],
say {(x i = 1, ..., m}.
(t),y The i th vertex of the polygon

will be denoted
, v by viii+1
(t ) which is (x i(t
(t )), yi (t)), and the ith edge which represents the

) is denoted
ordered pair v by ei (t )

The general 2-D smooth sweep σ will be defined by the sweep equation or the

sweep differential equation as follows:

x = ξXσ = ξ + Ȧ(t)AT(t)(x
(t ) - ξ) + A(t)xo (2)
(1)

where ξ : [0,1] → R2 and A : [0, 1] → SO(2) are smooth and satisfy ξ(0) = 0, and

ϵ
A(0) = I . Here R2 denotes the initial position of the point and x [0, 1]

the position of the point at time t. As we described in chapter 2, it is not difficult to

derive (13) from (12). Here, we note that

ξ + θ [ 00] -1] (x - ξ) [1
(3)

cos θ(t) ] [cosinθ(t) - sin θ(t) ]


since A(t ) =

34
35

For the direction of the edge normals, we choose those which point into the

interior of the polygon.

4.1 Overview of the Whole Process

The whole evaluation process can be outlined in detail as follows:

Step 1 Given: the polygonal object M, a smooth 2—D sweep

which is represented by sweep differential equation

T (x —ξ) A Ȧ + ) t ξ( = σ x=X

and the time interval [0, 1]

Step 2 For each edge ei, compute the edge normals (normal

ized, inward directed) at time 0, which are denoted

by Ni; (x,0). We note that all of these normals are

constant on ei (which is a straight line segment).

Step 3 Subdivide the time interval [0, 1] into a finite number

of segments which are represented by a sequence of

time instants.

Step 4 At time t = 0, compute the instantaneous ingress


portion of ∂M(0) which may be composed of several

ingress boundary curves. Discretize them into a. finite

number of straight line segments and determined by

a. set of ingress points.

Step 5 For each time instant, compute the instantaneous

grazing points of ∂M(t) and note their geometric rela-

tionship. By making use of the geometric relationship


36

between these grazing points, form a set of grazing

boundary curves.

Step 6 At time t = 1, compute the instantaneous egress

portion of ∂M(1 ) which may be composed of sev-

eral egress boundary curves. Discretize them into a

finite number of straight line segments which are de-

termined by a. set of egress points.

Step 7 Collect the points and curves obtained in steps 4, 5

and 6 . These are the candidate boundary points and

candidate boundary curves.

Step 8 Global trimming

(1) Initial global trimming: eliminate those can-

didate bounadry points which belong to the interior

of the swept volume Scr(M) = Ս1t=0 M(t).

(2) Secondary global trimming: If a. candidate

point belongs to the boundary of more than one t-

section of the swept volume and has not been elim-

inated by initial trimming, it may still need to be

removed. If its normal vectors for two of the sections

are in opposite directions, it should be trimmed. This

occurs when the inner product of the two normal vec-

tors equals —1.

Step 9 Connect the remaining candidate boundary curves to

form an approximation of the boundary representa-

tion of the swept volume.


37

We will discuss some steps in detail in the next section and the following example

will be used to illustrate the steps.

Example 4.1 The object is the pentagon shown in figure 8. and the swept volume

produced is shown in figure 9.

Object description:

(0, 0) → (2.0, 0) → (2.0, 0.5) → (1.0, 1.5) → (0.0, 1.0)

This is the sequence of vertex points in the counter—clockwise orientation.

Sweep equation:

[ y ] [ 0 ][ 0 ] cos( πt )[ ]π(x -] 4t)


[[0πt]sin( πt ) ]=[4+— x [ [ y0 ] 0 [x )] πt )—sin( πt cos( ]=[4t+ x [
] ]

Sweep differential equation.

4.2 Implementation of Candidate Points Selection Procedure

Here, we will describe in detail how to apply the sweep flow method to obtain a

set of candidate boundary points, and join them into candidate boundary curves by

making use of their geometric relationship. Let T(x, f) denote the clot, product of the

sweep vector and the normal vector at x on the boundary of Al (1) at time t. which

is defined by equation (1).

As we can see from equation (1), in order to determine the value of T(x, t), the

edge normal N (x,0) needs to be computed. This is quite easily done as follows: Let.

x ϵ ei and define
1] [0
/║N*(x)║
N*(x) (0x)i[—=-+1vN*]

Then

N(x, 0) =
38

Figure 8 The object in example 4.:


39

Figure 9 The swept volume in example 4.1


40

The following result characterizes the grazing point sets on the edges of the object

being swept.

Lemma 4.1 Given a smooth. 2-D sweep and a polygonal object. At any given time

t ϵ [0,1], one and only one of the following is true for an edge excluding the vertices:

there is exactly one grazing point; or there are no grazing points; or every point is a

grazing point.

Proof. As we mentioned before, at any given time t, for each edge e; except at

its two vertices, the normal vector is constant which can be expressed as: N; (t) =

( N1(t ), N2(t )). From equation (14), the sweep vector at any given point x and time

t is: θ1 N2x +1(N1ξ —θξ2 [ ξ2 ] [ ξ2 [1 + 0]θ(x[(1x1 — ξ1


[ a b ]
X, = .(t) 1 θξ 2(ξ20[1 0] ) )] 1 (t) ξt ( )—]- (t t) θ ξ1 1 Nθ = — + 0 [0-1](x X θ 2 N )] ]2 [ x [0-1](x — 2 det ξ ( = θ + Det ]+ 1 1 ξ ξ [ ]

If x is a grazing point on the interior of an edge e; at given time t, it must satisfy

the tangency condition:

T (x, t) =‹ σ,Xi›N =

=
= ,\T 2 x 1 θ.1 N02—
1x +N

Since x is on the edge ei, it must satisfy the edge equation which is in the form:

ax1 + bx2 =

In which a, b and c are contants for t fixed.

Equations (16) and (17) constitute a pair of linear equations in the two unknowns

x1, x2 at time t. The determinant of this system is:


41

= θK
Where K = N2b + N1a ≠ 0. If θ ≠ ) a 1 N system
0, this linear N θ = unique solution
b+ 2 has

x = (x1, x 2 ), which means that in this case the grazing point on edge e i is unique if

exists (it does not exist if the point lies on the line (17) outside the edge). If θ = 0,

(16) and (17) either have no solution, or every point of the line (17) is a solution.

Thus the proof is complete.

It follows from Theorem 3.2 proved in chapter 3 that the following procedure

will yield all of the candidate boundary points.

At time 0, compute the normal vector Ni(x, 0) of each edge ei . Let Ti (vj ,t)

denote the dot product of the sweep vector at vertex v.; and the normal vector of

i+1 (t )), compute Ti(vi , t )


edge ei at time t. At any time t, for each edge ei = (vi ( t ),vi+1

and Ti (vi+1 , t).

For each edge ei , check the signs of Ti (vi , t ) and Ti( v , t ):

• If they are both greater than or equal to zero, then this edge as a whole belongs

to the ingress portion of ∂M (t )


• If they are both less than or equal to zero, then this edge belongs to the egress

portion of ∂M

e If Ti (vi ,t ) • Ti (vi+1,t ) < 0, then we can use some standard numerical algorithm

(e. g. bisection method) to find the grazing point x on the edge ei which satisfies

T(x,t) = 0. The portion from x to the vertex satisfying T < 0 is the egress

portion of this edge, and the other side is the ingress part.

At any time t, each vertex can be classified as follows:

• If Ti(vi , t ) > 0 and Ti+1(vi,


Ti+I (vi, t ) > 0, this vertex is an ingress point.

) < 0 and < 0, this vertex is an egress point.


• If

This classification is directly based on the definition we stated in chapter 2. The

candidate boundary points of example 4.1 are shown in figure 10.

In order to improve the efficiency, it is also very important to exploit the geo-

metric relationship between the candidate points in order to save the computational

work of forming the final boundary representation of the swept volume. The following

properities of the candidate boundary points are very useful:

• During the sweep, the grazing point of an edge will move along the edge. Usually

it will start, at one of the end points and move to the other end. However, the

grazing point may start at an end and terminate at. an intermediate point or

begin at an intermediate point and end at a vertex, or even start and end at

intermediate points. In an case, if we connect the grazing points of this edge

according to their movement along the edge as it moves through successive

instants of time, we obtain an edge candidate curve.

• Because of the multiple normals at a vertex, there exist some time intervals

in which the vertex is a candidate point. The trajectories of this vertex

during those time intervals are the vertex candidate curves.

In the actual implementation, we use a double link structure to keep a record of the

geometric information connecting the candidate points. The link will be changed

during the global trimming procedure described below.

4.3 Implementation of Trimming Procedure

In the 2-D case, global trimming requires a procedure for determining whether or

not a given candidate point lies within the interior of any of the polygonal t -sections

M(t), 0 ≤ t ≤ 1. This can be done by using following algorithm:

Algorithm 4.1 Given any polygon and a point in 2-D space. draw a ray from. this
Ti(vi , t )t)∙≤ 0, it is a grazing point.
Ti+1(vi,
point in any direction (for convience and efficiency, we adopt the upward direction
43

Figure 10 The candidate boundary points of example 4.1


44

or downward direction). Count the number of intersections of the ray with the edges

of polygon. If this number is odd, then the point is inside the polygon; if it is even,

then it is outside the polygon. See figure 11. The count of the number of intersections

is done as follows: If the intersection does not coincide with the vertex of the edge,

add 1 to the intersection counter; Otherwise, there are the special cases for which the

count must be defined according to the following illustrations:

case 1.1 Intersection with a vertex. If the two edges are


on different sides of the ray starting at x, add 1 to the
intersection counter.

case 1.2 Intersection with a vertex. If the two edges are


on the same side of the ray starting at x. add 2 to the
x intersection counter.
45

case 2.1 Complete intersection with an edge. If two


adjacent edges are on different sides of the ray starting
at x, add 1 to the intersection counter.

case 2.2 Complete intersection with edge. If two ad-


jacent edges are on the same side of x, add 2 to the
intersection counter.

Although a proof of this theorem can be obtained using quite basic results from

topology, we have not been able to find a complete proof in the literature. In the

interest of completeness, a proof is given in Appendix A at the end of this thesis.

Thus the global trimming precedure can be outlined as follow:

Input: The set of candidate boundary points

Global trimming:

Initial global trimming: For each candidate bound-

ary point, use the algorithm 4.1 to test whether it be-

longs to the interior of M ( t ) for some t ϵ [0, 1]. If it


46

Figure 11 Deciding whether a. point is inside a. polygon or not


47

does, eliminate it from the candidate boundary point

set. Otherwise, record the number of times it belong to

Al (t) for some t E [0, 1].

Secondary global trimming: For each candidate

boundary point left after initial global trimming, check

if it belongs to the boundary of more than one t-section

of the swept volume. If it does, then compute dot prod-

ucts of the its normals at all the different time instances,

If one of them is equal to —1, this point is a singular

candidate point and should be trimmed.

Output: The set of boundary points

From the set of boundary points constructed by our algorithm, one can obtain a.

piecewise linear approximation to the boundary of the swept volume by linear in-

terpolation (i. e. just connect successive points by straight line segments). It is

clear that the precision of this approximation can be controlled by the choice of the

subdivision of [0, 1] into time instants. Figure 12 the trimming result of example 1.1

and the final boundary representation is shown in figure 13.

4.4 Some Examples

Example 4.1 Figure 14-17 shows a pentagon undergoing a sweep for which the

swept volume produced has a hole, which means that the boundary of the swept

volume has more than one connected component.

Object description:

(0, 0) → (2.0, 0) → (2.0, 0.5) → (1.0, 1.5) → (0.0, 1.0)


48

Figure 12 The boundary points after global trimming of example 4.1


49

Figure 13 The final boundary of the swept volume of example 4.1


50

Sweep equation:

] [ x0 ] [ x ] πt)= [ )-sin(3 πt 4t+[cos(3 []]3π(y x0 =][πytx ] [-=4t


x+[]1)] ][ 4(t
x ][] 4+=] [+[cos(πt)
[ 4t
- -0.5)- sin(πt] +) [ -
- 1] ] 0 [y y ] t)][ π [ 5t y] ] t)cos(3 π [ y ][ 0[sin(3 ]
[ 0.5) π(x -[4t) cos(2.7πt)]
[] 0 ][ sin(2.7πt)
[sin(πt) 3π((
cos(πt)] x -[ 4t)
y [] y0 ]

Sweep differential equation:

[y] [4(t
-0.5) [ y] [8(t - 2

Example 4.2 In this example, we approximate a disk by a polygon, and thus obtain

an approximation of its swept volume.

Object description:

A disk of radius 1 whose boundary is a circle approximated by a polygon:

(1.0, 0.0) → (0.707, 0.707) → (0.0,1.0) → (-0.707, 0.707) → (-1.0, 0.0) →

(-0.707, -0.707) → (0.0, -1.0) → (0.707, -0.707)

Sweep equation:

Sweep differential equation:

The results are shown in figures 18-21.

Example 4.3 Figures 22-25 are the same example which appears on the page SS of

[20].

Object description:


(-1.0,0.0) →
(1.0,0.0) (1.5, 1.0) → (0.0,2.0) (-1.5,0) →

Sweep equation:

[ x ] = [ 5t ] + [ cos(2.7πt) - sin(2.7πt) ] [ x ]
51

Sweep differential equation:

1 [ =x ] [+
=5.0[ 5.0
y ] ]= [ 5.0
+2.7(x
] [ -2.7(y
[ 2.7(y—- 5.0t)-5.0t)
5.0t) _
52

Figure 14 The swept volume of example 4.2


53

Figure 15 The candidate boundary points of example 4.2


34

Figure 16 The boundary points after global trimming of example 4.2


55

Figure 17 The boundary representation of swept volume in example


4.2
57

Figure 19 The candidate boundary points of example 4.3


58

Figure 20 The boundary points after global trimming of example 4.3


59

Figure 21 The boundary representation of swept volume in example 4.3


60

Figure 22 The swept volume of example 4.4


61

Figure 23 The candidate boundary points of example 4.4


62

Figure 24 The boundary points after global trimming of example 4,4


63

Figure 25 The boundary representation of swept volume in example 4.4


CHAPTER 5

SOME IDEAS ON 3-D EXTENSIONS

In this chapter, we will briefly describe how our general solution procedure can be

applied to 3-D space. Although our sweep flow method has no restriction on the

shape of the object, we still want to concentrate our attention on polyhedra because

they are more readily handled. We note that any reasonably smooth 3-D object

can be approximated by a polyhedron to any precision. The resulting boundary

representation of the swept volume is then a close approximation to the actual swept

volume boundary.

We will use the boundary-based, object-based, evaluated-form of representation

of solid models to model the polyhedral object we want to sweep. There are several

data structures which can be used to represent the topological information of the

solid models. We plan to use the edge-based graph data stuctures which include the

well known winged-edge structure [1] and its variations. For more details, refer to

[27].

The general smooth 3-D sweep and sweep differential equation will also be

represented as:

x = Xσ = ξ + A(t)AT(t)(x-ξ) (2)

Where x = ξ(t)are
ξ : [0, 1] → R3 and A : [0, 1] → SO(3) + A(t)x0
smooth and satisfy "(0) = 0, and (1)

A(0) = I. Here x0 ϵ R3 denotes the initial position of the point and x : [0, 1] → R3

the position of the point at time t. As we described in chapter 2, it is not difficult to

derive (19) from (18). For the six degrees of freedom of 3-D Euclidean motions, the

64
65

sweep equation is:

x ]= ξ (t)
[ ) +[ 0ξA(t
1(t x0αcß [ 0 ξ[1(t)]
] + [ )α-γsx -α0 ξ2(t αcß] [ x2 - ξ2[cαcß
+ßcα + γsγsα ] [ ξßcα +[ ξγsαcß]
2(t)]
cαsßsγ+3(t)]- [sαcß ßξ3[(t)]x1+ [cαcγ
sαsγ[ -ssαsßsγ
[ cαsßcγ ξß-1]
-+ cßsγ γs+αcßsαsßcγ
- sαsγ sß]α +-γsαsαsγ
- cßsγ cß ]] 0 ] [ x3 - ξ3 ]

Where cα = cos α, sα = sin α, etc., ξ1(t),ξ2(t),ξ3(t) are the three components of the

translational motion with respect to the fixed world coordinate system, and α,

are the euler angles which specify the rotation angles of the object with respect to its

original orientation. With some computational work, the sweep differential equation

can be shown to have the following form:

x = Xσ = ξ ( t ) AT( t )(x —ξ)

+A

Our 3—D evaluation process, which is also based on the general process described

in chapter 3, is similar to the 2—D case, but is much more complicated. We describe

it briefly as follows:

• Step 1. Input the polyhedral object. M, a smooth 3—D sweep which is repre-

sented by sweep equation or sweep differential equation in the form of (1) and

(2), and the time interval [0, 1].

• Step 2. For each planar boundary surface, compute the surface normals (nor-

malized and inward directed). We note that all these normals are constant on

the planar surface to which they belong. The normals of edges and vertices will

be specified as

— edge: we assign two normal vectors of two surfaces which intersect at this

edge.
— vertex: we assign all the normal vectors of the surfaces which intersect at

this vertex.
66

From Steps 1 and 2 above, we obtain the normal (or normals) of every boundary

point at time 0. It is very easy to compute and check the Tangency Condition T(x, t)

of any point x E am at any given time t E [0, 1] by using formula (1).

By Theorem 3.2, the boundary of the swept volume satisfies the following formula:

∂Sσ( M ) C= {U1t=0 ∂0M(t)}U∂+M(0)U∂-M(1)

Here, at each given time instant,∂0M(t) is the set of instantaneous grazing points and

∂+M(0) and ∂-M(1) , which are the instantaneous ingress portion and instantaneous

egress portion of the boundary at t = 0 and t = 1, respectively, are both sets of

planar patches.

It is quite straightforward to classify any point x ϵ ∂M as an ingress point,

grazing point, or egress point, according to the definitions we stated in chapter 3.

• Step 3. Subdivide the time interval [0, 1] into a finite number of segments

which are represented by a sequence of time instants.

• Step 4. At time t = 0, compute the instantaneous ingress portion of ∂M ((0))

and discretize it into a finite number of triangular planar patches which are

each determined by their three vertices.

For each time instant, do Steps 5, 6 and 7 below. We note that in the ∂M case, our

global trimming algorithm is so fast and simple that the local trimming procedure

does not seem to be necessary. But, in the 3-1) case, since the global trimming will

be very complicated and require a. great deal of computation, the local trimming

procedure which is relatively simple and easy, will become very critical in terms of

the efficiency of the program.

• Step 5. Compute the instantaneous grazing points of ∂M . t

• Step 6. Apply the Local Trimming Procedure proved in Section 2 to eliminate

those instantaneous grazing points which are not valid boundary curves.
67

• Step 7. At time t = 1, compute the instantaneous egress portion of ∂M(1)

and discretize it into a. finite number of triangular planar patches which are

represented by their three vertices.

• Step 8. Collect all those points obtained in steps 4, 5 and 6 and organize them

into groups of points belonging to surfaces. These are the candidate boundary

surfaces.

• Step 10. Global trimming: Due to the global nature of the general sweep, we

need to eliminate those candidate points which belong to the interior of the

swept volume So (M) = U1t=0 M(t). As in the 2-D case, this will include initial

global trimming and secondary global trimming

• Step 11. Connect the remaining candidate points to form a. set of boundary

triangular patches which comprise a polyhedral approximation of the boundary

representation of the swept volume.

• Step 12. Use the output of the previous steps and various graphics techniques

to produce realistic visualizations of the swept volume which can be viewed

from different perspectives.


CHAPTER 6

CONCLUSIONS

In this thesis, we studied the problem of obtaining the boundary representation of

a swept volume generated by a rigid object undergoing a smooth, but otherwise

general sweep. By using the sweep differential equation to characterize the sweep,

we developed a very general evaluation procedure which is comprised of the following

basic steps: First, classify the boundary points of the sweeping object based on

their relationship with the sweep flow field, and thus produce a set of candidate

boundary patches. Then, apply a local trimming operation to remove some of the

candidate boundary points which are not members of the boundary of the swept

volume. Finally, due to the global nature of the general sweep, a. global trimming

procedure is needed to remove the remaining candidate boundary patches (or portions

of candidate boundary patches) which belong to the interior of the swept volume. The

final boundary representation of the swept volume is then formed by the boundary

patches. We have devised a. general global trimming criterion which theoretically

identifies valid boundary patches in an efficient. manner. Our general global trimming

criterion includes both initial global trimming and secondary trimming; secondary

global trimming is used to deal with singular cases that seem to have escaped the

attention of some research.

Based on the general evaluation procedure, 2-D prototype software winch in-

corporates a very efficient 2-D global trimming algorithm has been developed. The

program produces good approximations to the boundary of the swept volume of any

planar polygonal object undergoing a. general smooth sweep. Although it is clear that

the precision of the approximation can be controlled by adjusting the partition of the

time interval and also by selecting the method to connect the boundary points, we

68
69

have not vet made a thorough error analysis. Compared with other programs, our

method seems to be more efficient and general; for example, it readily handles cases

in which the boundary of the swept volume has more than one component. We also

tested the program on shapes for which the object boundary is not a polygon, e. g.

, a circle, by using polygonal approximation. However, the relationship between the

precision of polygonal object approximation and the precision of the resulting swept

volume approximation, and how to control the approximation of the object for more

general shapes, etc., need further study.

The application of the general process to the 3-D case, which is very similiar to

the 2-D case but certainly will be much more complicated, is also briefly described.

To actually develop the 3-D prototype software, many interesting problems await

further research: e. g., rapidly computing the grazing curves, devising an efficient 3-

D global trimming algorithm, and combining the sweep differential equation theory

with computer graphics techniques in order to obtain realistic renderings of swept

volume which can be employed to advantage in manufacturing engineering practice.


APPENDIX A: PROOF OF THE ALGORITHM 4.1

A proof of a part of this result is outlined in the exercises in [9]. We first recall the

definition of the mod 2 degree of a map. Let X and Y be closed, n-dimensional

manifolds and

f : X Y→

a continous mapping. It is well-known(see [21]) that for any x E X, the nth homology

group with coefficients in Z2 , the field of integers modulo 2, satisfies

Hn( X, X \ x; Z 2 ) 2 Z ≈

The map f induces a map of homology groups.

* ) f*→ :Hn(Y,Y\
Hn(X, X \x;
(1)Z Z2 2)
f (x);

that yields a map

2 2 Z → 2 Z : * f

by making the usual identifications. The mod degree of f is defined to be

= f
deg

Let us now assume that X is piecewise smooth, Y is smooth and f : X Y is

continuous and piecewise smooth. A point y ϵ Y is a regular value of f if

f -1 ( y ) =y} ) ( x fX:ϵ )={x (y -1 f

consists only of points at which f is smooth and the derivative D f(x) is invertible.

By compactness, it follows that f -1 (y) is finite if y is a regular value(see [9] and [13))

and

f = # deg

70
71

In addition, Sard's Theorem implies that the set of regular values is dense in Y , so

any y can be perturbed to a regular value.

We now further restrict X by assuming that it is a polyhedron that is imbedded

in Rn+1 as a closed, n-dimensional submanifold that is homeomorphic to the n-

sphere Sn. By the Jordan-Brouwer Separation Theorem(see [9], [13] and [21]), X

has an inside and outside. If x0 ϵ Rn+1\ X, there is a simple method based on degree
xx0x0
x0

ϵ for deciding if x0 is inside


theory 0
0 or outside X . Let Sϵ( o )) be aϵ small n-sphere of

radius e > 0 that is centered at xo and does not intersect X. We can map X into

S,(x0 ) by radial projection along rays emanating from . For t ϵ X, this map is
easily seen to be defined by

0║/ ║x — ϵ( — )
f (x) = +

The radial projection

:: X → Sϵ
∂M(t) →

is clearly continuous and piecewise smooth. In fact, it only fails to be smooth at faces

of dimension less than n of the polyhedron X. Standard degree theoretical results

imply that is inside X if deg 2 f 0.

It is easy to characterize the regular values of the radial projection .1. as follows:

y ϵ Sϵ( xx0
x0) is regular if the ray from xo through y does not intersect any edges of

the polyhedron X. At this point, a proof of Algorithm 1.1 is easily within reach, and

it should be noted that there is also a rather obvious generalization to polyhedral

objects in any Rn.

Let ϵ R2\ ∂M(t) and X be the 1-dimensional polygonal closed curve ∂M(t).

0 from
Draw a ray in any direction. If this ray does not intersect a vertex of X , the

0
corresponding
0 point y ϵ ( )) is a regular value of the radial projection
72

If the ray has an odd number of intersections with≠ ∂M ( t ) , then deg2 0 and xo

is inside of ∂M according to the criterion established above. On the other hand,

∂M the number of intersections is even,


when ff = 0, and x0 must lie outside of

a . The special case 1.1, 1.2, 2.1 and 2.2 correspond to situations where y is

not a regular value. A small perturbation of y, however, produces an arbitarily close

regular value since the regular values are dense. Observe that a small rotation of the

ray in case 1.1 yields an intersection with one less edge and this adds one to the count

modulo 2. For case 1.2, a small perturbation produces an intersection with either the

same number of edges or two fewer edges, and this adds zero to the count modulo 2.

Cases 2.1 and 2.2 clearly yield to the same perturbation analysis, and thus the proof

is complete.
REFERENCES

[1] Baumgart, B. 1972. "Winged-based Polyhedron Representation."Stanford Intel-


ligence Report No. CS-320.

[2] Blackmore, D., and M. C. Leu. 1990. "Analysis of Swept Volume Via Lie Groups
and Differential Equations. "Intl. J. of Robotics Research ( to appear ).

[3] Blackmore, D., and M. C. Leu. 1990. "A Differential Equation Approach to
Swept Volumes."Proc. Rennselaer's Second Intl Conf. on Computer In-
tegrated Manufacturing. Troy:143-149.

[4] Blackmore, D., and M. C. Leu. 1991. "Sweep Differential Equation Analysis of
Multiaxis NC Machining."( preprint ).

[5] Blackmore, D., M. C. Leu, and K. K. Wang. 1992. "Application of Flows and
Envelopes to NC Machining. "Annals of the CIRP.

[6] Boltyanskii V. G. 1964. Envelopes. Macmillan, NewYork.

[7] Christenson, C. 0., and W. L. Voxman. 1977. Aspects of Topology. New York:
Marcel Dekker.

[8] Drysdale, R., R. Jerard, B. Schaudt, and K. Hauck. 1989. "Discrete Simulation
of NC Machining."Algorithmica, 4:33-60

[9] Guillemin, Vector, and A. Pollack. 1974. Differential Topology. Prentice-Hall.


Inc., Englewood Cliffs, New Jersey.

[10] Jerard, R., and R. Drysdale. 1991. "Method for Geometric Modeling, Simulat-
ion and Spatial Verification of NC Machining Programs." Product. Modeling
for Computer Aided Design. Amsterdam, North Holland, 1-14.

[11] Kedem, G., R. Marisa, J. Menon, and H. Voelcker. 1990. Ray Representation
for Swept and Offset Solids. Tech. Report CPA 90-2, College of Engineer-
ing, Cornell University.

[12] Leu, M. C., S. Park, and K. K. Wang. 1986. "Geometric Representation of


Translational Swept Volume and its Applications. "ASME J. of Engi-
neering for Industry. 10S:113-119.

[13] Milnor, J. 1965. Topology from the Differentiable Viewpoint. University Press of
Virginia, Charlottesville.

73
74

[14] Munkres, J. R. 1961. Elementary Differential Topology. Princeton University


Press, Princeton, New Jersey.

[15] Narvekar, A. P. 1991. Representation and Application of Swept Solids for Nu-
mercially Controlled Milling. Master's Thesis, Department of Mechanical
and Aerospace Engineering, State University of New York at Buffalo,
Buffalo, NY.

[16] Requicha, A. A. G. 1977. "Constructive Solid Geometry." Technical Memo 25,


Production Automation Project, University of Rochester, Rochester, NY.

[17] Requicha, A. A. G. 1977. "Mathematical Models of Rigid Solid Objects. " Tech-
nical Memo TM-28. Production Automation Project, University of
Rochester, Rochester, NY.

[18] Requicha, A. A. G. 1980. "Representation of Rigid Solids: Theory, Methods and


Systems." A CM Computing Survey. 12(4):437-464.

[19] Requicha, A. A. G., and H. B. Voelcker. 1982. "Solid Modeling: a Historical


Summary and Contemporary Assement. "IEEE Computer Graphics and
Applications. 2:9-14.

[20] Sambandan, K. Geometry Generated by Sweeps of Polygons and Polyhedra. Tech.


Report 66, Injection Molding Project, College of Engineering, Cornell
University.

[21] Spanier, E. 1966. Algebraic Topology. McGraw-Hill, New York.

[22] Sungertekin, U., and H. Voelcker. 1986. "Graphical Simulation and Automatic
Verification of NC Machining Programs. "Proc. IEEE Int 'l. Conf. on
Robotics and Automation: 157-165.

[23] Wang, W. P.. and K. K. Wang. 1986a. "Real-time Verfication of Multi-axis NC


Programs with Raster Graphics." Proceeding of 1986 IEEE Int 'l Confer-
ence on Robotics and Automation: 166-171.

[24] Wang, W. P., and K. K. Wang. 1986b. "Geometric Modeling for Swept Volume
of Moving Solids."IEEE Computer Graphics and Applications. 6(12): 8-
17.

[25] Weld, J. D., and M. C. Leu. 1990. "Geometric Representation of Swept Volume
with Application to Polyhedral Objects."Inter'l Journal of Robotic Re-
search. 9:105-107.
75

[26J Wilson, E. B. 1911. Advanced Calculus. Dover Publication INC., New York.

[27] Weiler, K. 1985. "Edge-Based Data Structures for Solid Modeling in Curved-
Surface Environment." IEEE Computer Graphics and Applications. 1: 21-
40.

You might also like