基于三维引擎的PERT图绘制方法和装置转让专利

申请号 : CN202210631760.7

文献号 : CN114723851B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 牟文青杨斌张守恒张伟顺夏波姜维豪赵东豪单世伟

申请人 : 山东捷瑞数字科技股份有限公司山东捷瑞信息技术产业研究院有限公司

摘要 :

本发明公开了一种基于三维引擎的PERT图绘制方法和装置,属于图像处理技术领域,方法包括以下步骤:制定任务模板预制体;在拖动预制体时,将不同或者相同的任务模板复制并放到画布上;利用鼠标右键将画布上的模板拖动到另一模板上,计算两个模板位置之间的距离和角度,并生成箭头;计算两个模板位置之间关键路径和松弛路径,并显示在PERT图上;保存PERT图,记录所有路线,并将所有模板坐标保存后进行加密;生成最终绘制的PERT图。本发明能够在三维引擎中进行PERT图的编辑,更能从整体来对计划进行规划,更加嵌合三维引擎,操作容易,实用便易。

权利要求 :

1.一种基于三维引擎的PERT图绘制方法,其特征在于,包括以下步骤:制定任务模板预制体;

在拖动预制体时,将不同或者相同的任务模板复制并放到画布上;

利用鼠标右键将画布上的模板拖动到另一模板上,计算两个模板位置之间的距离和角度,并生成箭头;

计算两个模板位置之间关键路径和松弛路径,并显示在PERT图上;

保存PERT图,记录所有路线,并将所有模板坐标保存后进行加密;

生成最终绘制的PERT图;

所述利用鼠标右键将画布上的模板拖动到另一模板上,计算两个模板位置之间的距离和角度,并生成箭头,包括:所有预制体的复制体监听右键拖动和右键进入的信号,从鼠标右键拖动任意复制体时记录开始坐标点,如果在另一复制体均监听到右键拖动以及右键进入则划线成功,计算两个模板位置之间的距离、角度,生成一条指向鼠标的箭头;

在箭头上方设置一个输入框,所述输入框用于输入该箭头所需要的时间;

所述计算两个模板位置之间关键路径和松弛路径,并显示在PERT图上,包括:当两个模板位置之间的新路线绘制成功后,对与新线路和两个复制体相关的所有路线进行遍历,并显示在PERT图上;

通过比较距离并判断线路起始是否合理,展示路线的关键路径和松弛路径;

从线路中选择一条线段,反向推理出该线段从开始到结尾的所有箭头并改变其颜色,对错误的路线进行标注。

2.根据权利要求1所述的基于三维引擎的PERT图绘制方法,其特征在于,所述制定任务模板预制体,包括制定一个或者多个不同样式的任务模板预制体。

3.根据权利要求1所述的基于三维引擎的PERT图绘制方法,其特征在于,所述预制体包含1个自动生成的UID,1个或者多个文本输入形式的输入框,且默认输入框均无法被点击。

4.根据权利要求1‑3任意一项所述的基于三维引擎的PERT图绘制方法,其特征在于,所述在拖动预制体时,将不同或者相同的任务模板复制并放到画布上,包括:拖动预制体时生成一个预制体复制体在鼠标位置,计算跟随鼠标位置,监听鼠标松手操作,鼠标松手后复制体停止跟踪并停留在到面板上;

当右键点击复制体时,进行删除操作、删除后将UID回收放入回收池中,下次生成复制体使用该UID;

采用鼠标滑轮控制画布大小变化模拟整体缩放以及PERT整体的左右移动;

当鼠标点击左下角时进行控制模式切换,关闭拖拽复制体的拖拽的监听,并开放文本修改的点击,进行文字修改;或者开启复制体的拖拽的监听,并关闭文本修改的点击。

5.根据权利要求4所述的基于三维引擎的PERT图绘制方法,其特征在于,所述保存PERT图,记录所有路线,并将所有模板坐标保存后进行加密,包括:将PERT图中关键信息保存,所述关键信息包括复制体预制体类型、复制体位置、经过的路线和UID信息;

加密修改文件后缀并保存为一个工程文件输出;

遍历整个画布通过从左上到右下的颜色块数据保存为图片文件输出。

