一种画直线的鼠标辅助功能的方法技术

技术编号:29614129 阅读:23 留言:0更新日期:2021-08-10 18:27
本发明专利技术公开一种画直线的鼠标辅助功能的方法,在鼠标标准按键之外,提供一个功能按键;当该功能按键松开时,鼠标就是标准鼠标;当该功能按键按下时,步骤1:鼠标进入直线模式,处于准备状态,等待方向判定;步骤2:当用户开始移动鼠标,收集前N次鼠标移动的数据,分析数据,进行方向判定,一旦判定完成,进入直线处理状态,并将该N次移动数据的方向处理结果发送给PC;步骤3:此后,用户移动鼠标得到的数据,都进行相应判定方向的修正处理,确保鼠标上报的数据是直线数据;步骤4:直到用户松开该功能按键,离开直线模式,回到标准鼠标功能。本发明专利技术通过收集多次移动数据,分析并进行方向检测,最后进行修正处理,保证鼠标直线轨迹无角度偏差。

【技术实现步骤摘要】
一种画直线的鼠标辅助功能的方法
本专利技术涉及计算机设备领域技术,尤其是指一种画直线的鼠标辅助功能的方法。
技术介绍
在设计及编辑办公场景下,用户需要使用鼠标进行直线绘制。但是,鼠标绘制功能一般为手工自由绘制,因此,鼠标移动轨迹很难形成标准直线。一般情况下,用户进行图形绘制时,需要借助软件工具进行直线绘制;当计算机系统中未安装软件,用户则需要下载并安装软件,才能进行直线绘制,操作过程繁琐。加之,在使用软件时,用户无法确定绘制直线的角度偏差,可能造成工程设计或工业设计较大误差,甚至给后续工程实施带来一定的隐患。因此,需要研究一种新的技术方案来解决上述问题。
技术实现思路
有鉴于此,本专利技术针对现有技术存在之缺失,其主要目的是提供一种画直线的鼠标辅助功能的方法,通过特定按键即可触发直线模式,其操作简单;同时,该方法通过收集使用者的多次移动数据,分析并进行方向检测,最后对数据进行修正处理,保证鼠标直线轨迹无角度偏差。为实现上述目的,本专利技术采用如下之技术方案:一种画直线的鼠标辅助功能的方法,在鼠标标准按键之外,提供一个功能按键;当该功能按键松开时,鼠标就是标准鼠标;当该功能按键按下时,步骤1:鼠标进入直线模式,处于准备状态,等待方向判定;步骤2:当用户开始移动鼠标,收集前N次鼠标移动的数据,分析数据,进行方向判定,一旦判定完成,进入直线处理状态,并将该N次移动数据的方向处理结果发送给PC;其中,方向判定算法为:步骤2-1:收集鼠标移动的N次X和Y方向的移动数据;步骤2-2:对X和Y方向的移动数据分别求和,得到Xsum和Ysum,再计算绝对值得到|Xsum|和|Ysum|;步骤2-3:计算得到两者之差Diff=||Xsum|-|Ysum||;步骤2-4:计算得到判定因子Factor=Max(|Xsum|/2,|Ysum|/2);若(Diff>Factor)情况,则认定值X或Y方向,其中,若(|Xsum|>|Ysum|),则判定为X轴直线方向,反之(|Ysum|>|Xsum|),则判定为Y轴直线方向;若(Diff<Factor)情况,则认定值XY方向,需要进一步判定是XY45度还是XY135度;其中,若Xsum和Ysum极性相反,即一个为正数,一个为负数,则为XY45度方向,反之,Xsum和Ysum极性相同,即同时为整数或为负数,则为XY135度方向;步骤3:此后,用户移动鼠标得到的数据,都进行相应判定方向的修正处理,确保鼠标上报的数据是直线数据;步骤4:直到用户松开该功能按键,离开直线模式,回到标准鼠标功能。作为一种优选方案,所述N取值为16至20中任一整数。作为一种优选方案,步骤3中,在判定直线方向之后,对鼠标移动的X和Y方向的移动数据进行直线处理,根据四种方向,其对应的处理算法如下:若判定的直线方向为X轴方向,则丢弃Y方向的移动数据,只把X方向移动的数据上报给PC,上报数据为[X,0];若判定的直线方向为Y轴方向,则丢弃X方向移动数据,只把Y方向移动的数据上报给PC,上报数据为[0,Y];若判定的直线方向为XY45度方向,则用X方向移动数据的反方向,也就是-X替换Y方向移动数据上报给PC,上报数据为[X,-X];若判定的直线方向为XY135度方向,则用X方向移动数据替换Y方向移动数据数据上报给PC,上报数据为[X,X]。作为一种优选方案,所述鼠标是二维指针设备,其上报数据包含X和Y轴的移动数据,该数据来自鼠标的传感器,X和Y都是有符号整数。作为一种优选方案,所述X轴方向为横向,所述Y轴方向为纵向,所述XY45度方向为汉字笔画撇方向,所述XY135度方向为汉字笔画捺方向。作为一种优选方案,所述功能按键设置于鼠标;或者,所述功能按键是独立于鼠标、键盘外部的按键。作为一种优选方案,鼠标上报的数据,由PC相应控制显示器上呈现鼠标绘制直线轨迹。作为一种优选方案,绘制不同方向直线时,先绘制一方向直线,再通过用户松开该功能按键离开直线模式回到标准鼠标功能,再次按下该功能按键,再次经步骤1、步骤2、步骤3、步骤4完成另一方向直线绘制。本专利技术与现有技术相比具有明显的优点和有益效果,具体而言,由上述技术方案可知,其主要是通过特定按键即可触发直线模式,其操作简单;同时,该方法通过收集使用者的多次移动数据,分析并进行方向检测,最后对数据进行修正处理,保证鼠标直线轨迹无角度偏差;其次是,在判定直线方向之后,根据四种方向,对鼠标移动的X和Y方向的移动数据进行直线处理,从数据源头上,保证用户得到完美的直线,完全没有角度偏差的问题;以及,鼠标移动数据来自标准鼠标传感器,保留用户使用习惯,符合人性化需求。为更清楚地阐述本专利技术的结构特征和功效,下面结合附图与具体实施例来对本专利技术进行详细说明。附图说明图1是本专利技术的事件处理流程图。具体实施方式请参照图1所示,其显示出了本专利技术的事件处理流程图。一种画直线的鼠标辅助功能的方法,在鼠标标准按键之外,提供一个功能按键;当该功能按键松开时,鼠标就是标准鼠标;当该功能按键按下时,步骤1:鼠标进入直线模式,处于准备状态,等待方向判定;步骤2:当用户开始移动鼠标,收集前N次鼠标移动的数据(所述N取值为16至20中任一整数),分析数据,进行方向判定,一旦判定完成,进入直线处理状态,并将该N次移动数据的方向处理结果发送给PC;其中,方向判定算法为:步骤2-1:收集鼠标移动的N次X和Y方向的移动数据;步骤2-2:对X和Y方向的移动数据分别求和,得到Xsum和Ysum,再计算绝对值得到|Xsum|和|Ysum|;步骤2-3:计算得到两者之差Diff=||Xsum|-|Ysum||;步骤2-4:计算得到判定因子Factor=Max(|Xsum|/2,|Ysum|/2);若(Diff>Factor)情况,则认定值X或Y方向,其中,若(|Xsum|>|Ysum|),则判定为X轴直线方向,反之(|Ysum|>|Xsum|),则判定为Y轴直线方向;若(Diff<Factor)情况,则认定值XY方向,需要进一步判定是XY45度还是XY135度;其中,若Xsum和Ysum极性相反,即一个为正数,一个为负数,则为XY45度方向,反之,Xsum和Ysum极性相同,即同时为整数或为负数,则为XY135度方向;步骤3:此后,用户移动鼠标得到的数据,都进行相应判定方向的修正处理,确保鼠标上报的数据是直线数据;步骤4:直到用户松开该功能按键,离开直线模式,回到标准鼠标功能。优选地,步骤3中,在判定直线方向之后,对鼠标移动的X和Y方向的移动数据进行直线处理,根据四种方向,其对应的处理算法如下:若判定的直线方向为X轴方向,则丢弃Y方向的移动数据,只把X方向移动的数据本文档来自技高网...

