CN111552402A - 多显示触摸组件系统的映射方法、终端及可读存储介质 - Google Patents
多显示触摸组件系统的映射方法、终端及可读存储介质 Download PDFInfo
- Publication number
- CN111552402A CN111552402A CN202010321591.8A CN202010321591A CN111552402A CN 111552402 A CN111552402 A CN 111552402A CN 202010321591 A CN202010321591 A CN 202010321591A CN 111552402 A CN111552402 A CN 111552402A
- Authority
- CN
- China
- Prior art keywords
- display
- touch
- touch screen
- information
- monitoring
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/03—Arrangements for converting the position or the displacement of a member into a coded form
- G06F3/041—Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means
- G06F3/0416—Control or interface arrangements specially adapted for digitisers
- G06F3/0418—Control or interface arrangements specially adapted for digitisers for error correction or compensation, e.g. based on parallax, calibration or alignment
Abstract
本发明公开了一种多显示触摸组件系统的映射方法,包括:确定触摸屏与显示设备的绑定信息、显示触摸组件的显示信息和物理连接信息;创建虚拟触摸屏;根据创建的输入设备监控线程,监控触摸屏热插拔事件以更新绑定信息;根据创建的显示监控线程,监控显示信息的更改事件以更新显示信息;通过创建的数据读取线程获取触摸屏的触控数据,通过触控数据、绑定信息和显示信息,将触控数据校正为虚拟触摸屏的校正触控坐标;通过虚拟触摸屏上报的校正触控坐标执行触控操作。本发明还公开了一种终端及可读存储介质。本发明的技术方案用于在多个显示触摸组件系统中建立触摸屏与显示设备的映射关系,以提高触摸坐标的准确性。
Description
技术领域
本发明涉及多触摸屏技术领域,尤其涉及一种多显示触摸组件系统的映射方法和应用该多显示触摸组件系统的映射方法的终端和计算机可读存储介质。
背景技术
随着信息技术的飞速发展,触摸屏正逐步取代鼠标、键盘等传统输入设备,成为电子产品的重要组成部件。触摸屏一般通过机械手段,固定在同等尺寸的显示设备上,与相应的显示设备绑定,形成固定的显示触摸组件,并通过USB接口与计算机连接。在一般情况下,一台计算机只连接一套显示触摸组件,但是在作战指挥、雷达显控、地图作业等操控台应用中,由于需要显示的内容多且复杂,单个显示触摸组件通常无法满足使用需求,此时一般将一台计算机连接两个或多个显示触摸组件,并通过操作系统将显示输出配置成上下或左右扩展显示模式,从而将显示输出内容扩展到多个显示设备显示。
在上述应用模式下,虽然显示区域得到了扩展,但是触摸屏与其绑定的显示设备的映射关系不复存在,因为此时系统中有多个触摸屏及多个显示设备,操作系统(例如,Linux操作系统)默认将每个触摸屏映射到系统的整个显示区域,由于此时系统显示区域由多个显示设备系统组合而成,因此每个触摸屏上的触摸操作不再是只映射到其绑定的显示设备,而是映射到了所有的显示设备上,从而导致触摸坐标不准,其直观的表现是当手指在一个显示触摸组件上滑动时,屏幕上的鼠标不再跟随手指,而是可能出现在其它显示设备上,因此必须重新建立触摸屏与显示设备的映射关系,将触摸屏的操作映射到其绑定的显示设备所对应的显示区域。
发明内容
本发明的主要目的在于提供一种多显示触摸组件系统的映射方法,旨在为多个显示触摸组件的系统建立触摸屏与显示设备的映射关系,以解决触摸坐标不准确的问题。
为实现上述目的,本发明提供的多显示触摸组件系统的映射方法中,每一所述显示触摸组件包括相互连接的显示设备和触摸屏;所述多显示触摸组件系统的映射方法,包括如下步骤:
确定各个所述触摸屏与各个所述显示设备的绑定信息,以及各个所述显示触摸组件的显示信息和物理连接信息;
创建用于接管全部所述触摸屏的虚拟触摸屏;
根据创建的输入设备监控线程,监控触摸屏热插拔事件,根据所述触摸屏热插拔事件更新所述绑定信息;
根据创建的显示监控线程,监控所述显示信息的更改事件,根据所述更改事件更新所述显示信息;
通过创建的数据读取线程获取触摸屏的触控数据,通过所述触控数据、所述绑定信息和所述显示信息,将所述触控数据校正为所述虚拟触摸屏的校正触控坐标;
将所述校正触控坐标写入所述虚拟触摸屏,通过所述虚拟触摸屏上报的校正触控坐标执行触控操作。
优选地,所述确定各个所述触摸屏与各个所述显示设备的绑定信息,以及各个所述显示触摸组件的显示信息和物理连接信息的步骤,包括:
获取预设的绑定配置文件,根据所述绑定配置文件确定各个所述显示设备的显示设备名称、绑定的触摸屏以及各个所述触摸屏的物理连接信息;
获取预设的显示配置文件,根据所述显示配置文件确定各个所述显示触摸组件的显示信息,所述显示信息包括各个所述显示设备的显示扩展方向、各个显示设备的分辨率、各个所述触摸屏的分辨率、各个显示设备的显示区域的起点坐标,以及各个显示设备的显示区域的高度和宽度。
优选地,所述根据创建的输入设备监控线程,监控触摸屏热插拔事件,根据所述触摸屏热插拔事件更新所述绑定信息的步骤,包括:
根据创建的输入设备监控线程,对系统的输入设备目录进行监控,根据系统是否自动在输入设备目录下添加或删除触摸屏对应的设备节点,判断是否触发触摸屏热插拔事件;
当触发所述触摸屏热插拔事件时,判断当前的触摸屏热插拔事件对应的操作种类;
当对应的操作种类为触摸屏插入操作时,更新插入的触摸屏与对应显示设备的绑定信息;
当对应的触摸屏操作种类为触摸屏拔出操作时,解除拔出的触摸屏与对应的显示设备的绑定信息。
优选地,所述根据创建的显示监控线程,监控所述显示信息的更改事件,根据所述更改事件更新所述显示信息的步骤,包括:
根据创建的显示监控线程,对所述显示信息进行监控,根据所述显示信息中的显示设备分辨率或显示扩展方式是否更改,判断是否触发所述显示信息更改事件;
当触发所述显示信息更改事件时,对所述显示信息进行更新。
优选地,还包括:
为每个所述触摸屏创建数据读取线程;
判断每个触摸屏是否存在触摸操作;
对不存在触摸操作的触摸屏,阻塞对应的所述数据读取线程;
对存在触摸操作的触摸屏,执行所述通过创建的数据读取线程获取触摸屏的触控数据,通过所述触控数据、所述绑定信息和所述显示信息,将所述触控数据校正为所述虚拟触摸屏的校正触控坐标的步骤。
优选地,所述通过创建的数据读取线程获取触摸屏的触控数据,通过所述触控数据、所述绑定信息和所述显示信息,将所述触控数据校正为所述虚拟触摸屏的校正触控坐标的步骤,包括:
根据所述显示信息确定所述多显示触摸组件的显示扩展方向;
当所述多显示触摸组件的显示扩展方向为水平方向时,对触摸操作对应的水平坐标X按照如下公式进行校正,得到校正水平触控坐标X3;
X2=X1+绑定的显示设备的左上角在显示扩展区域的x坐标;
当所述多显示触摸组件的显示扩展方向为垂直方向时,对触摸操作对应的垂直坐标Y按照如下公式进行校正,得到校正垂直触控坐标Y3;
Y2=Y1+绑定的显示设备的左上角在显示扩展区域的y坐标;
优选地,所述确定各个所述触摸屏与各个所述显示设备的绑定信息,以及各个所述显示触摸组件的显示信息和物理连接信息的步骤之前,还包括:
建立绑定配置文件,按照显示设备的显示扩展顺序依次建立各触摸屏与显示设备的绑定关系,其中,各触摸屏利用物理连接信息进行唯一标识,各显示设备的显示设备名称进行唯一标识;
建立触摸屏和显示设备的链表;
根据所述绑定配置文件对各显示设备及各触摸屏节点进行初始化。
优选地,所述根据所述绑定配置文件对各显示设备及各触摸屏节点进行初始化的步骤,包括:
遍历输入设备目录下所有输入设备,获取所述输入设备目录下的各所述触摸屏的名称及物理连接信息,判断目录下的所述触摸屏的名称及物理连接信息与所述链表中的各个节点是否匹配;
若是,则用所述输入设备目录下的所述触摸屏的名称初始化链表中对应节点的成员变量。
此外,为实现上述目的,本发明还提供一种终端,包括:存储器、处理器、以及存储在所述存储器上并可在所述处理器上运行的计算机程序;所述计算机程序被所述处理器执行时实现如上述任一项所述的多显示触摸组件系统的映射方法的步骤。
此外,为实现上述目的,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上述任一项所述的多显示触摸组件系统的映射方法的步骤。
在本发明的技术方案中,将各个触摸屏与各个显示设备进行对应绑定,并创建虚拟触摸屏,以通过虚拟触摸屏接管系统中全部触摸屏的触控数据,将各个触摸屏的触控数据校正为虚拟触摸屏上的校正触控坐标,通过虚拟触摸屏上报的校正触控坐标执行触控操作,以使每个触摸屏上的触摸操作只映射到其绑定的显示设备,而不会映射到所有的显示设备上,提高触摸坐标的映射准确性。并且,根据创建的输入设备监控线程,监控触摸屏热插拔事件,根据所述触摸屏热插拔事件更新所述绑定信息,从而,当存在触摸屏拔出或新触摸屏插入情况时,系统自动更新触摸屏与显示设备的绑定信息,避免用户手动更新绑定信息;根据创建的显示监控线程,监控所述显示信息的更改事件,根据所述更改事件更新所述显示信息,从而当存在显示信息的更改时,系统自动更新显示信息;由于绑定信息和显示信息都能自动更新,从而根据绑定信息和显示信息校正的校正触控坐标也会是自动适应的,从而解决了多个显示触摸组件的系统存在触摸屏映射关系不能实现适应更新,需要用户手动更新的问题。
附图说明
图1为本发明多显示触摸组件系统的映射方法中多显示触摸组件与计算机的连接示意图;
图2为本发明多显示触摸组件系统的映射方法第一实施例的流程示意图。
本发明目的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
在后续的描述中,使用用于表示元件的诸如“模块”、“部件”或“单元”的后缀仅为了有利于本发明的说明,其本身没有特定的意义。因此,“模块”、“部件”或“单元”可以混合地使用。
请参阅图1,为实现上述目的,本发明的第一实施例中提供一种多显示触摸组件系统的映射方法,每一所述显示触摸组件包括相互连接的显示设备和触摸屏;所述多显示触摸组件系统的映射方法,包括如下步骤:
步骤S10,确定各个所述触摸屏与各个所述显示设备的绑定信息,以及各个所述显示触摸组件的显示信息和物理连接信息;
步骤S20,创建用于接管全部所述触摸屏的虚拟触摸屏;
步骤S30,根据创建的输入设备监控线程,监控触摸屏热插拔事件,根据所述触摸屏热插拔事件更新所述绑定信息;
步骤S40,根据创建的显示监控线程,监控所述显示信息的更改事件,根据所述更改事件更新所述显示信息;
步骤S50,通过创建的数据读取线程获取触摸屏的触控数据,通过所述触控数据、所述绑定信息和所述显示信息,将所述触控数据校正为所述虚拟触摸屏的校正触控坐标;
步骤S60,将所述校正触控坐标写入所述虚拟触摸屏,通过所述虚拟触摸屏上报的校正触控坐标执行触控操作。
现有的操作系统(例如,中标麒麟操作系统及其他常用Linux桌面系统)中,并未对多触摸屏映射提供直接的支持,并且,即使解决了多触摸屏的映射问题,映射关系中的很多参数都不能自动适应更新,而需要用户手动更新。
例如:
1)多触摸屏映射指令使用前需要在命令行下执行一次命令,并且该命令需要触摸屏的设备ID作为输入参数,但是触摸屏的设备ID并不是固定的,每次系统重启后该ID都有可能发生变化,因此在执行映射指令前还需先执行其它命令获取触摸屏ID,操作不方便;
2)当出现触摸屏热插拔或用户更改显示分辨率或显示扩展方式时,触摸屏映射关系不能自适应更新,需要手动在命令行下重新执行映射指令;
3)中标麒麟系统对部分显卡的驱动支持不完全,导致执行上述映射指令时有最长1秒左右的延迟,在此过程中触摸屏无响应,严重影响使用体验。
在本发明的技术方案中,将各个触摸屏与各个显示设备进行对应绑定,并创建虚拟触摸屏,以通过虚拟触摸屏接管系统中全部触摸屏的触控数据,将各个触摸屏的触控数据校正为虚拟触摸屏上的校正触控坐标,通过虚拟触摸屏上报的校正触控坐标执行触控操作,以使每个触摸屏上的触摸操作只映射到其绑定的显示设备,而不会映射到所有的显示设备上,提高触摸坐标的映射准确性。并且,根据创建的输入设备监控线程,监控触摸屏热插拔事件,根据所述触摸屏热插拔事件更新所述绑定信息,从而,当存在触摸屏拔出或新触摸屏插入情况时,系统自动更新触摸屏与显示设备的绑定信息,避免用户手动更新绑定信息;根据创建的显示监控线程,监控所述显示信息的更改事件,根据所述更改事件更新所述显示信息,从而当存在显示信息的更改时,系统自动更新显示信息;由于绑定信息和显示信息都能自动更新,从而根据绑定信息和显示信息校正的校正触控坐标也会是自动适应的,从而解决了多个显示触摸组件的系统存在触摸屏映射关系不能实现适应更新,需要用户手动更新的问题。
其中,虚拟触摸屏可视为由系统中全部的触摸屏按照显示扩展位置抽象而成。虚拟触摸屏的创建可以与触摸屏扩展方向、数量、各个触摸屏的分辨率相关。具体的,可以利用Linux输入子系统的/dev/uinput节点创建虚拟触摸屏,用该虚拟触摸屏对系统中的所有实际触摸屏设备进行接管与抽象,即对操作系统而言,系统中只有虚拟触摸屏这一个触摸屏设备存在。在一具体实施例中,该步骤的实现方法如下:
1)利用open("/dev/uinput",O_WRONLY|O_NONBLOCK)及ioctl(uinp_fd,UI_DEV_CREATE)系统调用创建虚拟触摸屏,并配置其具有与实际触摸屏相同的物理特性(物理分辨率、支持的事件列表等);
2)为触摸屏设备链表中的每个实际触摸屏设备执行ioctl(fd,EVIOCGRAB,1)系统调用,使各个触摸屏的触控信息不再上报操作系统,便于后续由虚拟触摸屏接管各触摸屏的触控信息。
步骤S40和步骤S50之间,可以进一步包括:当存在更新的绑定信息和/或显示信息时,更新所述虚拟触摸屏。
具体的,本发明涉及的操作系统可以为所有Linux桌面系统,具体可以为国产化中标麒麟操作系统。本发明的目的是提供一种不依赖Linux X11系统的多触摸屏映射方法,实现多个显示触摸组合应用场景下触摸屏与其绑定的显示设备的映射,并且能自动对系统中的触摸屏热插拔、显示分辨率变化以及显示扩展方式变更等事件做出快速响应,实现不需用户干预的高性能触摸-显示映射系统。
本发明通过创建虚拟触摸屏对系统中的所有触摸屏设备进行接管与抽象,各个触摸屏的触控数据经过坐标转换后由虚拟触摸屏进行上报;通过监控系统的输入设备,并根据输入设备的变化情况更新触摸屏与显示设备的绑定关系,从而实现对触摸屏热插拔的实时响应;通过监控操作系统的显示配置文件,并根据显示配置文件内容的变化对各显示设备的显示参数进行更新,从而实现对用户更改系统显示设置的实时响应。
上述步骤S10至步骤S60并不限于上述执行顺序,任意可实现的步骤顺序均同理包含在本发明的保护范围之内。
请参阅图2,基于本发明的多显示触摸组件系统的映射方法的第一实施例,本发明的多显示触摸组件系统的映射方法的第二实施例中,所述步骤S10,包括:
步骤S11,获取预设的绑定配置文件,根据所述绑定配置文件确定各个所述显示设备的显示设备名称、绑定的触摸屏以及各个所述触摸屏的物理连接信息。
步骤S12,获取预设的显示配置文件,根据所述显示配置文件确定各个所述显示触摸组件的显示信息,所述显示信息包括各个所述显示设备的显示扩展方向、各个显示设备的分辨率、各个所述触摸屏的分辨率、各个显示设备的显示区域的起点坐标,以及各个显示设备的显示区域的高度和宽度。
绑定配置文件为预先编制,在绑定配置文件中根据实际使用情况预先配置好各显示设备与触摸屏的绑定关系。按照显示设备显示内容的顺序(例如,左右扩展时从左至右,上下扩展时从上到下)依次设置好各显示设备的设备名称,以及与该显示设备绑定的触摸屏的名称以及物理连接信息,物理连接信息可以是USB接口信息。
本实施例中的显示区域起点坐标为显示区域的左上角坐标。
基于本发明的多显示触摸组件系统的映射方法的第一实施例,本发明的多显示触摸组件系统的映射方法的第三实施例中,所述步骤S30,还包括:
步骤S31,根据创建的输入设备监控线程,对系统的输入设备目录进行监控,根据系统是否自动在输入设备目录下添加或删除触摸屏对应的设备节点,判断是否触发触摸屏热插拔事件;
步骤S32,当触发所述触摸屏热插拔事件时,判断当前的触摸屏热插拔事件对应的操作种类;
步骤S33,当对应的操作种类为触摸屏插入操作时,更新插入的触摸屏与对应显示设备的绑定信息;
步骤S34,当对应的触摸屏操作种类为触摸屏拔出操作时,解除拔出的触摸屏与对应的显示设备的绑定信息。
对系统里的输入设备变化情况进行监控,以实现对触摸屏设备热插拔事件的实时响应,该监控实现方法如下:
1)利用Linux的inotify机制对/dev/input目录(即输入设备目录)进行监控,当触摸屏发生热插拔时系统会自动在/dev/input目录下添加或删除该触摸屏对应的设备节点,从而触发监控事件;
2)等待监控事件,若监控事件发生,进一步判断是发生了触摸屏插入还是拔出,若发生的是触摸屏插入操作,则更新该触摸屏与其对应的显示设备的绑定关系;若发生的是触摸屏拔出事件,则解除该触摸屏与其对应的显示设备的绑定关系。
基于本发明的多显示触摸组件系统的映射方法的第一实施例,本发明的多显示触摸组件系统的映射方法的第四实施例中,所述步骤S40,包括:
步骤S41,根据创建的显示监控线程,对所述显示信息进行监控,根据所述显示信息中的显示设备分辨率或显示扩展方式是否更改,判断是否触发所述显示信息更改事件;
步骤S42,当触发所述显示信息更改事件时,对所述显示信息进行更新。具体的,当触发所述显示信息更改事件时,解析最新的显示配置文件,以对所述显示信息进行更新。
对显示信息进行监控可以具体为对系统里的显示配置文件进行监控,以实现对显示分辨率或显示扩展方式变化的实时响应,该监控实现方法如下:
1)利用Linux的inotify机制对系统显示配置文件monitors.xml进行监控,当用户执行了更改显示分辨率或更改显示扩展方式(如从上下扩展改成左右扩展)操作时,操作系统最自动对显示配置文件里的内容进行相应更改,从而触发监控事件;
等待监控事件发生,若事件发生,则解析当前显示配置文件,对显示设备链表里的各显示设备的参数进行更新。
基于本发明的多显示触摸组件系统的映射方法的第一实施例,本发明的多显示触摸组件系统的映射方法的第五实施例中,所述多显示触摸组件系统的映射方法,还包括:
步骤S70,为每个所述触摸屏创建数据读取线程;
步骤S80,判断每个触摸屏是否存在触摸操作;
对不存在触摸操作的触摸屏,执行步骤S90:阻塞对应的所述数据读取线程;
对存在触摸操作的触摸屏,执行所述步骤S50。
在本实施例中,为触摸屏设备链表中的每个触摸屏创建一个数据读取线程,以分别对各个触摸屏的触摸数据进行处理,实现对各个触摸屏的触摸数据单独读取处理,并且通过读取线程,能准确识别触摸数据来源。
对不存在触摸操作的触摸屏,阻塞对应的所述数据读取线程,有利于提高数据处理速率。
基于本发明的多显示触摸组件系统的映射方法的第一实施例,本发明的多显示触摸组件系统的映射方法的第六实施例中,所述步骤S50包括:
步骤S51,根据所述显示信息确定所述多显示触摸组件的显示扩展方向;
步骤S52,当所述多显示触摸组件的显示扩展方向为水平方向时,对触摸操作对应的水平坐标X按照如下公式进行校正,得到校正水平触控坐标X3;
X2=X1+绑定的显示设备的左上角在显示扩展区域的x坐标......(2);
其中,公式(1)用于将发生触控操作的分触摸屏上的水平触控坐标X转换为其绑定的分显示设备的水平坐标X1,即将触控点的位置由触摸屏坐标系转换成显示坐标系。触摸屏坐标系和显示坐标系是等比例关系,如显示设备分辨率是1920*1080,触摸屏分辨率是2048*2048,那么触摸屏坐标上的坐标点(2048,2048)就对应显示坐标的坐标点(1920,1080),触摸屏坐标上的坐标点(1024,1024)就对应显示坐标的坐标点(960,540)。
公式(2)用于将分显示设备的水平坐标X1转换成整个显示扩展区域上对应的水平坐标X2。如两个分辨率分别为1920*1080的显示设备水平扩展,得到的整个显示扩展区域的分辨率是3840*1080,那么此时右边显示设备上的屏幕坐标(0,0)在整个显示分辨率里的坐标是(1920,0),即要加上个偏移,这个偏移就是公式中的x坐标(通过解析xml文件获取)。
公式(3)用于将整个显示扩展区域上对应的水平坐标X2转换成虚拟触摸屏上的水平坐标X3。虚拟触摸屏水平分辨率指的是将拼接扩展的各个触摸屏抽象形成的虚拟触摸屏的水平分辨率。
本发明的技术方案中,将多个触摸显示组件进行扩展显示后抽象出一个虚拟触摸屏接管物理触摸屏,系统中只能看到虚拟触摸屏。由于系统中存在多个物理触摸屏,因此需要通过公式(1)至公式(3)把分触摸屏上的触摸坐标根据显示位置进行校准(具体通过其绑定的显示设备在整个扩屏后的显示区域的位置,对触摸坐标重新进行校准),以通过这种校准方式得到准确的校正坐标。并且,x坐标可以通过解析显示配置文件获得,数据获取的便捷性高。
步骤S53,当所述多显示触摸组件的显示扩展方向为垂直方向时,对触摸操作对应的垂直坐标Y按照如下公式进行校正,得到校正垂直触控坐标Y3;
Y2=Y1+绑定的显示设备的左上角在显示扩展区域的y坐标......(5);
垂直扩展方向中,公式(4)-(6)的作用可参照水平扩展方向中公式(1)-(3)的作用,仅存在扩展方向不同的区别。
在水平扩展方式中,最左边显示设备的左上角显示坐标为(0,0),最左边触摸屏的左上角触控坐标为(0,0)。在垂直扩展方式中,最上边显示设备的左上角显示坐标为(0,0),最上边触摸屏的左上角触控坐标为(0,0)。当显示系统同时采用水平扩展和垂直扩展两种显示扩展方式时,采用公式(1)-(3)对水平触控坐标进行校正,采用公式(4)-(6)对垂直触控坐标进行校正,即可得到校正后的坐标(X3,Y3)。当显示系统仅采用水平扩展方式时,垂直坐标无需校正;当显示系统仅采用垂直扩展方式时,水平坐标无需校正。
具体的,上述x、y、X、Y的取值范围分别大于或等于0。将校正后的触点坐标以linux输入事件结构input_event的形式写入虚拟触摸屏,由虚拟触摸屏完成触控事件的上报。
基于本发明的多显示触摸组件系统的映射方法的第二实施例,本发明的多显示触摸组件系统的映射方法的第七实施例中,所述步骤S10之前,还包括:
步骤S100,建立绑定配置文件,按照显示设备的显示扩展顺序依次建立各触摸屏与显示设备的绑定关系,其中,各触摸屏利用物理连接信息进行唯一标识,各显示设备的显示设备名称进行唯一标识;该步骤只需手工执行一次。
步骤S110,建立触摸屏和显示设备的链表;
步骤S120,根据所述绑定配置文件对各显示设备及各触摸屏节点进行初始化。
其中显示设备的初始化方法如下:解析绑定配置文件,建立系统中触摸屏及显示设备列表,其中触摸屏设备具有如下数据结构:
显示设备具有如下数据结构:
解析当前用户名工作目录下的系统显示配置文件monitors.xml,获取当前系统的显示扩展方式(扩展屏或复制屏)以及各显示设备设备的分辨率、对应显示区域的左上角x、y坐标、对应显示区域的宽、高。
基于本发明的多显示触摸组件系统的映射方法的第七实施例,本发明的多显示触摸组件系统的映射方法的第八实施例中,所述步骤S120,包括:
步骤S121,遍历输入设备目录下所有输入设备,获取所述输入设备目录下的各所述触摸屏的名称及物理连接信息,判断目录下的所述触摸屏的名称及物理连接信息与所述链表中的各个节点是否匹配;
若是,则执行步骤S122,用目录下的所述触摸屏的名称初始化链表中对应节点的成员变量。
建立显示设备及触摸屏设备链表,并根据绑定配置文件对各设备节点进行初始化,对于系统分配给触摸屏的设备名等需动态获取的参数,遍历/dev/input目录下所有输入设备,获取各设备的名称及物理信息,如果该名称及物理信息与触摸屏设备链表中的某节点匹配,则用当前设备名初始化该节点对应的成员变量。
此外,为实现上述目的,本发明还提供一种终端,存储器、处理器、以及存储在所述存储器上并可在所述处理器上运行的计算机程序;所述计算机程序被所述处理器执行时实现如上述任一实施例所述的多显示触摸组件系统的映射方法的步骤。
由于本实施例终端的技术方案至少包括上述多显示触摸组件系统的映射方法实施例的全部技术方案,因此至少具有以上实施例的全部技术效果,此处不再一一赘述。
此外,为实现上述目的,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上述多显示触摸组件系统的映射方法的第一实施例至第八实施例中任一项的步骤。
由于本实施例计算机可读存储介质的技术方案至少包括上述多显示触摸组件系统的映射方法实施例的全部技术方案,因此至少具有以上实施例的全部技术效果,此处不再一一赘述。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个计算机可读存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备进入本发明各个实施例所述的方法。
在本说明书的描述中,参考术语“一实施例”、“另一实施例”、“其他实施例”、或“第一实施例~第X实施例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料、方法步骤或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (10)
1.一种多显示触摸组件系统的映射方法,其特征在于,每一所述显示触摸组件包括相互连接的显示设备和触摸屏;所述多显示触摸组件系统的映射方法,包括如下步骤:
确定各个所述触摸屏与各个所述显示设备的绑定信息,以及各个所述显示触摸组件的显示信息和物理连接信息;
创建用于接管全部所述触摸屏的虚拟触摸屏;
根据创建的输入设备监控线程,监控触摸屏热插拔事件,根据所述触摸屏热插拔事件更新所述绑定信息;
根据创建的显示监控线程,监控所述显示信息的更改事件,根据所述更改事件更新所述显示信息;
通过创建的数据读取线程获取触摸屏的触控数据,通过所述触控数据、所述绑定信息和所述显示信息,将所述触控数据校正为所述虚拟触摸屏的校正触控坐标;
将所述校正触控坐标写入所述虚拟触摸屏,通过所述虚拟触摸屏上报的校正触控坐标执行触控操作。
2.根据权利要求1所述的多显示触摸组件系统的映射方法,其特征在于,所述确定各个所述触摸屏与各个所述显示设备的绑定信息,以及各个所述显示触摸组件的显示信息和物理连接信息的步骤,包括:
获取预设的绑定配置文件,根据所述绑定配置文件确定各个所述显示设备的显示设备名称、绑定的触摸屏以及各个所述触摸屏的物理连接信息;
获取预设的显示配置文件,根据所述显示配置文件确定各个所述显示触摸组件的显示信息,所述显示信息包括各个所述显示设备的显示扩展方向、各个显示设备的分辨率、各个所述触摸屏的分辨率、各个显示设备的显示区域的起点坐标,以及各个显示设备的显示区域的高度和宽度。
3.根据权利要求1所述的多显示触摸组件系统的映射方法,其特征在于,所述根据创建的输入设备监控线程,监控触摸屏热插拔事件,根据所述触摸屏热插拔事件更新所述绑定信息的步骤,包括:
根据创建的输入设备监控线程,对系统的输入设备目录进行监控,根据系统是否自动在输入设备目录下添加或删除触摸屏对应的设备节点,判断是否触发触摸屏热插拔事件;
当触发所述触摸屏热插拔事件时,判断当前的触摸屏热插拔事件对应的操作种类;
当对应的操作种类为触摸屏插入操作时,更新插入的触摸屏与对应显示设备的绑定信息;
当对应的触摸屏操作种类为触摸屏拔出操作时,解除拔出的触摸屏与对应的显示设备的绑定信息。
4.根据权利要求1所述的多显示触摸组件系统的映射方法,其特征在于,所述根据创建的显示监控线程,监控所述显示信息的更改事件,根据所述更改事件更新所述显示信息的步骤,包括:
根据创建的显示监控线程,对所述显示信息进行监控,根据所述显示信息中的显示设备分辨率或显示扩展方式是否更改,判断是否触发所述显示信息更改事件;
当触发所述显示信息更改事件时,对所述显示信息进行更新。
5.根据权利要求1所述的多显示触摸组件系统的映射方法,其特征在于,还包括:
为每个所述触摸屏创建数据读取线程;
判断每个触摸屏是否存在触摸操作;
对不存在触摸操作的触摸屏,阻塞对应的所述数据读取线程;
对存在触摸操作的触摸屏,执行所述通过创建的数据读取线程获取触摸屏的触控数据,通过所述触控数据、所述绑定信息和所述显示信息,将所述触控数据校正为所述虚拟触摸屏的校正触控坐标的步骤。
6.根据权利要求1所述的多显示触摸组件系统的映射方法,其特征在于,所述通过创建的数据读取线程获取触摸屏的触控数据,通过所述触控数据、所述绑定信息和所述显示信息,将所述触控数据校正为所述虚拟触摸屏的校正触控坐标的步骤,包括:
根据所述显示信息确定所述多显示触摸组件的显示扩展方向;
当所述多显示触摸组件的显示扩展方向为水平方向时,对触摸操作对应的水平坐标X按照如下公式进行校正,得到校正水平触控坐标X3;
X2=X1+绑定的显示设备的左上角在显示扩展区域的x坐标;
当所述多显示触摸组件的显示扩展方向为垂直方向时,对触摸操作对应的垂直坐标Y按照如下公式进行校正,得到校正垂直触控坐标Y3;
Y2=Y1+绑定的显示设备的左上角在显示扩展区域的y坐标;
7.根据权利要求2所述的多显示触摸组件系统的映射方法,其特征在于,所述确定各个所述触摸屏与各个所述显示设备的绑定信息,以及各个所述显示触摸组件的显示信息和物理连接信息的步骤之前,还包括:
建立绑定配置文件,按照显示设备的显示扩展顺序依次建立各触摸屏与显示设备的绑定关系,其中,各触摸屏利用物理连接信息进行唯一标识,各显示设备的显示设备名称进行唯一标识;
建立触摸屏和显示设备的链表;
根据所述绑定配置文件对各显示设备及各触摸屏节点进行初始化。
8.根据权利要求7所述的多显示触摸组件系统的映射方法,其特征在于,所述根据所述绑定配置文件对各显示设备及各触摸屏节点进行初始化的步骤,包括:
遍历输入设备目录下所有输入设备,获取所述输入设备目录下的各所述触摸屏的名称及物理连接信息,判断目录下的所述触摸屏的名称及物理连接信息与所述链表中的各个节点是否匹配;
若是,则用所述输入设备目录下的所述触摸屏的名称初始化链表中对应节点的成员变量。
9.一种终端,其特征在于,包括:存储器、处理器、以及存储在所述存储器上并可在所述处理器上运行的计算机程序;所述计算机程序被所述处理器执行时实现如权利要求1至8中任一项所述的多显示触摸组件系统的映射方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至8中任一项所述的多显示触摸组件系统的映射方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010321591.8A CN111552402B (zh) | 2020-04-22 | 2020-04-22 | 多显示触摸组件系统的映射方法、终端及可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010321591.8A CN111552402B (zh) | 2020-04-22 | 2020-04-22 | 多显示触摸组件系统的映射方法、终端及可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111552402A true CN111552402A (zh) | 2020-08-18 |
CN111552402B CN111552402B (zh) | 2022-04-15 |
Family
ID=72000242
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010321591.8A Active CN111552402B (zh) | 2020-04-22 | 2020-04-22 | 多显示触摸组件系统的映射方法、终端及可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111552402B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113835562A (zh) * | 2021-10-26 | 2021-12-24 | 业成科技(成都)有限公司 | 触控显示装置及其触控校正方法、计算机设备和存储介质 |
CN114090085A (zh) * | 2021-11-18 | 2022-02-25 | 腾讯科技(深圳)有限公司 | 对象控制方法及相关装置 |
CN114706602A (zh) * | 2022-04-01 | 2022-07-05 | 珠海读书郎软件科技有限公司 | 一种基于Android的通过app更新触摸屏参数的方法 |
WO2022184029A1 (zh) * | 2021-03-01 | 2022-09-09 | 广州视源电子科技股份有限公司 | 拼贴画显示系统及其数据处理方法 |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1855061A (zh) * | 2005-03-18 | 2006-11-01 | 泰科电子有限公司 | 用于自动校准触摸监视器的方法和设备 |
US20090109195A1 (en) * | 2007-10-26 | 2009-04-30 | Kent Joel C | Method and apparatus for laplace constrained touchscreen calibration |
KR20100067178A (ko) * | 2008-12-11 | 2010-06-21 | (주)코아리버 | 터치 스크린의 멀티 터치 검출 장치 및 방법 |
US20110157024A1 (en) * | 2009-12-29 | 2011-06-30 | Gary Chao | System-expandable remote control with touch panel, and method for expanding systems |
CN103365444A (zh) * | 2012-03-26 | 2013-10-23 | 联想移动通信科技有限公司 | 一种终端设备上触摸屏的触控方法和终端设备 |
CN104881203A (zh) * | 2015-04-24 | 2015-09-02 | 青岛海信移动通信技术股份有限公司 | 一种在终端中的触控操作方法和装置 |
CN106325835A (zh) * | 2015-06-19 | 2017-01-11 | 深圳创锐思科技有限公司 | 应用于触摸终端的3d应用图标交互方法及触摸终端 |
CN108363519A (zh) * | 2017-12-29 | 2018-08-03 | 中国科学院自动化研究所 | 分布式红外视觉检测与投影融合自动矫正的触控显示系统 |
CN108572766A (zh) * | 2018-04-24 | 2018-09-25 | 京东方科技集团股份有限公司 | 一种触控显示装置及触控检测方法 |
US20180329572A1 (en) * | 2017-05-11 | 2018-11-15 | Intel Corporation | Touch detection and location in multi-touchscreen systems |
CN109144396A (zh) * | 2018-09-05 | 2019-01-04 | 广州视源电子科技股份有限公司 | 一种触摸信息处理方法、装置、设备和存储介质 |
-
2020
- 2020-04-22 CN CN202010321591.8A patent/CN111552402B/zh active Active
Patent Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1855061A (zh) * | 2005-03-18 | 2006-11-01 | 泰科电子有限公司 | 用于自动校准触摸监视器的方法和设备 |
US20090109195A1 (en) * | 2007-10-26 | 2009-04-30 | Kent Joel C | Method and apparatus for laplace constrained touchscreen calibration |
KR20100067178A (ko) * | 2008-12-11 | 2010-06-21 | (주)코아리버 | 터치 스크린의 멀티 터치 검출 장치 및 방법 |
US20110157024A1 (en) * | 2009-12-29 | 2011-06-30 | Gary Chao | System-expandable remote control with touch panel, and method for expanding systems |
CN103365444A (zh) * | 2012-03-26 | 2013-10-23 | 联想移动通信科技有限公司 | 一种终端设备上触摸屏的触控方法和终端设备 |
CN104881203A (zh) * | 2015-04-24 | 2015-09-02 | 青岛海信移动通信技术股份有限公司 | 一种在终端中的触控操作方法和装置 |
CN106325835A (zh) * | 2015-06-19 | 2017-01-11 | 深圳创锐思科技有限公司 | 应用于触摸终端的3d应用图标交互方法及触摸终端 |
US20180329572A1 (en) * | 2017-05-11 | 2018-11-15 | Intel Corporation | Touch detection and location in multi-touchscreen systems |
CN108363519A (zh) * | 2017-12-29 | 2018-08-03 | 中国科学院自动化研究所 | 分布式红外视觉检测与投影融合自动矫正的触控显示系统 |
CN108572766A (zh) * | 2018-04-24 | 2018-09-25 | 京东方科技集团股份有限公司 | 一种触控显示装置及触控检测方法 |
WO2019205615A1 (zh) * | 2018-04-24 | 2019-10-31 | 京东方科技集团股份有限公司 | 触控显示装置及触控检测方法 |
CN109144396A (zh) * | 2018-09-05 | 2019-01-04 | 广州视源电子科技股份有限公司 | 一种触摸信息处理方法、装置、设备和存储介质 |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022184029A1 (zh) * | 2021-03-01 | 2022-09-09 | 广州视源电子科技股份有限公司 | 拼贴画显示系统及其数据处理方法 |
CN113835562A (zh) * | 2021-10-26 | 2021-12-24 | 业成科技(成都)有限公司 | 触控显示装置及其触控校正方法、计算机设备和存储介质 |
CN113835562B (zh) * | 2021-10-26 | 2023-03-17 | 业成科技(成都)有限公司 | 触控显示装置及其触控校正方法、计算机设备和存储介质 |
CN114090085A (zh) * | 2021-11-18 | 2022-02-25 | 腾讯科技(深圳)有限公司 | 对象控制方法及相关装置 |
CN114090085B (zh) * | 2021-11-18 | 2023-06-30 | 腾讯科技(深圳)有限公司 | 对象控制方法及相关装置 |
CN114706602A (zh) * | 2022-04-01 | 2022-07-05 | 珠海读书郎软件科技有限公司 | 一种基于Android的通过app更新触摸屏参数的方法 |
CN114706602B (zh) * | 2022-04-01 | 2023-03-24 | 珠海读书郎软件科技有限公司 | 一种基于Android的通过app更新触摸屏参数的方法 |
Also Published As
Publication number | Publication date |
---|---|
CN111552402B (zh) | 2022-04-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111552402B (zh) | 多显示触摸组件系统的映射方法、终端及可读存储介质 | |
KR101790190B1 (ko) | 애플리케이션 시나리오 식별 방법, 전력 소비 관리 방법, 장치 및 단말기 장치 | |
JP5284509B2 (ja) | ページ分割されたコンテンツを表示し、それと対話するための方法およびシステム | |
CN110221899B (zh) | 一种用户界面的调节方法、装置及系统 | |
US20050050454A1 (en) | Controlling the look and feel of a web | |
US10182169B2 (en) | Information processing apparatus, information processing method, and non-transitory recording medium | |
US9372653B2 (en) | Information processing apparatus, information processing method, and storage medium | |
CN111199001A (zh) | 一种用于浏览器的资源重载兼容性处理方法及系统 | |
CN115033235A (zh) | 基于低代码开发平台进行web页面灵活复用的系统及方法 | |
US10592265B2 (en) | Application execution apparatus equipped with virtual machine controlling installed application, control method therefor, and storage medium storing control program therefor | |
JP2006107397A (ja) | 情報処理装置、およびプログラム | |
WO2019024507A1 (zh) | 一种触摸控制方法、装置及终端 | |
JP6536007B2 (ja) | 情報処理装置、その制御方法とプログラム | |
JP2017120518A (ja) | ソフトウェア開発プログラム及びソフトウェア開発方法 | |
CN111124215A (zh) | 一种拼接墙右键菜单控制应用的方法及系统 | |
JP3319713B2 (ja) | データ抽出装置 | |
JP3453287B2 (ja) | 原稿テキスト生成処理装置 | |
JP5817957B2 (ja) | 情報処理装置、情報処理方法、およびプログラム | |
JP6331307B2 (ja) | 情報処理装置、情報処理装置の制御方法、およびプログラム | |
WO2022113315A1 (ja) | ユーザインタフェース拡張システム、ユーザインタフェース拡張方法及びユーザインタフェース拡張プログラム | |
WO2024000111A1 (zh) | 桌面展示方法、电子设备、显示装置及计算机可读存储介质 | |
JP2019153345A (ja) | ブラウザ、ブラウザの制御方法およびプログラム | |
US20120117498A1 (en) | Secondary output generation from a presentation framework | |
JP3358311B2 (ja) | 表処理装置 | |
CN117573126A (zh) | 用户界面渲染方法、装置、电子设备和存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |