第一章 LibreCAD概述与入门

1.1 LibreCAD简介

1.1.1 什么是LibreCAD

LibreCAD是一款免费、开源的二维计算机辅助设计(CAD)软件,专门用于2D绘图和技术制图。它是基于社区版QCAD(QCad Community Edition)开发的,采用Qt框架构建,支持Windows、macOS和Linux等主流操作系统。

LibreCAD的主要定位是为建筑师、工程师、设计师和爱好者提供一个功能完善、易于使用的专业级2D CAD工具。与商业软件AutoCAD相比,LibreCAD完全免费且开源,用户可以自由使用、修改和分发。

1.1.2 发展历史

LibreCAD的发展历程可以追溯到以下几个关键节点:

1999年 - QCAD诞生

  • QCAD由RibbonSoft公司开发,最初是一个开源的2D CAD应用程序
  • 采用GPL许可证发布社区版本

2010年 - LibreCAD项目启动

  • 由于QCAD社区版更新停滞,开发者社区决定创建一个独立的分支
  • 最初名为CADuntu,后更名为LibreCAD
  • 项目目标是继续发展和改进原有的QCAD代码库

2011年 - 首个稳定版本发布

  • LibreCAD 1.0.0正式发布
  • 完成了从Qt3到Qt4的移植工作
  • 建立了独立的开发社区和文档体系

2014年至今 - 持续迭代发展

  • LibreCAD 2.x系列持续发布新功能和修复
  • 2.2.1分支最新稳定版为2.2.1.5(2026年5月发布)
  • master分支面向2.2.2(Qt 6.4.0或更新版本),开发中
  • 引入了更多现代化特性和性能优化

1.1.3 版本分支说明

LibreCAD目前维护着多个版本分支:

分支 Qt版本要求 说明
master 最新 预发布代码,包含最新特性
master Qt 6.4.0+ 面向 2.2.2 的开发分支
2.2.1 Qt 5.15.0+ 稳定版本分支(最新2.2.1.5)
2.2 Qt 5.2.1+ 旧版稳定分支
2.1 Qt4 最后支持Qt4的版本
2.0 Qt4 最后支持QCAD工具栏的版本

1.1.4 许可协议

LibreCAD采用GNU通用公共许可证第2版(GPLv2)发布,这意味着:

  • 自由使用:任何人都可以免费下载和使用LibreCAD
  • 自由修改:用户可以修改源代码以满足特定需求
  • 自由分发:修改后的版本必须同样以GPL许可证发布
  • 源代码公开:所有分发的版本必须提供源代码

这种开源许可模式确保了LibreCAD将永远保持免费,并且用户社区可以持续贡献和改进软件。

1.2 核心特性与功能

1.2.1 绘图功能

LibreCAD提供了完整的2D绘图工具集:

基本图形绘制

  • 点(Point):单点、多点绘制
  • 直线(Line):普通线、构造线、射线
  • 折线(Polyline):连续折线、闭合折线
  • 圆(Circle):圆心半径、两点定圆、三点定圆、相切圆
  • 圆弧(Arc):三点定弧、圆心角度定弧
  • 椭圆(Ellipse):圆心定椭圆、焦点定椭圆
  • 样条曲线(Spline):B样条曲线、插值样条

高级图形绘制

  • 填充图案(Hatch):多种预设填充图案
  • 多边形:正多边形绘制
  • 图块(Block):可重复使用的图形组件
  • 图像插入:支持栅格图像嵌入

1.2.2 编辑与修改

LibreCAD支持丰富的图形编辑操作:

基本编辑

  • 移动(Move)
  • 复制(Copy)
  • 旋转(Rotate)
  • 缩放(Scale)
  • 镜像(Mirror)
  • 偏移(Offset)

高级编辑

  • 修剪(Trim):裁剪相交实体
  • 延伸(Extend):延伸到边界
  • 分割(Divide):等分线段
  • 倒角(Chamfer):创建斜角
  • 圆角(Fillet):创建圆角
  • 打断(Break):分割实体
  • 炸开(Explode):分解复合实体

1.2.3 图层管理

图层是CAD绘图的核心组织方式,LibreCAD提供完善的图层管理功能:

  • 图层创建与删除:支持无限数量的图层
  • 图层属性设置:颜色、线型、线宽
  • 图层可见性控制:显示/隐藏图层
  • 图层锁定:防止误操作修改
  • 图层打印控制:设置是否打印

