博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
HTML5拓扑图编辑器项目 - Graph.Editor
阅读量:6120 次
发布时间:2019-06-21

本文共 1901 字,大约阅读时间需要 6 分钟。

  hot3.png

拓扑图编辑器介绍

项目地址: 

在线演示:

Graph.Editor是一款基于HTML5技术的拓补图编辑器,采用插件的形式,是的扩展项目

数据可视化是一件有趣的工作,冰冷的数据变成美观的图形,如同命令行之于Mac OS X图形界面的,传统的图形组件以图表(Chart)居多,不少优秀的开源或者商业的作品, 比如d3js, echarts, highcharts,而拓扑图、流程图组件相对少一些,知名的有yfiles,本项目则基于Qunee图形组件,是Qunee的扩展项目,旨在为客户提供可供扩展的拓扑图编辑工具, 提供拓扑图展示、编辑、导出、保存等功能,此外本项目也是学习HTML5开发,构建WebAPP项目的参考实例。

注意:本项目内核使用Qunee for HTML5,Qunee本身是一个商业产品,默认仅限本机(localhost)使用,非商业用途可以申请免费授权,商业用途请购买相应授权,官网:

在线演示:

请访问此地址查看效果:

入门示例

Hello Graph.Editor

    
Hello Qunee

编辑器的基本示例相比Hello Qunee要复杂些,除了类库外,还用到了一些第三方组件:,, , 此外就是自身的类库,这里我们引用在线的js和css

实际代码部分,采用了jquery的写法,如下:

$('#editor').graphEditor({    callback: 回调函数,    data: json数据地址,    images: 拖拽图标信息})

本例中,通过回调函数获取editor.graph对象,并创建了两个节点和一条连线

更多用法请查看其他demo和代码

运行效果

准备工作

项目用到nodejs,使用bower包管理,用到Gulp相关的插件打包和发布

本项目使用以下工具:

  • 安装nodejs
  • 安装bower - 包管理
  • 安装Gulp - 任务自动管理工具

开始开发环境

切换到项目目录,然后运行下面的命令,完成开发环境的安装

npm install

前端第三方包

用到, , ,使用bower下载这些包到bower_components目录

bower install

项目结构

项目主要代码在app目录,其中脚本代码在app/src/内,

app/    --src/        --common/  编辑器扩展插件            --Exportpane.js 图片导出模块            --JSONSerializer.js  数据序列化模块            --PopupMenu.js  右键菜单模块            --Toolbar.js  工具栏模块        --images/        --graph.editor.js  拓扑图编辑器插件        --graph.editor.css    --scripts/  示例脚本    --images/  示例资源    --data/  示例资源    --index.html  编辑器主页面    --demo.html  编辑器插件示例dist/ 输出目录bower_components/ bower第三方包目录,运行bower install 后自动生成node_modules/ 开发环境相关包目录,运行npm install后自动生成

编译打包

gulp

输出目录结构

dist/    data/    images/    libs/        bootstrap/  第三方类库bootstrap样式和资源目录        graph.editor/  graph.editor类库            images/            graph.editor.css            graph.editor.js        js.js  第三方类库(jquery, bootstrap, layout.border)    scripts/    styles/    index.html

编辑器主要的类库文件位于libs/graph.editor/, 第三方类库(jquery, bootstrap, layout.border)位于libs/js.js,bootstrap样式和资源目录位于libs/bootstrap/

其他示例

转载于:https://my.oschina.net/nosand/blog/368829

你可能感兴趣的文章
ReactNative开发 WebStorm下安装ESLint检测JS代码
查看>>

React 基础知识点总结
查看>>
开发Koa 必须用的插件
查看>>
我的Chrome插件
查看>>
线程池-你可能需要知道这些
查看>>
HTTP的请求与响应以及使用Chrome的查看方式
查看>>
美国大学fail
查看>>
Mina粘包,断包问题处理(附完整实例,客户端,服务端)
查看>>
SQL 表连接
查看>>
微信小程序iOS端如何暂停animated动画
查看>>
布隆过滤器
查看>>
Maven 教程之 pom.xml 详解
查看>>
确实有必要好好学英语
查看>>
Swift4 2 UILabel基本用法
查看>>
你可能不知道的html
查看>>
你绝对需要了解的Spring学习笔记
查看>>
Ajax跨域-360天气查询
查看>>
Ubuntu美化笔记
查看>>
django-debug-toolbar: django开发之性能强大的检测工具
查看>>
DrawerLayout
查看>>