6.根据权利要求5所述的基于三维引擎的PERT图绘制方法,其特征在于,所述生成最终绘制的PERT图,包括:读取工程文件,根据工程文件中的所有信息生成PERT图;

将工程文件中的复制体全部生成到画布上保存的位置;

生成复制体包含的所有箭头;

将关键信息赋值给复制体。

7.一种基于三维引擎的PERT图绘制装置,其特征在于,包括:预制体制定模块,用于制定任务模板预制体;

模板复制模块,用于在拖动预制体时,将不同或者相同的任务模板复制并放到画布上;

模板拖动模块,用于利用鼠标右键将画布上的模板拖动到另一模板上,计算两个模板位置之间的距离和角度,并生成箭头;

路径计算模块,用于计算两个模板位置之间关键路径和松弛路径,并显示在PERT图上;

路线记录模块,用于保存PERT图,记录所有路线,并将所有模板坐标保存后进行加密;

PERT图模生成块,用于生成最终绘制的PERT图;

所述利用鼠标右键将画布上的模板拖动到另一模板上,计算两个模板位置之间的距离和角度,并生成箭头,包括:所有预制体复制体监听右键拖动和右键进入的信号,从鼠标右键拖动任意复制体时记录开始坐标点,如果在另一复制体均监听到右键拖动以及右键进入则划线成功,计算两个模板位置之间的距离、角度,生成一条指向鼠标的箭头;

在箭头上方设置一个输入框,所述输入框用于输入该箭头所需要的时间;

所述计算两个模板位置之间关键路径和松弛路径,并显示在PERT图上,包括:当两个模板位置之间的新路线绘制成功后,对与新线路和两个复制体相关的所有路线进行遍历,并显示在PERT图上;

通过比较距离并判断线路起始是否合理,展示路线的关键路径和松弛路径;

从线路中选择一条线段,反向推理出该线段从开始到结尾的所有箭头并改变其颜色,对错误的路线进行标注。

8.根据权利要求7所述的基于三维引擎的PERT图绘制装置,其特征在于,所述预制体包含1个自动生成的UID,1个或者多个文本输入形式的输入框,且默认输入框均无法被点击。

说明书 :

基于三维引擎的PERT图绘制方法和装置

技术领域

[0001] 本发明涉及一种基于三维引擎的PERT图绘制方法和装置,属于图像处理技术领域。

背景技术

[0002] 目前由于三维引擎具有多平台适应性以及体积小、支持网页端操作等优势,这些虚拟实验的制作大部分都是基于三维引擎进行设计开发,以C/S架构搭建的用户操作平台。
[0003] 在三维引擎中,只是使用折线图、柱状图、饼形图等方式下想要指定以及展示多个任务的进行状态以及任务规划过于简单,不能很好的从整体上来制定规划,能够更加直观在三维引擎中的表现整个任务流程。现有三维引擎技术中,并没有PERT图的编写与显示,不能合理的在三维引擎中制定以及展示计划,如果展示计划只能通过折线图,文字等方式来展示一系列任务。且现有三维引擎技术无法判断所有无效路径,在任务以及路线数量非常多时保存、加载需要时间过长。

发明内容

