码迷,mamicode.com
首页 > 其他好文 > 详细

图像选取技术浅尝

时间:2016-04-19 19:02:01      阅读:133      评论:0      收藏:0      [点我收藏+]

标签:

我们的图像选取技术今天终于获得了阶段性的突破!

是大家共同努力的结果,这个技术主要可以实现,在工作区内,进行图片框选,完了可以把起始点,终点坐标显示出来,并且,点的坐标可以方便的进行手动修改,改了之后,按下确定,选框也会发生对应的改变。部分代码如下:

1获取鼠标位置

function moveToMouseLoc(e) {
		if (ns4 || ns6) {
			curPositionX = e.pageX
			curPositionY = e.pageY;
		} else {
			curPositionX = event.x + document.body.scrollLeft;
			curPositionY = event.y + document.documentElement.scrollTop;
		}
		return true;
	}

2鼠标按下事件

function onMouseDown(e) {
        if (resizing == true)
            return true;
        resizing = true;
        
        if(divsx<=curPositionX&&curPositionX<=divex){
            if(divsy<=curPositionY&&curPositionY<=divey){
                startPointX = curPositionX;
                startPointY = curPositionY;
            }
        }
            if(curPositionX<divsx){
                startPointX = divsx;
            }
            if(curPositionX>divex){
                startPointX = divex;
            }
            if(divsy>curPositionY){
                startPointY = divsy;
            }
            if(curPositionY>divey){
                startPointY = divey;
            }
            
            drawBorder();
        
        
    
    }

3鼠标弹起事件

function onMouseUp(e) {
            if (resizing) {
                drawBorder();
                resizing = false;
            }
            if(curPositionX<divsx){
                endPointX = divsx;
            }
            if(curPositionX>divex){
                endPointX = divex;
            }
            if(divsy>curPositionY){
                endPointY = divsy;
            }
            if(curPositionY>divey){
                endPointY = divey;
            }
            
            
        
            if(startPointX > 200 && startPointX < 400)
                $("#startPointX").val(startPointX);
            if(startPointY > 200 && startPointY < 600)
                $("#startPointY").val(startPointY);
            if(endPointX > 200 && endPointX < 400)
                $("#endPointX").val(endPointX);
            if(endPointY > 200 && endPointY < 600)
                $("#endPointY").val(endPointY);
        
    
    }

4画线框

function drawBorder() {
        if(divsx<=curPositionX&&curPositionX<=divex){
            if(divsy<=curPositionY&&curPositionY<=divey){
                endPointX = curPositionX;
                endPointY = curPositionY;
                    with (border.style) {
                        width = Math.abs(startPointX - endPointX) + "px";
                        height = Math.abs(startPointY - endPointY) + "px";
                        left = Math.min(startPointX, endPointX) + "px";
                        top = Math.min(startPointY, endPointY) + "px";
                }
            }
        }
            
            
        
    }

以上是技术实现的部分代码。

下图是图像选取实现的现场。

技术分享

图像选取技术浅尝

标签:

原文地址:http://www.cnblogs.com/TNT5/p/5409335.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!