Pipeline

介绍

二次开发源码开源的三维管线地理信息系统:

包括:

  1. 三维地图浏览/定位
  2. 管线快速查询 材质查询 / 管径查询 / 管块查询 / 埋设日期查询 / 复合条件查询 / 空间查询
  3. 管线数据统计
  4. 管径分段统计 埋深分段统计 / 材质分类统计 / 管径分类统计 / 综合统计
  5. 应急抢险分析 断面分析 / 爆管分析 / 地面开挖分析 / 覆土分析 / 追踪分析 / 流向分析
  6. 规划设计分析 净距分析 / 碰撞分析 / 连通性分析
  7. 管线属性标注
  8. 数据打印出图

源码地址:https://gitee.com/rzcgis/pipeline

基于超图supermap iobjects 10i的管线管理

相关组件:1.SunnyUI2.SuperMap iObjects 10i的管线管理3.Log4Net

初始化

基本操作

管径统计

管线查询

管线统计

规划分析

应急抢险

断面分析

大屏

开发

开发分为如下部分:

  1. 编写查询或者统计或者其他计算的条件面板:在Ycjw.PipeLine.Map.Tools.Conditions下根据实际条件实现ConditionPanel的子类

  2. 重写ConditionPanel的虚方法,Do方法是必须重写的,默认情况下ConditionPanel中m_BaseConditions的第一个元素是Scene对象

  3. 定义结果面板,重写ShowData方法即可,定义的类继承ResultWindow,且与第一步子类即条件面板同名。

  4. 配置菜单项,按照目录组织形成ribbon菜单,目前支持RibbonButton菜单,在相应的json中tag指向的是ConditionPanel子类的名称

菜单

