【技术实现步骤摘要】
一种基于Web的高效流程图绘制系统及方法
本专利技术属于计算机软件
,涉及一种流程图绘制系统,尤其涉及一种基于Web技术且应用布局技术自动根据传入参数进行布局的流程图绘制系统。
技术介绍
在流程图的绘制过程中,现有方法应用最广泛的是利用Microsoft提供的Office系列软件如Word,PowerPoint或者Visio等进行绘制,这种方法费时费力。用户首先需要选择所画图的类型,之后选择节点形状、然后拖拽节点到指定位置,再然后指定节点内容,最终连线并绘制成流程图。对于小型图,即节点以及连线数量比较少或者一次成型不需要过多修改的情况比较方便。然而,这种方法也存在一些难以克服的缺点。例如:1对于大型或者超大型流程图的绘制,这种方法会变得非常繁琐,需要绘图者手动去布局,拖拽的操作不仅费时费力,并且在图连线或者调整的过程中,还有可能导致原有的布局紊乱。2主流的流程图绘制软件都是以Windows平台为主,即使其他平台上有同类的软件,各种用户体验也很难做到一致,用户需要适应不同平台各个软件之间的差异性,增加了使用者的学习成本。鉴于上述方法在绘制流程图时的种种不便,AT&T实验室研发了一套开源作图工具软件GraphViz,通过该软件可以实现对流程图进行自动布局。用户可以根据GraphViz提供的Dot语言来编写绘图脚本,之后通过调用GraphViz的绘图命令对脚本进行解释从而生成各种图形。GraphViz在一定意义上解决了传统方法的问题,然而也带来了一些新的问题,例如,1虽然Dot语言是简单的脚本语言,然而并不是所有人都会用的,用户必须具有一定的编程基 ...
【技术保护点】
一种基于Web的高效流程图绘制系统,其特征在于,包括绘图模块、界面模块、文件模块;所述绘图模块包括节点管理模块、边管理模块以及组管理模块,负责接受传入的流程图的参数,将这些参数封装成Image类数据对象,并调用一个开源的算法库GraphViz的API完成流程图自动布局和绘制工作;所述界面模块包括交互模块以及数据传输模块,属于系统用户页面主体部分,采用Bootstrap框架实现页面及页面特效;所述数据传输模块负责前台、后台数据的异步传输工作;所述交互模块一方面负责操作用户界面预览区中SVG图形的Dom接口,确定出用户点击的图元并将其名称传输给后台,后台检索该图元信息后再通过数据传输模块返回到用户界面;所述交互模块另一方面负责对SVG添加动画特效,以便用户进行个性化微调;所述文件模块包括文件生成模块、文件导入模块和文件导出模块;所述文件模块一方面负责接受所述绘图模块发送过来的SVG文件,并根据该SVG文件生成对应的PDF文件,同时导出MySQL数据库备份文件;另一方面负责导入文件、上传文件,以及解析上传的文件获得绘图参数的工作。
【技术特征摘要】
1.一种基于Web的高效流程图绘制系统,其特征在于,包括绘图模块、界面模块、文件模块;所述绘图模块包括节点管理模块、边管理模块以及组管理模块,负责接受传入的流程图的参数,将这些参数封装成Image类数据对象,并调用一个开源的算法库GraphViz的API完成流程图自动布局和绘制工作;所述界面模块包括交互模块以及数据传输模块,属于系统用户页面主体部分,采用Bootstrap框架实现页面及页面特效;所述数据传输模块负责前台、后台数据的异步传输工作;所述交互模块一方面负责操作用户界面预览区中SVG图形的Dom接口,确定出用户点击的图元并将其名称传输给后台,后台检索该图元信息后再通过数据传输模块返回到用户界面;所述交互模块另一方面负责对SVG添加动画特效,以便用户进行个性化微调;所述文件模块包括文件生成模块、文件导入模块和文件导出模块;所述文件模块一方面负责接受所述绘图模块发送过来的SVG文件,并根据该SVG文件生成对应的PDF文件,同时导出MySQL数据库备份文件;另一方面负责导入文件、上传文件,以及解析上传的文件获得绘图参数的工作;所述绘图模块采用PHP语言编写实现;所述传入的流程图的参数包括:节点信息、边信息、组信息;所述界面模块采用Html语言与Javascript语言编写;所述数据传输模块采用Ajax技术实现,所述Ajax技术包括:异步Javascript和Xml技术;所述交互模块采用两个Javascript脚本实现;所述文件模块采用PHP和Python语言编写实现。2.一种基于Web的高效流程图绘制方法,其特征在于,包括如下步骤:1)用户提出绘图请求,发送绘图数据,所述绘图数据分为:输入参数绘图和导入文件绘图;2)如果用户通过导入文件绘图,则转步骤3),否则转步骤5);3)导入文件名被数据传输模块封装成XmlHttpRequest对象,并传递给文件导入模块;4)文件导入模块对XmlHttpRequest对象进行解析获取导入文件名,读取并上传文件,在后台解析文件获得绘图参数,之后将解析得到的绘图参数传递给绘图模块;5)界面模块中的数据传输模块将参数封装为XmlHttpRequest对象并发送给绘图模块;6)绘图模块将绘图参数封装成Node类、Edge类以及Group类的对象,并将这些信息存储到数据库中;所述的Node类包括:名称、标签、形状、边框色、填充色、字体色;所述的Edge类包括:始点、终点、始位置、终位置、标签、箭头形状、边的形状、颜色;所述的Gro...
【专利技术属性】
技术研发人员:杨洋,唐伟,梅傑,邱成健,
申请(专利权)人:江苏大学,
类型:发明
国别省市:江苏;32
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。