CN111966313B - 一种融合白板的实现方法、装置、设备和介质 - Google Patents
一种融合白板的实现方法、装置、设备和介质 Download PDFInfo
- Publication number
- CN111966313B CN111966313B CN202010735032.1A CN202010735032A CN111966313B CN 111966313 B CN111966313 B CN 111966313B CN 202010735032 A CN202010735032 A CN 202010735032A CN 111966313 B CN111966313 B CN 111966313B
- Authority
- CN
- China
- Prior art keywords
- screen
- whiteboard
- computer
- fusion
- coordinate system
- 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.)
- Active
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/14—Digital output to display device ; Cooperation and interconnection of the display device with other functional units
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Controls And Circuits For Display Device (AREA)
- Drawing Aids And Blackboards (AREA)
Abstract
本发明提供一种融合白板的实现方法、装置、设备和介质,方法包括:通过融合器将计算机的电脑屏幕分为两单独的电脑屏幕,将两电脑屏幕通过激光投影仪分别投射到融合白板;计算机定义投影的主屏幕和副屏幕,白板驱动单元对融合白板和计算机的两电脑屏幕进行坐标映射;关闭融合器,将计算机的电脑屏幕通过激光投影仪投射到融合白板,白板驱动单元对融合白板和计算机的一个电脑屏幕进行坐标映射;使用过程中,根据用户的使用场景通过融合器切换单屏或双屏投影,白板驱动单元控制融合白板切换屏幕工作模式,并建立对应的坐标系,从而实现鼠标或触控点的控制。本发明优点:既能够实现满屏投影,也能够实现多屏互动。
Description
技术领域
本发明涉及电子白板技术领域,特别涉及一种融合白板的实现方法、装置、设备和介质。
背景技术
随着计算机技术的飞速发展,集声音、图像、文字、视频为一体的各种多媒体课件已经进入课堂。集合了计算机技术、显示技术、网络技术、摄影摄像技术等的电子白板,在这个数字化时代应运而生。电子白板主要由硬件电子白板、用于与硬件电子白板连接和定位的电子白板驱动单元、展现给用户并提供用户编辑窗口的电子白板软件单元以及组成手写输入的识别软件组成。
传统的电子白板大致在80寸左右,限制其大小的原因是投影机的缘故,由于普通的投影机是无法投满屏的,这限制了大屏电子白板的发展。基于此,现有的电子白板技术在教学中的应用也仅仅局限于单板教学,使得教学的互动性受到了极大的限制,无法满足教学需求。
随着近几年操作系统的发展,系统已可以支持2个以上屏幕一起显示的多屏模式,可以对屏幕进行复制和扩展;因此给大屏电子白板带来了发展空间。现有的做法是使用2台投影仪,相当于在系统接入两台投影仪,把系统复制/扩展的桌面投影到大屏电子白板上,并在一块大屏电子白板上做到同时控制PC系统的2个屏幕。然而,随着近几年科技的不断发展进步,激光投影机也开始慢慢普及起来,用一台激光投影机配合一块大屏电子白板成为了普遍选择,但是只接入一台投影机就犹如PC系统只有1个屏幕,根本无法达到系统上复制/扩展等多屏互动的功能,因此,亟需提供一种能够配合系统的复制/扩展功能实现多屏互动的技术方案。
发明内容
本发明要解决的技术问题,在于提供一种融合白板的实现方法、装置、设备和介质,解决现有大屏电子白板无法配合系统复制/扩展功能实现多屏互动的技术问题。
第一方面,本发明提供了一种融合白板的实现方法,所述方法包括:
通过融合器将计算机的电脑屏幕分为两个单独的电脑屏幕,并将两个电脑屏幕通过激光投影仪分别投射到融合白板上;同时,通过计算机定义投影的主屏幕和副屏幕,并由白板驱动单元对融合白板和计算机的两个电脑屏幕进行坐标映射,以实现双屏投影;
关闭融合器,将计算机的电脑屏幕通过激光投影仪直接投射到融合白板上,并由白板驱动单元对融合白板和计算机的一个电脑屏幕进行坐标映射,以实现单屏投影;
在使用的过程中,根据用户的使用场景通过融合器来切换单屏或双屏投影,由白板驱动单元控制融合白板切换屏幕工作模式,并建立对应的坐标系,从而实现鼠标或触控点的控制。
进一步的,所述的通过计算机定义投影的主屏幕和副屏幕,并由白板驱动单元对融合白板和计算机的两个电脑屏幕进行坐标映射具体为:
通过计算机定义投影的主屏幕和副屏幕,即通过操作系统的分辨率设定投影至融合白板左半边的电脑屏幕为主屏幕和投影至融合白板右半边的电脑屏幕为副屏幕;白板驱动单元枚举计算机的显示设备信息,得到主屏幕的分辨率和起始坐标以及副屏幕的分辨率和起始坐标,并分别以主屏幕的起始坐标为坐标原点建立主屏坐标系和以副屏幕的起始坐标为坐标原点建立副屏坐标系;白板驱动单元将融合白板上报的各硬件坐标均放入到定位算法中进行计算,以得到各硬件坐标在主屏坐标系中的对应坐标或者在副屏坐标系中的对应坐标;
所述的由白板驱动单元对融合白板和计算机的一个电脑屏幕进行坐标映射具体为:白板驱动单元枚举计算机的显示设备信息,得到电脑屏幕的分辨率和起始坐标,并以电脑屏幕的起始坐标为坐标原点建立屏幕坐标系;白板驱动单元将融合白板上报的各硬件坐标均放入到定位算法中进行计算,以得到各硬件坐标在屏幕坐标系中的对应坐标。
进一步的,所述的根据用户的使用场景通过融合器来切换单屏或双屏投影,由白板驱动单元控制融合白板切换屏幕工作模式,并建立对应的坐标系具体为:
根据用户的使用场景需求,通过计算机定义具体的屏幕工作模式,所述屏幕工作模式包括大屏模式、半屏模式、复制模式、扩展模式或者互动模式;
当定义融合白板处于大屏模式时,融合器关闭,通过激光投影仪将计算机的一个电脑屏幕直接投影至融合白板上,白板驱动单元以电脑屏幕的起始坐标为坐标原点建立屏幕坐标系,通过定位算法来校正融合白板上报的投影区域的定位数据,以实现在融合白板的投影区域内控制鼠标或触控点;
当定义融合白板处于半屏模式时,融合器根据用户半屏选择控制激光投影仪将计算机的一个电脑屏幕投影至融合白板的左半边或右半边;白板驱动单元以电脑屏幕的起始坐标为坐标原点建立屏幕坐标系,通过定位算法来校正融合白板左半边或右半边上报的投影区域的定位数据,以实现在融合白板的左半边投影区域或者右半边投影区域内控制鼠标或触控点;
当定义融合白板处于复制模式时,融合器控制激光投影仪将两个相同的电脑屏幕分别投影至融合白板的左半边和右半边;白板驱动单元以电脑屏幕的起始坐标为坐标原点建立屏幕坐标系,通过定位算法来分别校正融合白板左半边和右半边上报的投影区域的定位数据,以实现在融合白板的左半边投影区域和右半边投影区域内控制鼠标或触控点;
当定义融合白板处于扩展模式时,融合器控制激光投影仪将两个不同的电脑屏幕分别投影至融合白板的左半边和右半边;白板驱动单元以主屏幕的起始坐标为坐标原点建立主屏幕坐标系,以副屏幕的起始坐标为坐标原点建立副屏幕坐标系;同时,将主屏幕坐标系作为全局坐标系的基准,将副屏幕坐标系拼接到主屏幕坐标系的任意位置,得到副屏幕坐标系的坐标原点在全局坐标系下的起始位置,进而得到副屏幕坐标系下的点在全局坐标系中的坐标;接着,通过定位算法来分别校正融合白板左半边和右半边上报的投影区域的定位数据,以实现在融合白板的左半边投影区域或者右半边投影区域内控制鼠标或触控点;
当定义融合白板处于互动模式时,白板驱动单元在扩展模式的情况下通知电子白板软件进入到互动模式,并将融合白板上报的硬件坐标通过定位算法换算成屏幕坐标后,将屏幕坐标提供给电子白板软件;电子白板软件通过Delphi中的TScreen类以及TMonitor类中的Left、Top、Width、Height属性来判断电子白板软件的主窗口是显示在主屏幕上还是显示在副屏幕上,并把主窗口和主窗口所在的屏幕的状态信息保存下来;
如果主窗口显示在主屏幕上,当用户在主屏幕所对应的投影区域内操作时,鼠标模拟MOUSEEVENT函数使用全局坐标系通过鼠标模拟公式进行计算,获得鼠标坐标,并执行鼠标操作;而副屏幕用于显示用户操作的其它软件,从而实现双屏互动;
如果主窗口显示在副屏幕上,当用户在副屏幕所对应的投影区域内操作时,鼠标模拟MOUSEEVENT函数使用全局坐标系通过鼠标模拟公式进行计算,获得鼠标坐标,并执行鼠标操作;而主屏幕用于显示用户操作的其它软件,从而实现双屏互动。
进一步的,在融合白板处于互动模式下,假设鼠标在全局坐标系下的坐标为(X,Y),当鼠标在主屏幕上操作时,所述鼠标模拟公式采用第一公式,所述第一公式为:X=65535/主屏幕分辨率宽度*鼠标在主屏幕坐标系中的横坐标,Y=65535/主屏幕分辨率高度*鼠标在主屏幕坐标系中的纵坐标;当鼠标在副屏幕上操作时,所述鼠标模拟公式采用第二公式,所述第二公式为:X=65535/主屏幕分辨率宽度*(鼠标在主屏幕坐标系中的横坐标+副屏幕坐标系的坐标原点在全局坐标系中的横坐标),Y=65535/主屏幕分辨率高度*(鼠标在主屏幕坐标系中的纵坐标+副屏幕坐标系的坐标原点在全局坐标系中的纵坐标);
当调用主窗口的子窗口,且需要将子窗口显示出来时,根据保存的屏幕的状态信息,使用SetWindowPos函数使该子窗口显示在与主窗口相同的屏幕上;
当移动主窗口时,即将主窗口从主屏幕移动至副屏幕或者从副屏幕移动至主屏幕时,通过监听WM_MOVE消息来得到移动后的主窗口是位于主屏幕还是副屏幕,并将主窗口与主窗口所在的屏幕的状态信息保存下来;
当使用主笔或副笔在主窗口上操作时,无论主窗口处在主屏幕或副屏幕上,电子白板软件先通过PossMessage广播一个WINDOWS系统消息告知白板驱动单元开启双笔模式;然后,白板驱动单元与电子白板软件之间通过SOCKET建立起通信连接,白板驱动单元将副笔书写的点通过坐标转换得到副笔书写点在全局坐标系中的坐标,并将得到的坐标发送给电子白板软件,从而完成副笔在主屏幕或副屏幕上的操作;而主笔为鼠标,鼠标模拟MOUSEEVENT函数使用全局坐标系通过鼠标模拟公式进行计算,获得鼠标坐标,从而执行鼠标操作。
第二方面,本发明提供了一种融合白板的实现装置,所述装置包括第一坐标映射模块、第二坐标映射模块以及模式切换模块;
所述第一坐标映射模块,用于通过融合器将计算机的电脑屏幕分为两个单独的电脑屏幕,并将两个电脑屏幕通过激光投影仪分别投射到融合白板上;同时,通过计算机定义投影的主屏幕和副屏幕,并由白板驱动单元对融合白板和计算机的两个电脑屏幕进行坐标映射,以实现双屏投影;
所述第二坐标映射模块,用于关闭融合器,将计算机的电脑屏幕通过激光投影仪直接投射到融合白板上,并由白板驱动单元对融合白板和计算机的一个电脑屏幕进行坐标映射,以实现单屏投影;
所述模式切换模块,用于在使用的过程中,根据用户的使用场景通过融合器来切换单屏或双屏投影,由白板驱动单元控制融合白板切换屏幕工作模式,并建立对应的坐标系,从而实现鼠标或触控点的控制。
进一步的,所述的通过计算机定义投影的主屏幕和副屏幕,并由白板驱动单元对融合白板和计算机的两个电脑屏幕进行坐标映射具体为:
通过计算机定义投影的主屏幕和副屏幕,即通过操作系统的分辨率设定投影至融合白板左半边的电脑屏幕为主屏幕和投影至融合白板右半边的电脑屏幕为副屏幕;白板驱动单元枚举计算机的显示设备信息,得到主屏幕的分辨率和起始坐标以及副屏幕的分辨率和起始坐标,并分别以主屏幕的起始坐标为坐标原点建立主屏坐标系和以副屏幕的起始坐标为坐标原点建立副屏坐标系;白板驱动单元将融合白板上报的各硬件坐标均放入到定位算法中进行计算,以得到各硬件坐标在主屏坐标系中的对应坐标或者在副屏坐标系中的对应坐标;
所述的由白板驱动单元对融合白板和计算机的一个电脑屏幕进行坐标映射具体为:白板驱动单元枚举计算机的显示设备信息,得到电脑屏幕的分辨率和起始坐标,并以电脑屏幕的起始坐标为坐标原点建立屏幕坐标系;白板驱动单元将融合白板上报的各硬件坐标均放入到定位算法中进行计算,以得到各硬件坐标在屏幕坐标系中的对应坐标。
进一步的,所述的根据用户的使用场景通过融合器来切换单屏或双屏投影,由白板驱动单元控制融合白板切换屏幕工作模式,并建立对应的坐标系具体为:
根据用户的使用场景需求,通过计算机定义具体的屏幕工作模式,所述屏幕工作模式包括大屏模式、半屏模式、复制模式、扩展模式或者互动模式;
当定义融合白板处于大屏模式时,融合器关闭,通过激光投影仪将计算机的一个电脑屏幕直接投影至融合白板上,白板驱动单元以电脑屏幕的起始坐标为坐标原点建立屏幕坐标系,通过定位算法来校正融合白板上报的投影区域的定位数据,以实现在融合白板的投影区域内控制鼠标或触控点;
当定义融合白板处于半屏模式时,融合器根据用户半屏选择控制激光投影仪将计算机的一个电脑屏幕投影至融合白板的左半边或右半边;白板驱动单元以电脑屏幕的起始坐标为坐标原点建立屏幕坐标系,通过定位算法来校正融合白板左半边或右半边上报的投影区域的定位数据,以实现在融合白板的左半边投影区域或者右半边投影区域内控制鼠标或触控点;
当定义融合白板处于复制模式时,融合器控制激光投影仪将两个相同的电脑屏幕分别投影至融合白板的左半边和右半边;白板驱动单元以电脑屏幕的起始坐标为坐标原点建立屏幕坐标系,通过定位算法来分别校正融合白板左半边和右半边上报的投影区域的定位数据,以实现在融合白板的左半边投影区域和右半边投影区域内控制鼠标或触控点;
当定义融合白板处于扩展模式时,融合器控制激光投影仪将两个不同的电脑屏幕分别投影至融合白板的左半边和右半边;白板驱动单元以主屏幕的起始坐标为坐标原点建立主屏幕坐标系,以副屏幕的起始坐标为坐标原点建立副屏幕坐标系;同时,将主屏幕坐标系作为全局坐标系的基准,将副屏幕坐标系拼接到主屏幕坐标系的任意位置,得到副屏幕坐标系的坐标原点在全局坐标系下的起始位置,进而得到副屏幕坐标系下的点在全局坐标系中的坐标;接着,通过定位算法来分别校正融合白板左半边和右半边上报的投影区域的定位数据,以实现在融合白板的左半边投影区域或者右半边投影区域内控制鼠标或触控点;
当定义融合白板处于互动模式时,白板驱动单元在扩展模式的情况下通知电子白板软件进入到互动模式,并将融合白板上报的硬件坐标通过定位算法换算成屏幕坐标后,将屏幕坐标提供给电子白板软件;电子白板软件通过Delphi中的TScreen类以及TMonitor类中的Left、Top、Width、Height属性来判断电子白板软件的主窗口是显示在主屏幕上还是显示在副屏幕上,并把主窗口和主窗口所在的屏幕的状态信息保存下来;
如果主窗口显示在主屏幕上,当用户在主屏幕所对应的投影区域内操作时,鼠标模拟MOUSEEVENT函数使用全局坐标系通过鼠标模拟公式进行计算,获得鼠标坐标,并执行鼠标操作;而副屏幕用于显示用户操作的其它软件,从而实现双屏互动;
如果主窗口显示在副屏幕上,当用户在副屏幕所对应的投影区域内操作时,鼠标模拟MOUSEEVENT函数使用全局坐标系通过鼠标模拟公式进行计算,获得鼠标坐标,并执行鼠标操作;而主屏幕用于显示用户操作的其它软件,从而实现双屏互动。
进一步的,在融合白板处于互动模式下,假设鼠标在全局坐标系下的坐标为(X,Y),当鼠标在主屏幕上操作时,所述鼠标模拟公式采用第一公式,所述第一公式为:X=65535/主屏幕分辨率宽度*鼠标在主屏幕坐标系中的横坐标,Y=65535/主屏幕分辨率高度*鼠标在主屏幕坐标系中的纵坐标;当鼠标在副屏幕上操作时,所述鼠标模拟公式采用第二公式,所述第二公式为:X=65535/主屏幕分辨率宽度*(鼠标在主屏幕坐标系中的横坐标+副屏幕坐标系的坐标原点在全局坐标系中的横坐标),Y=65535/主屏幕分辨率高度*(鼠标在主屏幕坐标系中的纵坐标+副屏幕坐标系的坐标原点在全局坐标系中的纵坐标);
当调用主窗口的子窗口,且需要将子窗口显示出来时,根据保存的屏幕的状态信息,使用SetWindowPos函数使该子窗口显示在与主窗口相同的屏幕上;
当移动主窗口时,即将主窗口从主屏幕移动至副屏幕或者从副屏幕移动至主屏幕时,通过监听WM_MOVE消息来得到移动后的主窗口是位于主屏幕还是副屏幕,并将主窗口与主窗口所在的屏幕的状态信息保存下来;
当使用主笔或副笔在主窗口上操作时,无论主窗口处在主屏幕或副屏幕上,电子白板软件先通过PossMessage广播一个WINDOWS系统消息告知白板驱动单元开启双笔模式;然后,白板驱动单元与电子白板软件之间通过SOCKET建立起通信连接,白板驱动单元将副笔书写的点通过坐标转换得到副笔书写点在全局坐标系中的坐标,并将得到的坐标发送给电子白板软件,从而完成副笔在主屏幕或副屏幕上的操作;而主笔为鼠标,鼠标模拟MOUSEEVENT函数使用全局坐标系通过鼠标模拟公式进行计算,获得鼠标坐标,从而执行鼠标操作。
第三方面,本发明提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现第一方面所述的方法。
第四方面,本发明提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现第一方面所述的方法。
本发明实施例中提供的一个或多个技术方案,至少具有如下技术效果或优点:
本发明既可以使用激光投影仪对融合白板(大屏电子白板)进行满屏投影,也可以通过融合器和激光投影仪的配合来达到投影2个电脑屏幕,实现多屏互动的效果。与传统的单板教学相比,可以使教学信息量变大,且提高了教学的灵活性、可操作性、师生的互动性,可以使老师在讲课时更灵活地演示他们想要演示的东西。同时,由于以往的双板互动往往需要2块白板配合2台投影仪,或者1块大屏白板配合2台投影仪来实现,其中,使用2块白板配合2台投影仪实现,白板中间会有边框,对屏幕会有分割的视觉和书写的界限,且成本高;使用1块大屏白板和2台投影仪也可以实现,但是2台投影机也增加了成本;而本申请只需1块大屏白板和1台激光投影仪即可实现满屏投影和多屏互动的效果,因此,实现成本低。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
下面参照附图结合实施例对本发明作进一步的说明。
图1为本发明所涉及的系统的框架示意图;
图2为本发明实施例一中一种融合白板的实现方法的执行流程图;
图3为本发明实施例二中一种融合白板的实现装置的结构示意图;
图4为本发明实施例三中电子设备的结构示意图;
图5为本发明实施例四中介质的结构示意图。
具体实施方式
本申请实施例通过提供一种方法、装置、设备及介质,解决现有大屏电子白板无法配合系统复制/扩展功能实现多屏互动的技术问题,能够获得既可以使用激光投影仪对大屏电子白板进行满屏投影,也可以通过融合器和激光投影仪的配合来达到投影2个电脑屏幕,实现多屏互动的技术效果。
本申请实施例中的技术方案,总体思路如下:将激光投影仪经融合器与融合白板一起均连接至计算机,使得可以通过计算机投影一个电脑屏幕,对融合白板和计算机的电脑屏幕进行坐标映射来实现单板单屏的功能,也可以通过融合器将一个电脑屏幕分为两个单独的电脑屏幕,并由计算机定义投影的主屏幕和副屏幕,即通过操作系统的分辨率设定左边的电脑屏幕为主屏幕和设定右边的电脑屏幕为副屏幕,与此同时,白板驱动单元根据融合器将激光投影仪投射出去的电脑屏幕一分为2分别在融合白板上的2个投影区域内进行定位,白板驱动单元再根据融合白板上报的硬件坐标进行处理,从而控制投影出来的两个电脑屏幕。
在介绍具体实施例之前,先介绍本申请实施例方法所对应的系统框架,如图1所示,系统大概分四个部分:融合白板、计算机、激光投影仪以及融合器;其中,所述融合白板为一块大尺寸白板,该大尺寸白板具体可以是传统电子白板长度的两倍;所述融合器用于实现将计算机的电脑屏幕一分为二,并通过激光投影仪投射出去;所述激光投影仪通过所述融合器与所述计算机相连接;所述融合白板与所述计算机相连接。
实施例一
本实施例提供一种融合白板的实现方法,如图2所示,所述方法包括:
通过融合器将计算机的电脑屏幕分为两个单独的电脑屏幕,并将两个电脑屏幕通过激光投影仪分别投射到融合白板上;同时,通过计算机定义投影的主屏幕和副屏幕,并由白板驱动单元对融合白板和计算机的两个电脑屏幕进行坐标映射,以实现双屏投影;
关闭融合器,将计算机的电脑屏幕通过激光投影仪直接投射到融合白板上,并由白板驱动单元对融合白板和计算机的一个电脑屏幕进行坐标映射,以实现单屏投影;
在使用的过程中,根据用户的使用场景通过融合器来切换单屏或双屏投影,由白板驱动单元控制融合白板切换屏幕工作模式,并建立对应的坐标系,从而实现鼠标或触控点的控制。
在本实施例中,所述的通过计算机定义投影的主屏幕和副屏幕,并由白板驱动单元对融合白板和计算机的两个电脑屏幕进行坐标映射具体为:
通过计算机定义投影的主屏幕和副屏幕,即通过操作系统的分辨率设定投影至融合白板左半边的电脑屏幕为主屏幕和投影至融合白板右半边的电脑屏幕为副屏幕;白板驱动单元枚举计算机的显示设备信息(在具体实施时,当融合器关闭时,白板驱动单元会枚举到1个显示设备;而当通过融合器将电脑屏幕一分为二时,白板驱动单元会枚举到2个显示设备),得到主屏幕的分辨率和起始坐标(即左上角坐标)以及副屏幕的分辨率和起始坐标(即左上角坐标),并分别以主屏幕的起始坐标为坐标原点建立主屏坐标系和以副屏幕的起始坐标为坐标原点建立副屏坐标系;白板驱动单元将融合白板上报的各硬件坐标均放入到定位算法中进行计算,以得到各硬件坐标在主屏坐标系中的对应坐标或者在副屏坐标系中的对应坐标;
所述的由白板驱动单元对融合白板和计算机的一个电脑屏幕进行坐标映射具体为:白板驱动单元枚举计算机的显示设备信息,得到电脑屏幕的分辨率和起始坐标,并以电脑屏幕的起始坐标为坐标原点建立屏幕坐标系;白板驱动单元将融合白板上报的各硬件坐标均放入到定位算法中进行计算,以得到各硬件坐标在屏幕坐标系中的对应坐标。
下面对坐标映射进行具体说明:
硬件坐标:即融合白板硬件的分辨率坐标,如融合白板硬件左上角传给白板驱动单元的坐标为(0,0),右下角坐标为(65535,65535),就可以得到硬件坐标(或设备坐标)的坐标系;同理屏幕坐标:电脑屏幕也把屏幕左上角设置为起始点,最远端设置为最大点,建立屏幕坐标的坐标系;定位算法的作用就是用算法对这2个坐标系(即硬件坐标和屏幕坐标的两个坐标系)进行映射,把硬件坐标上的任意点通过计算得到计算机电脑屏幕上的对应点),如果该点不在主屏幕的区域中,那么就把该点再放入副屏幕的定位数据中进行计算,来判断该点是属于主屏幕还是副屏幕,同时计算出该点的屏幕坐标(上述映射后即可得到电脑屏幕上相对的坐标)。
在本实施例中,所述的根据用户的使用场景通过融合器来切换单屏或双屏投影,由白板驱动单元控制融合白板切换屏幕工作模式,并建立对应的坐标系具体为:
根据用户的使用场景需求,通过计算机定义具体的屏幕工作模式,所述屏幕工作模式包括大屏模式、半屏模式、复制模式、扩展模式或者互动模式;
在介绍各工作模式之前,先来说明一下通过定位算法计算后的坐标:我们通过定位算法得到的坐标是操作系统分辨率下的坐标;例如,当前系统分辨率是1024*768,那么,定位算法计算的出来的坐标就是在(0,0)到(1024,768)范围内。同时,我们系统分辨率的坐标系是以主屏幕左上角为基准(0,0)点建立的,而副屏幕的坐标系就是相对于主屏幕的位置,如副屏幕在主屏幕左边,设定主屏幕和副屏幕的分辨率相同且横向摆放,那么,副屏幕左上角坐标就为(-副屏幕分辨率,0)。因此,在扩展模式时候得到的副屏幕坐标,只要知道副屏幕相对于主屏幕的位置(可以通过系统函数获取),就可以把校正后的坐标加上副屏幕相对于主屏幕的位置,即可以把坐标移动到正确的位置上。由于融合器对系统屏幕进行分屏显示是无法通过系统收到屏幕分辨率变化的消息的,因此这里由融合器来通知白板驱动单元进行模式切换。
下面来对各个工作模式进行详细说明:
当定义融合白板处于大屏模式时,融合器关闭,通过激光投影仪将计算机的一个电脑屏幕直接投影至融合白板上,白板驱动单元以电脑屏幕的起始坐标为坐标原点建立屏幕坐标系,通过定位算法来校正融合白板上报的投影区域的定位数据,以实现在融合白板的投影区域内控制鼠标或触控点;该大屏模式与传统的电子白板的模式相同,使用者可以在整个融合白板的板面上进行鼠标或触控点的操作。
当定义融合白板处于半屏模式时,融合器根据用户半屏选择控制激光投影仪将计算机的一个电脑屏幕投影至融合白板的左半边或右半边;白板驱动单元以电脑屏幕的起始坐标为坐标原点建立屏幕坐标系,通过定位算法来校正融合白板左半边或右半边上报的投影区域的定位数据,以实现在融合白板的左半边投影区域或者右半边投影区域内控制鼠标或触控点;在半屏模式下,当用户选择投影融合白板的左半边时,融合白板的右半边就会处于黑屏状态;同理,当用户选择投影融合白板的右半边时,融合白板的左半边就会处于黑屏状态。这样,在具体使用时,用户就可以在黑板状态的位置做板书/批注之类的物理上的操作,而不会影响到电脑屏幕上的触控/鼠标移动,从而能够达到一块融合白板既可以控制投影出电脑屏幕,又可以进行正常物理书写操作。
当定义融合白板处于复制模式时,融合器控制激光投影仪将两个相同的电脑屏幕分别投影至融合白板的左半边和右半边,即在融合白板的左半边和右半边同时显示相同的电脑屏幕;白板驱动单元以电脑屏幕的起始坐标为坐标原点建立屏幕坐标系,通过定位算法来分别校正融合白板左半边和右半边上报的投影区域的定位数据,以实现在融合白板的左半边投影区域和右半边投影区域内控制鼠标或触控点;在该复制模式下,无论用户站在融合白板的左半边,还是站在融合白板的右半边,都可以对同个电脑屏幕投影的触控/鼠标进行操作。
当定义融合白板处于扩展模式时,融合器控制激光投影仪将两个不同的电脑屏幕分别投影至融合白板的左半边和右半边;白板驱动单元以主屏幕的起始坐标为坐标原点建立主屏幕坐标系,以副屏幕的起始坐标为坐标原点建立副屏幕坐标系;同时,将主屏幕坐标系作为全局坐标系的基准,将副屏幕坐标系拼接到主屏幕坐标系的任意位置,得到副屏幕坐标系的坐标原点在全局坐标系下的起始位置,进而得到副屏幕坐标系下的点在全局坐标系中的坐标;接着,通过定位算法来分别校正融合白板左半边和右半边上报的投影区域的定位数据,以实现在融合白板的左半边投影区域或者右半边投影区域内控制鼠标或触控点;在该扩展模式下,由于受到微软的限制,两个电脑屏幕在同一时间只能在一边进行触控/鼠标操作,这就部分限制了用户的体验。为此,我们在扩展模式的基础上,又通过电子白板软件来实现了两个电脑屏幕可以同时进行书写的效果,具体请详见以下互动模式的说明。
当定义融合白板处于互动模式时,白板驱动单元在扩展模式的情况下通知电子白板软件进入到互动模式,并将融合白板上报的硬件坐标通过定位算法换算成屏幕坐标后,将屏幕坐标提供给电子白板软件;电子白板软件通过Delphi中的TScreen类以及TMonitor类中的Left、Top、Width、Height属性来判断电子白板软件的主窗口是显示在主屏幕上还是显示在副屏幕上,并把主窗口和主窗口所在的屏幕的状态信息保存下来;
如果主窗口显示在主屏幕上,当用户在主屏幕所对应的投影区域内操作时,鼠标模拟MOUSEEVENT函数使用全局坐标系通过鼠标模拟公式进行计算,获得鼠标坐标,并执行鼠标操作;而副屏幕用于显示用户操作的其它软件,从而实现双屏互动;其中,其它软件包括但不限于如word、ppt、excel、txt、html、图片、flash、音视频等;
如果主窗口显示在副屏幕上,当用户在副屏幕所对应的投影区域内操作时,鼠标模拟MOUSEEVENT函数使用全局坐标系通过鼠标模拟公式进行计算,获得鼠标坐标,并执行鼠标操作;而主屏幕用于显示用户操作的其它软件,从而实现双屏互动;其中,其它软件包括但不限于如word、ppt、excel、txt、html、图片、flash、音视频等。
在本实施例中,在融合白板处于互动模式下,假设鼠标在全局坐标系下的坐标为(X,Y),当鼠标在主屏幕上操作时,所述鼠标模拟公式采用第一公式,所述第一公式为:X=65535/主屏幕分辨率宽度*鼠标在主屏幕坐标系中的横坐标,Y=65535/主屏幕分辨率高度*鼠标在主屏幕坐标系中的纵坐标;当鼠标在副屏幕上操作时,所述鼠标模拟公式采用第二公式,所述第二公式为:X=65535/主屏幕分辨率宽度*(鼠标在主屏幕坐标系中的横坐标+副屏幕坐标系的坐标原点在全局坐标系中的横坐标),Y=65535/主屏幕分辨率高度*(鼠标在主屏幕坐标系中的纵坐标+副屏幕坐标系的坐标原点在全局坐标系中的纵坐标);从而实现在全局坐标系中模拟出鼠标的位置。
当调用主窗口的子窗口,且需要将子窗口显示出来时,根据保存的屏幕的状态信息,使用SetWindowPos函数使该子窗口显示在与主窗口相同的屏幕上,即如果主窗口位于主屏幕上,则主窗口的子窗口均显示在主屏幕上;如果主窗口位于副屏幕上,则主窗口的子窗口均显示在副屏幕上。
当移动主窗口时,即将主窗口从主屏幕移动至副屏幕或者从副屏幕移动至主屏幕时,通过监听WM_MOVE消息来得到移动后的主窗口是位于主屏幕还是副屏幕,并将主窗口与主窗口所在的屏幕的状态信息保存下来;这样,当调用主窗口的子窗口,且需要将子窗口显示出来时,就可以根据保存的屏幕的状态信息,使用SetWindowPos函数使该子窗口显示在与主窗口相同的屏幕上。
当使用主笔或副笔在主窗口上操作时,无论主窗口处在主屏幕或副屏幕上,电子白板软件先通过PossMessage广播一个WINDOWS系统消息告知白板驱动单元开启双笔模式;然后,白板驱动单元与电子白板软件之间通过SOCKET建立起通信连接,白板驱动单元将副笔书写的点通过坐标转换得到副笔书写点在全局坐标系中的坐标,并将得到的坐标发送给电子白板软件,从而完成副笔在主屏幕或副屏幕上的操作;而主笔为鼠标,鼠标模拟MOUSEEVENT函数使用全局坐标系通过鼠标模拟公式进行计算,获得鼠标坐标,从而执行鼠标操作。
基于同一发明构思,本申请还提供了与实施例一中的方法对应的装置,详见实施例二。
实施例二
在本实施例中提供了一种融合白板的实现装置,如图3所示,所述装置包括第一坐标映射模块、第二坐标映射模块以及模式切换模块;
所述第一坐标映射模块,用于通过融合器将计算机的电脑屏幕分为两个单独的电脑屏幕,并将两个电脑屏幕通过激光投影仪分别投射到融合白板上;同时,通过计算机定义投影的主屏幕和副屏幕,并由白板驱动单元对融合白板和计算机的两个电脑屏幕进行坐标映射,以实现双屏投影;
所述第二坐标映射模块,用于关闭融合器,将计算机的电脑屏幕通过激光投影仪直接投射到融合白板上,并由白板驱动单元对融合白板和计算机的一个电脑屏幕进行坐标映射,以实现单屏投影;
所述模式切换模块,用于在使用的过程中,根据用户的使用场景通过融合器来切换单屏或双屏投影,由白板驱动单元控制融合白板切换屏幕工作模式,并建立对应的坐标系,从而实现鼠标或触控点的控制。
在本实施例中,所述的通过计算机定义投影的主屏幕和副屏幕,并由白板驱动单元对融合白板和计算机的两个电脑屏幕进行坐标映射具体为:
通过计算机定义投影的主屏幕和副屏幕,即通过操作系统的分辨率设定投影至融合白板左半边的电脑屏幕为主屏幕和投影至融合白板右半边的电脑屏幕为副屏幕;白板驱动单元枚举计算机的显示设备信息,得到主屏幕的分辨率和起始坐标以及副屏幕的分辨率和起始坐标,并分别以主屏幕的起始坐标为坐标原点建立主屏坐标系和以副屏幕的起始坐标为坐标原点建立副屏坐标系;白板驱动单元将融合白板上报的各硬件坐标均放入到定位算法中进行计算,以得到各硬件坐标在主屏坐标系中的对应坐标或者在副屏坐标系中的对应坐标;
所述的由白板驱动单元对融合白板和计算机的一个电脑屏幕进行坐标映射具体为:白板驱动单元枚举计算机的显示设备信息,得到电脑屏幕的分辨率和起始坐标,并以电脑屏幕的起始坐标为坐标原点建立屏幕坐标系;白板驱动单元将融合白板上报的各硬件坐标均放入到定位算法中进行计算,以得到各硬件坐标在屏幕坐标系中的对应坐标。
在本实施例中,所述的根据用户的使用场景通过融合器来切换单屏或双屏投影,由白板驱动单元控制融合白板切换屏幕工作模式,并建立对应的坐标系具体为:
根据用户的使用场景需求,通过计算机定义具体的屏幕工作模式,所述屏幕工作模式包括大屏模式、半屏模式、复制模式、扩展模式或者互动模式;
当定义融合白板处于大屏模式时,融合器关闭,通过激光投影仪将计算机的一个电脑屏幕直接投影至融合白板上,白板驱动单元以电脑屏幕的起始坐标为坐标原点建立屏幕坐标系,通过定位算法来校正融合白板上报的投影区域的定位数据,以实现在融合白板的投影区域内控制鼠标或触控点;
当定义融合白板处于半屏模式时,融合器根据用户半屏选择控制激光投影仪将计算机的一个电脑屏幕投影至融合白板的左半边或右半边;白板驱动单元以电脑屏幕的起始坐标为坐标原点建立屏幕坐标系,通过定位算法来校正融合白板左半边或右半边上报的投影区域的定位数据,以实现在融合白板的左半边投影区域或者右半边投影区域内控制鼠标或触控点;
当定义融合白板处于复制模式时,融合器控制激光投影仪将两个相同的电脑屏幕分别投影至融合白板的左半边和右半边;白板驱动单元以电脑屏幕的起始坐标为坐标原点建立屏幕坐标系,通过定位算法来分别校正融合白板左半边和右半边上报的投影区域的定位数据,以实现在融合白板的左半边投影区域和右半边投影区域内控制鼠标或触控点;
当定义融合白板处于扩展模式时,融合器控制激光投影仪将两个不同的电脑屏幕分别投影至融合白板的左半边和右半边;白板驱动单元以主屏幕的起始坐标为坐标原点建立主屏幕坐标系,以副屏幕的起始坐标为坐标原点建立副屏幕坐标系;同时,将主屏幕坐标系作为全局坐标系的基准,将副屏幕坐标系拼接到主屏幕坐标系的任意位置,得到副屏幕坐标系的坐标原点在全局坐标系下的起始位置,进而得到副屏幕坐标系下的点在全局坐标系中的坐标;接着,通过定位算法来分别校正融合白板左半边和右半边上报的投影区域的定位数据,以实现在融合白板的左半边投影区域或者右半边投影区域内控制鼠标或触控点;
当定义融合白板处于互动模式时,白板驱动单元在扩展模式的情况下通知电子白板软件进入到互动模式,并将融合白板上报的硬件坐标通过定位算法换算成屏幕坐标后,将屏幕坐标提供给电子白板软件;电子白板软件通过Delphi中的TScreen类以及TMonitor类中的Left、Top、Width、Height属性来判断电子白板软件的主窗口是显示在主屏幕上还是显示在副屏幕上,并把主窗口和主窗口所在的屏幕的状态信息保存下来;
如果主窗口显示在主屏幕上,当用户在主屏幕所对应的投影区域内操作时,鼠标模拟MOUSEEVENT函数使用全局坐标系通过鼠标模拟公式进行计算,获得鼠标坐标,并执行鼠标操作;而副屏幕用于显示用户操作的其它软件,从而实现双屏互动;
如果主窗口显示在副屏幕上,当用户在副屏幕所对应的投影区域内操作时,鼠标模拟MOUSEEVENT函数使用全局坐标系通过鼠标模拟公式进行计算,获得鼠标坐标,并执行鼠标操作;而主屏幕用于显示用户操作的其它软件,从而实现双屏互动。
在本实施例中,在融合白板处于互动模式下,假设鼠标在全局坐标系下的坐标为(X,Y),当鼠标在主屏幕上操作时,所述鼠标模拟公式采用第一公式,所述第一公式为:X=65535/主屏幕分辨率宽度*鼠标在主屏幕坐标系中的横坐标,Y=65535/主屏幕分辨率高度*鼠标在主屏幕坐标系中的纵坐标;当鼠标在副屏幕上操作时,所述鼠标模拟公式采用第二公式,所述第二公式为:X=65535/主屏幕分辨率宽度*(鼠标在主屏幕坐标系中的横坐标+副屏幕坐标系的坐标原点在全局坐标系中的横坐标),Y=65535/主屏幕分辨率高度*(鼠标在主屏幕坐标系中的纵坐标+副屏幕坐标系的坐标原点在全局坐标系中的纵坐标);
当调用主窗口的子窗口,且需要将子窗口显示出来时,根据保存的屏幕的状态信息,使用SetWindowPos函数使该子窗口显示在与主窗口相同的屏幕上;
当移动主窗口时,即将主窗口从主屏幕移动至副屏幕或者从副屏幕移动至主屏幕时,通过监听WM_MOVE消息来得到移动后的主窗口是位于主屏幕还是副屏幕,并将主窗口与主窗口所在的屏幕的状态信息保存下来;
当使用主笔或副笔在主窗口上操作时,无论主窗口处在主屏幕或副屏幕上,电子白板软件先通过PossMessage广播一个WINDOWS系统消息告知白板驱动单元开启双笔模式;然后,白板驱动单元与电子白板软件之间通过SOCKET建立起通信连接,白板驱动单元将副笔书写的点通过坐标转换得到副笔书写点在全局坐标系中的坐标,并将得到的坐标发送给电子白板软件,从而完成副笔在主屏幕或副屏幕上的操作;而主笔为鼠标,鼠标模拟MOUSEEVENT函数使用全局坐标系通过鼠标模拟公式进行计算,获得鼠标坐标,从而执行鼠标操作。
由于本发明实施例二所介绍的装置,为实施本发明实施例一的方法所采用的装置,故而基于本发明实施例一所介绍的方法,本领域所属人员能够了解该装置的具体结构及变形,故而在此不再赘述。凡是本发明实施例一的方法所采用的装置都属于本发明所欲保护的范围。
基于同一发明构思,本申请提供了实施例一对应的电子设备实施例,详见实施例三。
实施例三
本实施例提供了一种电子设备,如图4所示,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时,可以实现实施例一中任一实施方式。
由于本实施例所介绍的电子设备为实施本申请实施例一中方法所采用的设备,故而基于本申请实施例一中所介绍的方法,本领域所属技术人员能够了解本实施例的电子设备的具体实施方式以及其各种变化形式,所以在此对于该电子设备如何实现本申请实施例中的方法不再详细介绍。只要本领域所属技术人员实施本申请实施例中的方法所采用的设备,都属于本申请所欲保护的范围。
基于同一发明构思,本申请提供了实施例一对应的存储介质,详见实施例四。
实施例四
本实施例提供一种计算机可读存储介质,如图5所示,其上存储有计算机程序,该计算机程序被处理器执行时,可以实现实施例一中任一实施方式。
本领域内的技术人员应明白,本发明的实施例可提供为方法、装置、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、装置、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
本申请实施例中提供的技术方案,至少具有如下技术效果或优点:本发明既可以使用激光投影仪对融合白板(大屏电子白板)进行满屏投影,也可以通过融合器和激光投影仪的配合来达到投影2个电脑屏幕,实现多屏互动的效果。与传统的单板教学相比,可以使教学信息量变大,且提高了教学的灵活性、可操作性、师生的互动性,可以使老师在讲课时更灵活地演示他们想要演示的东西。同时,由于以往的双板互动往往需要2块白板配合2台投影仪,或者1块大屏白板配合2台投影仪来实现,其中,使用2块白板配合2台投影仪实现,白板中间会有边框,对屏幕会有分割的视觉和书写的界限,且成本高;使用1块大屏白板和2台投影仪也可以实现,但是2台投影机也增加了成本;而本申请只需1块大屏白板和1台激光投影仪即可实现满屏投影和多屏互动的效果,因此,实现成本低。
虽然以上描述了本发明的具体实施方式,但是熟悉本技术领域的技术人员应当理解,我们所描述的具体的实施例只是说明性的,而不是用于对本发明的范围的限定,熟悉本领域的技术人员在依照本发明的精神所作的等效的修饰以及变化,都应当涵盖在本发明的权利要求所保护的范围内。
Claims (8)
1.一种融合白板的实现方法,其特征在于:所述方法包括:
通过融合器将计算机的电脑屏幕分为两个单独的电脑屏幕,并将两个电脑屏幕通过激光投影仪分别投射到融合白板上;同时,通过计算机定义投影的主屏幕和副屏幕,并由白板驱动单元对融合白板和计算机的两个电脑屏幕进行坐标映射,以实现双屏投影;
关闭融合器,将计算机的电脑屏幕通过激光投影仪直接投射到融合白板上,并由白板驱动单元对融合白板和计算机的一个电脑屏幕进行坐标映射,以实现单屏投影;
在使用的过程中,根据用户的使用场景通过融合器来切换单屏或双屏投影,由白板驱动单元控制融合白板切换屏幕工作模式,并建立对应的坐标系,从而实现鼠标或触控点的控制;
所述的根据用户的使用场景通过融合器来切换单屏或双屏投影,由白板驱动单元控制融合白板切换屏幕工作模式,并建立对应的坐标系具体为:
根据用户的使用场景需求,通过计算机定义具体的屏幕工作模式,所述屏幕工作模式包括大屏模式、半屏模式、复制模式、扩展模式或者互动模式;
当定义融合白板处于大屏模式时,融合器关闭,通过激光投影仪将计算机的一个电脑屏幕直接投影至融合白板上,白板驱动单元以电脑屏幕的起始坐标为坐标原点建立屏幕坐标系,通过定位算法来校正融合白板上报的投影区域的定位数据,以实现在融合白板的投影区域内控制鼠标或触控点;
当定义融合白板处于半屏模式时,融合器根据用户半屏选择控制激光投影仪将计算机的一个电脑屏幕投影至融合白板的左半边或右半边;白板驱动单元以电脑屏幕的起始坐标为坐标原点建立屏幕坐标系,通过定位算法来校正融合白板左半边或右半边上报的投影区域的定位数据,以实现在融合白板的左半边投影区域或者右半边投影区域内控制鼠标或触控点;
当定义融合白板处于复制模式时,融合器控制激光投影仪将两个相同的电脑屏幕分别投影至融合白板的左半边和右半边;白板驱动单元以电脑屏幕的起始坐标为坐标原点建立屏幕坐标系,通过定位算法来分别校正融合白板左半边和右半边上报的投影区域的定位数据,以实现在融合白板的左半边投影区域和右半边投影区域内控制鼠标或触控点;
当定义融合白板处于扩展模式时,融合器控制激光投影仪将两个不同的电脑屏幕分别投影至融合白板的左半边和右半边;白板驱动单元以主屏幕的起始坐标为坐标原点建立主屏幕坐标系,以副屏幕的起始坐标为坐标原点建立副屏幕坐标系;同时,将主屏幕坐标系作为全局坐标系的基准,将副屏幕坐标系拼接到主屏幕坐标系的任意位置,得到副屏幕坐标系的坐标原点在全局坐标系下的起始位置,进而得到副屏幕坐标系下的点在全局坐标系中的坐标;接着,通过定位算法来分别校正融合白板左半边和右半边上报的投影区域的定位数据,以实现在融合白板的左半边投影区域或者右半边投影区域内控制鼠标或触控点;
当定义融合白板处于互动模式时,白板驱动单元在扩展模式的情况下通知电子白板软件进入到互动模式,并将融合白板上报的硬件坐标通过定位算法换算成屏幕坐标后,将屏幕坐标提供给电子白板软件;电子白板软件通过Delphi中的TScreen类以及TMonitor类中的Left、Top、Width、Height属性来判断电子白板软件的主窗口是显示在主屏幕上还是显示在副屏幕上,并把主窗口和主窗口所在的屏幕的状态信息保存下来;
如果主窗口显示在主屏幕上,当用户在主屏幕所对应的投影区域内操作时,鼠标模拟MOUSEEVENT函数使用全局坐标系通过鼠标模拟公式进行计算,获得鼠标坐标,并执行鼠标操作;而副屏幕用于显示用户操作的其它软件,从而实现双屏互动;
如果主窗口显示在副屏幕上,当用户在副屏幕所对应的投影区域内操作时,鼠标模拟MOUSEEVENT函数使用全局坐标系通过鼠标模拟公式进行计算,获得鼠标坐标,并执行鼠标操作;而主屏幕用于显示用户操作的其它软件,从而实现双屏互动。
2.根据权利要求1所述的一种融合白板的实现方法,其特征在于:所述的通过计算机定义投影的主屏幕和副屏幕,并由白板驱动单元对融合白板和计算机的两个电脑屏幕进行坐标映射具体为:
通过计算机定义投影的主屏幕和副屏幕,即通过操作系统的分辨率设定投影至融合白板左半边的电脑屏幕为主屏幕和投影至融合白板右半边的电脑屏幕为副屏幕;白板驱动单元枚举计算机的显示设备信息,得到主屏幕的分辨率和起始坐标以及副屏幕的分辨率和起始坐标,并分别以主屏幕的起始坐标为坐标原点建立主屏坐标系和以副屏幕的起始坐标为坐标原点建立副屏坐标系;白板驱动单元将融合白板上报的各硬件坐标均放入到定位算法中进行计算,以得到各硬件坐标在主屏坐标系中的对应坐标或者在副屏坐标系中的对应坐标;
所述的由白板驱动单元对融合白板和计算机的一个电脑屏幕进行坐标映射具体为:白板驱动单元枚举计算机的显示设备信息,得到电脑屏幕的分辨率和起始坐标,并以电脑屏幕的起始坐标为坐标原点建立屏幕坐标系;白板驱动单元将融合白板上报的各硬件坐标均放入到定位算法中进行计算,以得到各硬件坐标在屏幕坐标系中的对应坐标。
3.根据权利要求1所述的一种融合白板的实现方法,其特征在于:在融合白板处于互动模式下,假设鼠标在全局坐标系下的坐标为(X,Y),当鼠标在主屏幕上操作时,所述鼠标模拟公式采用第一公式,所述第一公式为:X=65535/主屏幕分辨率宽度*鼠标在主屏幕坐标系中的横坐标,Y=65535/主屏幕分辨率高度*鼠标在主屏幕坐标系中的纵坐标;当鼠标在副屏幕上操作时,所述鼠标模拟公式采用第二公式,所述第二公式为:X=65535/主屏幕分辨率宽度*(鼠标在主屏幕坐标系中的横坐标+副屏幕坐标系的坐标原点在全局坐标系中的横坐标),Y=65535/主屏幕分辨率高度*(鼠标在主屏幕坐标系中的纵坐标+副屏幕坐标系的坐标原点在全局坐标系中的纵坐标);
当调用主窗口的子窗口,且需要将子窗口显示出来时,根据保存的屏幕的状态信息,使用SetWindowPos函数使该子窗口显示在与主窗口相同的屏幕上;
当移动主窗口时,即将主窗口从主屏幕移动至副屏幕或者从副屏幕移动至主屏幕时,通过监听WM_MOVE消息来得到移动后的主窗口是位于主屏幕还是副屏幕,并将主窗口与主窗口所在的屏幕的状态信息保存下来;
当使用主笔或副笔在主窗口上操作时,无论主窗口处在主屏幕或副屏幕上,电子白板软件先通过PossMessage广播一个WINDOWS系统消息告知白板驱动单元开启双笔模式;然后,白板驱动单元与电子白板软件之间通过SOCKET建立起通信连接,白板驱动单元将副笔书写的点通过坐标转换得到副笔书写点在全局坐标系中的坐标,并将得到的坐标发送给电子白板软件,从而完成副笔在主屏幕或副屏幕上的操作;而主笔为鼠标,鼠标模拟MOUSEEVENT函数使用全局坐标系通过鼠标模拟公式进行计算,获得鼠标坐标,从而执行鼠标操作。
4.一种融合白板的实现装置,其特征在于:所述装置包括第一坐标映射模块、第二坐标映射模块以及模式切换模块;
所述第一坐标映射模块,用于通过融合器将计算机的电脑屏幕分为两个单独的电脑屏幕,并将两个电脑屏幕通过激光投影仪分别投射到融合白板上;同时,通过计算机定义投影的主屏幕和副屏幕,并由白板驱动单元对融合白板和计算机的两个电脑屏幕进行坐标映射,以实现双屏投影;
所述第二坐标映射模块,用于关闭融合器,将计算机的电脑屏幕通过激光投影仪直接投射到融合白板上,并由白板驱动单元对融合白板和计算机的一个电脑屏幕进行坐标映射,以实现单屏投影;
所述模式切换模块,用于在使用的过程中,根据用户的使用场景通过融合器来切换单屏或双屏投影,由白板驱动单元控制融合白板切换屏幕工作模式,并建立对应的坐标系,从而实现鼠标或触控点的控制;
所述的根据用户的使用场景通过融合器来切换单屏或双屏投影,由白板驱动单元控制融合白板切换屏幕工作模式,并建立对应的坐标系具体为:
根据用户的使用场景需求,通过计算机定义具体的屏幕工作模式,所述屏幕工作模式包括大屏模式、半屏模式、复制模式、扩展模式或者互动模式;
当定义融合白板处于大屏模式时,融合器关闭,通过激光投影仪将计算机的一个电脑屏幕直接投影至融合白板上,白板驱动单元以电脑屏幕的起始坐标为坐标原点建立屏幕坐标系,通过定位算法来校正融合白板上报的投影区域的定位数据,以实现在融合白板的投影区域内控制鼠标或触控点;
当定义融合白板处于半屏模式时,融合器根据用户半屏选择控制激光投影仪将计算机的一个电脑屏幕投影至融合白板的左半边或右半边;白板驱动单元以电脑屏幕的起始坐标为坐标原点建立屏幕坐标系,通过定位算法来校正融合白板左半边或右半边上报的投影区域的定位数据,以实现在融合白板的左半边投影区域或者右半边投影区域内控制鼠标或触控点;
当定义融合白板处于复制模式时,融合器控制激光投影仪将两个相同的电脑屏幕分别投影至融合白板的左半边和右半边;白板驱动单元以电脑屏幕的起始坐标为坐标原点建立屏幕坐标系,通过定位算法来分别校正融合白板左半边和右半边上报的投影区域的定位数据,以实现在融合白板的左半边投影区域和右半边投影区域内控制鼠标或触控点;
当定义融合白板处于扩展模式时,融合器控制激光投影仪将两个不同的电脑屏幕分别投影至融合白板的左半边和右半边;白板驱动单元以主屏幕的起始坐标为坐标原点建立主屏幕坐标系,以副屏幕的起始坐标为坐标原点建立副屏幕坐标系;同时,将主屏幕坐标系作为全局坐标系的基准,将副屏幕坐标系拼接到主屏幕坐标系的任意位置,得到副屏幕坐标系的坐标原点在全局坐标系下的起始位置,进而得到副屏幕坐标系下的点在全局坐标系中的坐标;接着,通过定位算法来分别校正融合白板左半边和右半边上报的投影区域的定位数据,以实现在融合白板的左半边投影区域或者右半边投影区域内控制鼠标或触控点;
当定义融合白板处于互动模式时,白板驱动单元在扩展模式的情况下通知电子白板软件进入到互动模式,并将融合白板上报的硬件坐标通过定位算法换算成屏幕坐标后,将屏幕坐标提供给电子白板软件;电子白板软件通过Delphi中的TScreen类以及TMonitor类中的Left、Top、Width、Height属性来判断电子白板软件的主窗口是显示在主屏幕上还是显示在副屏幕上,并把主窗口和主窗口所在的屏幕的状态信息保存下来;
如果主窗口显示在主屏幕上,当用户在主屏幕所对应的投影区域内操作时,鼠标模拟MOUSEEVENT函数使用全局坐标系通过鼠标模拟公式进行计算,获得鼠标坐标,并执行鼠标操作;而副屏幕用于显示用户操作的其它软件,从而实现双屏互动;
如果主窗口显示在副屏幕上,当用户在副屏幕所对应的投影区域内操作时,鼠标模拟MOUSEEVENT函数使用全局坐标系通过鼠标模拟公式进行计算,获得鼠标坐标,并执行鼠标操作;而主屏幕用于显示用户操作的其它软件,从而实现双屏互动。
5.根据权利要求4所述的一种融合白板的实现装置,其特征在于:所述的通过计算机定义投影的主屏幕和副屏幕,并由白板驱动单元对融合白板和计算机的两个电脑屏幕进行坐标映射具体为:
通过计算机定义投影的主屏幕和副屏幕,即通过操作系统的分辨率设定投影至融合白板左半边的电脑屏幕为主屏幕和投影至融合白板右半边的电脑屏幕为副屏幕;白板驱动单元枚举计算机的显示设备信息,得到主屏幕的分辨率和起始坐标以及副屏幕的分辨率和起始坐标,并分别以主屏幕的起始坐标为坐标原点建立主屏坐标系和以副屏幕的起始坐标为坐标原点建立副屏坐标系;白板驱动单元将融合白板上报的各硬件坐标均放入到定位算法中进行计算,以得到各硬件坐标在主屏坐标系中的对应坐标或者在副屏坐标系中的对应坐标;
所述的由白板驱动单元对融合白板和计算机的一个电脑屏幕进行坐标映射具体为:白板驱动单元枚举计算机的显示设备信息,得到电脑屏幕的分辨率和起始坐标,并以电脑屏幕的起始坐标为坐标原点建立屏幕坐标系;白板驱动单元将融合白板上报的各硬件坐标均放入到定位算法中进行计算,以得到各硬件坐标在屏幕坐标系中的对应坐标。
6.根据权利要求4所述的一种融合白板的实现装置,其特征在于:在融合白板处于互动模式下,假设鼠标在全局坐标系下的坐标为(X,Y),当鼠标在主屏幕上操作时,所述鼠标模拟公式采用第一公式,所述第一公式为:X=65535/主屏幕分辨率宽度*鼠标在主屏幕坐标系中的横坐标,Y=65535/主屏幕分辨率高度*鼠标在主屏幕坐标系中的纵坐标;当鼠标在副屏幕上操作时,所述鼠标模拟公式采用第二公式,所述第二公式为:X=65535/主屏幕分辨率宽度*(鼠标在主屏幕坐标系中的横坐标+副屏幕坐标系的坐标原点在全局坐标系中的横坐标),Y=65535/主屏幕分辨率高度*(鼠标在主屏幕坐标系中的纵坐标+副屏幕坐标系的坐标原点在全局坐标系中的纵坐标);
当调用主窗口的子窗口,且需要将子窗口显示出来时,根据保存的屏幕的状态信息,使用SetWindowPos函数使该子窗口显示在与主窗口相同的屏幕上;
当移动主窗口时,即将主窗口从主屏幕移动至副屏幕或者从副屏幕移动至主屏幕时,通过监听WM_MOVE消息来得到移动后的主窗口是位于主屏幕还是副屏幕,并将主窗口与主窗口所在的屏幕的状态信息保存下来;
当使用主笔或副笔在主窗口上操作时,无论主窗口处在主屏幕或副屏幕上,电子白板软件先通过PossMessage广播一个WINDOWS系统消息告知白板驱动单元开启双笔模式;然后,白板驱动单元与电子白板软件之间通过SOCKET建立起通信连接,白板驱动单元将副笔书写的点通过坐标转换得到副笔书写点在全局坐标系中的坐标,并将得到的坐标发送给电子白板软件,从而完成副笔在主屏幕或副屏幕上的操作;而主笔为鼠标,鼠标模拟MOUSEEVENT函数使用全局坐标系通过鼠标模拟公式进行计算,获得鼠标坐标,从而执行鼠标操作。
7.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至3任一项所述的方法。
8.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1至3任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010735032.1A CN111966313B (zh) | 2020-07-28 | 2020-07-28 | 一种融合白板的实现方法、装置、设备和介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010735032.1A CN111966313B (zh) | 2020-07-28 | 2020-07-28 | 一种融合白板的实现方法、装置、设备和介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111966313A CN111966313A (zh) | 2020-11-20 |
CN111966313B true CN111966313B (zh) | 2022-06-17 |
Family
ID=73364017
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010735032.1A Active CN111966313B (zh) | 2020-07-28 | 2020-07-28 | 一种融合白板的实现方法、装置、设备和介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111966313B (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103049136A (zh) * | 2013-01-05 | 2013-04-17 | 锐达互动科技股份有限公司 | 基于电子白板的双板互动实现方法 |
WO2016021022A1 (ja) * | 2014-08-07 | 2016-02-11 | 日立マクセル株式会社 | 投写型映像表示装置及びその制御方法 |
CN106325798A (zh) * | 2016-08-23 | 2017-01-11 | 努比亚技术有限公司 | 一种实现多屏内容显示的方法及装置 |
CN106873837A (zh) * | 2017-01-22 | 2017-06-20 | 深圳市东方中原电子科技有限公司 | 一种双通道智能电子白板及书写的方法 |
CN109308818A (zh) * | 2017-07-28 | 2019-02-05 | 宁波睿易教育科技股份有限公司 | 一种课上多屏互动教学操作方法和系统 |
CN111399791A (zh) * | 2020-03-20 | 2020-07-10 | 成都依能科技股份有限公司 | 基于同一pc的电子板书多屏显示系统及方法 |
-
2020
- 2020-07-28 CN CN202010735032.1A patent/CN111966313B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103049136A (zh) * | 2013-01-05 | 2013-04-17 | 锐达互动科技股份有限公司 | 基于电子白板的双板互动实现方法 |
WO2016021022A1 (ja) * | 2014-08-07 | 2016-02-11 | 日立マクセル株式会社 | 投写型映像表示装置及びその制御方法 |
CN106325798A (zh) * | 2016-08-23 | 2017-01-11 | 努比亚技术有限公司 | 一种实现多屏内容显示的方法及装置 |
CN106873837A (zh) * | 2017-01-22 | 2017-06-20 | 深圳市东方中原电子科技有限公司 | 一种双通道智能电子白板及书写的方法 |
CN109308818A (zh) * | 2017-07-28 | 2019-02-05 | 宁波睿易教育科技股份有限公司 | 一种课上多屏互动教学操作方法和系统 |
CN111399791A (zh) * | 2020-03-20 | 2020-07-10 | 成都依能科技股份有限公司 | 基于同一pc的电子板书多屏显示系统及方法 |
Also Published As
Publication number | Publication date |
---|---|
CN111966313A (zh) | 2020-11-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109509375B (zh) | 一种录播一体的智能全面屏黑板系统及其控制方法 | |
CN106945433B (zh) | 纳米触控黑板及交互式智能黑板 | |
CN103049136B (zh) | 基于电子白板的双板互动实现方法 | |
CN108733296B (zh) | 书写笔迹的擦除方法、装置和设备 | |
CN102053789A (zh) | 演示系统和演示系统的显示装置 | |
CN104050840A (zh) | 交互式电子白板教学方法及系统 | |
CN103530078A (zh) | 用于显示镜像的系统与方法 | |
CN103197875B (zh) | 电子设备以及电子设备的显示画面的显示方法 | |
CN105160951A (zh) | 一种基于移动设备的白板教学方法及系统 | |
CN111399791A (zh) | 基于同一pc的电子板书多屏显示系统及方法 | |
CN101329761A (zh) | 一种投影设备梯形失真调节方法及装置 | |
CN103049135B (zh) | 基于电子白板的双板拼接实现方法 | |
CN103853510A (zh) | 一种手持电子设备的多屏幕投影显示控制系统及方法 | |
WO2019033657A1 (zh) | 板书显示方法、装置、设备和计算机可读存储介质 | |
WO2017114255A1 (zh) | 一种针对投影图像的触控方法及装置 | |
CN106775397A (zh) | Pcb板和应用pcb板的多点触控方法 | |
CN110928509A (zh) | 显示控制方法、显示控制装置、存储介质、通信终端 | |
CN111966313B (zh) | 一种融合白板的实现方法、装置、设备和介质 | |
CN103236042A (zh) | 图片自适应处理方法及装置 | |
CN111522519A (zh) | 一种投屏方法、装置、设备、系统及存储介质 | |
US20230020294A1 (en) | Screen size adjustment method for lcd projectors | |
CN105976667A (zh) | 地震虚拟场景逃生训练系统 | |
CN114125267B (zh) | 一种摄像头智能跟踪的方法和装置 | |
CN111273844A (zh) | 触摸显示装置的多信号源切换控制方法和触摸显示装置 | |
TW202016904A (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 |