javascript画圆和椭圆

<html>
<head><title></title></head>
<body>
<style type="text/css">
.dp {position:absolute; width:1px; height:1px; overflow:hidden; background-color:#666666}
</style>
<script language="javascript">

// Author:张郎 winer_n
function drawOval(x, y, a, b)
{
    if (arguments .length = = 3 )
    {
        return drawOval(x, y, a, a);
    }
    var i, j;
    var tpos = [];
    var x1, x2, y1, y2;
    var html = "" ;
    for (i = 0 ; i < = a; i+ + )
    {
        j = Math.floor(Math.sqrt(b* b - b* b* i* i/ (a* a))+ 0 .5 );
        x1 = i+ x;
        x2 = - i+ x;
        y1 = j+ y;
        y2 = - j+ y;
        if (! tpos[x1* 1000 + y1])
        {
            drawPos(x1,y1);
            drawPos(x1,y2);
            drawPos(x2,y1);
            drawPos(x2,y2);
            tpos[x1* 1000 + y1] = true ;
        }
    }
    for (i = 0 ; i < = b; i+ + )
    {
        j = Math.floor(Math.sqrt(a* a - a* a* i* i/ (b* b))+ 0 .5 );
        x1 = j+ x;
        x2 = - j+ x;
        y1 = i+ y;
        y2 = - i+ y;
        if (! tpos[x1* 1000 + y1])
        {
            drawPos(x1,y1);
            drawPos(x1,y2);
            drawPos(x2,y1);
            drawPos(x2,y2);
            tpos[x1* 1000 + y1] = true ;
        }
    }
    document .write(html);

    function drawPos(x, y)
    {
        html + = "<div class='dp' style='left:" + x + "px; top:" + y + "px;'></div>" ;
    }

}

var t = new Date ();
drawOval(200 , 200 , 100 ); // 圆
drawOval(300 , 300 , 200 , 100 ); // 椭圆
alert(new Date () - t);

</script>
</body>
</html>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值