CadQuery安装

CadQuery是Python的一款CAD开发库,有了这个,可以直接用Python代码来开发3D模型。可用conda来安装,由于依赖较多,建议新建一个环境

conda create -n cad
conda activate cad
conda install -c conda-forge cadquery

安装完成后,可以做一个简单的示例

import cadquery as cq
from cadquery.vis import show
result = cq.Workplane("XY" ).box(3, 3, 0.5).edges("|Z").fillet(0.125)
show(result)

两行代码,第一行创建模型,第二行对模型进行可视化

在这里插入图片描述

CQ-editor

CQ-editor是基于QT的CadQuery用户图形界面。这是个绿色软件,无需安装,双击直接启动。界面如下

在这里插入图片描述
如图可知,CQ-editor 主要分为几大核心区域,例如代码编辑区、3D 视图区、对象树 以及控制台等。

在左侧的代码窗口中,和上面的纯python代码相比,多了一行绘图show_object,但实测就算没有这个,中间窗格仍会显示3D图形。

初步示例

CadQuery给出的第一个示例如下

在这里插入图片描述

绘制代码为

height = 60.0
width = 80.0
thickness = 10.0
diameter = 22.0
padding = 12.0

result = (
    cq.Workplane("XY")
    .box(height, width, thickness)
    .faces(">Z")
    .workplane()
    .hole(diameter)
    .faces(">Z")
    .workplane()
    .rect(height - padding, width - padding, forConstruction=True)
    .vertices()
    .cboreHole(2.4, 4.4, 2.1)
)
show(result)

其工作流程为

  1. 先指定工作平面为XY,并在XY平面上绘制 60 × 80 × 10 60\times80\times10 60×80×10的立方体。
  2. 选定Z坐标最大的面(即刚刚创建立方体的顶面)为新的工作平面,并打一个直径为 22 22 22的洞。
  3. 选定Z坐标最大的面,绘制一个辅助矩形,并选中该矩形的顶点,向下钻4个沉头孔。

代码中,box, hole, rect, cboreHole都是几何体,分别为长方体、圆孔、矩形、沉头孔,其中cbore 是 Counterbore 的缩写。

【Workplane】用于指定工作平面,在CadQuery中,每次操作,均需在指定的工作平面上。

【faces】用于切换工作平面, > Z >Z >Z是一种选择器,表示Z坐标最大的面。类似的还有 < Z <Z <Z表示底面, > X >X >X表示右侧面等。

【forConstruction】是辅助线标记,选为True后,创建的rect不会生成任何实体材料。

模型导出

CadQuery支持多种模型的导出,常用导出格式包括

格式 扩展名 核心特点 最佳用途
STEP .step / .stp 保留精确的 B-Rep (边界表示) 数学曲面。文件体积小,包含完整的拓扑信息。 ✅ 首选。CNC 加工、导入 SolidWorks/Fusion 360 等其他 CAD 软件、精确测量。
STL .stl 将模型转换为三角网格 (Mesh)。丢失精确曲面信息,圆角会变成多边形面片。 ✅ 3D 打印 (FDM/SLA)。需手动设置公差以保证圆角平滑。
DXF .dxf 2D 矢量轮廓格式。 ✅ 激光切割、水刀切割、CNC 2D 铣削。
3MF / AMF .3mf / .amf 现代 3D 打印格式,支持颜色和多部件信息(CadQuery 支持基础导出)。 高级 3D 打印(需保留颜色或装配关系时)。

其导出代码为

cq.exporters.export(result, "my_part.step")

更多推荐