[0004] 为了解决上述问题,本发明提出了一种基于三维引擎的PERT图绘制方法和装置,能够在三维引擎中实现PERT图的绘制。
[0005] 本发明解决其技术问题采取的技术方案是:
[0006] 一方面,本发明实施例提供的一种基于三维引擎的PERT图绘制方法,包括以下步骤:
[0007] 制定任务模板预制体;
[0008] 在拖动预制体时,将不同或者相同的任务模板复制并放到画布上;
[0009] 利用鼠标右键将画布上的模板拖动到另一模板上,计算两个模板位置之间的距离和角度,并生成箭头;
[0010] 计算两个模板位置之间关键路径和松弛路径,并显示在PERT图上;
[0011] 保存PERT图,记录所有路线,并将所有模板坐标保存后进行加密;
[0012] 生成最终绘制的PERT图。
[0013] 作为本实施例一种可能的实现方式,所述制定任务模板预制体,包括制定一个或者多个不同样式的任务模板预制体。
[0014] 作为本实施例一种可能的实现方式,所述预制体包含1个自动生成的UID( User Identification,用户身份证明),1个或者多个文本输入形式的输入框,切默认输入框均无法被点击。
[0015] 作为本实施例一种可能的实现方式,所述在拖动预制体时,将不同或者相同的任务模板复制并放到画布上,包括:
[0016] 拖动预制体时生成一个预制体复制体在鼠标位置,计算跟随鼠标位置,监听鼠标松手操作,鼠标松手后复制体停止跟踪并停留在到面板上;
[0017] 当右键点击复制体时,进行删除操作、删除后将该UID回收放入回收池中,下次生成复制体使用该UID;
[0018] 采用鼠标滑轮控制画布大小变化模拟整体缩放以及PERT整体的左右移动;
[0019] 当鼠标点击左下角时进行控制模式切换,关闭拖拽复制体的拖拽的监听,并开放文本修改的点击,进行文字修改;或者开启复制体的拖拽的监听,并关闭文本修改的点击。
[0020] 作为本实施例一种可能的实现方式,所述利用鼠标右键将画布上的模板拖动到另一模板上,计算两个模板位置之间的距离和角度,并生成箭头,包括:
[0021] 所有复制体监听右键拖动和右键进入的信号,从鼠标右键拖动任意复制体时记录开始坐标点,如果在另一复制体均监听到右键拖动以及右键进入则划线成功,计算两个模板位置之间的距离、角度,生成一条指向鼠标的箭头;
[0022] 在箭头上方设置一个输入框,所述输入框用于输入该箭头所需要的时间。
[0023] 作为本实施例一种可能的实现方式,所述计算两个模板位置之间关键路径和松弛路径,并显示在PERT图上,包括:
[0024] 当两个模板位置之间的新路线绘制成功后,对与新线路和两个复制体相关的所有路线进行遍历,并显示在PERT图上;
[0025] 通过比较距离并判断线路起始是否合理,展示路线的关键路径和松弛路径;
[0026] 从线路中选择一条线段,反向推理出该线段从开始到结尾的所有箭头并改变其颜色,对错误的路线进行标注。
[0027] 作为本实施例一种可能的实现方式,所述保存PERT图,记录所有路线,并将所有模板坐标保存后进行加密,包括:
[0028] 将PERT图中关键信息保存,所述关键信息包括复制体预制体类型、复制体位置、经过的路线和UID信息;
[0029] 加密修改文件后缀并保存为一个工程文件输出;
[0030] 遍历整个画布通过从左上到右下的颜色块数据保存为图片文件输出。
[0031] 作为本实施例一种可能的实现方式,所述生成最终绘制的PERT图,包括:
[0032] 读取工程文件,根据工程文件中的所有信息生成PERT图;
[0033] 将工程文件中的复制体全部生成到画布上保存的位置;
[0034] 生成复制体包含的所有箭头;
[0035] 将关键信息赋值给复制体。
[0036] 另一方面,本发明实施例提供的一种基于三维引擎的PERT图绘制装置,包括:
[0037] 预制体制定模块,用于制定任务模板预制体;
[0038] 模板复制模块,用于在拖动预制体时,将不同或者相同的任务模板复制并放到画布上;
[0039] 模板拖动模块,用于利用鼠标右键将画布上的模板拖动到另一模板上,计算两个模板位置之间的距离和角度,并生成箭头;
[0040] 路径计算模块,用于计算两个模板位置之间关键路径和松弛路径,并显示在PERT图上;
[0041] 路线记录模块,用于保存PERT图,记录所有路线,并将所有模板坐标保存后进行加密;
[0042] PERT图模生成块,用于生成最终绘制的PERT图。
[0043] 作为本实施例一种可能的实现方式,所述预制体包含1个自动生成的UID,1个或者多个文本输入形式的输入框,切默认输入框均无法被点击。
[0044] 本发明实施例的技术方案可以具有的有益效果如下:
[0045] 本发明使用PERT预制体以及路线预制体来储存PERT任务中所有的任务以及路线,当人员操作完成后,保存所有PERT图预制体位置和路线等关键信息,使用者可以将做好的PERT图保存为图片形式或者工程文件形式,当使用者或者其他使用者读取工程文件形式的PERT图,从而能够在三维引擎中进行PERT图的编辑,更能从整体来对计划进行规划,更加嵌合三维引擎,操作容易,实用便易。
[0046] 本发明可以在三维引擎中实现对任务整齐排布,合理分析的重要的展示,进行多线路,多任务,多用时计划的指定。

