目录

  • 主要特点
  • 安装 - 预构建包(推荐)
  •       发布包
  •       开发包
  •       MacOS 解决方法
  • 安装(conda/mamba)
  • 使用说法
  •       显示对象
  •       旋转、平移和缩放 3D 视图
  •       调试对象
  •       控制台日志记录
  •       导出对象
  •       显示所有调试线路
  •       突出显示特定面
  •       命名对象
  • 基于 PyQT 的 CadQuery GUI 编辑器支持 Linux、Windows 和 Mac。官方地址 CQ-editor

    主要特点

    • 自动代码重新加载 - 您可以使用您最喜欢的编辑器

    • 基于OCCT

    • CadQuery 脚本的图形调试器

      • 单步执行脚本并观察模型如何变化

    • CadQuery 对象堆栈检查器- 目视检查当前工作平面和选定项目

      • 洞察模型的演变

    • 导出为各种格式

      • STL

      • STEP

    安装 - 预构建包(推荐)

    发布包

    不需要 Anaconda 的稳定版本构建附加到 最新版本。下载适合您操作系统的安装程序,解压,然后运行适用于您操作系统的 CQ-editor 脚本(适用于 Windows 的 CQ-editor.cmd,适用于 Linux 和 MacOS 的 CQ-editor.sh)。在 Windows 上,您应该只需双击 CQ-editor.cmd 即可。在 Linux 和 MacOS 上,您可能需要使脚本可执行chmod +x CQ-editor.sh并从命令行运行脚本。该脚本包含一个环境变量导出,可能需要该环境变量导出才能使 CQ-editor 在 MacOS Big Sur 上正确启动,因此使用该脚本比直接启动 CQ-editor 更好。

    开发包

    开发版本也可用,但可能不稳定,使用时应自行承担风险。您可以在此处下载最新版本。在 CQ 编辑器根目录中安装并运行run.sh(Linux/MacOS) 或(Windows) 脚本。run.batCQ 编辑器窗口应该启动。

    MacOS 解决方法

    在更高版本的 MacOS 上,您可能还需要xattr -r -d com.apple.quarantine path/to/CQ-editor-MacOS.

    Note

    小编这里推荐搭建直接下载 编辑器源码,通过源码运行编辑器
    直接使用官方封装好的安装包,windows 下运行有一些问题,部分代码问题,
    如下边引用了 olve()方法的代码

    官方安装包运行报错 Plugin ipopt'is not found.


    使用编辑器源码运行正常

    安装(conda/mamba)

    使用 conda 或 mamba 安装:

    mamba install -c cadquery -c conda-forge cq-editor=master

    然后只需键入cq-editor即可运行它。这将安装直接从此存储库的 HEAD 构建的最新版本。
    或者克隆此 git 存储库并设置以下 conda 环境:

    mamba env create -f cqgui_env.yml -n cqgui
    mamba activate cqgui
    python run.py

    如果您担心 mamba/conda 修改您的 shell 设置,您可以使用micromamba

    micromamba install -n base -c cadquery cq-editor
    micromamba run -n base cq-editor

    在某些 Linux 发行版(例如Ubuntu 18.04)上,可能需要安装附加软件包:

    sudo apt install libglu1-mesa libgl1-mesa-dri mesa-common-dev libglu1-mesa-dev

    在 Fedora 29 上,可以按如下方式安装软件包:

    dnf install -y mesa-libGLU mesa-libGL mesa-libGLU-devel

    使用说法

    显示对象

    默认情况下,CQ-editor 将以默认颜色和 Alpha(透明度)显示脚本中所有Workplane对象的 3D 表示。show_object也可以更好地控制显示的内容以及颜色和 Alpha 设置。show_object告诉 CQ-editor 显式显示一个对象,并接受options参数。
    options 参数是一个名为 alpha 和 color 的渲染选项字典。
    alpha 透明度在 0.0 和 1.0 之间缩放,0.0 表示完全不透明,1.0 表示完全透明。
    color 颜色使用 R(红色)、G(绿色)和 B(蓝色)值设置,每个值的缩放范围为 0 到 255。
    可以省略其中一个选项或两者。
    name 该参数可以分配一个自定义名称,该名称将显示在 CQ-editor 的对象窗格中。

    show_object(result, name="somename", options={"alpha":0.5, "color": (64, 164, 223)})

    请注意,show_object 也适用于 ShapeTopoDS_Shape 对象。为了从嵌入式 Python 控制台显示对象,请使用show.

    旋转、平移和缩放 3D 视图

    以下鼠标控件可用于更改 3D 对象的视图,并且 CAD 用户应该熟悉这些控件,即使使用的鼠标按钮可能有所不同。

    • 鼠标左键+拖动= 旋转

    • 鼠标中键+拖动= 平移

    • 鼠标右键+拖动= 缩放

    • 鼠标滚轮= 缩放

    调试对象

    有多个菜单选项可帮助调试 CadQuery 脚本。它们包含在Run菜单中,工具栏中有相应的按钮。下面列出了每个菜单项的功能。

    • Debug(Ctrl + F5) - 它不会像项目一样完全运行脚本Render,而是开始执行脚本,但在第一个非空行处停止,等待用户手动继续执行。

    • Step(Ctrl + F10) - 将脚本的执行移动到下一个非空行。

    • Step in(Ctrl + F11) - 将按照执行流程到达脚本中定义的用户创建函数的内部。

    • Continue(Ctrl + F12) - 从正在调试的当前行开始完成脚本的执行。

    还可以对对象进行可视化调试。这可以通过使用debug()函数来显示对象而不是 来实现show_object()。下面显示了以下代码片段的另一种方法,用于突出显示特定的面孔,但它演示了debug().

    import cadquery as cq
    
    result = cq.Workplane().box(10, 10, 10)
    
    highlight = result.faces('>Z')
    
    show_object(result, name='box')
    debug(highlight)

    显示的对象debug()为红色,并设置了 alpha,因此它们是半透明的。这对于检查干涉、间隙或是否选择了预期的面非常有用,如上面的代码所示。

    控制台日志记录

    Python 的标准print()函数不会输出到 CQ 编辑器 GUI,而应该使用log()log()会将提供的文本输出到日志查看器面板。
    如果您从命令行启动 CQ-editor,print()函数会向控制台输出文本。

    导出对象

    任何对象都可以导出为 STEP 或 STL 格式。下面列出了执行此操作的步骤。

    1. 在“Objects”面板中突出显示要导出的对象。

    2. 根据您要导出的文件格式,单击菜单中的Export as STL或。如果未在“对象”面板中选择对象,这两个选项都将被禁用。Export as STEPTools

    单击任一导出项目将显示一个文件对话框,允许设置导出文件的文件名和位置。

    显示所有调试线路

    注意:这用于调试目的,如果不删除,在某些情况下可能会干扰模型的执行。
    使用consolidateWires()是组合所有连线的快速方法,以便它们将一起显示在 CQ 编辑器的查看器中。在下面的代码中,它用于确保两个矩形都显示。此技术可以更轻松地调试正在进行的 2D 草图。

    import cadquery as cq
    res = cq.Workplane().rect(1,1).rect(3,3).consolidateWires()
    show_object(res)

    突出显示特定面

    在调试或尝试学习 CadQuery 选择器时,以不同颜色突出显示特定面可能很有用。以下代码创建一个单独的突出显示对象,以将选定的面显示为红色。这是使用debug()对象的替代方法,在大多数情况下debug()可以用更少的代码提供相同的结果。但是,此方法将允许自定义突出显示对象的颜色和 alpha。

    import cadquery as cq
    
    result = cq.Workplane().box(10, 10, 10)
    
    highlight = result.faces('>Z')
    
    show_object(result)
    show_object(highlight,'highlight',options=dict(alpha=0.1,color=(1.,0,0)))

    命名对象

    默认情况下,对象在对象检查器中具有随机生成的 ID。但是,为对象命名可能会很有用,以便更容易识别它们。参数可以用来做到这一点nameshow_object()

    import cadquery as cq
    
    result = cq.Workplane().box(10, 10, 10)
    
    show_object(result, name='box')
    作者:码峰  创建时间:2023-12-25 09:23
    最后编辑:码峰  更新时间:2024-01-12 17:58