南强小屋 Design By 杰米

在控制台中输入 
db.drawCircle([50,50],20,"black"); 
db.drawLine([5,5],[36,44],"red"); 
可以看到效果 
复制代码 代码如下:
<body style="margin:0px;"> 
</body> 
<script> 
    function DrawingBoard(width,height,size) 
    { 
        size=size||3 
        var container=document.createElement("div"); 
        this.container=container; 

        container.runtimeStyle.width=(width)*size+"px"; 
        container.runtimeStyle.height=(height)*size+"px"; 
        container.runtimeStyle.margin="0px"; 
        //container.style.border="solid 1px blue"; 
        var count=0; 
                for(var y=0;y<height;y++) 
        { 
            for(var x=0;x<width;x++) 
            { 
                var curr=document.createElement("div"); 
                curr.runtimeStyle.height=size+"px"; 
                curr.runtimeStyle.width=size+"px"; 
                curr.runtimeStyle.display="inline"; 
                curr.runtimeStyle.overflow="hidden"; 
                curr.style.backgroundColor="green"; 
                curr.src="/UploadFiles/2021-04-02/">                container.appendChild(curr); 
            } 
        } 
                //alert(curr.currentStyle.display); 
        //document.body.appendChild(container); 

        this.drawLine=function(start,end,color) 
        { 
            var dx=start[0]-end[0]; 
            var dy=start[1]-end[1]; 
            var x,y; 

            if( Math.abs(dx) > Math.abs(dy) ) 
            { 
                for(var x=start[0];x!=end[0]+(end[0]-start[0])/Math.abs(end[0]-start[0]);x+=(end[0]-start[0])/Math.abs(end[0]-start[0]) ) 
                { 
                    y=Math.round((x-start[0])/dx*dy+start[1]); 
                    this.container.childNodes[this.trans([x,y])].style.backgroundColor=color; 
                } 
            } 
            else 
            { 
                for(var y=start[1];y!=end[1]+(end[1]-start[1])/Math.abs(end[1]-start[1]);y+=(end[1]-start[1])/Math.abs(end[1]-start[1]) ) 
                { 
                    x=Math.round((y-start[1])/dy*dx+start[0]); 
                    this.container.childNodes[this.trans([x,y])].style.backgroundColor=color; 
                } 
            } 
        } 
        this.drawCircle=function(m,R,color) 
        { 

            for(var r=0;r<=Math.floor(Math.sqrt(R*R-r*r));r++) 
            { 

                x=m[0]+r;y=m[1]+Math.floor(Math.sqrt(R*R-r*r)); 
                this.container.childNodes[this.trans([x,y])].style.backgroundColor=color; 
                x=m[0]-r;y=m[1]+Math.floor(Math.sqrt(R*R-r*r)); 
                this.container.childNodes[this.trans([x,y])].style.backgroundColor=color; 
                x=m[0]+r;y=m[1]-Math.floor(Math.sqrt(R*R-r*r)); 
                this.container.childNodes[this.trans([x,y])].style.backgroundColor=color; 
                x=m[0]-r;y=m[1]-Math.floor(Math.sqrt(R*R-r*r)); 
                this.container.childNodes[this.trans([x,y])].style.backgroundColor=color; 
                y=m[1]+r;x=m[0]+Math.floor(Math.sqrt(R*R-r*r)); 
                this.container.childNodes[this.trans([x,y])].style.backgroundColor=color; 
                y=m[1]-r;x=m[0]+Math.floor(Math.sqrt(R*R-r*r)); 
                this.container.childNodes[this.trans([x,y])].style.backgroundColor=color; 
                y=m[1]+r;x=m[0]-Math.floor(Math.sqrt(R*R-r*r)); 
                this.container.childNodes[this.trans([x,y])].style.backgroundColor=color; 
                y=m[1]-r;x=m[0]-Math.floor(Math.sqrt(R*R-r*r)); 
                this.container.childNodes[this.trans([x,y])].style.backgroundColor=color; 

            } 


        } 
        this.appendto=function(parent) 
        { 
            parent.appendChild(this.container); 
        } 

        this.drawPoint=function(p,color) 
        { 
            this.container.childNodes[this.trans(p)].style.backgroundColor=color; 
        } 
        this.trans=function(p) 
        { 
            return p[0]+p[1]*width; 
        } 

        container=null; 
    } 
    function Console(width,height,command) 
    { 
        var container=document.createElement("div"); 
        this.container=container; 

        container.runtimeStyle.width=(width); 
        container.runtimeStyle.height=(height); 
        container.runtimeStyle.margin="0px"; 
        container.runtimeStyle.backgroundColor="black"; 
        container.runtimeStyle.fontFamily="Terminal"; 
        container.runtimeStyle.color="white"; 
        container.runtimeStyle.fontSize="16px"; 
        this.output=document.createElement("div"); 
        container.appendChild(this.output); 
        container.innerHTML+="js>" 
        this.input=document.createElement("input"); 
        container.appendChild(this.input); 
        this.input.runtimeStyle.backgroundColor="black"; 
        this.input.runtimeStyle.borderWidth="0px"; 
        this.input.runtimeStyle.color="white"; 
        this.input.runtimeStyle.fontFamily="Terminal"; 
        this.input.runtimeStyle.width="90%" 
        this.input.runtimeStyle.fontSize="16px" 
        this.input.runtimeStyle.position="relative"; 
        this.input.runtimeStyle.top="2px"; 
        command=command||function(str) 
        { 

            var e; 
            try{ 
                var r=eval(str); 
            } catch(e) { 
                return "Bad command"; 
            } 
            return r; 

        } 
        this.run=function(str) 
        { 

            this.input.parentNode.childNodes[0].innerHTML+=str+'<br/>' 
            this.input.parentNode.childNodes[0].innerHTML+=(command(str)+"<br/>") 

        } 
        this.input.command=function() 
        { 
            this.parentNode.childNodes[0].innerHTML+=this.value+'<br/>' 
            this.parentNode.childNodes[0].innerHTML+=(command(this.value)+"<br/>") 
        } 
        this.input.onkeyup=new Function("e","e=e||event;if(e.keyCode!=13)return;this.command();this.value='';"); 
        this.appendto=function(parent) 
        { 
            parent.appendChild(this.container); 
        } 
        container=null; 
    } 

    var c=new Console("100%","50%"); 
    c.appendto(document.body); 
    c.run("window.db=new DrawingBoard(100,100);document.body.appendChild(db.container);"); 
</script>

标签:
用javascript实现画板的代码

南强小屋 Design By 杰米
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
南强小屋 Design By 杰米

评论“用javascript实现画板的代码”

暂无用javascript实现画板的代码的评论...

稳了!魔兽国服回归的3条重磅消息!官宣时间再确认!

昨天有一位朋友在大神群里分享,自己亚服账号被封号之后居然弹出了国服的封号信息对话框。

这里面让他访问的是一个国服的战网网址,com.cn和后面的zh都非常明白地表明这就是国服战网。

而他在复制这个网址并且进行登录之后,确实是网易的网址,也就是我们熟悉的停服之后国服发布的暴雪游戏产品运营到期开放退款的说明。这是一件比较奇怪的事情,因为以前都没有出现这样的情况,现在突然提示跳转到国服战网的网址,是不是说明了简体中文客户端已经开始进行更新了呢?