11
Chapter 4 Isophote based free-form surface partition 50  Chapter 4 Isophote Based Free-form Surface Partition Isophote is a concept used in surface interrogation. In this chapter, based on isophote, a new surface partition algorithm is developed to partition the free-form surfaces into different regions according to its slopes with respect to a prescribed direction. The free-form surface could be any type of commonly used surfaces, examples include compound surfaces, composite or trimmed surfaces. A tracing algorithm is developed to generate the isophote curves or the region boundary curves. Several new concepts are defined in developing these algorithms.  4.1 Introduction Wherever free-form surfaces are used, they often need to be analyzed with respect to different aspects like, for example, visual pleasantness, technical smoothness, geometric constraints or surface intrinsic properties (Bajaj 1999). Surface interrogation is such a technique that is used to detect surface imperfections which can not be discerned by conventional rendering methods. With these interrogation

Isophote Based Free-Form

  • Upload
    tuongnv

  • View
    216

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Isophote Based Free-Form

8/12/2019 Isophote Based Free-Form

http://slidepdf.com/reader/full/isophote-based-free-form 1/11

Chapter 4 Isophote based free-form surface partition

50

 

Chapter 4

Isophote Based Free-form

Surface Partition

Isophote is a concept used in surface interrogation. In this chapter, based on isophote,

a new surface partition algorithm is developed to partition the free-form surfaces into

different regions according to its slopes with respect to a prescribed direction. The

free-form surface could be any type of commonly used surfaces, examples include

compound surfaces, composite or trimmed surfaces. A tracing algorithm is developed

to generate the isophote curves or the region boundary curves. Several new concepts

are defined in developing these algorithms. 

4.1 Introduction

Wherever free-form surfaces are used, they often need to be analyzed with respect to

different aspects like, for example, visual pleasantness, technical smoothness,

geometric constraints or surface intrinsic properties (Bajaj 1999). Surface

interrogation is such a technique that is used to detect surface imperfections which can

not be discerned by conventional rendering methods. With these interrogation

Page 2: Isophote Based Free-Form

8/12/2019 Isophote Based Free-Form

http://slidepdf.com/reader/full/isophote-based-free-form 2/11

Chapter 4 Isophote based free-form surface partition

51

techniques, the shapes of subtle flaws on the free-from surfaces are exaggerated

therefore they could be easily identified.

There are various methods in surface interrogation to detect different characters of

the surface. For examples, curvature distributions on a surface reflect the extend of

concave and convex situations of the surface, reflection lines and high-light lines

reflect the smoothness of the surface, which are used in automobile industry to detect

small dents on the car bodies. Isophote method is one of the various surface

interrogation methods that could be used to display the first and second derivative

irregularities (Kim and Lee 2003). Physically isophotes refer to points that have same

light intensities when the surface is shined with parallel light sources. Geometrically it

contains information about distributions of normals to the surface. Isophote curve is

one of the characteristic curves on a surface which consists of isophotes. Based on this

concept, in this chapter a new free-form surface partition algorithm is developed to

divide the surfaces into different regions according to their slopes with respect a

 prescribed direction. These regions are actually special features on the surfaces which

have large surface slopes. In this algorithm, several new concepts are defined to

 partition the surface and a tracing method is developed to generate the isophote curves

or boundaries of these regions. 

4.2 Isophotes, light and dark regions

Isophotes are points on a surface that have the same light intensity (Poeschl 1984,

Han and Yang 1999). Given a reference direction, isophotes are points on the surface

that have the same angle between the surface normal at this point and the reference

direction. This angle is denoted as the isophote angle. The smaller the isophote angle

at a point on the surface, the more light that point receives. Hence, a region in which

Page 3: Isophote Based Free-Form

8/12/2019 Isophote Based Free-Form

http://slidepdf.com/reader/full/isophote-based-free-form 3/11

Chapter 4 Isophote based free-form surface partition

52

the isophote angles are smaller than a prescribed value is denoted as a light region. 

The boundary of this light region will be an isoline, consisting of isophotes that have

the same isophote angle as the prescribed value. The rest of the neighboring regions

on the surface would have isophote angles that are larger than the prescribed value.

Compared with light regions, less light is received in these areas. Therefore they are

refereed to dark regions.

Let the reference vector be z axis (0, 0, 1), and let a virtual source of light shine on

the surface in a direction opposite to this vector. The isolines are shown in Figure. 4.1.

Except for the two representing the direction of the z-axis, the arrows in the figure

represent the normal vectors at various points on the surface. If we consider a point on

the isoline Li with an isophote angle  β i , then the light region corresponds to the region

enclosed with the isoline Li, the region outside this is considered as the dark region.

 β i   Nz

L2

L1

L3

L4

 

Figure 4.1 Isophotes, light and dark regions

Let P (u,v) be a point on the surface with coordinates (u,v). The unit normal to the

surface at this point, N(u,v), is given by

Page 4: Isophote Based Free-Form

8/12/2019 Isophote Based Free-Form

http://slidepdf.com/reader/full/isophote-based-free-form 4/11

