An Effective Approach to Minimize Error in Midpoint Ellipse Drawing Algorithm

Download Full-Text PDF Cite this Publication

Text Only Version

An Effective Approach to Minimize Error in Midpoint Ellipse Drawing Algorithm

(Minimize Error in Midpoint Ellipse Drawing Algorithm)

Dr. M. Javed Idrisi Department of Mathematics Mizan-Tepi University Tepi Campus, Ethiopia

Aayesha Ashraf

Department of Computer Science and Engineering Jamia Hamdard (Deemed to be University)

New Delhi, India

Abstract The present paper deals with the generalization of Midpoint Ellipse Drawing Algorithm (MPEDA) to minimize the error in the existing MPEDA in Cartesian form. In this method, we consider three different values of h, i.e., 1, 0.5 and 0.1. For h = 1, all the results of MPEDA have been verified. For other values of h it is observed that as the value of h decreases, the number of iteration increases but the error between the points generated and the original ellipse points decreases and vice-versa.

the points will lie outside the ellipse, where x and y are real numbers.

Initial Decision Parameter (Pk) for the region R1

Let the initial point be (0, b), i.e., xk = 0 and yk = b, therefore the initial decision parameter Pk is given by

k

k

P'

(4b2 a2 )

4

  • a2b.

    Keywords Ellipse; Cartesian form of an Ellipse; MPEDA; Minimizing Error.

    If Pk 0, then yk+1 = yk 1 and the next point will be (xk+1, yk

    • 1), which gives

      P' P' b2 2b2 (x

      1) 2a2 ( y

      1)

      1. Introduction

        k 1

        k k k

        k k

        k k

        A Midpoint Ellipse Drawing Algorithm (MPEDA) is used to

        If Pk < 0, then yk+1 = yk and the next point will be (xk+1, yk), which gives

        determine the points needed for rasterizing an ellipse. In this

        algorithm, we divide the ellipse into 4 different quadrants and each quadrant will be divided into two regions R1 and R2,

        '

        P

        P

        k 1

        P' b2 2b2 (x

        1)

        respectively. If we are able to plot the points in first quadrant, then by symmetry we can plot the points in the other three quadrants. Let (x, y) be the point in first quadrant, then the points in other quadrants can be determined as shown in the given Table 1.

        Table 1: Coordinates in the quadrants of an Ellipse

        Initial Decision Parameter (Pk) for the region R2

        Let (xk, yk) be any point in the first region R2, then the initial decision parameter Pk for the region R2 is given by

        k m m k k

        k m m k k

        P'' f (x , y ) b2 (x 1/ 2)2 a2 ( y 1)2 a2b2.

        k k

        k k

        If Pk 0, then xk+1 = xk and the next point will be (xk, yk 1), which gives

        P

        P

        Quadrant

        I

        II

        III

        IV

        Point

        (x, y)

        (x, – y)

        (- x, – y)

        (- x, y)

        Quadrant

        I

        II

        III

        IV

        Point

        (x, y)

        (x, – y)

        (- x, – y)

        (- x, y)

        ''

        k 1

        P'' a2 2a2 ( y

        1)

        If Pk < 0, then xk+1 = xk + 1 and the next point will be (xk+1, yk

        1), which gives

        P''

        P'' b2 2b2 (x 1/ 2) a2 2a2 ( y 1)

        As we know that, every quadrant is again divided into two regions R1 and R2 (say). In order to complete a whole quadrant, we have to find out the points in the regions R1 and R2.

        The equation of ellipse having center at origin is given by,

        x2 y2

        a2 b2 1

        where a and b are the semi major and minor axes respectively and a > b.

        The above equation can be written as, f(x,y) = 0, where f(x, y)

        = b2x2 + a2y2 a2b2. All points (x, y) which satisfy the equation f(x, y) = 0 lies on the boundary of given ellipse. If f(x,

        y) < 0, the points will lie inside the ellipse and for f(x, y) > 0,

        k 1 k k k

        The Ellipse drawing algorithm is studied by many researchers in past few decades. Some of the noteworthy work is as follows: Aken [1] has presented a midpoint algorithm for drawing ellipses on a raster graphics display which was highly accurate and only requires a few integer additions per pixel. They have also proved and demonstrated that a simple extension of J. E Bresenhams circle drawing algorithm doesnt guarantee accuracy in most general cases of ellipse. Hence the accuracy of the midpoint algorithm is limited only by the resolution of the display device itself, yet it requires no more execution time than the extended Bresenham algorithm. Kappel [2] has introduced an original algorithm for generating discrete approximations to ellipses for display on raster

        devices. This approach was not new, they have combined the existing ideas to render a better algorithm for evaluating from the benchmarks of efficiency, accuracy and elegance. Fellner et.al. [3] have studied an incremental and robust algorithm that efficiently computes the best approximation of general

        (xm , ym ) (xk h, yk h / 2).

        Let Pk be the value of the function f(x, y) at the mid-point (xm,

        ym), therefore,

        P' f (x , y ) b2 (x h)2 a2 ( y h / 2)2 a2b2.

        ellipses. Agathos et.al. [4] have described an algorithm

        similarly based on Bresenham methodology known as Efficient integer 8-connected algorithms for the fast

        k m m k k

        k 1

        k 1

        k 1

        k 1

        Thus, Pk+1 will be given by,

        (1.2)

        generation of Conic Sections whose axes are aligned to the

        '

        P

        P

        k 1

        b2 (x

        h)2 a2 ( y

        h / 2)2 a2b2 .

        (1.3)

        coordinate axes. Their performance results show that in the case of the ellipse, the algorithm is at least as fast as other known integer algorithms but requires lower integer range and

        where, xk+1 = xk + h and yk+1 = yk or yk h.

        Thus, form Eqn. (1.3), we have,

        always performs correct region transitions. In this algorithm

        P' b2 (x 2h)2 a2 ( y h / 2)2 a2b2 .

        (1.4)

        antialiasing is easily incorporated. Liu et.al. [5] have

        k 1

        k k 1

        developed a double-step circle drawing algorithm which gives

        the best approximate pixels to drawing a circle with only

        On subtracting Eqn. (1.2) from Eqn. (1.4), we get,

        P' P' b2 (x 2h)2 a2 ( y h / 2)2 a2b2

        integer arithmetic. They showed that the speed of the

        k 1 k k k 1

        algorithm introduced is higher than the existing circle drawing algorithms. Furthermore, their algorithm can be used to draw anti-aliased circles, e.g. to draw filled circle edges with different intensity, without increase in calculations. Haiwen et.al. [6] have proposed a hybrid algorithm for fast drawing ellipse. Dimri et.al. [7] have described midpoint ellipse algorithm as one of the popular algorithms for ellipse drawing.

        b2 (x h)2 a2 ( y h / 2)2 a2b2 .

        k k

        k k

        On simplifying, we have,

        k 1 k k k

        k 1 k k k

        P' P' b2 (x 2h)2 (x h)2

        k 1 k

        k 1 k

        a2 ( y h / 2)2 ( y h / 2)2

        which gives

        They have proposed an algorithm in thatcomputes the pixels only in one octant and remaining part of the auxiliary circle

        P

        P

        '

        k 1

        P' b2p 2b2h(x h)

        (1.5)

        k k

        k k

        can be generated by reflection about line x = y, with the help of the parametric equation of the ellipse.

        a2 ( y2 y2 ) a2h( y

  • yk )

    k 1

    k 1

    k k 1

    k k 1

    The present work deals with the generalization of Midpoint Ellipse Drawing Algorithm (MPEDA) in Cartesian form. In this method, we consider three different values of h

    Let the initial point be (0, b), i.e., xk = 0 and yk = b, therefore from Eqn. (1.2), we get,

    (4b2 a2 )p

    i.e., 1, 0.5 and 0.1. For h = 1, all the results of MPEDA have

    P' a2bh.

    (1.6)

    k

    k

    been verified. For other values of h it is observed that as the 4

    value of h decreases, the number of iteration increases but the

    error between the points generated and the original ellipse points decreases and vice-versa.

    If Pk 0, then yk+1 = yk h and the next point will be (xk+h, yk

    h), which gives

    P' P' b2p 2b2h(x h) 2a2h( y h) (1.7)

      1. Generalization of Midpoint Ellipse Drawing Algorithm

        k 1

        k k k

        k k

        k k

        The equation of ellipse having center at origin is given by,

        If Pk < 0, then yk+1 = yk and the next point will be (xk+h, yk), which gives

        1

        1

        x2 y2

        a2 b2

        (1.1)

        '

        P

        P

        k 1

        P' b2p 2b2h(x

        • h)

        (1.8)

        where a and b are the semi major and minor axes respectively and a > b.

        The Eqn. (1.1) can be written as, f(x,y) = 0, where f(x, y) = b2x2

        + a2y2 a2b2. All points (x, y) which satisfy the equation f(x, y)

        = 0 lies on the boundary of given ellipse. If f(x, y) < 0, the points will lie inside the ellipse and for f(x, y) > 0, the points will lie outside the ellipse, where x and y are real numbers.

        Initial Decision Parameter (Pk) for the region R1

        Initial Decision Parameter (Pk) for the region R2

        Let (xk, yk) be any point in the first region R2 then the next point to (xk, yk) in the region R2 is given by (xk, yk h) or (xk + h, yk h), where h is the width of the grid. Let (xm, ym) be the mid-point of (xk, yk h) or (xk + h, yk h), therefore,

        (xm , ym ) (xk h / 2, yk h).

        Let Pk be the value of the function f(x, y) at the mid-point (xm,

        ym), therefore,

        P'' f (x , y ) b2 (x

        h / 2)2

        Let (x , y ) be any point in the first region R

        and it is assumed

        k m m k

        (1.9)

        k k 1

        • a2 ( y

        h)2 a2b2 .

        that this point is moving in xy-plane in clockwise direction. Thus, the next point to (xk, yk) in the region R1 is given by

        k

        k 1

        k 1

        k 1

        k 1

        Thus, Pk+1 will be given by,

        (xk + h, yk) or (xk + h, yk h), where h is the width of the grid.

        ''

        P

        P

        k 1

        b2 (x

        h / 2)2 a2 ( y

        h)2 a2b2 .

        (1.10)

        Let (xm, ym) be the mid-point of (xk + h, yk) and (xk + h, yk

        h), therefore,

        where, xk+1 = xk or xk + h and yk+1 = yk h.

        k 1

        k 1

        k

        k

        Thus, form Eqn. (1.10), we have,

        P

        P

        ''

        k 1

        b2 (x

        h / 2)2 a2 ( y

        2h)2 a2b2 .

        (1.11)

        k k 1

        k k 1

        k

        k

        On subtracting Eqn. (1.9) from Eqn. (1.11), we get,

        P

        P

        ''

        k 1

        P'' b2 (x

        h / 2)2 (x

        h / 2)2

        Table 4: Points in the region R1 for h = 0.5

        k k

        k k

        x

        y

        Pk

        xk+1

        yk+1

        Pk+1

        2b2xk+1

        2a2yk+1

        0

        6

        -179

        0.5

        6

        -152

        36

        768

        0.5

        6

        -152

        1

        6

        -107

        72

        768

        1

        6

        -107

        1.5

        6

        -44

        108

        768

        1.5

        6

        -44

        2

        6

        37

        144

        768

        2

        6

        37

        2.5

        5.5

        -216

        180

        704

        2.5

        5.5

        -216

        3

        5.5

        -99

        216

        704

        3

        5.5

        -99

        3.5

        5.5

        36

        252

        704

        3.5

        5.5

        36

        4

        5

        -131

        288

        640

        4

        5

        -131

        4.5

        5

        40

        324

        640

        4.5

        5

        40

        5

        4.5

        -59

        360

        576

        5

        4.5

        -59

        5.5

        4.5

        148

        396

        576

        5.5

        4.5

        148

        6

        4

        117

        432

        512

        6

        4

        117

        6.5

        3.5

        136

        468

        448

        x

        y

        Pk

        xk+1

        yk+1

        Pk+1

        2b2xk+1

        2a2yk+1

        0

        6

        -179

        0.5

        6

        -152

        36

        768

        0.5

        6

        -152

        1

        6

        -107

        72

        768

        1

        6

        -107

        1.5

        6

        -44

        108

        768

        6

        -44

        2

        6

        37

        144

        768

        2

        6

        37

        2.5

        5.5

        -216

        180

        704

        2.5

        5.5

        -216

        3

        5.5

        -99

        216

        704

        3

        5.5

        -99

        3.5

        5.5

        36

        252

        704

        3.5

        5.5

        36

        4

        5

        -131

        288

        640

        4

        5

        -131

        4.5

        5

        40

        324

        640

        4.5

        5

        40

        5

        4.5

        -59

        360

        576

        5

        4.5

        -59

        5.5

        4.5

        148

        396

        576

        5.5

        4.5

        148

        6

        4

        117

        432

        512

        6

        4

        117

        6.5

        3.5

        136

        468

        448

        a2 ( y 2h)2 ( y h)2

        On simplifying, we have,

        P'' P'' b2 (x

        h / 2)2 (x h / 2)2

        k 1 k

        k 1

        k (1.12)

        k

        k

        a2p 2a2h( y h)

        k k

        k k

        If Pk 0, then xk+1 = xk and the next point will be (xk, yk h), which gives

        P

        P

        ''

        k 1

        P'' a2p 2a2h( y

        h)

        (1.13)

        If Pk < 0, then xk+1 = xk + h and the next point will be (xk+h, yk

        k k

        k k

        h), which gives

        P

        P

        ''

        k 1

        P'' b2p 2b2h(x

        h / 2)

        (1.14)

        k

        k

        a2p 2a2h( y h)

      2. Result

        Let us draw an ellipse having centre at (0, 0) and semi-major and minor axes are 8 units and 6 units, respectively by the

        Table 5: Points in the region R2 for h = 0.5

        x

        y

        Pk

        xk+1

        yk+1

        Pk+1

        2b2xk+1

        2a2yk+1

        6.5

        3

        -263.75

        7

        2.5

        -155.75

        504

        320

        7

        2.5

        -155.75

        7.5

        2

        2.25

        540

        256

        7.5

        2

        2.25

        7.5

        1.5

        -77.75

        540

        192

        7.5

        1.5

        -77.75

        8

        1

        162.25

        576

        128

        8

        1

        162.25

        8

        0.5

        146.25

        576

        64

        8

        0.5

        146.25

        8

        0

        162.25

        576

        0

        x

        y

        Pk

        xk+1

        yk+1

        Pk+1

        2b2xk+1

        2a2yk+1

        6.5

        3

        -263.75

        7

        2.5

        -155.75

        504

        320

        7

        2.5

        -155.75

        7.5

        2

        2.25

        540

        256

        7.5

        2

        2.25

        7.5

        1.5

        -77.75

        540

        192

        7.5

        1.5

        -77.75

        8

        1

        162.25

        576

        128

        8

        1

        162.25

        8

        0.5

        146.25

        576

        64

        8

        0.5

        146.25

        8

        0

        162.25

        576

        0

        general method of Midpoint ellipse drawing algorithm. We will plot the points only in the regions R1 and R2 of first

        quadrant considering (0, 6) as an initial point for different values of h.

        432

        x

        y

        Pk

        xk+1

        yk+1

        Pk+1

        2b2xk+1

        2a2yk+1

        0

        6

        -332

        1

        6

        -224

        72

        768

        1

        6

        -224

        2

        6

        -44

        144

        768

        2

        6

        -44

        3

        6

        208

        216

        768

        3

        6

        208

        4

        5

        -108

        288

        640

        4

        5

        -108

        5

        5

        288

        360

        640

        5

        5

        288

        6

        4

        244

        512

        6

        4

        244

        7

        3

        400

        504

        384

        x

        y

        Pk

        xk+1

        yk+1

        Pk+1

        2b2xk+1

        2a2yk+1

        0

        6

        -332

        1

        6

        -224

        72

        768

        1

        6

        -224

        2

        6

        -44

        144

        768

        2

        6

        -44

        3

        6

        208

        216

        768

        3

        6

        208

        4

        5

        -108

        288

        640

        4

        5

        -108

        5

        5

        288

        360

        640

        5

        5

        288

        6

        4

        244

        432

        512

        6

        4

        244

        7

        3

        400

        504

        384

        Table 2: Points in the region R1 for h = 1

        Table 6: Points in the region R1 for h = 0.1

        x

        y

        Pk

        xk+1

        yk+1

        Pk+1

        2b2xk+1

        2a2yk+1

        0

        6

        -37.88

        0.1

        6

        -36.8

        7.2

        768

        0.1

        6

        -36.8

        0.2

        6

        -35

        14.4

        768

        0.2

        6

        -35

        0.3

        6

        -32.48

        21.6

        768

        0.3

        6

        -32.48

        0.4

        6

        -29.24

        28.8

        768

        0.4

        6

        -29.24

        0.5

        6

        -25.28

        36

        768

        0.5

        6

        -25.28

        0.6

        6

        -20.6

        43.2

        768

        0.6

        6

        -20.6

        0.7

        6

        -15.2

        50.4

        768

        0.7

        6

        -15.2

        0.8

        6

        -9.08

        57.6

        768

        0.8

        6

        -9.08

        0.9

        6

        -2.24

        64.8

        768

        0.9

        6

        -2.24

        1

        6

        5.32

        72

        768

        1

        6

        5.32

        1.1

        5.9

        -61.92

        79.2

        755.2

        1.1

        5.9

        -61.92

        1.2

        5.9

        -52.92

        86.4

        755.2

        1.2

        5.9

        -52.92

        1.3

        5.9

        -43.2

        93.6

        755.2

        1

        x

        y

        Pk

        xk+1

        yk+1

        Pk+1

        2b2xk+1

        2a2yk+1

        0

        6

        -37.88

        0.1

        6

        -36.8

        7.2

        768

        0.1

        6

        -36.8

        0.2

        6

        -35

        14.4

        768

        0.2

        6

        -35

        0.3

        6

        -32.48

        21.6

        768

        0.3

        6

        -32.48

        0.4

        6

        -29.24

        28.8

        768

        0.4

        6

        -29.24

        0.5

        6

        -25.28

        36

        768

        0.5

        6

        -25.28

        0.6

        6

        -20.6

        43.2

        768

        0.6

        6

        -20.6

        0.7

        6

        -15.2

        50.4

        768

        0.7

        6

        -15.2

        0.8

        6

        -9.08

        57.6

        768

        0.8

        6

        -9.08

        0.9

        6

        -2.24

        64.8

        768

        0.9

        6

        -2.24

        1

        6

        5.32

        72

        768

        6

        5.32

        1.1

        5.9

        -61.92

        79.2

        755.2

        1.1

        5.9

        -61.92

        1.2

        5.9

        -52.92

        86.4

        755.2

        1.2

        5.9

        -52.92

        1.3

        5.9

        -43.2

        93.6

        755.2

        In the last entry of Table 2, 2b2xk+1 = 504 > 2a2yk+1 = 384. Thus, the region R2 begins from this point and we will consider the point (7, 3) as an initial point for the region R2 (Table 3). Similarly, for h = 0.5 the points are found in Table 4-5 and for h = 0.1 the points are given in Table 6-7.

        Table 3: Points in the region R2 for h = 1

        x

        y

        Pk

        xk+1

        yk+1

        Pk+1

        2b2xk+1

        2a2yk+1

        7

        3

        -23

        8

        2

        361

        576

        256

        8

        2

        361

        8

        1

        297

        576

        128

        8

        1

        297

        8

        0

        361

        576

        0

        1.3

        5.9

        -43.2

        1.4

        5.9

        -32.76

        100.8

        755.2 5.9 4.1 41.76 6 4 34.12 432 512

        1.4

        5.9

        -32.76

        1.5

        5.9

        -21.6

        108

        755.2 6 4 34.12 6.1 3.9 28.48 439.2 499.2

        1.5

        5.9

        -21.6

        1.6

        5.9

        -9.72

        115.2

        755.2 6.1 3.9 28.48 6.2 3.8 24.84 446.4 486.4

        1.6

        5.9

        -9.72

        1.7

        5.9

        2.88

        122.4

        755.2 6.2 3.8 24.84 6.3 3.7 23.2 453.6 473.6

        1.7

        5.9

        2.88

        1.8

        5.8

        -58.04

        129.6

        742.4 6.3 3.7 23.2 6.4 3.6 23.56 460.8 460.8

        1.8

        5.8

        -58.04

        1.9

        5.8

        -44

        136.8

        742.4 6.4 3.6 23.56 6.5 3.5 25.92 468 448

        1.9

        5.8

        -44

        2

        5.8

        -29.24

        144

        742.4

        2

        5.8

        -29.24

        2.1

        5.8

        -13.76

        151.2

        742.4 Table 7: Points in the region R2 for h = 0.1

        2.1

        5.8

        -13.76

        2.2

        5.8

        2.44

        158.4

        742.4 x y Pk xk+1 yk+1 Pk+1 2b2xk+1 2a2yk+1

        2.2

        5.8

        2.44

        2.3

        5.7

        -53.6

        165.6

        729.6

        2.3

        5.7

        -53.6

        2.4

        5.7

        -35.96

        172.8

        729.6 6.5 3.5 -19.67 6.6 3.4 -15.03 475.2 435.2

        2.4

        5.7

        -35.96

        2.5

        5.7

        -17.6

        180

        729.6 6.6 3.4 -15.03 6.7 3.3 -8.39 482.4 422.4

        2.5

        5.7

        -17.6

        2.6

        5.7

        1.48

        187.2

        729.6 6.7 3.3 -8.39 6.8 3.2 0.25 489.6 409.6

        2.6

        5.7

        1.48

        2.7

        5.6

        -50.4

        194.4

        716.8 6.8 3.2 0.25 6.8 3.1 -38.79 489.6 396.8

        2.7

        5.6

        -50.4

        2.8

        5.6

        -29.88

        201.6

        716.8 6.8 3.1 -38.79 6.9 3 -26.87 496.8 384

        2.8

        5.6

        -29.88

        2.9

        5.6

        -8.64

        208.8

        716.8 6.9 3 -26.87 7 2.9 -12.95 504 371.2

        2.9

        5.6

        -8.64

        3

        5.6

        13.32

        216

        716.8 7 2.9 -12.95 7.1 2.8 2.97 511.2 358.4

        3

        5.6

        13.32

        3.1

        5.5

        -34.4

        223.2

        704 7.1 2.8 2.97 7.1 2.7 -30.95 511.2 345.6

        3.1

        5.5

        -34.4

        3.2

        5.5

        -11

        230.4

        704 7.1 2.7 -30.95 7.2 2.6 -11.75 518.4 332.8

        3.2

        5.5

        -11

        3.3

        5.5

        13.12

        237.6

        704 7.2 2.6 -11.75 7.3 2.5 9.45 525.6 320

        3.3

        5.5

        13.12

        3.4

        5.4

        -31.16

        244.8

        691.2 7.3 2.5 9.45 7.3 2.4 -20.63 525.6 307.2

        3.4

        5.4

        -31.16

        3.5

        5.4

        -5.6

        252

        691.2 7.3 2.4 -20.63 7.4 2.3 3.85 532.8 294.4

        3.5

        5.4

        -5.6

        3.6

        5.4

        20.68

        259.2

        691.2 7.42.3 3.85 7.4 2.2 -23.67 532.8 281.6

        3.6

        5.4

        20.68

        3.7

        5.3

        -20.16

        266.4

        678.4 7.4 2.2 -23.67 7.5 2.1 4.09 540 268.8

        3.7

        5.3

        -20.16

        3.8

        5.3

        7.56

        273.6

        678.4 7.5 2.1 4.09 7.5 2 -20.87 540 256

        3.8

        5.3

        7.56

        3.9

        5.2

        -30.56

        280.8

        665.6 7.5 2 -20.87 7.6 1.9 10.17 547.2 243.2

        3.9

        5.2

        -30.56

        4

        5.2

        -1.4

        288

        665.6 7.6 1.9 10.17 7.6 1.8 -12.23 547.2 230.4

        4

        5.2

        -1.4

        4.1

        5.2

        28.48

        295.2

        665.6 7.6 1.8 -12.23 7.7 1.7 22.09 554.4 217.6

        4.1

        5.2

        28.48

        4.2

        5.1

        -6.2

        302.4

        652.8 7.7 1.7 22.09 7.7 1.6 2.25 554.4 204.8

        4.2

        5.1

        -6.2

        4.3

        5.1

        25.12

        309.6

        652.8 7.7 1.6 2.25 7.7 1.5 -16.31 554.4 192

        4.3

        5.1

        25.12

        4.4

        5

        -6.84

        316.8

        640 7.7 1.5 -16.31 7.8 1.4 22.57 561.6 179.2

        4.4

        5

        -6.84

        4.5

        5

        25.92

        324

        640 7.8 1.4 22.57 7.8 1.3 6.57 561.6 166.4

        4.5

        5

        25.92

        4.6

        4.9

        -3.32

        331.2

        627.2 7.8 1.3 6.57 7.8 1.2 -8.15 561.6 153.6

        4.6

        4.9

        -3.32

        4.7

        4.9

        30.88

        338.4

        627.2 7.8 1.2 -8.15 7.9 1.1 35.29 568.8 140.8

        4.7

        4.9

        30.88

        4.8

        4.8

        4.36

        345.6

        614.4 7.9 1.1 35.29 7.9 1 23.13 568.8 128

        4.8

        4.8

        4.36

        4.9

        4.7

        -20.16

        352.8

        601.6 7.9 1 23.13 7.9 0.9 12.25 568.8 115.2

        4.9

        4.7

        -20.16

        5

        4.7

        16.2

        360

        601.6 7.9 0.9 12.25 7.9 0.8 2.65 568.8 102.4

        5

        4.7

        16.2

        5.1

        4.6

        -5.6

        367.2

        588.8 7.9 0.8 2.65 7.9 0.7 -5.67 568.8 89.6

        5.1

        4.6

        -5.6

        5.2

        4.6

        32.2

        374.4

        588.8 7.9 0.7 -5.67 8 0.6 44.89 576 76.8

        5.2

        4.6

        32.2

        5.3

        4.5

        13.12

        381.6

        576 8 0.6 44.89 8 0.5 39.13 576 64

        5.3

        4.5

        13.12

        5.4

        4.4

        -3.96

        388.8

        563.2 8 0.5 39.13 8 0.4 34.65 576 51.2

        5.4

        4.4

        -3.96

        5.5

        4.4

        36

        396

        563.2 8 0.4 34.65 8 0.3 31.45 576 38.4

        5.5

        4.4

        36

        5.6

        4.3

        21.64

        403.2

        550.4 8 0.3 31.45 8 0.2 29.53 576 25.6

        5.6

        4.3

        21.64

        5.7

        4.2

        9.28

        410.4

        537.6 8 0.2 29.53 8 0.1 28.89 576 12.8

        5.7

        4.2

        9.28

        5.8

        4.1

        -1.08

        417.6

        524.8

        5.8

        4.1

        -1.08

        5.9

        4.1

        41.76

        424.8

        524.8

        Fig. 1: Original curve versus curve for h = 1 in the first quadrant

        Fig. 2: Original curve versus curve for h = 0.5 in the first quadrant

        Fig. 3: Original curve versus curve for h = 0.1 in the first quadrant

      3. Discussion