【技术保护点】
1.一种画直线的鼠标辅助功能的方法,其特征在于:在鼠标标准按键之外,提供一个功能按键;当该功能按键松开时,鼠标就是标准鼠标;当该功能按键按下时,/n步骤1:鼠标进入直线模式,处于准备状态,等待方向判定;/n步骤2:当用户开始移动鼠标,收集前N次鼠标移动的数据,分析数据,进行方向判定,一旦判定完成,进入直线处理状态,并将该N次移动数据的方向处理结果发送给PC;其中,方向判定算法为:/n步骤2-1:收集鼠标移动的N次X和Y方向的移动数据;/n步骤2-2:对X和Y方向的移动数据分别求和,得到Xsum和Ysum,再计算绝对值得到|Xsum|和|Ysum|;/n步骤2-3:计算得到两者之差Diff=||Xsum|-|Ysum||;/n步骤2-4:计算得到判定因子Factor=Max(|Xsum|/2,|Ysum|/2);/n若(Diff>Factor)情况,则认定值X或Y方向,其中,若(|Xsum|>|Ysum|),则判定为X轴直线方向,反之(|Ysum|>|Xsum|),则判定为Y轴直线方向;/n若(Diff<Factor)情况,则认定值XY方向,需要进一步判定是XY45度还是XY135度;其中,若Xsum和Ysum极性相反,即一个为正数,一个为负数,则为XY45度方向,反之,Xsum和Ysum极性相同,即同时为整数或为负数,则为XY135度方向;/n步骤3:此后,用户移动鼠标得到的数据,都进行相应判定方向的修正处理,确保鼠标上报的数据是直线数据;/n步骤4:直到用户松开该功能按键,离开直线模式,回到标准鼠标功能。/n...

