去年调研了已有的在线的CAD系统(悟空CAD、维杰地图、梦想控件),基本上都是按年收费,还相当的贵,基于此,就萌生了自己研发CAD系统的想法,从技术选型、框架设计、代码实现基本为都是自研实现。已经有了初步的成果。

10M的原始dwg内的数据能够保持满帧渲染

  • 使用pixijs框架做二维渲染,对海量对象进行了大量的优化工作
  • 支持常用CAD对象渲染,包括直线、多义线、填充、常规文字、形文字、属性块、块对象、椭圆、椭圆弧、贝塞尔曲线、弧、圆、Wipeout、线性标注、角度标注、图像等CAD的对象。
  • 经过超过200副以上的10M以上的CAD数据测试,稳定。
  • 对CAD中的图层表、文字样式表、线型表进行了完美复刻。

自研在线CAD系统介绍-LMLPHP

丰富的绘制功能

  • 绘制直线、圆、椭圆、多边形、填充、创建块、插入块、标注对齐
  • 支持端点、中心点、线上点、垂足、极轴捕捉、块中对象捕捉等
  • 所有的绘制功能基本与CAD习惯保持一致。

自研在线CAD系统介绍-LMLPHP

强大的编辑功能

  • 包含编辑节点、移动、拷贝、缩放、裁剪、打断、合并、镜像、延伸等基础编辑功能
  • 支持所有操作的撤销回退
  • 所有操作具有实时可视化效果
  • 支持命令驱动

自研在线CAD系统介绍-LMLPHP

二次开发能力

  • 后端使用C++做dwg数据解析,SpringCloud做后台的微服务架构、前端使用typescript+vue3实现在线CAD的基础功能
  • 可根据需要更换底层渲染库、可扩展绘制、编辑功能。

后续计划

  • 提升编辑时性能
  • 使用tauri技术实现桌面端版本
  • 与openlayers、cesium.js主流框架结合使用。
  • 支持CAD数据的在线服务.
03-07 15:11