CN107665139B - 用于在线教学中的实时双向绘制的实现方法及装置 - Google Patents
用于在线教学中的实时双向绘制的实现方法及装置 Download PDFInfo
- Publication number
- CN107665139B CN107665139B CN201610618890.1A CN201610618890A CN107665139B CN 107665139 B CN107665139 B CN 107665139B CN 201610618890 A CN201610618890 A CN 201610618890A CN 107665139 B CN107665139 B CN 107665139B
- Authority
- CN
- China
- Prior art keywords
- cursor
- information data
- user equipment
- cursor information
- transparent layer
- 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
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09B—EDUCATIONAL OR DEMONSTRATION APPLIANCES; APPLIANCES FOR TEACHING, OR COMMUNICATING WITH, THE BLIND, DEAF OR MUTE; MODELS; PLANETARIA; GLOBES; MAPS; DIAGRAMS
- G09B5/00—Electrically-operated educational appliances
- G09B5/08—Electrically-operated educational appliances providing for individual presentation of information to a plurality of student stations
- G09B5/14—Electrically-operated educational appliances providing for individual presentation of information to a plurality of student stations with provision for individual teacher-student communication
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/131—Protocols for games, networked simulations or virtual reality
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Business, Economics & Management (AREA)
- Physics & Mathematics (AREA)
- Educational Administration (AREA)
- Educational Technology (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
本发明提供了一种用于在线教学中的实时双向绘制的实现方法及装置,其中,方法包括:在背景界面上创建透明图层;光标在所述透明图层上渲染图像时,实时抓取光标的第一光标信息数据;将所述第一光标信息数据发送给其它用户设备,以便其它用户设备根据接收到的光标信息数据在其透明图层上渲染图像;实时接收其它用户设备发送的光标信息数据作为当前用户设备的第二光标信息数据;当前用户设备根据所述第二光标信息数据在在其透明图层上渲染图像。本发明实现教师与学生之间的实时双向、多向绘制,实现教师与学生之间的实时双向、多向互动。
Description
技术领域
本发明涉及在线教学互动领域,尤其涉及一种教师与学生之间双向绘制的方法,具体来说就是一种用于在线教学中的实时双向绘制的实现方法及装置。
背景技术
随着新兴互联网产业的发展,越来越多的学校、教育机构意识到在线教育(e-Learning)对教学的正向传播意义。教师已经不再局限于点对点面授这样传统的教学方法,力图通过寓教于乐的授课方式,在授课过程中穿插更有利于学生理解的图文、动画及声音造型,通过全新的教学理念来帮助学生更好的获取知识。而在线教育中的互动需求又显得比较突出,特别是在“一对一”或“一对多”小组课中,在线教学互动显得尤为重要,多路涂鸦在这样大背景下应运而生。具体来说,“涂鸦”是指教师或学生把光标的轨迹连成一条线;“多路”是指老师和学生之间信息交互通道,比如老师A,学生B,学生C,多路指的是A->B、C,B->A、C,或者C->A、B。
现有的在线视频教学中,教师在自己课件上进行涂鸦(包括对试题进行标记、批注、打分等),然后通过屏幕录屏(或截屏)的方式抓取当前界面的内容,再将抓取的内容(图片)传输给学生;学生收到图片后,可以在图片上进行涂鸦(包括对试题进行标记、批注等),然后通过屏幕录屏(或截屏)的方式抓取当前界面的内容,再将抓取的内容(图片)传输给教师,从而实现教师与学生之间的信息交互。然而,现有技术中的涂鸦仅限于教师或学生利用自己的操作端在自己的操作界面上进行涂鸦,然后通过录屏或者截屏方式将涂鸦后的界面记录下来(获得一张图片),然后将记录的内容发送给对方;但是,现有技术不允许多个学生同步涂鸦,也不允许一个或多个学生与教师同步涂鸦,即时性差,无法满足当前在线教学的需求。
因此,本领域技术人员亟需研发一种涂鸦方法,满足在线教学中教师与学生之间实时双向、多向互动的需求。
发明内容
有鉴于此,本发明要解决的技术问题在于提供一种用于在线教学中的实时双向绘制的实现方法及装置,解决了现有在线教学中教师与学生之间无法实时双向、多向交互绘制的问题。
为了解决上述技术问题,本发明的具体实施方式提供一种用于在线教学中的实时双向绘制的实现方法,包括:在背景界面上创建透明图层;光标在所述透明图层上渲染图像时,实时抓取光标的第一光标信息数据;将所述第一光标信息数据发送给其它用户设备,以便其它用户设备根据接收到的光标信息数据在其透明图层上渲染图像;实时接收其它用户设备发送的光标信息数据作为当前用户设备的第二光标信息数据;当前用户设备根据所述第二光标信息数据在其所述透明图层上渲染图像。
本发明的具体实施方式还提供一种用于在线教学中的实时双向绘制的实现装置,包括:创建单元,用于在背景界面上创建透明图层;抓取单元,用于光标在所述透明图层上渲染图像时实时抓取光标的第一光标信息数据;发送单元,用于将光标信息数据发送给其它用户设备,以便其它用户设备根据接收的光标信息数据在其透明图层上渲染图像;接收单元,用于实时接收其它用户设备发送的光标信息数据作为当前用户设备的第二光标信息数据;渲染单元,用于在所述透明图层上实时渲染图像以及根据所述第二光标信息数据在所述透明图层上渲染图像。
根据本发明的上述具体实施方式可知,用于在线教学中的实时双向绘制的实现方法及装置至少具有以下有益效果:任意一个用户设备可以利用操作系统自带的底层函数(例如Windows系统自带的API底层函数、苹果系统(包括MAC系统和iOS系统)自带的底层函数等)在背景界面(视频界面、图形界面、文字界面等)上创建透明图层;当用户利用光标在透明图层上绘制图像时,可以通过操作系统自带的底层函数抓取光标在透明图层上的第一光标信息数据,并通过服务器将第一光标信息数据发送其它用户设备,还可以通过服务器接收其它用户设备发送的光标信息数据作为当前用户设备的第二光标信息数据,并根据所述第二光标信息数据在透明图层上渲染图像,本发明实现教师与学生之间的实时双向、多向绘制,实现教师与学生之间的实时双向、多向互动,提高了在线教学的趣味性及实时性,有利于提高学生的学习效率及学习兴趣。本发明应用场景不限于在线教学领域,还可以应用到游戏领域(例如双人绘图、多人绘图)等。
应了解的是,上述一般描述及以下具体实施方式仅为示例性及阐释性的,其并不能限制本发明所欲主张的范围。
附图说明
下面的所附附图是本发明的说明书的一部分,其绘制了本发明的示例实施例,所附附图与说明书的描述一起用来说明本发明的原理。
图1为本发明具体实施方式提供的一种用于在线教学中的实时双向绘制的实现方法的实施例一的流程图;
图2为本发明具体实施方式提供的一种用于在线教学中的实时双向绘制的实现方法的实施例二的流程图;
图3为本发明具体实施方式提供的一种用于在线教学中的实时双向绘制的实现装置的实施例一的示意框图;
图4为本发明具体实施方式提供的一种用于在线教学中的实时双向绘制的实现装置的实施例二的示意框图;
图5为本发明具体实施方式提供的一种用于在线教学中的实时双向绘制的实现方法的实施例三的流程图;
图6为本发明具体实施方式提供的一种用于在线教学中的实时双向绘制的实现方法的实施例四的流程图;
图7为本发明具体实施方式提供的一种用于在线教学中的实时双向绘制的实现装置的实施例三的示意框图;
图8为本发明具体实施方式提供的一种用于在线教学中的实时双向绘制的实现装置的实施例四的示意框图;
图9为本发明具体实施方式提供的一种用于在线教学中的实时双向绘制的实现装置的组成示意图;
图10为本发明具体实施方式提供的一种用于在线教学中的实时双向绘制的实现装置的运行时序图;
图11为本发明具体实施方式提供的一种用于在线教学中的实时双向绘制的实现方法的整体流程图;
图12为本发明具体实施方式提供的一种用于在线教学中的实时双向绘制的实现装置的整体示意框图;
图13A为本发明具体实施方式提供的一种用于在线教学中的实时双向绘制的实现装置的应用场景一;
图13B为本发明具体实施方式提供的一种用于在线教学中的实时双向绘制的实现装置的应用场景二;
图13C为本发明具体实施方式提供的一种用于在线教学中的实时双向绘制的实现装置的应用场景三。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚明白,下面将以附图及详细叙述清楚说明本发明所揭示内容的精神,任何所属技术领域技术人员在了解本发明内容的实施例后,当可由本发明内容所教示的技术,加以改变及修饰,其并不脱离本发明内容的精神与范围。
本发明的示意性实施例及其说明用于解释本发明,但并不作为对本发明的限定。另外,在附图及实施方式中所使用相同或类似标号的元件/构件是用来代表相同或类似部分。
关于本文中所使用的“第一”、“第二”、…等,并非特别指称次序或顺位的意思,也非用以限定本发明,其仅为了区别以相同技术用语描述的元件或操作。
关于本文中所使用的方向用语,例如:上、下、左、右、前或后等,仅是参考附图的方向。因此,使用的方向用语是用来说明并非用来限制本创作。
关于本文中所使用的“包含”、“包括”、“具有”、“含有”等等,均为开放性的用语,即意指包含但不限于。
关于本文中所使用的“及/或”,包括所述事物的任一或全部组合。
关于本文中所使用的用语“大致”、“约”等,用以修饰任何可以微变化的数量或误差,但这些微变化或误差并不会改变其本质。一般而言,此类用语所修饰的微变化或误差的范围在部分实施例中可为20%,在部分实施例中可为10%,在部分实施例中可为5%或是其他数值。本领域技术人员应当了解,前述提及的数值可依实际需求而调整,并不以此为限。
某些用以描述本申请的用词将于下或在此说明书的别处讨论,以提供本领域技术人员在有关本申请的描述上额外的引导。
申请文件中的“绘制”一词,在部分文献中也称之为“涂鸦”,“绘制”包括但不限于“绘图”、“标记”、“批注”、“书写”、“打字”、“修改”、“注释”、“打分”等操作,可以在电子设备上通过光标实现,光标可以为鼠标、绘图仪等输入设备产生的光标。
图1为本发明具体实施方式提供的一种用于在线教学中的实时双向绘制的实现方法的实施例一的流程图,如图1所示,任意一个用户设备利用操作系统自带的底层函数在背景界面上创建透明图层;当用户利用光标在透明图层上绘制图像时,通过操作系统自带的底层函数实时抓取光标在透明图层上的第一光标信息数据,并将第一光标信息数据发送其它用户设备。
该附图所示的具体实施方式包括:
步骤101:在背景界面上创建透明图层。具体来说就是调用操作系统自带的底层函数(例如Windows系统自带的API底层函数、苹果系统(包括MAC系统和iOS系统)自带的底层函数等)在所述背景界面上创建所述透明图层。背景界面可以是视频界面、图形界面、文字界面,例如,在视频窗口上创建一个透明图层,或者在图形图片上创建一个透明图层。
步骤102:光标在所述透明图层上渲染图像时,实时抓取光标的第一光标信息数据。光标在透明图层上绘制时,其光标轨迹渲染为图像;同时实时抓取光标轨迹坐标值,具体包括以下两个子步骤:调用操作系统自带的底层函数(例如Windows系统自带的API底层函数、苹果系统自带的底层函数等)抓取光标的光标信息;根据所述光标信息和绘图信息生成所述第一光标信息数据,其中,绘图信息具体指笔记数据,主要包括画笔颜色、画笔宽度和橡皮擦等。在具体应用中光标可以为鼠标、绘图仪等产生的光标。本发明的具体实施例中,光标信息包括光标轨迹坐标集合、每一个坐标对应的时间信息等;所述绘图信息包括画笔颜色、画笔宽度和橡皮擦等。即,第一光标信息数据包括光标坐标集合、每一个坐标对应的时间信息、画笔颜色、画笔宽度和橡皮擦等。在一个具体实施例中,例如在Windows系统下,通过监听WM_MOUSEMOVE消息,提取消息参数里带的位置和按键信息完成鼠标的跟踪,具体为:每一个标准的Windows消息带两个参数WPARAM和LPARAM,WM_MOUSEMOVE的WPARAM参数携带此时按下哪个按钮的信息,这里关心鼠标左键是否已经按下,即判断是否携带MK_LBUTTON,LPARAM参数携带鼠标此时的位置,使用GET_X_LPARAM和GET_Y_LPARAM分别提取鼠标的X,Y坐标。在iOS系统下,通过设置图层的背景色将图层设为透明图层view.backgroundColor=[UIColor clearColor];通过touch事件回调函数获取坐标信息。
步骤103:将所述第一光标信息数据发送给其它用户设备作为其他用户设备的第二光标信息数据,以便其他用户设备根据接收的光标信息数据在其透明图层上渲染图像。将所述第一光标信息数据发送给其它用户设备具体包括两种方式:一种是用户设备将所述第一光标信息数据直接发送给其它用户设备,这种主要通过局域网来实现的,即多个用户设备组建一个局域网,每个用户设备均可以通过广播的方式将第一光标信息数据直接发送给局域网内其它用户设备;另一种是用户设备通过服务器将所述第一光标信息数据转发给其它用户设备,具体就是用户设备将所述第一光标信息数据上传到服务器,然后由服务器推送给其它的用户设备。
参见图1,任意一个用户设备(包括教师操作的用户设备或者学生操作的用户设备)可以利用操作系统自带的底层函数(例如Windows系统自带的API底层函数、苹果系统(包括MAC系统和iOS系统)自带的底层函数等)在背景界面上创建透明图层;当用户利用光标在透明图层上绘制图像时,通过操作系统自带的底层函数抓取光标的第一光标信息数据,并将第一光标信息数据发送其它用户设备,从而实现教师与学生之间的实时双向、多向绘制,实现教师与学生之间的实时双向、多向互动,提高了在线教学的趣味性及时效性,有利于提高学生的学习效率及学习兴趣。另外,利用操作系统自带的底层函数即可实现,实现简单。本发明中实时双向绘制主要针对“一对一”在线教学,实时多向互动主要针对“一对多”在线教学。
图2为本发明具体实施方式提供的一种用于在线教学中的实时双向绘制的实现方法的实施例二的流程图,如图2所示,每个用户设备将本地产生的第一光标信息数据存储到第一消息队列中,如果某一用户设备由于系统故障、断电等原因导致该当前用户设备透明图层上的图像消失时,该当前用户设备可以从其它用户设备的第一消息队列中提取其它用户设备的第一光标信息数据作为该当前用户的第二光标信息数据在其透明图层上渲染图像,从而恢复部分图像;另外,当有新的用户设备加入到当前在线教学中时,新加入的用户设备也可以从其它用户设备的第一消息队列中获取其它用户设备的第一光标信息数据作为新加入用户设备的第二光标信息数据,然后根据接收的光标信息数据在其透明图层上渲染图像。该附图所示的具体实施方式中,在步骤103之前或者之后,该方法还包括:
步骤104:将所述第一光标信息数据存储到第一消息队列中。其中,图2仅绘制出步骤104位于步骤103之后的情形,步骤104处于步骤103之前的情形图中未绘制。本发明的具体实施例中,在步骤104之前,该方法还可以包括:用户设备在本地创建多个消息队列(其中至少有一个消息队列用于存储用户设备在本地绘制图像产生的第一光标信息数据,一个消息队列用于存储从其它用户设备接收的光标信息数据)。
本发明的具体实施例中,如果某一用户设备由于系统故障、断电等原因导致该当前用户设备透明图层上的图像消失时,在步骤104之后,该方法还可以包括:从其它用户设备获取其它用户设备的第一光标信息数据作为当前用户设备的第二光标信息数据,第二光标信息数据包含光标坐标集合以及每一个光标对应的时间信息。在一个具体实施例中,当前用户设备在根据第二光标信息渲染图像的过程中,一方面可以结合当前用户设备的系统参数重新定位光标坐标在当前用户设备的位置,例如,第二光标信息数据中的光标轨迹坐标,系为该发送端的坐标定位,由于接收端的显示屏尺寸的坐标与发送端的显示屏尺寸的坐标可能不是同尺寸或同比例,需将发送端的坐标系转换为接收端的坐标系,即为将第二光标信息中的光标轨迹坐标集合转换成接收端的光标轨迹坐标集合。其中当前用户设备的系统参数还包括透明图层的尺寸大小等。另一方面,由于利用时间校正的方法校正每一个坐标的时间信息,例如发送端发送的光标信息中每一个坐标对应的时间信息,系为发送端时间为基准点,该基准点时间未必与接收端的时间基准点一致,故把第二光标信息数据中每一个坐标对应的时间信息换算为相邻坐标时间差值。在转为为接收端当前用户设备的坐标系下,和相邻坐标时间差值的情况下,在接收端的当前用户设备的透明图层上,按照时间差值依次渲染对应坐标的图像,光标轨迹坐标随时间差值逐一渲染图像,从而在接收端当前用户设备的透明图层上实时再现了发送端即其他用户设备端在自己明图层上绘制的过程和图像效果。具体来说,存在两种情形,一种情形是,如果当前在线教学中某一个用户设备由于系统故障、断电等原因导致该当前用户设备透明图层上的图像消失时,当前用户设备可以从其它用户设备的第一消息队列获取第一光标信息数据作为当前用户的第二光标信息数据,并在当前用户设备的透明图层上渲染图像,从而恢复部分图像;另外一种情形是,如果有一个新的用户设备加入到当前在线教学中,该新加入的用户设备可以从其它用户设备的第一消息队列获取第一光标信息数据作为第二光标信息数据,并在新加入的用户设备透明图层上渲染图像,从而获得自己未加入之前的部分历史图像。无论是出现故障的用户设备还是新加入的用户设备从其它用户设备获取第一光标信息数据时,根据用户设备之间的连接是否经过服务器,也可以分两种情形,当用户设备之间通过服务器连接时,服务器将创建在线教学的用户设备上的第一光标信息数据下发给故障用户设备或者新加入用户设备;当用户设备通过局域网直接相连时,创建在线教学的用户设备将自身的第一光标信息数据发送给故障用户设备或者新加入用户设备。当用户设备之间通过局域网建立连接时,第一个创建在线教学的用户设备充当服务器的角色(即主机),其他用户设备通过搜索端口号查找到主机,并与主机建立连接。
参见图2,一个用户设备由于故障、断电等原因,该当前用户设备透明图层上的图像消失时,由于每个用户设备已经将第一光标信息数据存储到第一消息队列中,待该当前用户设备恢复正常后,可以从其它用户设备获取其他用户的第一光标信息数据作为当前用户设备的第二光标数据信息并在透明图层上渲染图像,从而利用故障用户设备恢复部分图像,进一步提高本发明的鲁棒性和稳定性,提高用户的体验度。同样对于新加入在线教学的用户设备,也可以从其它用户设备获取第一光标信息数据并在透明图层上渲染图像。另外,将本地产生的第一光标信息数据存储到第一消息队列中,保存了光标的历史操作信息,也有利于用户撤销在先操作,方便实用。
图3为本发明具体实施方式提供的一种用于在线教学中的实时双向绘制的实现装置的实施例一的示意框图,如图3所示的装置可以应用到图1、图2所示的方法中,任意一个用户设备利用操作系统自带的底层函数在背景界面上创建透明图层;当利用光标在透明图层上绘制图像时,通过操作系统自带的底层函数实时抓取光标在透明图层上的第一光标信息数据,并将第一光标信息数据发送其它用户设备。
该附图所示的具体实施方式中,该装置包括创建单元10、抓取单元20、发送单元30和渲染单元60,其中,创建单元10用于在背景界面上创建透明图层;抓取单元20用于光标在所述透明图层上渲染图像时,实时抓取光标的第一光标信息数据;发送单元30用于将所述第一光标信息数据发送给其它用户设备作为其他用户设备的第二光标信息数据,以便其他用户设备根据所述第二光标信息数据在其它用户设备的透明图层上渲染图像。本发明的具体实施例中,创建单元10具体用于调用操作系统自带的底层函数在所述背景界面上创建所述透明图层。抓取单元20进一步包括抓取模块和生成模块,其中,抓取模块用于调用操作系统自带的底层函数抓取光标的光标信息;生成模块用于根据所述光标信息和绘图信息生成所述第一光标信息数据,其中,绘图信息具体指笔记数据,主要包括画笔颜色、画笔宽度和橡皮擦等。光标信息包括光标轨迹坐标集合、每一个坐标对应的时间信息等;绘图信息包括画笔颜色、画笔宽度和橡皮擦等。在一个具体实施例中,发送单元30可以用于将所述第一光标信息数据通过服务器或者直接转发给其它用户设备。
参见图3,任意一个用户设备(包括教师操作的用户设备或者学生操作的用户设备)可以利用操作系统自带的底层函数在背景界面上创建透明图层;当利用光标在透明图层上绘制图像时,可以通过操作系统自带的底层函数抓取光标的第一光标信息数据,并将第一光标信息数据发送其它用户设备,从而实现教师与学生之间的实时双向、多向绘制,实现教师与学生之间的实时双向、多向互动,提高了在线教学的趣味性及时效性,有利于提高学生的学习效率及学习兴趣。另外,利用操作系统自带底层函数即可实现,实现简单。
图4为本发明具体实施方式提供的一种用于在线教学中的实时双向绘制的实现装置的实施例二的示意框图,如图4所示,每个用户设备将本地产生的第一光标信息数据存储到第一消息队列中,如果某一用户设备由于系统故障、断电等原因,该用户设备透明图层上的图像消失时,该用户设备可以从其它用户设备的第一消息队列中获取第一光标信息数据作为当前用户设备的第二光标信息数据在当前用户设备的透明图层上渲染图像,从而恢复部分图像;另外,当有新的用户设备加入到当前在线教学中时,新加入的用户设备也可以从其它用户设备的第一消息队列中获取第一光标信息数据作为新加入的用户设备的第二光标信息数据在新加入的用户设备的透明图层上渲染图像。
该附图所示的具体实施方式中,该装置还包括第一临时存储单元40,其中,第一临时存储单元40用于存储第一消息队列中的所述第一光标信息数据。本发明的具体实施例中,由于每个用户设备的第一临时存储单元40中都存储了第一光标信息数据,如果某一个用户设备由于设备故障、断电等原因,透明图层上的图像消失了或者加入了新的用户设备,那么该用户设备可以从其它用户设备的第一临时存储单元40获取第一光标信息数据作为第二光标信息数据,然后根据根据所述第二光标信息数据在当前用户设备的透明图层上渲染图像。
参见图4,一个用户设备由于故障、断电等原因,该当前用户设备透明图层上的图像消失时,由于每个用户设备已经将第一光标信息数据存储到第一消息队列中,待该当前用户设备恢复正常后,可以从其它用户设备获取其它用户设备的第一光标信息数据作为当前用户设备的第二光标数据信息并在透明图层上渲染图像,从而恢复部分图像,进一步提高本发明的鲁棒性和稳定性,提高用户的体验度。同样对于新加入在线教学的用户设备,也可以从其它用户设备获取第一光标信息数据并在其透明图层上渲染图像。另外,将本地产生的第一光标信息数据存储到第一临时存储单元中,保存了光标的历史操作信息,也有利于用户撤销在先操作,方便实用。
图5为本发明具体实施方式提供的一种用于在线教学中的实时双向绘制的实现方法的实施例三的流程图,如图5所示,用户设备实时接收其它用户设备发送的光标信息数据作为当前用户设备的第二光标信息数据。当前用户设备根据接收的光标信息数据在透明图层上渲染图像。
该附图所示的具体实施方式包括:
步骤101:在背景界面上创建透明图层。具体来说就是调用操作系统自带的底层函数在所述背景界面上创建所述透明图层。背景界面可以是视频界面、图形界面、文字界面,例如,在视频窗口上创建一个透明图层,或者在图形图片上,或者在绘图板上创建一个透明图层。
步骤105:接收其它用户设备发送的光标信息数据作为当前用户设备第二光标信息数据。具体可以通过服务器接收其它用户设备发送的光标信息数据,也可以直接从其它用户设备接收光标信息数据,当前用户设备接收到的光标信息数据作为当前用户设备的第二光标信息数据。本发明的具体实施例中,当前用户设备接收到的光标信息数据包括光标轨迹坐标集合、每一个坐标对应的时间信息、画笔颜色、画笔宽度和橡皮擦等。
步骤106:根据所述第二光标信息数据在所述透明图层上渲染图像。具体包括:转换所述第二光标信息数据中光标轨迹坐标集合对应的坐标系,以及每一个坐标所对应的时间信息的时间基准;根据所述坐标系和所述时间基准在所述透明图层上依次渲染每个坐标的图像。在一个具体实施例中,当前用户设备在根据第二光标信息渲染图像的过程中,一方面可以结合当前用户设备的系统参数重新定位光标坐标在当前用户设备的位置,例如,第二光标信息数据中的光标轨迹坐标,系为该发送端的坐标定位,由于接收端的显示屏尺寸的坐标与发送端的显示屏尺寸的坐标可能不是同尺寸或同比例,需将发送端的坐标系转换为接收端的坐标系,即为将第二光标信息中的光标轨迹坐标集合转换成接收端的光标轨迹坐标集合。其中当前用户设备的系统参数还包括透明图层的尺寸大小等。另一方面,由于利用时间校正的方法校正每一个坐标的时间信息,例如发送端发送的光标信息中每一个坐标对应的时间信息,系为发送端时间为基准点,该基准点时间未必与接收端的时间基准点一致,故把第二光标信息数据中每一个坐标对应的时间信息换算为相邻坐标时间差值。在转为为接收端当前用户设备的坐标系下,和相邻坐标时间差值的情况下,在接收端的当前用户设备的透明图层上,按照时间差值依次渲染对应坐标的图像,光标轨迹坐标随时间差值逐一渲染图像,从而在接收端当前用户设备的透明图层上实时再现了发送端即其他用户设备端在自己明图层上绘制的过程和图像效果。
如图5所示,用户设备也接收其它用户设备发送的光标信息数据作为当前用户设备的第二光标信息数据,并根据接收的光标信息数据在当前用户设备的透明图层上渲染图像,从而实现实时双向及多向绘制,满足在线教学的要求。
图6为本发明具体实施方式提供的一种用于在线教学中的实时双向绘制的实现方法的实施例四的流程图,如图6所示,每个用户设备将从其它用户设备接收的光标信息数据存储到第二消息队列(该第二消息队列与第一消息队列是不同的消息队列)。如果某一个用户设备由于系统故障、断电等原因导致该用户设备透明图层上的图像消失时,该用户设备可以从其它用户设备的第二消息队列中获取其他用户设备的第二光标信息数据作为当前用户的第二光标信息数据,以便在该用户设备的透明图层上渲染图像,从而恢复部分图像;另外,新加入在线教学的用户设备也可以从其它用户设备的第二消息队列中获取第二光标信息数据作为新加入用户设备的第二光标信息数据,以便新加入的用户设备在其透明图层上渲染图像,从而渲染出其未加入之前的部分历史图像。
该附图所示的具体实施方式中,步骤106之前或者之后,该方法还包括:
步骤107:将从其它用户设备接收的光标信息数据存储到当前用户设备的第二消息队列中。其中,图6仅绘制出步骤107位于步骤106之后的情形,步骤107处于步骤106之前的情形图中未绘制。
参见图6,每个用户设备将从其它用户设备接收的光标信息数据存储到第二消息队列,如果当某一个用户设备由于系统故障、断电等原因,该用户设备透明图层上的图像消失时,该当前用户设备可以从其它用户设备的第二消息队列中获取其他用户设备的第二光标信息数据作为当前用户设备的第二光标信息数据,从而恢复部分图像,进一步提高本发明的鲁棒性和稳定性。每个用户设备接收的光标信息数据与当前用户设备本地产生的第一光标信息数据分别存储在不同的消息队列中。如果某一用户设备由于系统故障、断电等原因导致该当前用户设备透明图层上的图像消失时,可以从其它用户设备的第一消息队列和第二消息队列中分别获取第一光标信息数据和第二光标信息数据作为当前用户设备的第二光标信息数据,当前用户设备根据接收到的光标信息数据从而恢复先前的完整图像。图7为本发明具体实施方式提供的一种用于在线教学中的实时双向绘制的实现装置的实施例三的示意框图,如图7所示,用户设备实时接收其它用户设备发送的光标信息数据作为当前用户设备的第二光标信息数据,并根据所述的第二光标信息数据在当前用户的透明图层上渲染图像。
该附图所示的具体实施方式中,该装置包括创建单元10、接收单元50和渲染单元60,其中,创建单元10用于在背景界面上创建透明图层;接收单元50用于接收其它用户设备发送的光标信息数据作为当前用户设备的第二光标信息数据;渲染单元60用于在当前用户设备的透明图层上实时渲染图像并根据所述第二光标信息数据在当前用户设备的透明图层上渲染图像。本发明的具体实施例中,渲染单元50进一步包括:转换模块,用于转换所述第二光标信息数据中光标轨迹坐标集合对应的坐标系,以及每一个坐标所对应的时间信息的时间基准;渲染模块,用于根据所述坐标系和所述时间基准在所述透明图层上依次渲染每个坐标的图像。
参见图7,用户设备实时接收其它用户设备发送的光标信息数据作为当前用户设备的第二光标信息数据,并根据所述第二光标信息数据在当前用户设备的透明图层上渲染图像,从而实现实时双向及多向绘制,满足在线教学的要求。
图8为本发明具体实施方式提供的一种用于在线教学中的实时双向绘制的实现装置的实施例四的示意框图,如图8所示,每个用户设备将从其它用户设备接收的光标信息数据存储到第二消息队列,如果某一用户设备由于系统故障、断电等原因导致该用户设备透明图层上的图像消失时,该用户设备可以从其它用户设备的第二消息队列获取第二光标信息数据作为当前用户设备的第二光标信息数据,并在该用户设备的透明图层上渲染图像,从而恢复部分图像;另外,新加入在线教学的用户设备也可以从其它用户设备的第二消息队列中获取第二光标信息数据作为新加入用户设备的第二光标信息数据,以便新加入的用户设备在其透明图层上渲染图像,从而绘制其未加入之前的历史图像。
该附图所示的具体实施方式中,该装置还包括第二临时存储单元70,其中,第二临时存储单元70用于存储第二消息队列中的第二光标信息数据。在本发明的具体实施例中,第一消息队列与第二消息队列是不同的消息队列。
参见图8,由于每个用户设备将从其它用户设备接收的光标信息数据存储到第二消息队列,当某一个用户设备由于系统故障、断电等原因,该用户设备透明图层上的图像消失时,该用户设备可以从其它用户设备的第二消息队列中获取第二光标信息数据作为当前用户设备的第二光标信息数据,从而恢复部分图像,进一步提高本发明的鲁棒性和稳定性。每个用户设备接收的光标信息数据与该用户设备本地产生的第一光标信息数据分别存储在第二消息队列和第一消息队列中。
如果某一用户设备由于系统故障、断电等原因导致该用户设备透明图层上的图像消失时,当前用户设备可以从其它用户设备的第一消息队列和第二消息队列中分别获取其他用户设备的第一光标信息数据和第二光标信息数据作为当前用户设备的第二光标信息数据,从而恢复完整的图像。另外,新加入在线教学的用户设备也可以从其它用户设备的第一消息队列和第二消息队列中获取第一光标信息数据和第二光标信息数据作为新加入用户设备的第二光标信息数据,以便新加入的用户设备根据接收的光标信息数据在其透明图层上渲染图像,从而渲染出其未加入之前的历史图像。图9为本发明具体实施方式提供的一种用于在线教学中的实时双向绘制的实现装置的应用示意图,多个用户设备100通过有线(互联网、光纤、双绞线等)或者无线(移动通信网、卫星通信网等)方式与服务器200双向连接,任意一个用户设备100均可以利用操作系统自带的底层函数在背景界面上创建透明图层,再利用光标在自己的透明图层上进行绘制图像,并调用操作系统自带的底层函数抓取光标的操作形成第一光标信息数据,再将形成的第一光标信息数据通过服务器200推送给其它用户设备100;同时通过服务器200接收其它用户设备100发送的第二光标信息数据,并根据接收的第二光标信息数据在透明图层上渲染图像,从而实现教师与学生之间的实时双向、多向绘制。
图10为本发明具体实施方式提供的一种用于在线教学中的实时双向绘制的实现装置的运行时序图,如图10所示,当前用户设备在自己的设备上创建一个透明窗口,例如,在当前用户设备的操作界面设置有“启动按钮”,当用户点击“启动按钮”时,当前用户设备在背景界面上创建一个透明窗口。在一个具体实施例中,当前用户设备与其他用户设备创建透明窗口的方式有以下几种,一种方式是当前用户设备创建透明窗口的同时,其他在线用户设备同时自动启动创建透明窗口,无论其他用户设备是否点击“启动按钮”;一种方式是,当前用户设备启动创建透明窗口后,系统或者语音通知其他用户设备自主选择是否创建透明窗口,如果需要创建则其他用户设备点击“启动按钮”。在一个具体实施例中,当前用户设备可以创建多个消息队列(其中至少一个消息队列用于存储本地产生的光标信息数据,一个消息队列用于存储从其它用户设备接收的光标信息数据),其它用户设备也创建多个消息队列(其中至少一个消息队列用于存储本地产生的光标信息数据,一个消息队列用于存储从其它用户设备接收的光标信息数据)。当前用户设备的光标在本地的透明图层上渲染图像时,实时抓取光标的光标信息数据,然后将本地产生的光标信息数据存储在第一消息队列中,并向服务器上传光标信息数据,服务器将光标信息数据推送给其它用户设备或者在一个局域网中直接将光标信息数据推送给其它用户设备;其它用户设备将接收的光标信息数据存储在其第二消息队列中,并根据接收的光标信息数据在其透明图层上渲染图像;其它用户设备的光标在其透明图层上渲染图像时,实时抓取光标的光标信息数据,然后将其产生的光标信息数据存储在第一消息队列中,并向服务器上传光标信息数据;服务器将其它用户设备的光标信息数据推送给当前用户设备,当前用户设备将接收的光标信息数据存储在当前用户设备的第二消息队列中,并根据接收的光标信息数据在本地透明图层上渲染图像。根据上面的描述可以,无论是当前用户设备还是其它用户设备,本地产生的光标信息数据和接收的光标信息数据分开存储在不同的消息队列中,分开存储便于图像恢复及用户取消在先的绘图等操作;本发明实现了教师与学生之间的实时双向、多向涂鸦(绘画)。
图11为本发明具体实施方式提供的一种用于在线教学中的实时双向绘制的实现方法的整体流程图,如图11所示,实现方法包括:
步骤101:在背景界面上创建透明图层。具体来说就是调用操作系统自带的底层函数在所述背景界面上创建所述透明图层。背景界面可以是视频界面、图形界面、文字界面,例如,在视频窗口上创建一个透明图层,或者在图形图片上,或者在绘图板上创建一个透明图层。
步骤102:光标在所述透明图层上渲染图像时,实时抓取光标的第一光标信息数据。具体包括以下两个子步骤:调用操作系统自带的底层函数(例如Windows系统自带的API底层函数、苹果系统自带的底层函数等)抓取光标的光标信息;根据所述光标信息和绘图信息生成所述第一光标信息数据,其中,绘图信息具体指笔记数据,主要包括画笔颜色、画笔宽度和橡皮擦等。在具体应用中光标可以为鼠标、绘图仪等产生的光标。本发明的一个具体实施例中,光标信息包括光标坐标集合以及每一个坐标对应的时间信息等;所述绘图信息包括画笔颜色、画笔宽度和橡皮擦等。即,第一光标信息数据包括光标坐标集合、每一个坐标对应的时间信息、画笔颜色、画笔宽度和橡皮擦等。
步骤103:将所述第一光标信息数据发送给其它用户设备作为其它用户设备的第二光标信息数据。其它用户设备根据接收到的光标信息数据在其它用户设备的透明图层上渲染图像。将所述第一光标信息数据发送给其它用户设备作为其它用户设备的第二光标信息数据,具体包括两种方式:一种是当前用户设备将所述第一光标信息数据直接发送给其它用户设备,这种主要通过局域网来实现的,即多个用户设备组建一个局域网,每个用户设备均可以通过广播的方式将第一光标信息数据直接发送给局域网内其它用户设备;另一种是当前用户设备通过服务器将所述第一光标信息数据发送给其它用户设备,具体就是当前用户设备将所述第一光标信息数据上传到服务器,然后由服务器推送给其它的用户设备。
步骤105:实时接收其它用户设备发送的光标信息数据作为当前用户设备的第二光标信息。具体可以通过服务器接收其它用户设备发送的光标信息数据,也可以直接接收其它用户设备的光标信息数据,当前用户设备将接收到的光标信息数据作为当前用户设备的第二光标信息数据。在本发明的一个具体实施例中,接收到的第二光标信息数据包括光标坐标集合、每一个坐标对应的时间信息、画笔颜色、画笔宽度和橡皮擦等。在一个具体实施例中,如果多个用户都是在线用户,那么当前用户接收的光标信息数据就是其它用户设备的第一光标信息数据;在另一个具体实施例中,如果当前用户设备由于程序崩溃、系统故障、系统断电等原因导致透明图层的图像消失后,那么等到当前用户设备恢复程序后,当前用户设备就可以从其它用户设备接收其它用户设备的第一光标信息数据和第二光标信息数据作为当前用户设备的第二光标信息数据;在另一个具体实施例中,如果加入了新的用户设备,那么新加入的用户设备也是从其它用户设备接收其它用户设备的第一光标信息数据和第二光标信息数据作为新加入用户设备的第二光标信息数据;
步骤106:根据接收的光标信息数据在所述透明图层上渲染图像。在一个具体实施例中,当前用户设备在根据第二光标信息渲染图像的过程中,一方面可以结合当前用户设备的系统参数重新定位光标坐标在当前用户设备的位置,例如,第二光标信息数据中的光标轨迹坐标,系为该发送端的坐标定位,由于接收端的显示屏尺寸的坐标与发送端的显示屏尺寸的坐标可能不是同尺寸或同比例,需将发送端的坐标系转换为接收端的坐标系,即为将第二光标信息中的光标轨迹坐标集合转换成接收端的光标轨迹坐标集合。其中当前用户设备的系统参数还包括透明图层的尺寸大小等。另一方面,由于利用时间校正的方法校正每一个坐标的时间信息,例如发送端发送的光标信息中每一个坐标对应的时间信息,系为发送端时间为基准点,该基准点时间未必与接收端的时间基准点一致,故把第二光标信息数据中每一个坐标对应的时间信息换算为相邻坐标时间差值。在转为为接收端当前用户设备的坐标系下,和相邻坐标时间差值的情况下,在接收端的当前用户设备的透明图层上,按照时间差值依次渲染对应坐标的图像,光标轨迹坐标随时间差值逐一渲染图像,从而在接收端当前用户设备的透明图层上实时再现了发送端即其他用户设备端在自己明图层上绘制的过程和图像效果。
图12为本发明具体实施方式提供的一种用于在线教学中的实时双向绘制的实现装置的整体示意框图,如图12所示的装置可以应用到图11所示的方法中,实现装置包括:创建单元10、抓取单元20、发送单元30、第一临时存储单元40、接收单元50、渲染单元60和第二临时存储单元70。
创建单元10用于在背景界面上创建透明图层;抓取单元20用于光标在所述透明图层上渲染图像时实时抓取光标的第一光标信息数据;发送单元30用于将光标信息数据发送给其它用户设备作为其他用户设备的第二光标信息数据,以便其它用户设备根据接收的光标信息数据在其它用户设备透明图层上渲染图像,在本发明的一个具体实施例中,如果有多个在线的用户设备,那么每一个用户设备的发送单元发送给其它用户设备的光标信息数据就是当前用户的第一光标信息数据;在另一个具体实施例中,如果某一个用户设备由于程序崩溃系统故障等原因透明图层的图像消失时,那么等到该用户设备恢复程序时,其它用户设备的发送单元就会发送其它用户设备的第一光标信息数据和第二光标信息数据给当前的用户设备;在另一个具体实施例中,如果加入了新的用户设备,那么其它用户设备的发送单元就发送其它用户设备的第一消息数据和第二消息数据给新加入的用户设备;第一临时存储单元40用于存储第一消息队列中的所述第一光标信息数据;接收单元50用于实时接收其它用户设备发送的光标信息数据,在一个具体实施例中,实时接收的光标信息数据既可以是其它用户设备的第一光标信息数据也可以是第二光标信息数据;渲染单元60用于在本地透明图层上实时渲染图像以及根据接收到的其它用户设备的光标信息数据在所述本地透明图层上渲染图像;第二临时存储单元70用于存储第二消息队列中的第二光标信息数据。
每个用户设备将从其它用户设备接收的光标信息数据存储到当前用户设备的第二消息队列。当某一个用户设备由于系统故障、断电等原因导致该用户设备透明图层上的图像消失时,该当前用户设备可以从其它用户设备的第一消息队列和第二消息队列中获取第一光标信息数据和第二光标信息数据作为该当前用户设备的第二光标信息数据,从而恢复完整的历史图像,进一步提高本发明的鲁棒性和稳定性。另外,新加入在线教学的用户设备也可以从其它用户设备的第一消息队列和第二消息队列中获取第一光标信息数据和第二光标信息数据作为新加入用户设备的第二光标信息数据,以便新加入的用户设备在其透明图层上渲染图像,从而渲染出其未加入之前的全部历史图像。
图13A为本发明具体实施方式提供的一种用于在线教学中的实时双向绘制的实现装置的应用场景一;图13B为本发明具体实施方式提供的一种用于在线教学中的实时双向绘制的实现装置的应用场景二;图13C为本发明具体实施方式提供的一种用于在线教学中的实时双向绘制的实现装置的应用场景三,如图13A、图13B和图13C所示,假设在“一对二”在线教学中,背景界面为空白界面,在创建透明图层前,教师端、学生1端和学生2端之间已经处于一种实时通信状态。教师端调用操作系统自带的底层函数在背景界面上创建一个透明图层,学生1端和学生2端分别调用操作系统自带的底层函数在空白界面上创建自己的透明图层;具体创建方式存在以下几种:1)教师端创建透明图层后,语音通知学生1端和学生2端,学生1端和学生2端自由选择是否创建;2)教师端创建透明图层后,通知服务器,服务器以广播形式通知学生1端和学生2端,学生1端和学生2端自由选择是否创建;3)进入在线教学模式后,不需要其他动作,所有用户端随即全部默认创建了透明图层。如果学生端没有创建透明图层,由于教师端、学生1端和学生2端之间通过局域网直接连接,因此没有创建透明图层的用户设备不能接收到其它用户设备发送的光标信息数据;假如教师端、学生1端和学生2端之间通过服务器连接,服务器不会向没有创建透明图层的用户设备发送光标信息数据。
然后,教师端光标在自己的透明图层上绘出一个三角形ABC,教师端调用操作系统自带的底层函数抓取光标在透明图层上形成的光标信息数据,然后将光标信息数据发送给学生1端和学生2端;学生1端和学生2端分别根据接收的光标信息数据在自己的透明图层上渲染出三角形ABC。学生1端在自己的透明图层上绘出三角形ABC的高AD(虚线),学生2端在自己的透明图层上绘出三角形ABC的高Ad(实线),如图13A所示。学生1端调用操作系统自带的底层函数抓取光标在透明图层上形成的光标信息数据(即高AD),然后将光标信息数据发送给教师端和学生2端,如图13B所示。学生2端调用操作系统自带的底层函数抓取光标在透明图层上形成的光标信息数据(即高Ad),然后将光标信息数据发送给教师端和学生1端,如图13C所示。此时,教师能够看到学生1和学生2绘制的三角形高,学生1和学生2可以相互看到对方绘制的三角形高。此外,通过设置,也可以让学生1和学生2看不到对方绘制的三角形高,本发明不以此为限。
本发明提供一种用于在线教学中的实时双向绘制的实现方法及装置,任意一个用户设备(通常为教师操作的用户设备)可以利用操作系统自带的底层函数(例如Windows系统自带的API底层函数、苹果系统自带的底层函数等)在背景界面(视频界面、图形界面、文字界面等)上创建透明图层;当用户通过光标在透明图层上绘制图像时,通过操作系统自带的函数(例如Windows系统自带的API底层函数、苹果系统自带的底层函数等)抓取光标在透明图层上形成的第一光标信息数据,并通过服务器将第一光标信息数据发送其它用户设备,还可以通过服务器接收其它用户设备发送的第二光标信息数据,并根据接收的第二光标信息数据在透明图层上渲染图像,本发明实现教师与学生之间的双向、多向绘制,实现教师与学生之间的实时双向、多向互动,提高了在线教学的趣味性及实时性,有利于提高学生的学习效率及学习兴趣,能够满足目前在线教学的需求。
上述的本发明实施例可在各种硬件、软件编码或两者组合中进行实施。例如,本发明的实施例也可为在数据信号处理器(Digital Signal Processor,DSP)中执行上述方法的程序代码。本发明也可涉及计算机处理器、数字信号处理器、微处理器或现场可编程门阵列(Field Programmable Gate Array,FPGA)执行的多种功能。可根据本发明配置上述处理器执行特定任务,其通过执行定义了本发明揭示的特定方法的机器可读软件代码或固件代码来完成。可将软件代码或固件代码发展为不同的程序语言与不同的格式或形式。也可为不同的目标平台编译软件代码。然而,根据本发明执行任务的软件代码与其他类型配置代码的不同代码样式、类型与语言不脱离本发明的精神与范围。
以上所述仅为本发明示意性的具体实施方式,在不脱离本发明的构思和原则的前提下,任何本领域的技术人员所做出的等同变化与修改,均应属于本发明保护的范围。
Claims (7)
1.一种用于在线教学中的实时双向绘制的实现方法,其特征在于,该方法包括:
在背景界面上创建透明图层;
光标在所述透明图层上渲染图像时,实时抓取光标的第一光标信息数据;
在本地创建多个消息队列,其中至少包括第一消息队列及第二消息队列;
将所述第一光标信息数据存储到第一消息队列中,所述第一消息队列用于用户撤销在先操作;
将所述第一光标信息数据发送给其它用户设备,以便其他用户设备根据接收到的光标信息数据在其透明图层上渲染图像;
实时接收其它用户设备发送的光标信息数据作为当前用户设备的第二光标信息数据;
将接收到的所述第二光标信息数据存储到第二消息队列中;以及
根据所述第二光标信息数据在所述透明图层上渲染图像;
其中,第二光标信息数据包含光标坐标集合以及每一个光标对应的时间信息;
所述根据所述第二光标信息数据在所述透明图层上渲染图像,具体包括:
将第二光标信息中的光标轨迹坐标集合转换成接收端的光标轨迹坐标集合,将所述第二光标信息数据中每一个坐标对应的时间信息换算为相邻坐标时间差值,按照所述时间差值依次渲染对应坐标的图像;
其中,若当前在线教学中的第一用户设备的透明图层上的图像消失时,从其它用户设备的第一消息队列和第二消息队列中分别获取第一光标信息数据和第二光标信息数据作为当前用户设备的第二光标信息数据,新加入在线教学的用户设备从其它用户设备的第一消息队列和第二消息队列中获取第一光标信息数据和第二光标信息数据作为新加入用户设备的第二光标信息数据。
2.如权利要求1所述的用于在线教学中的实时双向绘制的实现方法,其特征在于,在背景界面上创建透明图层的步骤,具体包括:
调用操作系统自带的底层函数在所述背景界面上创建所述透明图层。
3.如权利要求1所述的用于在线教学中的实时双向绘制的实现方法,其特征在于,光标在所述透明图层上渲染图像时,实时抓取光标的第一光标信息数据的步骤,具体包括:
调用操作系统自带的底层函数抓取光标的光标信息;以及
根据所述光标信息和绘图信息生成所述第一光标信息数据。
4.如权利要求3所述的用于在线教学中的实时双向绘制的实现方法,其特征在于,所述光标信息包括光标轨迹坐标集合、每一个坐标所对应的时间信息;所述绘图信息包括笔记数据。
5.如权利要求4所述的用于在线教学中的实时双向绘制的实现方法,其特征在于,所述笔记数据进一步包括画笔颜色、画笔宽度和橡皮擦。
6.一种用于在线教学中的实时双向绘制的实现装置,其特征在于,该装置包括:
创建单元,用于在背景界面上创建透明图层;在本地创建多个消息队列,其中至少包括第一消息队列及第二消息队列;
抓取单元,用于光标在所述透明图层上渲染图像时实时抓取光标的第一光标信息数据;
第一临时存储单元,用于存储第一消息队列中的所述第一光标信息数据,所述第一消息队列用于用户撤销在先操作;
发送单元,用于将光标信息数据发送给其它用户设备,以便其他用户设备根据接收到的光标信息数据在其透明图层上渲染图像;
接收单元,用于实时接收其它用户设备发送的光标信息数据作为当前用户设备的第二光标信息数据;其中,若当前在线教学中的第一用户设备的透明图层上的图像消失时,从其它用户设备的第一消息队列和第二消息队列中分别获取第一光标信息数据和第二光标信息数据作为当前用户设备的第二光标信息数据,新加入在线教学的用户设备从其它用户设备的第一消息队列和第二消息队列中获取第一光标信息数据和第二光标信息数据作为新加入用户设备的第二光标信息数据;
第二临时存储单元,用于存储第二消息队列中的所述第二光标信息数据,第二光标信息数据包含光标坐标集合以及每一个光标对应的时间信息;以及
渲染单元,用于实时渲染光标在所述透明图层上的图像,以及渲染根据所述第二光标信息数据在所述透明图层上的图像;
其中,所述渲染单元,具体用于:
将第二光标信息中的光标轨迹坐标集合转换成接收端的光标轨迹坐标集合,将所述第二光标信息数据中每一个坐标对应的时间信息换算为相邻坐标时间差值,按照所述时间差值依次渲染对应坐标的图像。
7.如权利要求6所述的用于在线教学中的实时双向绘制的实现装置,其特征在于,所述抓取单元进一步包括:
抓取模块,用于调用操作系统自带的底层函数抓取光标的光标信息;以及
生成模块,用于根据所述光标信息和绘图信息生成所述第一光标信息数据,
其中,所述光标信息包括光标轨迹坐标集合、每一个坐标所对应的时间信息;所述绘图信息包括笔记数据。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610618890.1A CN107665139B (zh) | 2016-07-29 | 2016-07-29 | 用于在线教学中的实时双向绘制的实现方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610618890.1A CN107665139B (zh) | 2016-07-29 | 2016-07-29 | 用于在线教学中的实时双向绘制的实现方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107665139A CN107665139A (zh) | 2018-02-06 |
CN107665139B true CN107665139B (zh) | 2021-07-27 |
Family
ID=61121761
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610618890.1A Active CN107665139B (zh) | 2016-07-29 | 2016-07-29 | 用于在线教学中的实时双向绘制的实现方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107665139B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109284473A (zh) * | 2018-11-20 | 2019-01-29 | 育宁教育科技(上海)有限公司 | 在线教学课件的编辑和生成方法以及系统 |
CN111355998B (zh) * | 2019-07-23 | 2022-04-05 | 杭州海康威视数字技术股份有限公司 | 视频处理方法及装置 |
CN113254841B (zh) * | 2021-06-25 | 2021-09-10 | 北京新唐思创教育科技有限公司 | 用于制作互动文件的方法、装置、电子设备和存储介质 |
Family Cites Families (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9665876B2 (en) * | 2003-10-23 | 2017-05-30 | Monvini Limited | System of publication and distribution of instructional materials and method therefor |
US8676926B2 (en) * | 2009-04-15 | 2014-03-18 | Wyse Technology L.L.C. | System and method for handling remote drawing commands |
CN102023974B (zh) * | 2009-09-14 | 2012-08-22 | 中国移动通信集团公司 | 一种通过消息队列处理消息的方法、装置和系统 |
CN102184119B (zh) * | 2011-04-13 | 2013-02-13 | 华中师范大学 | 一种应用于电子双板的教学资源管理系统 |
US9195965B2 (en) * | 2011-05-06 | 2015-11-24 | David H. Sitrick | Systems and methods providing collaborating among a plurality of users each at a respective computing appliance, and providing storage in respective data layers of respective user data, provided responsive to a respective user input, and utilizing event processing of event content stored in the data layers |
US20130204935A1 (en) * | 2012-02-07 | 2013-08-08 | Soaric Ab | Dynamic sharing of a webservice |
CN102904764B (zh) * | 2012-11-15 | 2016-08-31 | 无锡成电科大科技发展有限公司 | 一种数据传输装置及其传输方法 |
CN103024014B (zh) * | 2012-12-03 | 2015-08-19 | 北京京东世纪贸易有限公司 | 通过消息队列的海量数据分发处理的方法和系统 |
CN103077026A (zh) * | 2012-12-28 | 2013-05-01 | 锐达互动科技股份有限公司 | 一种在操作系统的桌面环境下进行书写的方法 |
CN103164158A (zh) * | 2013-01-10 | 2013-06-19 | 深圳市欧若马可科技有限公司 | 触摸屏上绘画创作与教学的方法、系统及装置 |
CN103139051A (zh) * | 2013-03-22 | 2013-06-05 | 南京信通科技有限责任公司 | 一种基于Websocket协议的即时通讯方法 |
CN104065540A (zh) * | 2014-07-11 | 2014-09-24 | 网之易信息技术(北京)有限公司 | 一种数据监控系统和方法 |
US20160049082A1 (en) * | 2014-08-14 | 2016-02-18 | Albert Roy Leatherman, III | System for Interactive Online Instruction |
CN104485029A (zh) * | 2014-12-17 | 2015-04-01 | 天脉聚源(北京)教育科技有限公司 | 一种用于智慧教学系统学习终端课件显示的方法及装置 |
CN104932814A (zh) * | 2015-04-29 | 2015-09-23 | 萌宝信息技术(上海)有限公司 | 数据传输方法、系统及电子终端 |
CN105306861B (zh) * | 2015-10-15 | 2017-03-01 | 深圳市鹰硕技术有限公司 | 一种网络教学录播方法及系统 |
CN105224111A (zh) * | 2015-11-05 | 2016-01-06 | 北京康邦科技股份有限公司 | 一种网络环境下的互动阅读方法及系统 |
CN105630507B (zh) * | 2015-12-29 | 2020-01-24 | Tcl集团股份有限公司 | 一种WebView控件界面绘制的方法和装置 |
CN105472042B (zh) * | 2016-01-15 | 2018-09-21 | 中煤电气有限公司 | Web端控制的消息中间件系统及其数据传送方法 |
-
2016
- 2016-07-29 CN CN201610618890.1A patent/CN107665139B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN107665139A (zh) | 2018-02-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104158900B (zh) | 一种iPad控制课件同步的方法与系统 | |
CN107316520B (zh) | 视频教学互动方法、装置、设备及存储介质 | |
US20220200938A1 (en) | Methods and systems for providing virtual collaboration via network | |
CN110570698A (zh) | 一种在线教学控制方法、装置、存储介质以及终端 | |
CN109388329A (zh) | 远程批注同步的方法与系统 | |
JP2012506224A (ja) | 会議端末、会議サーバー、会議システム、およびデータ処理方法 | |
CN104932814A (zh) | 数据传输方法、系统及电子终端 | |
CN107665139B (zh) | 用于在线教学中的实时双向绘制的实现方法及装置 | |
WO2023071917A1 (zh) | 虚拟对象互动方法、装置、存储介质及计算机程序产品 | |
US20140210734A1 (en) | Method for conducting a collaborative event and system employing same | |
CN105320282A (zh) | 一种基于增强现实的图像识别解决方法 | |
KR102492423B1 (ko) | Diy 전자칠판 기반의 원격강의 제공 시스템 및 그 방법 | |
CN104980475B (zh) | 显示内容的同步呈现方法和装置 | |
CN111798709A (zh) | 一种基于云平台的远程教学系统 | |
CN104637010A (zh) | 基于二维码的电脑与移动端课堂互动答题的方法与装置 | |
CN209748700U (zh) | 一种异地视频会议系统 | |
CN207910808U (zh) | 一种协同移动白板平台 | |
JP2010026701A (ja) | 相互情報共有システム | |
EP2974288B1 (en) | Generating an image stream | |
CN113316011B (zh) | 电子白板系统的控制方法、系统、设备及存储介质 | |
CN104966428A (zh) | 基于3d打印的辅助学习实现方法与系统 | |
TW202016904A (zh) | 實物教學投影系統及方法 | |
CN111369848B (zh) | 基于课件内容互动的方法、装置、存储介质和电子设备 | |
CN110099113B (zh) | 实时笔迹绘制方法及系统 | |
CN104915100A (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 |