【技术特征摘要】
1.一种画直线的鼠标辅助功能的方法,其特征在于:在鼠标标准按键之外,提供一个功能按键;当该功能按键松开时,鼠标就是标准鼠标;当该功能按键按下时,
步骤1:鼠标进入直线模式,处于准备状态,等待方向判定;
步骤2:当用户开始移动鼠标,收集前N次鼠标移动的数据,分析数据,进行方向判定,一旦判定完成,进入直线处理状态,并将该N次移动数据的方向处理结果发送给PC;其中,方向判定算法为:
步骤2-1:收集鼠标移动的N次X和Y方向的移动数据;
步骤2-2:对X和Y方向的移动数据分别求和,得到Xsum和Ysum,再计算绝对值得到|Xsum|和|Ysum|;
步骤2-3:计算得到两者之差Diff=||Xsum|-|Ysum||;
步骤2-4:计算得到判定因子Factor=Max(|Xsum|/2,|Ysum|/2);
若(Diff>Factor)情况,则认定值X或Y方向,其中,若(|Xsum|>|Ysum|),则判定为X轴直线方向,反之(|Ysum|>|Xsum|),则判定为Y轴直线方向;
若(Diff<Factor)情况,则认定值XY方向,需要进一步判定是XY45度还是XY135度;其中,若Xsum和Ysum极性相反,即一个为正数,一个为负数,则为XY45度方向,反之,Xsum和Ysum极性相同,即同时为整数或为负数,则为XY135度方向;
步骤3:此后,用户移动鼠标得到的数据,都进行相应判定方向的修正处理,确保鼠标上报的数据是直线数据;
步骤4:直到用户松开该功能按键,离开直线模式,回到标准鼠标功能。


2.根据权利要求1所述的一种画直线的鼠标辅助功能的方法,其特征在于:所述N取值为16至20中任一整数。


3.根据权利要求1所述的一种画直线的鼠标辅助功能的方...

【专利技术属性】
技术研发人员:李晨曦杨文良胡密
申请(专利权)人:东莞市铭冠电子科技有限公司
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1