2D Clipping 1
-
Upload
rhoda-morrison -
Category
Documents
-
view
219 -
download
0
Transcript of 2D Clipping 1
-
8/3/2019 2D Clipping 1
1/23
2 D C l i p p i n g
Clipping examples
-
8/3/2019 2D Clipping 1
2/23
2 D C l i p p i n g
o i n t s
i n e s
o l y g o n s
-
8/3/2019 2D Clipping 1
3/23
P o i n t C l i p p i n g
Point clipping
-
8/3/2019 2D Clipping 1
4/23
P o i n t C l i p p i n g
s s u m e t h a t t h e w i n d o w i s d e n e d a s
x
l
x
r
y
b
y
t
h e n p o i n t c l i p p i n g i s s t r a i g h t f o r w a r d a n d s i m p l e
o i n t
x ; y
i s p l o t t e d i f
x2
x
l
; x
r
;
n d
x2
y
b
; y
t
a y a t t e n t i o n t o
1 h o m o g e n e o u s c o o r d i n a t e s
2 e q u a t i o n s o f l i n e s
-
8/3/2019 2D Clipping 1
5/23
L i n e C l i p p i n g
Line clipping
-
8/3/2019 2D Clipping 1
6/23
L i n e C l i p p i n g
i n e c l i p p i n g o p e r a t i o n s s h o u l d c o m p r i s e
h e f o l l o w i n g c a s e s
t o t a l l y p l o t t e d
p a r t i a l l y p l o t t e d
n o t p l o t t e d a t a l l
l e a s e n o t e t h a t e v e n t h o u g h n e i t h e r o f t w o
e r t i c e s i s w i t h i n t h e w i n d o w , c e r t a i n p a r t o f
h e l i n e s e g m e n t m a y b e s t i l l w i t h i n !
h e r e a r e m a n y d i e r e n t t e c h n i q u e s f o r
l i p p i n g l i n e s i n 2 D
h e f u n d a m e n t a l s a r e
1 l i n e e q u a t i o n s a n d 2 i n t e r s e c t i o n c o m p u t a t i o
e x t , w e w i l l d i s c u s s C o h e n - S u t h e r l a n d a l g o r i t h m
-
8/3/2019 2D Clipping 1
7/23
C o h e n - S u t h e r l a n d A l g o r i t h m
t i s n o t t h e m o s t e c i e n t a l g o r i t h m
t i s o n e t h e m o s t c o m m o n l y u s e d
h e k e y t e c h n i q u e i s 4 - b i t c o d e :
B R L w h e r e
i s s e t t o 1 i f y t o p
i s s e t t o 1 i f y b o t t o m
i s s e t t o 1 i f x r i g h t
i s s e t t o 1 i f x l e f t
-
8/3/2019 2D Clipping 1
8/23
W i n d o w R e g i o n s
x=left x=right
y=top
y=bottom
10011000 1010
0001 0000 0010
0101 0100 0110
P0
P1
-
8/3/2019 2D Clipping 1
9/23
A l g o r i t h m
s s u m e t w o e n d p o i n t s a r e p
0
a n d p
1
f c o d e
p
0
O R c o d e
p
1
i s
0 0 0 0 ,
h e l i n e c a n b e t r i v i a l l y a c c e p t e d ,
h e l i n e i s d r a w n
f c o d e
p
0
A N D c o d e
p
1
i s N O T
0 0 0 0 ,
h e l i n e c a n b e t r i v i a l l y r e j e c t e d ,
h e l i n e i s n o t d r a w n a t a l l
t h e r w i s e , c o m p u t e t h e i n t e r s e c t i o n p o i n t s o f
h e l i n e s e g m e n t a n d w i n d o w b o u n d a r y l i n e s
m a k e s u r e t o c h e c k a l l t h e b o u n d a r y l i n e s
-
8/3/2019 2D Clipping 1
10/23
L i n e I n t e r s e c t i o n
x=l x=r
y=t
y=b
a
b
c
d
e
f
(x1,y1)
(x2,y2)
-
8/3/2019 2D Clipping 1
11/23
I n t e r s e c t i o n C o m p u t a t i o n
i n e e q u a t i o n
y = y
1
+ m x,
x
1
h e r e
m =
y
2
,
y
1
x
2
,
x
1
i n e i n t e r s e c t i o n w i t h t h e l e f t v e r t i c a l b o u n d a r y
x = l
s s u m e t h e i n t e r s e c t i o n i s c
x = l
y = y
1
+ m l,
x
1
i n e a b i s c l i p p e d w . r . t . x = l
, n o w i t b e c o m e s c b
i n e i n t e r s e c t i o n w i t h t h e t o p b o u n d a r y
y = t
s s u m e t h e i n t e r s e c t i o n i s d
y = t
x =
1
m
t,
y
1
+x
1
-
8/3/2019 2D Clipping 1
12/23
i n e c b i s c l i p p e d w . r . t . y = t
, l i n e c b b e c o m e s c d
i n e i n t e r s e c t i o n w i t h t h e r i g h t b o u n d a r y
x = r
s s u m e t h e i n t e r s e c t i o n i s e
x = r
y = y
1
+ m r,
x
1
i n e c d i s c l i p p e d w . r . t . x = r
, l i n e c d b e c o m e s c e
i n e i n t e r s e c t i o n w i t h t h e b o t t o m b o u n d a r y
y = b
s s u m e t h e i n t e r s e c t i o n i s f
y = b
x =
1
m
b,
y
1
+x
1
i n e c e i s c l i p p e d w . r . t . y = b
, l i n e c e b e c o m e s f e
o , t h e e n t i r e p r o c e s s i s
a b
c b
-
8/3/2019 2D Clipping 1
13/23
c d
c e
f e
o t e t h a t , v a r i o u s i m p r o v e m e n t s a r e p o s s i b l e !
s i n g p a r a m e t r i c r e p r e s e n t a t i o n o f l i n e q u e s t i o n s ,
2 3 0
r e a t e m o r e r e g i o n s a r o u n d t h e c l i p w i n d o w ,
2 3 3
i n e c l i p p i n g u s i n g p o l y g o n
c o n v e x p o l y g o n , P 2 3 5
c o n c a v e p o l y g o n , s p l i t i n i n t o
s e v e r a l c o n v e x p o l y g o n , P 2 3 6
-
8/3/2019 2D Clipping 1
14/23
P o l y g o n C l i p p i n g
-
8/3/2019 2D Clipping 1
15/23
P o l y g o n C l i p p i n g
-
8/3/2019 2D Clipping 1
16/23
P o l y g o n C l i p p i n g
i n e c l i p p i n g a l g o r i t h m s w i l l l e a d t o
s e t o f d i s j o i n t l i n e s e g m e n t c h a i n s
n g e n e r a l , c l i p p i n g e a c h e d g e w i l l n o t w o r k !
e s h a l l n o t c l i p e a c h e d g e o f t h e p o l y g o n w . r . t .
h e w i n d o w b o u n d a r y o n e a t a t i m e
e t r e a t t h e p o l y g o n a s a w h o l e o b j e c t
l i p t h e e n t i r e o b j e c t a g a i n s t e a c h b o u n d a r y o f t h
i n d o w
u t h e r l a n d - H o d g m a n a l g o r i t h m
a n y p o l y g o n c o n v e x o r c o n c a v e
a n y c o n v e x c l i p p i n g p o l y g o n
-
8/3/2019 2D Clipping 1
17/23
P o l y g o n C l i p p i n g E x a m p l e
-
8/3/2019 2D Clipping 1
18/23
P o l y g o n C l i p p i n g E x a m p l e
-
8/3/2019 2D Clipping 1
19/23
P o l y g o n C l i p p i n g E x a m p l e
-
8/3/2019 2D Clipping 1
20/23
P o l y g o n C l i p p i n g E x a m p l e
-
8/3/2019 2D Clipping 1
21/23
P o l y g o n C l i p p i n g E x a m p l e
-
8/3/2019 2D Clipping 1
22/23
A l g o r i t h m
u t h e r l a n d - H o d g m a n a l g o r i t h m
e r t e x l i s t o f t h e c u r r e n t p o l y g o n
l i p a g a i n s t e d g e s o f t h e w i n d o w b o u n d a r y
e w v e r t e x l i s t o f t h e n e w p o l y g o n
h e a l g o r i t h m c l i p s a g a i n s t a l l f o u r e d g e s
n a s e q u e n t i a l o r d e r , p r o d u c i n g a n e w v e r t e x
i s t e a c h t i m e
-
8/3/2019 2D Clipping 1
23/23