Algoritma Bulatan Titik Tengah          Mari Cuba Lukis          Soalan Penyelesaian (Input Pengguna)

 
Soalan Contoh dan Penyelesaian

Di beri jejari bulatan, r = 10 dan pusat bulatan (10, 20).  Dapatkan titik-titik pada oktan pertama bagi bulatan tersebut.  Sila tunjukkan jalan penyelesaiannya menggunakan Algoritma Bulatan Titik Tengah / Midpoint Circle.

Penyelesaian :

1.  Inputkan jejari, r = 10 dan pusat bulatan (Xc, Yc) sebagai (10, 20)

     Tetapkan titik pertama di atas lilitan bulatan yang berpusat di asalan sebagai (0, r) --> (0, 10)

 

2.  Cari nilai awal pemalar penentu (Po) :       

                        Po    =    5/4  -  r

                                =    5/4  -  10

                                =    -35/4  @  -8.75

 

3.  Seterusnya, pada setiap xk, bermula pada k = 0, uji nilai pemalar penentu tadi :

                        

                        Jika pk < 0, titik seterusnya adalah ( xk + 1, yk ) dan

                                   pk+1 = pk + 2xk+1 + 1

 

                        Jika pk > 0, titik seterusnya adalah (xk+1, yk-1) dan

                                    pk+1 = pk + 2x k+1 + 12yk+1

 

     * Berdasarkan nilai pemalar penentu (Po) yang diperolehi adalah -35/4  @ -8.75 maka :

     * Po memenuhi syarat

 

             pk < 0, titik seterusnya adalah xk akan bertambah 1 dan yk adalah tetap (xk = 1, yk = 10)

             Seterusnya cari Pk di mana, p1  =  pk + 2xk+1 + 1

                                                               -8.75 + 2(1) +1

                                                               = -5.75

 

                           

     * P1 memenuhi syarat

 

             pk < 0, titik seterusnya adalah xk akan bertambah 1 dan yk adalah tetap (xk = 2, yk = 10)

             Seterusnya cari Pk di mana, p2  =  pk + 2xk+1 + 1

                                                               -5.75 + 2(2) +1

                                                               = -0.75

 

     * P2 memenuhi syarat

 

             pk < 0, titik seterusnya adalah xk akan bertambah 1 dan yk adalah tetap (xk = 3, yk = 10)

             Seterusnya cari Pk di mana, p3  =  pk + 2xk+1 + 1

                                                               -0.75 + 2(3) +1

                                                               =  6.25

 

                           

     * P3 memenuhi syarat

 

             pk > 0, titik seterusnya adalah xk akan bertambah 1 dan yk akan berkurang sebanyak 1(xk = 4, yk = 9)

             Seterusnya cari Pk di mana, p2  =  pk + 2xk+1 + 1 - 2yk+1

                                                               6.25 + 2(4) +1 - 2(9)

                                                               = -2.75

 

     * P4 memenuhi syarat

 

             pk < 0, titik seterusnya adalah xk akan bertambah 1 dan yk adalah tetap (xk = 5, yk = 9)

             Seterusnya cari Pk di mana, p5  =  pk + 2xk+1 + 1

                                                               -2.75 + 2(5) +1

                                                               =  8.25

 

                           

 

     * P5 memenuhi syarat

 

             pk > 0, titik seterusnya adalah xk akan bertambah 1 dan yk akan berkurang sebanyak 1(xk = 6, yk = 8)

             Seterusnya cari Pk di mana, p6  =  pk + 2xk+1 + 1 - 2yk+1

                                                               8.25 + 2(6) +1 - 2(8)

                                                               =  5.25

 

     * P6 memenuhi syarat

 

             pk > 0, titik seterusnya adalah xk akan bertambah 1 dan yk akan berkurang sebanyak 1(xk = 7, yk = 7)

             Seterusnya cari Pk di mana, p7  =  pk + 2xk+1 + 1 - 2yk+1

                                                               5.25 + 2(7) +1 - 2(7)

                                                               = 6.25

 

                           

 

Jadual di bawah menunjukkan titik-titik simetri bagi oktan yang pertama berdasarkan pengiraan di atas 

di mana pengiraan akan berhenti sekiranya x >= y :

 

k

Pk

X

Y

X + Xc

Y + Yc

0 -35/4 @ -8.75 1 10 11 30
1 -5.75 2 10 12 30
2 -0.75 3 10 13 30
3 6.25 4 9 14 29
4 -2.75 5 9 15 29
5 8.25 6 8 16 28
6 5.25 7 7 17 27

 

4.  Tentukan titik-titik simetri pada 7 oktan yang lain menggunakan simetri 8 hala.

 

Jadual di bawah menunjukkan titik-titik simetri bagi  7 oktan yang lain :

 

Oktan2 (b, a) @ (x, y)
x y
10 1
10 2
10 3
9 4
9 5
8 6
7 7

 

Oktan3 (b, -a) @ (x, -y)

x

-y

10

-1

10

-2

10

-3

9

-4

9

-5

8

-6

7

-7

 

Oktan4 (a, -b) @ (x, -y)

x

-y

1

-10

2

-10

3

-10

4

-9

5

-9

6

-8

7

-7

 

Oktan5 (-a, -b) @ (-x, -y)
-x
-y

-1

-10

-2

-10

-3

-10

-4

-9

-5

-9

-6

-8

-7

-7

 

Oktan6 (-b, -a) @ (-x, -y)

-x

-y

-10

-1

-10

-2

-10

-3

-9

-4

-9

-5

-8

-6

-7

-7

 

Oktan7 (-b, a) @ (-x, y)

-x

y

-10

1
-10 2
-10 3
-9 4
-9 5
-8 6
-7 7

 

Oktan8 (-a, b) @ (-x, y)
-x
y
-1 10
-2 10
-3 10
-4 9
-5 9
-6 8
-7 7