简介
大约 5 分钟
简介
WebCAD 概述
WebCAD 是一个基于 TypeScript 开发的专业级 Web 端 CAD 引擎,提供完整的 2D CAD 绘图功能。它采用现代化的架构设计,具有高性能渲染、完善的插件系统和丰富的 API 接口,适用于各类需要精确绘图和 CAD 功能的 Web 应用。
核心能力对比
| 能力 | WebCAD | 传统桌面CAD | 其他Web CAD |
|---|---|---|---|
| 部署方式 | 浏览器直接运行 | 需安装客户端 | 浏览器运行 |
| DWG兼容 | 完整支持读写 | 原生支持 | 部分支持 |
| 二次开发 | TypeScript/JavaScript | AutoLISP/.NET | 各异 |
| 插件系统 | 完善的生命周期管理 | 成熟 | 有限 |
| 实体类型 | 丰富(20+种) | 完整 | 基础 |
| 性能 | GPU加速渲染 | 原生性能 | 一般 |
| 跨平台 | 全平台浏览器 | Windows为主 | 全平台 |
| 协作能力 | 原生支持 | 需插件 | 部分支持 |
| 离线使用 | 支持PWA | 完全支持 | 部分支持 |
主要特性
矢量图形引擎
WebCAD 采用高性能的矢量图形渲染引擎,提供:
- GPU 加速渲染:利用 WebGL 技术实现流畅的图形显示
- 自适应细节:根据缩放级别自动调整渲染精度
- 大图支持:优化的渲染策略支持百万级实体的显示
- 精确的几何计算:支持高精度的坐标和几何运算
支持的实体类型:
| 实体类型 | 类名 | 说明 |
|---|---|---|
| 直线 | LineEnt | 两点确定的线段 |
| 圆 | CircleEnt | 圆心和半径确定的圆 |
| 圆弧 | ArcEnt | 圆弧段,支持多种创建方式 |
| 多段线 | PolylineEnt | 连续的线段和弧段组合 |
| 椭圆 | EllipseEnt | 椭圆和椭圆弧 |
| 样条曲线 | SplineEnt | 光滑的自由曲线 |
| 点 | DotEnt | 点标记 |
| 填充 | HatchEnt | 图案填充和实心填充 |
| 单行文字 | TextEnt | 单行文本标注 |
| 多行文字 | MTextEnt | 多行格式化文本 |
| 块插入 | InsertEnt | 块定义的实例 |
| 图像 | ImageRefEnt | 外部图像引用 |
| 自定义实体 | CustomEntityBase | 用户自定义的实体类型 |
DWG 兼容
WebCAD 提供与 AutoCAD DWG 格式的完整兼容:
- 读取 DWG/DXF:支持多个版本的 DWG 和 DXF 文件格式
- 写入 DWG/DXF:可将图纸保存为标准格式
- 实体属性兼容:颜色、图层、线型、线宽等属性完整保留
- 块和外部参照:支持块定义和外部参照
- 文字样式:支持 TrueType 和 SHX 字体
插件系统
完善的插件系统支持功能扩展:
- 生命周期管理:加载、激活、停用、卸载的完整生命周期
- 命令注册:在插件中注册自定义命令
- UI 扩展:添加 Ribbon 菜单、工具栏按钮
- 事件监听:响应系统事件
- 插件依赖:声明和管理插件间依赖关系
事件驱动架构
基于事件的架构提供灵活的扩展能力:
- Before/After 事件对:操作前可取消,操作后可响应
- 丰富的事件类型:文档、实体、命令、视图等多类事件
- 事件参数:每个事件携带详细的上下文信息
- 取消机制:Before 事件支持取消后续操作
撤销重做系统
完整的撤销重做功能:
- 操作历史:记录所有可撤销的操作
- 批量操作:多个操作可合并为一个撤销步骤
- 实体状态:自动保存实体的修改前状态
- 命令集成:命令执行自动集成撤销支持
坐标系统
支持多种坐标系:
- WCS(世界坐标系):绝对坐标参考系
- UCS(用户坐标系):可自定义的工作坐标系
- DCS(显示坐标系):屏幕显示坐标系
技术架构概览
技术栈
| 技术 | 用途 | 说明 |
|---|---|---|
| TypeScript | 核心开发语言 | 类型安全,良好的开发体验 |
| WebGL | 图形渲染 | GPU 加速的 2D 渲染 |
| WebAssembly | 几何计算 | 高性能的几何运算 |
| Lit | UI 组件 | 轻量级 Web Components |
适用场景
工程设计
- 机械图纸编辑:支持精确的工程制图
- 建筑平面图:楼层平面、结构图纸
- 电气原理图:电路设计和布线图
在线协作
- 图纸审阅:多人在线查看和标注
- 版本管理:图纸版本的追踪和对比
- 实时协作:多用户同时编辑
行业应用
- 测绘 GIS:地图标注和测量
- 家装设计:户型图和装修设计
- 工艺流程:流程图和工艺设计
- 管线设计:管网布局设计
集成嵌入
- 业务系统集成:作为组件嵌入业务系统
- 文档管理:与文档管理系统集成
- IoT 可视化:设备布局和监控
浏览器支持
| 浏览器 | 最低版本 | 推荐版本 |
|---|---|---|
| Chrome | 80+ | 最新版 |
| Firefox | 75+ | 最新版 |
| Edge | 80+ | 最新版 |
| Safari | 13+ | 最新版 |
性能建议
为获得最佳性能,建议使用最新版本的 Chrome 或 Edge 浏览器,并确保硬件加速已启用。