Chapter 4 Isophote based free-form surface partition

53

 

v

 P 

u

 P v

 P 

u

 P 

vu

∂×

∂∂

∂×

=),( N   (4.1)

and the isophote angle,  β , by

Q

v

 P 

u

 P 

v

 P 

u

 P 

 

 

 

 

∂×

∂×

= β cos (4.2)

where Q is the unit reference vector.

According to their definition, for  β  ≠ 0, isolines have the following properties:

Property 1. If the surface is of r C    continuity, the isolines are 1−r C  continuous

curves (Poeschl 1984).

Property 2. Isolines do not intersect each other.

Property 3. On a surface of   1C  or higher continuity, isolines are close loops, or,

when they are not closed, they intersect the surface boundaries.

These properties are used in the following light region generation algorithm.

4.3 Light region and boundary curve generation

Given a reference vector Q,  isolines with any angle  β   can be obtained by solving

Equation (4.2). However, an analytical solution to this equation is difficult. A

numerical tracing algorithm is thus developed. The main idea is to discretize the

surface into small grids and the points that have the same isophote angle are then

connected together into an isoline. The algorithm consists of two steps: (1) Griding

and initiating, and (2) Searching and tracing.

Page 5: Isophote Based Free-Form

8/12/2019 Isophote Based Free-Form

http://slidepdf.com/reader/full/isophote-based-free-form 5/11

Chapter 4 Isophote based free-form surface partition

54

4.3.1 Griding and initiating

First, the parametric uv  space of the surface is divided into small grids. A flag

function  S (m,n) which describes the intersection situations between isolines and the

grid lines is then established. Here (m,n) denotes the mth horizontal grid line and nth 

vertical grid line.

Let  β  be the isophote angle, P (m,n) be a grid point on the surface,  β (m,n) be the

angle between the surface normal at point P  and the reference direction, and l m and l n 

 be the number of grids in the vertical and the horizontal directions respectively. The

flag function S (m,n) is initialized as follows:

(1) Case 1 (Figure 4.2a): when the isoline intersects a horizontal grid line.

If  β  (m,n) <  β  <  β  (m,n+1)  or  β  (m,n) >  β  >  β  (m,n+1) then 

S (m,n) =1 for   m = 1, 2 ,…, l m; n = 1, 2 ,…, l n-1;

(2) Case 2 (Figure 4.2b): when the isoline intersects a vertical grid line.

If   β  (m,n) <  β  <  β  (m+1 ,n)  or  β  (m,n) >  β   >  β  (m+1 ,n) then

S(m,n) =2 for m = 1, 2,…, l m – 1; n = 1,2,…, l n;

(3) Case 3 (Figure 4.2c): when the isoline intersects a horizontal and a vertical grid

line.

If both condition (1) and condition (2) above are satisfied then S (m,n) =3.

m+1 

m

m-1 

n+1nn-1 

m+1

m-1

m

n+1 n-1 n

(a)

Page 6: Isophote Based Free-Form

8/12/2019 Isophote Based Free-Form

http://slidepdf.com/reader/full/isophote-based-free-form 6/11

Chapter 4 Isophote based free-form surface partition

55

 

m+1 

m

m-1 

n+1nn-1 

m+1

  m

m-1

n n+1n-1

 (b)

..n n+1n-1

m+1 

m

m-1

 

(c)

Figure 4.2 (a) Isoline intersects a horizontal grid line

(b) Isoline intersects a vertical grid line.

(c) Isoline intersects a horizontal and a vertical grid line

ui-1

ui+1

ui 

vi-1 vi+1vi 

n-1  n+1  n

m+1

m-1 

m

Figure 4.3 Two isolines are in one grid

Page 7: Isophote Based Free-Form

8/12/2019 Isophote Based Free-Form

http://slidepdf.com/reader/full/isophote-based-free-form 7/11

Chapter 4 Isophote based free-form surface partition

56

The grid size is chosen so as to ensure that there is only one isoline in one grid. In

the case where more than two intersection points are found in one grid, as shown in

Figure. 4.3 in which four intersection points are found from Equation (4.3),

++>>+(

++>>+(

+<<(

+<<(

)1,1()1,

)1,1(),1

)1,(),

),1(),

nmnm

nmnm

nmnm

nmnm

 β  β  β 

 β  β  β 

 β  β  β 

 β  β  β 

  (4.3)

a local subdivision is performed to reduce the grid size

−+=′

−+=′

=′=′

++

++

2,

2

,,

11

11

iiii

iiii

iiii

vvvv

uuuu

vvuu

  (4.4)

where 11 and,,, ++  ′′′′

iiii vuvu  are the u, v values of the new grid points.

4.3.2 Searching and tracing

This procedure starts from the four boundaries of the uv space, and continues into

the interior areas. For example, assume that the search starts from the bottom

 boundary: n =1, 2… l n-1. If S (1 ,n)=1 or S (1 ,n) =3, then the isoline intersects the grid

line between point (1 ,n) and (1, n+1). The coordinate of this intersecting point is

obtained through linear interpolation between these two points.

In the interior area, all the eight neighbor points of (m,n) except (m+1, n+1) and

(m-1, n-1) are checked to determine which grid this isoline will intersect next. This

 process is then repeated form this new point and continued until the curve comes to

the surface boundary or returns to the starting point. In order that the isoline could

return to the same starting point after one loop, the flag function S(m,n) of the starting

Page 8: Isophote Based Free-Form

8/12/2019 Isophote Based Free-Form

http://slidepdf.com/reader/full/isophote-based-free-form 8/11

Chapter 4 Isophote based free-form surface partition

57

 point should keep its original value after the first tracing. This guarantees that the

starting point can be traced twice and a close loop be formed.

In the case that the curve passes through the grid point (m,n), a small error ε  is

added to  β (m,n) so that the curve intersects grid lines instead of passing through the

grid points. When the tracing is completed, these intersection points are restored to

the corresponding grid points.

4.3.3 Light regions on C 0 continuous surfaces

Because of different requirements in industry, free-form surfaces used in practice

are often very complex and can not be described by a single piece of surface. For

example, there are several hundred pieces of free-form surfaces on a car body. It is

impossible to describe them with one or two equations. Compound surface is such a

surface that consists of piecewise C 1  or higher continuous surfaces which are

connected with C 0continuity. They are very commonly in CAD models. For example,

the surfaces of the car body are discontinuous at the protruding edge lines because of

reasons of aesthetics.

Above algorithm of isophote curve generation is only valid processing smooth

surfaces, i.e., the continuities of the surfaces should be C 1 or higher. In order to

 process compound surfaces, some special measures need to be taken.

From Property 1, isolines are continuous on C 1 or higher continuous surfaces. On

 piecewise C 1 or higher continuous surfaces connected with C 0 continuity, the isolines

 break at the edge of the junction. To generate closed light regions, the surface edges

could be used as special boundaries of the regions. Therefore, the new light regions

are formed by the isolines and the surface edges together, as Region E  and Region F  

shown in Figure 4.4(a).

In the surface partitioning process, because Regions  E   and  F   have the same

Page 9: Isophote Based Free-Form

8/12/2019 Isophote Based Free-Form

http://slidepdf.com/reader/full/isophote-based-free-form 9/11

Chapter 4 Isophote based free-form surface partition

58

isophote angle, a new light region  F  E  D   U= , which is bounded by the isolines and

 portions of the junction edge, is formed (Figure 4.4(b)). This region is processed as an

ordinary light region in tool path generation calculations.

Region E  

Region F  

(a)

Union Region D

 

(b)

Figure 4.4 (a) Light regions on piecewise C 2 continuous surfaces connected

with C 0 continuity.

(b) A union light region on piecewise C 2continuous surfaces

connected with C 0 continuity.

Page 10: Isophote Based Free-Form

8/12/2019 Isophote Based Free-Form

http://slidepdf.com/reader/full/isophote-based-free-form 10/11

Chapter 4 Isophote based free-form surface partition

59

4.4 Isophote based free-form surface partition

With this methodology, the free-form surface could be partitioned into light and dark

regions according to the isophote angle provided. Inside the light region, the isophote

angles of all the points on the surface are smaller than the prescribed angle. Whereas

inside the dark region, the isophote angles of all the points on the surface are larger

than the angle.

If the normal direction of a plane is taken as the reference direction, the free-form

surface could be partitioned by its slopes with respect to this plane.

Inside the light region, the angles between the normal to the surface (NSurface) and

the normal to the plane (NPlane), 2 β  , is smaller than the isophote angle, the slope is

steeper (Figure 4.5). Whereas inside the dark region, this angle ( 1 β   ) is larger, so the

slope is tender. Hence, with this method, the whole surface could be partitioned into

steeper and flatter regions according the orientation of a plane. For different plane

orientations, or different isophote angles, the area and position of each region could

 be different. If the plane is fixed, the isophote angle becomes the only governing

variable. The area and position of these regions can only be changed with the isophote

angles provided. Therefore, when different isophote angles which are formed by

normals of the surface and that of a plane are taken to partition a surface, the light and

dark region on the surface would vary with this angle, as shown in Figure 4.6, where

different colors (gray) of isophote curves correspond to different isophote angles.

Because the normal direction of a plane could be defined arbitrarily towards either

side of it, to partition the surface,  β ±  should be utilized. As shown in Figure 4.6, the

closed cyan curves in the middle of the figure, which have sharp slopes, are the results

of negative angles corresponding to their positive pairs at the boundary regions of the

two ends in the figure.

Page 11: Isophote Based Free-Form

8/12/2019 Isophote Based Free-Form

http://slidepdf.com/reader/full/isophote-based-free-form 11/11

Chapter 4 Isophote based free-form surface partition

60

This surface partition strategy is used as the basic tool in the adaptive tool path

generation method which is presented in next chapter.

Plane

N Plane

Plane

N Surface

N Plane

β 1

N Surface

β 2 

 

Figure 4.5 Different slopes on the free-form surface with respect to a plane.

Figure 4.6 Different light and dark regions on a free-form surface