增加菜单:如想要新增菜单,在Package\configs\menus目录下按照需求新建目录,目前支持的末级按钮为RibbonButton,在对应的json中通过属性tag配置关联的条件面板(相对于Ycjw.PipeLine.Map.Tools.Conditions

对于配置的菜单的图标,可以按照json的名称放在Pipeline\Package\resources目录下,或者名称按照json中配置项的Text属性放在Pipeline\Package\resources下,前者具有优先级。

无论是查询或者统计,基本过程概括为输入界面定制→输出界面定制。

输入

对输入,抽象了ConditionPanel对象,所有查询或者统计项目都统一继承ConditionPanel面板,实现属性输入或者空间输入。具体ConditionPanel又分为:

  • Toolbar模式,适用于纯粹在地图上进行交互输入的功能。
  • 普通模式,弹出对话框供用户输入
输出

对输出,抽象了ResultWindows,具体分为:

  • ResultWindowsDataGridView :包含结果表格
  • ResultWindowsChart:默认包含结果图和表,图的类型包括Pie/Bar/Line等五类。

如有特殊定制需求,请与我联系。

代码截取:

void LoadSceneLater(){SplashForm.Instance.SetMessage("初始化场景......");SceneAdapter.Instance.LoadSceneControl(dockPanel);Task.Factory.StartNew(() =>{System.Threading.Thread.Sleep(500);}).ContinueWith((t) => {SplashForm.Instance.SetMessage("场景初始化完成......");RibbonMenuRegister.Instance.SetDockPanel(this.dockPanel);UnRegister();m_SceneSetting = new SceneSetting(SceneAdapter.Instance.SceneControl,this);m_SceneMeasure = new SceneMeasure(SceneAdapter.Instance.SceneControl,this);m_SceneEntitySelect = new SceneEntitySelect(SceneAdapter.Instance.SceneControl,this);SceneAdapter.Instance.NewOpenEvent += WorkSpace_NewOpenEvent;//打开最后一次打开的工作空间var lastPath = Commons.SerializeHelper.IniHelper.Read(Commons.SerializeHelper.IniHelper.KEY_LAST_WORKSPACE_PATH);if (!string.IsNullOrEmpty(lastPath)){SplashForm.Instance.SetMessage("加载上一次场景......");SceneAdapter.Instance.OpenWorkSpace(lastPath);}System.Threading.Thread.Sleep(500);SplashForm.Instance.CloseIt = true;WindowState = FormWindowState.Maximized;this.BringToFront();}, TaskScheduler.FromCurrentSynchronizationContext());}

一套开源三维管线管理系统相关推荐

  1. 推荐一套开源通用后台管理系统

    点击上方蓝色"方志朋",选择"设为星标" 回复"666"获取独家整理的学习资料! 来源:cnblogs.com/huanzi-qch/p/1 ...

  2. 推荐一套开源通用后台管理系统(附源码)

    今日推荐 Java 8 一行代码解决了空指针问题,太厉害了...List中remove()方法的陷阱,被坑惨了!25000 字详解 23 种设计模式,原来可以这么简单!最牛逼的 Java 日志框架,性 ...

  3. 这个开源小区物业管理系统,太强了

      大家好,我是为广大程序员兄弟操碎了心的小编,每天推荐一个小工具/源码,装满你的收藏夹,每天分享一个小技巧,让你轻松节省开发效率,实现不加班不熬夜不掉头发,是我的目标!   今天小编推荐一套开源小区 ...

  4. 城市三维地下管线管理系统

    一.系统概述 城市地下管线是城市建设的重要内容和城市生存和发展的生命线.具有规模大.范围广.管线种类繁多.空间分布复杂.变化大.增长速度快.形成时间长等特点.触及城市的各个角落,与人民生活息息相关. ...

  5. 城市三维地下管线管理系统 (转载)

    一.系统概述 城市地下管线是城市建设的重要内容和城市生存和发展的生命线.具有规模大.范围广.管线种类繁多.空间分布复杂.变化大.增长速度快.形成时间长等特点.触及城市的各个角落,与人民生活息息相关. ...

  6. 团队协助 开源项目_Open Atrium 是一套开源的团队协作和知识管理系统

    Open Atrium 是一套开源的团队协作和知识管理系统.它能提供团队交流.文档管理.日程安排.任务跟踪等功能.支持成员分组,支持权限划分,支持邮件提醒,支持版本控制.界面颜色和Logo可以自由更换 ...

  7. 推荐两套开源完整的物流仓储管理系统 WMS源码

    推荐两套开源的java版物流仓储管理系统,系统功能强大,适合学习.(需要源码学习可私信我) ▶ 1:JDK: 1.8  Maven: 3.5+  MySQL: 5.7+  Redis: 3.2 +  ...

  8. Wizard 开源文档管理系统1.0发布啦

    Wizard 是一款开源文档管理系统,项目地址为 https://github.com/mylxsw/wizard.这个项目是 我 在2017年就开始开发的,起初只是想做一款能够在公司内部把Swagg ...

  9. 分享一套开源微信后台开发源码,简单配置就能使用(附源码)!

    项目源码 推荐 7 个牛哄哄 Spring Cloud 实战项目 推荐一个非常火爆的电商开源项目! 推荐两个项目! 重磅推荐:一套开源的网校系统,无论是自建网校还是接副业都很方便 推荐几个支付项目! ...

最新文章

  1. 中国最大AI预训练模型发布:113亿参数!北京智源研究院、阿里、清华等联手打造...
  2. Random:产生随机数的类
  3. vim与gvim技巧大全
  4. ES5规范之Object增强
  5. ubuntu 设置分辨率 亲测可用 转载的
  6. J2SE核心实战开发—— 集合类框架
  7. python 元组是什么_python元组是什么?python元组的用法介绍
  8. tu-ctf-2016:re-for-50-plz-50
  9. 大学生能从计算机游戏中受益,2017年12月英语四级作文范文:大学生玩游戏
  10. GhostBSD 19.04 发布,注重安全与稳定性的 FreeBSD 发行版
  11. angular 手动注入_手动引导Angular JS应用程序
  12. STM8S103之独立看门狗和窗口看门狗
  13. echarts入门教程(超级详细带案例)
  14. 头条-day04_文章搜索前后端成形记 实名认证审核
  15. 立创EDA导出Altium Designer的pcb文件没有没有显示飞线
  16. 关于bitcoin core钱包api
  17. 计算机的正确配置文件,显示器颜色配置文件在win10电脑中设置正确配置的方法...
  18. Python基础(六):字符串、元组、列表习题
  19. windows编写bat脚本删除隐藏文件夹下的所有文件
  20. 数据分析中,文本分析远比数值型分析重要!(上)

热门文章

  1. eclipse快速创建无参和有参构造函数:
  2. Java中带有T Z格式(UTC是世界标准时间)的时间转换为date,string,long类型
  3. turtle画了一个皮卡丘
  4. 用Math函数中的random随机数模拟骰子
  5. 怎么制作证件照电子版?安利下面这三款软件给你
  6. 账号被盗,如何强制下线?
  7. C++ 求圆的周长和面积
  8. 电商52个专业名词解释大汇总
  9. OC方法以及文件编译
  10. ant design vue日期组件怎么清空(a-range-picker,a-date-picker)