1.2.4 尺寸标注

专业的尺寸标注功能:

  • 线性标注:水平、垂直、对齐标注
  • 径向标注:半径、直径标注
  • 角度标注:角度测量与标注
  • 引线标注:带指引线的注释
  • 坐标标注:显示点坐标值
  • 标注样式:可自定义的标注外观

1.2.5 文字与注释

  • 单行文字:简单文本注释
  • 多行文字:支持换行的文本块
  • 文字样式:可自定义字体、大小、颜色
  • 特殊符号:支持CAD常用特殊符号

1.2.6 文件格式支持

LibreCAD支持多种文件格式的读写:

原生格式

  • DXF(Drawing Exchange Format):主要工作格式,与AutoCAD高度兼容

导入格式

  • DXF:AutoCAD交换格式
  • DWG:AutoCAD原生格式(通过libdxfrw库支持)
  • LFF:LibreCAD字体格式
  • CXF:QCAD字体格式

导出格式

  • DXF:标准交换格式
  • SVG:可缩放矢量图形
  • PDF:便携文档格式
  • PNG/JPEG/BMP:栅格图像格式

1.2.7 命令行界面

LibreCAD提供类似AutoCAD的命令行界面:

命令: line
指定第一点: 0,0
指定下一点: 100,100
指定下一点: [Enter]结束

支持的命令行特性:

  • 命令自动完成
  • 命令别名
  • 坐标输入(绝对坐标、相对坐标、极坐标)
  • 数学表达式计算

1.2.8 捕捉与定位

精确绘图必备的对象捕捉功能:

  • 端点捕捉:捕捉线段端点
  • 中点捕捉:捕捉线段中点
  • 圆心捕捉:捕捉圆和弧的圆心
  • 交点捕捉:捕捉对象交点
  • 垂足捕捉:捕捉垂直点
  • 切点捕捉:捕捉切线点
  • 最近点捕捉:捕捉最近的点

1.2.9 多语言支持

LibreCAD界面已翻译成超过30种语言,包括:

  • 中文(简体/繁体)
  • 英语
  • 日语
  • 韩语
  • 法语
  • 德语
  • 西班牙语
  • 俄语
  • 等等

用户可以通过翻译平台 https://translate.librecad.org 参与翻译工作。

1.3 技术架构概览

1.3.1 技术栈

LibreCAD采用以下技术栈构建:

技术 用途
C++17 主要编程语言
Qt 6 跨平台GUI框架
Boost C++工具库,提供算法和数据结构支持
libdxfrw DXF/DWG文件读写库
muParser 数学表达式解析器
FreeType 字体渲染

1.3.2 模块化架构

LibreCAD采用模块化设计,主要模块包括:

librecad/
├── src/
│   ├── main/          # 主程序入口
│   ├── lib/           # 核心库
│   │   ├── engine/    # 图形引擎
│   │   ├── gui/       # GUI组件
│   │   ├── actions/   # 用户操作
│   │   ├── creation/  # 图形创建
│   │   ├── modification/ # 图形修改
│   │   ├── information/ # 信息查询
│   │   ├── math/      # 数学计算
│   │   ├── filters/   # 文件过滤器
│   │   └── ...
│   ├── actions/       # 动作实现
│   ├── ui/            # 用户界面
│   ├── cmd/           # 命令处理
│   └── plugins/       # 插件接口
└── plugins/           # 官方插件

1.3.3 核心类体系

LibreCAD的核心类体系遵循面向对象设计原则:

实体层次结构

RS_Entity (基类)
├── RS_Point
├── RS_Line
├── RS_Circle
├── RS_Arc
├── RS_Ellipse
├── RS_Polyline
├── RS_Spline
├── RS_Text
├── RS_Dimension
├── RS_Hatch
├── RS_Image
└── RS_EntityContainer
    ├── RS_Block
    ├── RS_Graphic
    └── RS_Insert

关键组件

  • RS_Graphic:图形文档,包含所有图形数据
  • RS_GraphicView:图形视图,负责渲染和交互
  • RS_ActionInterface:动作接口,封装用户操作
  • RS_EventHandler:事件处理器,分发用户事件

1.4 与其他CAD软件对比

1.4.1 LibreCAD vs AutoCAD

