`
wensuper
  • 浏览: 68438 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

获取鼠标运动的轨迹

阅读更多
    以下代码是在网面上把鼠标运动的轨迹给记录下来:
使用了jquery相关的一些方法,鼠标事件等。


var gesture = {};
var total_point = 0;
var number_column = 3;
var number_row = 3;
var bounds_x = [];
var bounds_y = [];


function getTotalHeight(){ 
	if($.browser.msie){ 
		return document.compatMode == "CSS1Compat"? document.documentElement.clientHeight : document.body.clientHeight; 
	} 
	else { 
		return self.innerHeight; 
	} 
} 

function getTotalWidth (){ 
	if($.browser.msie){ 
		return document.compatMode == "CSS1Compat"? document.documentElement.clientWidth : document.body.clientWidth; 
	} 
	else{ 
		return self.innerWidth; 
	} 
} 


function get_pointer(e) { 
	var xx = e.originalEvent.x || e.originalEvent.layerX || 0; 
	var yy = e.originalEvent.y || e.originalEvent.layerY || 0; 
	var x_sequens="";
	for(var i=0;i<number_column-1;i++){
		if(xx>bounds_x[i]){
			x_sequens+="1";
		}else{
			x_sequens+="0";
		}
	}
	
	var y_sequens="";
	for(var i=0;i<number_row-1;i++){
		if(yy>bounds_y[i]){
			y_sequens+="1";
		}else{
			y_sequens+="0";
		}
	}
	//console.log(x_sequens+y_sequens);
	//判断序列结果是否为上一次相同,不相同就记录下来,相同不记录
	if(total_point==0 || gesture[total_point-1]!=x_sequens+y_sequens){
		//console.log("impossible");
		//console.log(gesture[total_point-1]);
		//console.log(x_sequens+y_sequens);
		gesture[total_point] = x_sequens+y_sequens;
		total_point++;
	}
	
	//console.log(total_point);
}

function get_pointer_start() {
	
	//全局变量初始化
	gesture = {};
	total_point = 0;
	bounds_x = [];
	bounds_y = [];
	
	//取得当前窗口的大小
	var do_width = getTotalWidth();
	var do_height = getTotalHeight();
	var unit_width=do_width/number_column;
	for(var i=0;i<number_column;i++){
		bounds_x[i] = (i+1)*unit_width;
	}
	var unit_height=do_height/number_row;
	for(var i=0;i<number_row;i++){
		bounds_y[i] = (i+1)*unit_height;
	}
	//采集数据
	$(document).mousemove(get_pointer);
}

$(document).mousedown(get_pointer_start);
$(document).mouseup(function(){
	$(this).unbind("mousemove",get_pointer);

	if(total_point<=3){
		
		return;
	}
	
	//计算最终结果
	var result="";
	for(var i=0;i<total_point;i++){
		if(i==0){
			result = gesture[i];
		}else{
			result = result+"-"+gesture[i];
		}
	}
        //输出结果
	console.log(result);
});
分享到:
评论

相关推荐

    易语言鼠标运动轨迹

    在“易语言鼠标运动轨迹”这个主题中,我们主要讨论的是如何使用易语言来实现鼠标运动轨迹的模拟。 鼠标运动轨迹的实现涉及到计算机图形学和操作系统交互的基础知识。在Windows系统中,控制鼠标位置的主要API函数是...

    易语言鼠标运动轨迹源码.zip

    本压缩包“易语言鼠标运动轨迹源码.zip”包含的是使用易语言编写的实现鼠标运动轨迹功能的源代码。通过分析和学习这个源代码,我们可以深入理解易语言的编程机制以及如何在实际应用中控制鼠标的动作。 易语言的核心...

    HALCON鼠标交互绘制轨迹并获取像素信息.hdev

    HALCON鼠标交互绘制轨迹并获取像素信息,包含直线,圆,椭圆,圆弧,任意轨迹等功能,可以传送给运动控制系统实现运动。 HALCON17运行通过

    matlab鼠标运动轨迹绘图

    在MATLAB中,绘制鼠标运动轨迹是一项有趣且实用的任务,它可以用于交互式应用程序或数据分析中的可视化。本项目涉及的核心知识点主要包括MATLAB编程、图形用户界面(GUI)和事件处理。下面将详细阐述这些概念。 首先...

    线随鼠标运动显示鼠标轨迹

    标题“线随鼠标运动显示鼠标轨迹”所涉及的是一个计算机编程技术,主要目的是实时地在屏幕上绘制出鼠标的移动路径。这种技术常用于各种交互式应用程序,如绘图软件、游戏或者是用户行为分析工具,它可以帮助用户直观...

    易语言鼠标运动轨迹源码-易语言

    这个“易语言鼠标运动轨迹源码”是一个系统工具类的程序,主要用于实现鼠标在屏幕上的运动轨迹记录和显示。通过分析提供的文件名“鼠标运动轨迹.e”,我们可以推测这是一段用易语言编写的程序源代码,其主要功能可能...

    易语言-鼠标移动轨迹记录和模拟回放

    鼠标位置`这个命令可以获取鼠标当前位置的坐标,通过定时器触发,我们就可以不断地获取到鼠标移动的轨迹数据。 接下来是“模拟回放”。当记录下鼠标轨迹后,我们需要在程序中重新播放这些动作。这通常涉及到模拟...

    鼠标轨迹之文字

    例如,在Windows系统中,可以使用`GetMessage`和`PeekMessage`函数来监听消息队列,获取鼠标事件。 2. **坐标系统转换**:鼠标在屏幕上的位置是二维坐标,程序需要将这些坐标转换为三维空间中的点,以便在3D环境中...

    javascript经典特效---录制鼠标轨迹.rar

    2. **数据记录**:在事件处理函数中,我们需要获取鼠标的当前位置(`event.clientX`和`event.clientY`)以及时间戳(`new Date().getTime()`),并将它们存储起来。 ```javascript var trackData = []; function ...

    百度地图api实现运动轨迹、坐标拾取、多点标注并显示信息窗体

    5. **运动轨迹(标记起始位置和终点位置)**:展示运动轨迹通常涉及到一系列的坐标点。我们可以使用`Polyline`类创建折线对象,将一系列坐标点作为参数传递给它的构造函数。这样,地图上就会显示一条连接所有点的线...

    DMP-MyPro.zip_DMP_flow2oq_动态运动基元_基于轨迹_轨迹规划

    它主要用于描述和生成复杂的运动轨迹,尤其适用于那些需要快速学习和灵活适应新任务的情况。DMPs的核心思想是将一个复杂的运动分解为简单的、可学习的基础运动元素,这些元素可以组合起来形成各种复杂的运动模式。 ...

    C#小车画图运动程序课程设计

    程序中的小车运动轨迹设计十分有趣。用户可以通过鼠标在绘图区域内点击拾取点,这些点将定义小车的行驶路径。这种交互方式利用了C#的Windows Forms或WPF框架,创建了一个图形用户界面,允许用户与程序进行直观的交互...

    考试类精品--随着互联网技术的发展,鼠标轨迹识别算法在很多人机交互产品中的需求日益增加,比如,一些网站为了防止被爬,.zip

    数据采集是获取鼠标的位置信息;轨迹建模将连续的鼠标位置信息转化为平滑的轨迹;特征提取从轨迹中抽取出有意义的特征,如速度、加速度、轨迹形状等;行为识别则根据这些特征判断用户的特定行为,如浏览习惯、兴趣点...

    鼠标移动测试

    例如,可以使用专门的测试软件来记录和分析鼠标移动轨迹,或者使用自动化测试框架进行大量重复性的测试操作。这些工具可以帮助我们量化评估鼠标的性能,减少人为误差。 总结来说,鼠标移动测试涵盖了硬件性能、软件...

    实现全景效果,线路规划并模拟运动轨迹,百度地图

    本文将深入探讨如何利用百度地图API来实现全景效果、线路规划以及模拟运动轨迹。 全景效果,通常指的是360度全景视图,这种技术允许用户通过鼠标或触摸操作在虚拟环境中自由查看周围环境。百度地图提供了全景服务,...

    百度轨迹地图(HTML)

    静态生成是指预先计算并生成好网页内容,用户访问时无需服务器进行动态处理,直接从服务器上获取已生成的HTML文件。这种方式对于小规模的、不需频繁更新的数据展示非常适用,因为它能提高页面加载速度,减少服务器...

    canvas实现按住鼠标移动绘制出轨迹的示例代码

    2. 绑定`mousemove`事件,获取鼠标相对于`canvas`的坐标,使用`context.lineTo()`添加新的路径点,并调用`context.stroke()`绘制线条。 3. 绑定`mouseup`事件,关闭路径(`context.closePath()`),表示绘制结束。 ...

    鼠标连点 鼠标离子化 鼠标连点+时间 H5代码特效

    "鼠标离子化"可能是指当鼠标移动或点击时,周围出现离子化的粒子效果,这需要对粒子系统有深入理解,包括粒子的生成、运动轨迹、碰撞检测以及销毁等。"鼠标丝带"可能是在鼠标移动时跟随鼠标的线条效果,类似流光或者...

    星球轨迹图GDICsharp

    在本文中,我们将深入探讨“星球轨迹图GDICsharp”这一主题,这主要与使用C#编程语言和GDI+(Graphics Device Interface)图形库来创建动态星球运动模拟相关。GDI是Windows API的一部分,用于处理图形绘制,而C#是...

    类似按鍵精灵的鼠标连点程序

    2. 记录功能:可能提供了记录鼠标运动轨迹的能力,用户可以保存一组点击序列,之后重复执行这些操作,比如游戏中的自动打怪路径。 3. 时间设定:用户可以设置两个点击之间的时间间隔,以调整点击速度,适应不同的...

Global site tag (gtag.js) - Google Analytics