The number of iterations depends upon the value of h. As h decreases, the number of iteration increases showed in Table 2, 3, 4, 5, 6 and 7. We have solved the same problem considering three different values of h. For h = 1, the classical case of MPEDA has been verified and it is clearly shown in Fig. 1 that there is a wide difference between the original curve and the curve generated by MPEDA. In the next Table, i.e., Table 4, we considered the value of h as 0.5 though the number of iterations increased but the results are much closer to original one (Fig. 2). Now, we considered h as 0.1, we observed that the points are almost similar to the original curve (Fig. 3).

DECLARATION OF COMPETING INTEREST

The authors declare that there is no conflict of interests regarding the publication of this manuscript.

REFERENCES

  1. J.V. Aken, An efficient ellipse-drawing algorithm, IEEE Comp. Graph. And App., vol. 4, pp. 24-35, 1984.

  2. M.R. Kappel, An ellipse-drawing algorithm for raster displays, Fund. Algo. for Comp. Graph., vol. 17, pp. 257-280, 1985.

  3. D.W. Fellner and C. Helmberg, Best approximate general ellipses on integer grids, Comp. and Graph., vol. 18, pp. 143-151, 1994.

  4. A. Agathos, T. Theoharis, and A. Boehm, Efficient integer algorithms for the generation of conic sections Comp. and Graph., vol. 22, pp. 621-628, 1998.

  5. Y.K. Liu and X.N. Li, Double-step circle drawing algorithm with and without grey scale. ICIG, Sichuan, pp. 886-891, 2007.

  6. F. Haiwen and N. Lianqiang, A hybrid generating algorithm for fast ellipses drawing, CSIP, Xian, Shaanxi, pp. 1022-1025,2012.

  7. S.C. Dimri and M. Ram, An efficient algorithm to scan conversion of ellipse under auxiliary circle, Nonlin. Stud., vol. 24, pp. 181- 191, 2017.

Leave a Reply

Your email address will not be published. Required fields are marked *