附图说明

[0047] 图1是根据一示例性实施例示出的一种基于三维引擎的PERT图绘制方法的流程图;
[0048] 图2是根据一示例性实施例示出的一种基于三维引擎的PERT图绘制装置的示意图;
[0049] 图3是根据一示例性实施例示出的本发明进行绘制PERT图的流程图。

具体实施方式

[0050] 下面结合附图与实施例对本发明做进一步说明:
[0051] 为能清楚说明本方案的技术特点,下面通过具体实施方式,并结合其附图,对本发明进行详细阐述。下文的公开提供了许多不同的实施例或例子用来实现本发明的不同结构。为了简化本发明的公开,下文中对特定例子的部件和设置进行描述。此外,本发明可以在不同例子中重复参考数字和/或字母。这种重复是为了简化和清楚的目的,其本身不指示所讨论各种实施例和/或设置之间的关系。应当注意,在附图中所图示的部件不一定按比例绘制。本发明省略了对公知组件和处理技术及工艺的描述以避免不必要地限制本发明。
[0052] 如图1所示,本发明实施例提供的一种基于三维引擎的PERT图绘制方法,包括以下步骤:
[0053] 制定任务模板预制体;
[0054] 在拖动预制体时,将不同或者相同的任务模板复制并放到画布上;
[0055] 利用鼠标右键将画布上的模板拖动到另一模板上,计算两个模板位置之间的距离和角度,并生成箭头;
[0056] 计算两个模板位置之间关键路径和松弛路径,并显示在PERT图上;
[0057] 保存PERT图,记录所有路线,并将所有模板坐标保存后进行加密;
[0058] 生成最终绘制的PERT图。
[0059] 作为本实施例一种可能的实现方式,所述三维引擎采用Unity。
[0060] 作为本实施例一种可能的实现方式,所述制定任务模板预制体,包括在Unity中制定一个或者多个不同样式的任务模板预制体。
[0061] 作为本实施例一种可能的实现方式,所述预制体包含1个自动生成的UID,1个或者多个文本输入形式的输入框,切默认输入框均无法被点击。
[0062] 作为本实施例一种可能的实现方式,所述在拖动预制体时,将不同或者相同的任务模板复制并放到画布上,包括:
[0063] 拖动预制体时生成一个预制体复制体在鼠标位置,计算跟随鼠标位置,监听鼠标松手操作,鼠标松手后复制体停止跟踪并停留在到面板上;
[0064] 当右键点击复制体时,进行删除操作、删除后将该UID回收放入回收池中,下次生成复制体使用该UID;
[0065] 采用鼠标滑轮控制画布大小变化模拟整体缩放以及PERT整体的左右移动;
[0066] 当鼠标点击左下角时进行控制模式切换,关闭拖拽复制体的拖拽的监听,并开放文本修改的点击,进行文字修改;或者开启复制体的拖拽的监听,并关闭文本修改的点击。
[0067] 作为本实施例一种可能的实现方式,所述利用鼠标右键将画布上的模板拖动到另一模板上,计算两个模板位置之间的距离和角度,并生成箭头,包括:
[0068] 所有复制体监听右键拖动和右键进入的信号,从鼠标右键拖动任意复制体时记录开始坐标点,如果在另一复制体均监听到右键拖动以及右键进入则划线成功,计算两个模板位置之间的距离、角度,生成一条指向鼠标的箭头;
[0069] 在箭头上方设置一个输入框,所述输入框用于输入该箭头所需要的时间。
[0070] 作为本实施例一种可能的实现方式,所述计算两个模板位置之间关键路径和松弛路径,并显示在PERT图上,包括:
[0071] 当两个模板位置之间的新路线绘制成功后,对与新线路和两个复制体相关的所有路线进行遍历,并显示在PERT图上;
[0072] 通过比较距离并判断线路起始是否合理,展示路线的关键路径和松弛路径;
[0073] 从线路中选择一条线段,反向推理出该线段从开始到结尾的所有箭头并改变其颜色,对错误的路线进行标注。
[0074] 作为本实施例一种可能的实现方式,所述保存PERT图,记录所有路线,并将所有模板坐标保存后进行加密,包括:
[0075] 将PERT图中关键信息保存,所述关键信息包括复制体预制体类型、复制体位置、经过的路线和UID信息;
[0076] 加密修改文件后缀并保存为一个工程文件输出;
[0077] 遍历整个画布通过从左上到右下的颜色块数据保存为图片文件输出。
[0078] 作为本实施例一种可能的实现方式,所述生成最终绘制的PERT图,包括:
[0079] 读取工程文件,根据工程文件中的所有信息生成PERT图;
[0080] 将工程文件中的复制体全部生成到画布上保存的位置;
[0081] 生成复制体包含的所有箭头;
[0082] 将关键信息赋值给复制体。
[0083] 如图2所示,本发明实施例提供的一种基于三维引擎的PERT图绘制装置,包括:
[0084] 预制体制定模块,用于制定任务模板预制体;
[0085] 模板复制模块,用于在拖动预制体时,将不同或者相同的任务模板复制并放到画布上;
[0086] 模板拖动模块,用于利用鼠标右键将画布上的模板拖动到另一模板上,计算两个模板位置之间的距离和角度,并生成箭头;
[0087] 路径计算模块,用于计算两个模板位置之间关键路径和松弛路径,并显示在PERT图上;
[0088] 路线记录模块,用于保存PERT图,记录所有路线,并将所有模板坐标保存后进行加密;
[0089] PERT图模生成块,用于生成最终绘制的PERT图。
[0090] 作为本实施例一种可能的实现方式,所述三维引擎采用Unity。
[0091] 作为本实施例一种可能的实现方式,所述预制体制定模块,具体用于在Unity中制定一个或者多个不同样式的任务模板预制体。
[0092] 作为本实施例一种可能的实现方式,所述预制体包含1个自动生成的UID,1个或者多个文本输入形式的输入框,切默认输入框均无法被点击。
[0093] 作为本实施例一种可能的实现方式,所述模板复制模块,具体用于:
[0094] 拖动预制体时生成一个预制体复制体在鼠标位置,计算跟随鼠标位置,监听鼠标松手操作,鼠标松手后复制体停止跟踪并停留在到面板上;
[0095] 当右键点击复制体时,进行删除操作、删除后将该UID回收放入回收池中,下次生成复制体使用该UID;
[0096] 采用鼠标滑轮控制画布大小变化模拟整体缩放以及PERT整体的左右移动;
[0097] 当鼠标点击左下角时进行控制模式切换,关闭拖拽复制体的拖拽的监听,并开放文本修改的点击,进行文字修改;或者开启复制体的拖拽的监听,并关闭文本修改的点击。
[0098] 作为本实施例一种可能的实现方式,所述模板拖动模块,具体用于:
[0099] 所有复制体监听右键拖动和右键进入的信号,从鼠标右键拖动任意复制体时记录开始坐标点,如果在另一复制体均监听到右键拖动以及右键进入则划线成功,计算两个模板位置之间的距离、角度,生成一条指向鼠标的箭头;
[0100] 在箭头上方设置一个输入框,所述输入框用于输入该箭头所需要的时间。
[0101] 作为本实施例一种可能的实现方式,所述路径计算模块,具体用于:
[0102] 当两个模板位置之间的新路线绘制成功后,对与新线路和两个复制体相关的所有路线进行遍历,并显示在PERT图上;
[0103] 通过比较距离并判断线路起始是否合理,展示路线的关键路径和松弛路径;
[0104] 从线路中选择一条线段,反向推理出该线段从开始到结尾的所有箭头并改变其颜色,对错误的路线进行标注。
[0105] 作为本实施例一种可能的实现方式,所述路线记录模块,具体用于:
[0106] 将PERT图中关键信息保存,所述关键信息包括复制体预制体类型、复制体位置、经过的路线和UID信息;
[0107] 加密修改文件后缀并保存为一个工程文件输出;
[0108] 遍历整个画布通过从左上到右下的颜色块数据保存为图片文件输出。
[0109] 作为本实施例一种可能的实现方式,所述PERT图模生成块,具体用于:
[0110] 读取工程文件,根据工程文件中的所有信息生成PERT图;
[0111] 将工程文件中的复制体全部生成到画布上保存的位置;
[0112] 生成复制体包含的所有箭头;
[0113] 将关键信息赋值给复制体。
[0114] 如图3所示,本发明进行绘制PERT图的流程如下。
[0115] 步骤1 制定一个或者多个不同样式的任务模板预制体。
[0116] 步骤1.1 预制体包含1个自动生成的UID,1个或者多个文本输入形式的输入框,默认输入框均无法被点击。
[0117] 步骤2 使用者拖动预制体时,逻辑判断将不同或者相同的任务模板复制并计算UID顺序放到画布上。
[0118] 步骤2.1 拖动预制体时生成一个预制体复制体在鼠标位置,计算跟随位置,监听鼠标松手、松手后复制体停止跟踪停留在到面板上。
[0119] 步骤2.2 右键点击复制体可以进行删除操作、删除后将该UID回收放入回收池中,下次生成复制体使用该UID。
[0120] 步骤2.3 鼠标滑轮控制画布大小变化模拟整体缩放以及PERT整体的左右移动。
[0121] 步骤2.4 鼠标点击左下角控制模式切换可以关闭拖拽复制体的拖拽的监听,并开放文本修改的点击,可以进行文字修改,或者开启复制体的拖拽的监听,并关闭文本修改的点击。
[0122] 步骤3 右键拖动画布上的模板拖到另一模板上,根据两点位置,距离计算角度生成箭头。
[0123] 步骤3.1 所有复制体监听右键拖动、右键进入的信号,当从鼠标右键拖动任意复制体时记录开始坐标点,如果在另一复制体均监听到右键拖动以及右键进入则划线成功,计算两点之间的距离、角度,生成一条指向鼠标的箭头。
[0124] 步骤3.1 箭头上方设置了一个输入框可以输入该箭头所需要的时间。
[0125] 步骤4 计算关键路径、松弛路径显示。
[0126] 步骤4.1 每当一条信路线绘制成功,重新计算关于这条线路、两个复制体的所有路线进行遍历,对这些路径进行遍历显示。
[0127] 步骤4.2 通过比较距离、判断起始是否合理还展示某条路线的关键路径、松弛路径。
[0128] 步骤4.3 选择某条线段可以反向推理出该线段从开始到结尾的所有箭头并改变其颜色并标注错误的路线。
[0129] 步骤5 保存PERT图,记录所有路线,所有模板坐标存成一个自定的特殊后缀的文件。
[0130] 步骤5.1 将所有关键文字信息保存,复制体预制体类型、复制体位置、经过的路线、UID等关键信息。
[0131] 步骤5.2 加密修改并文件后缀保存为一个工程文件输出。
[0132] 步骤5.3 通过遍历整个画布从左上到右下的颜色块数据保存为图片文件输出。
[0133] 步骤6 读取工程文件,将文件中的所有信息生成PERT图。
[0134] 步骤6.1 读取工程文件,将文件中的复制体全部生成到画布上保存的位置。
[0135] 步骤6.2 读取工程文件,将复制体包含的所有箭头生成。
[0136] 步骤6.2 给复制体赋值所保存的关键信息。
[0137] 本发明使用PERT预制体以及路线预制体来储存PERT任务中所有的任务以及路线,当人员操作完成后,保存所有PERT图预制体位置和路线等关键信息,使用者可以将做好的PERT图保存为图片形式或者工程文件形式,当使用者或者其他使用者读取工程文件形式的PERT图,从而能够在Unity中进行PERT图的编辑实现,更能从整体来对计划进行规划,更加嵌合Unity,操作容易,实用便易。
[0138] 最后应当说明的是:以上实施例仅用以说明本发明的技术方案而非对其限制,尽管参照上述实施例对本发明进行了详细的说明,所属领域的普通技术人员应当理解:依然可以对本发明的具体实施方式进行修改或者等同替换,而未脱离本发明精神和范围的任何修改或者等同替换,其均应涵盖在本发明的权利要求保护范围之内。