特性 LibreCAD AutoCAD
价格 免费 付费订阅
开源 是(GPLv2) 否
2D支持 完整 完整
3D支持 无 完整
文件格式 DXF为主 DWG为主
学习曲线 较平缓 较陡峭
系统要求 较低 较高
跨平台 Windows/macOS/Linux Windows/macOS
插件生态 有限 丰富

1.4.2 LibreCAD vs FreeCAD

特性 LibreCAD FreeCAD
主要功能 2D绘图 3D建模
技术定位 制图软件 参数化建模
目标用户 建筑/机械制图 工程设计/3D打印
上手难度 较低 较高
文件格式 DXF STEP/IGES/STL

1.4.3 LibreCAD vs QCAD

特性 LibreCAD QCAD
起源 QCAD分支 原始项目
许可证 GPLv2 商业+社区版
开发活跃度 活跃 活跃
功能差异 社区驱动特性 商业特性
技术支持 社区支持 官方支持

1.5 应用场景

1.5.1 建筑设计

LibreCAD广泛应用于建筑设计领域:

  • 平面图绘制:建筑平面布局
  • 立面图设计:建筑外观设计
  • 剖面图制作:结构剖面展示
  • 详图绘制:节点详细设计
  • 施工图输出:符合制图规范的图纸

1.5.2 机械工程

机械工程领域的应用:

  • 零件图绘制:机械零件的2D表达
  • 装配图设计:零件装配关系展示
  • 工艺图制作:加工工艺说明
  • 标准件库:常用标准件图库管理

1.5.3 电气工程

电气工程应用:

  • 电路图绘制:电气原理图
  • 布线图设计:电气布线规划
  • 符号库管理:电气符号库

1.5.4 教育培训

教育领域应用:

  • CAD教学:免费的教学工具
  • 工程制图课程:工程制图实践
  • 学生作业:学生学习使用

1.5.5 个人项目

个人和爱好者应用:

  • DIY项目设计:家具、装修设计
  • 模型制作:激光切割、数控加工准备
  • 平面设计:技术插图制作

1.6 学习路线图

1.6.1 初级阶段

目标:能够使用LibreCAD完成基本的2D绘图任务

学习内容:

  1. 软件安装与界面熟悉
  2. 基本绘图工具使用
  3. 图层管理基础
  4. 简单编辑操作
  5. 文件保存与导出

建议时间:1-2周

1.6.2 中级阶段

目标:能够高效完成复杂的技术制图

学习内容:

  1. 高级绘图技巧
  2. 尺寸标注系统
  3. 块和库管理
  4. 命令行使用
  5. 自定义设置
  6. 打印与输出

建议时间:2-4周

1.6.3 高级阶段

目标:能够进行二次开发和定制

学习内容:

  1. 源码架构理解
  2. 开发环境搭建
  3. 插件开发
  4. Action系统开发
  5. 自定义实体类型

建议时间:4-8周

1.7 获取帮助与资源

1.7.1 官方资源

  • 官方网站:https://librecad.org
  • GitHub仓库:https://github.com/LibreCAD/LibreCAD
  • 用户手册:https://librecad.readthedocs.io
  • Wiki文档:https://dokuwiki.librecad.org

1.7.2 社区支持

  • 官方论坛:https://forum.librecad.org
  • IRC频道:#librecad @ libera.chat
  • 翻译平台:https://translate.librecad.org

1.7.3 问题反馈

  • GitHub Issues:https://github.com/LibreCAD/LibreCAD/issues
  • 提交问题时请包含:
    • 操作系统版本
    • LibreCAD版本
    • 问题描述
    • 重现步骤

1.7.4 相关项目

  • libdxfrw:https://github.com/LibreCAD/libdxfrw - DXF/DWG读写库
  • 资源仓库:https://github.com/LibreCAD/Resources - 图标、样式等资源

1.8 本章小结

本章介绍了LibreCAD的基本概念、发展历史、核心特性和技术架构。作为一款开源的2D CAD软件,LibreCAD具有以下优势:

  1. 完全免费:基于GPLv2许可,永久免费使用
  2. 跨平台支持:支持Windows、macOS、Linux
  3. 功能完善:提供专业级2D绘图功能
  4. 社区活跃:持续的开发和改进
  5. 易于学习:相对平缓的学习曲线
  6. 开源可定制:可以根据需求修改和扩展

在后续章节中,我们将深入学习LibreCAD的安装配置、用户界面、绘图工具、以及二次开发等内容,帮助读者从入门到精通全面掌握这款优秀的开源CAD软件。


下一章:安装与环境配置