第三章 几何体建模:基本几何体与布尔运算
各位同学,今天我们来聊聊LightTools里最基础、也最容易被忽视的部分——几何体建模。
说实话,我刚入行那会儿,觉得建模不就是拖几个方块、球体嘛,有什么好学的?直到有一次做车灯仿真,一个简单的反射面因为布尔运算顺序搞反了,整整浪费了我两天时间。嗯,从那以后,我再也不敢小看这些基础操作了。
3.1 基本几何体的创建
LightTools里提供了三种最常用的基本几何体:球体、立方体和圆柱体。别看它们简单,90%的光学系统都能用它们组合出来。
3.1.1 球体(Sphere)
创建球体很简单。在建模工具栏点一下球体图标,或者用快捷键。我个人习惯用快捷键,效率高很多。
操作路径:建模 → 基本几何体 → 球体
快捷键:Ctrl+Shift+S
球体的关键参数就三个:
| 参数 | 说明 | 我的建议 |
|---|---|---|
| 半径 | 球体半径大小 | 先设大一点,后面再调 |
| 中心位置 | X、Y、Z坐标 | 尽量放在原点,方便后续定位 |
| 分段数 | 网格细分程度 | 默认值够用,别改太小 |
3.1.2 立方体(Box)
立方体在LightTools里叫Box,不是Cube。这个细节我当年找了好久才发现。
操作路径:建模 → 基本几何体 → 立方体
快捷键:Ctrl+Shift+B
立方体的参数稍微多一点:
- 长宽高:分别对应X、Y、Z方向的尺寸
- 定位方式:中心定位或角点定位
- 旋转角度:绕各轴的旋转
这里有个坑——定位方式。默认是中心定位,也就是你输入的坐标是立方体的中心点。如果你习惯用角点定位,记得在属性面板里切换。我曾经因为这个,把一个LED阵列的位置全算错了,排查了半小时才发现。
3.1.3 圆柱体(Cylinder)
圆柱体用得最多的地方是透镜和光管。
操作路径:建模 → 基本几何体 → 圆柱体
快捷键:Ctrl+Shift+C
圆柱体的参数:
| 参数 | 说明 |
|---|---|
| 半径 | 底面圆的半径 |
| 高度 | 圆柱体的高度 |
| 轴向 | 默认沿Z轴,可改为X或Y |
3.2 布尔运算
布尔运算说白了就是几何体的加减法。LightTools支持三种布尔运算:并集、差集和交集。
你想想看,一个复杂的光学系统,比如车灯的反光碗,不可能直接画出来。都是先建几个基本体,然后用布尔运算切出想要的形状。
3.2.1 并集(Union)
并集就是把两个几何体合并成一个。操作很简单:
1. 选中两个几何体(按住Ctrl多选)
2. 右键 → 布尔运算 → 并集
3. 或者用快捷键 Ctrl+U
并集后的几何体会保留两个体的所有材料属性。如果两个体材料不同,系统会提示你选择保留哪个材料的属性。
3.2.2 差集(Subtract)
差集是最常用的布尔运算。从一个体里减去另一个体。
1. 先选中被减的体(目标体)
2. 再选中要减去的体(工具体)
3. 右键 → 布尔运算 → 差集
4. 快捷键 Ctrl+S
举个例子。你要做一个凹透镜,可以先建一个圆柱体作为基底,再建一个球体放在上面,然后用差集把球体部分挖掉。这样凹面就出来了。
3.2.3 交集(Intersect)
交集保留两个体重叠的部分。这个用得少,但在某些特殊场景下很管用。
快捷键:Ctrl+I
我记得有一次做导光条,需要切出一个异形截面。用交集运算,把圆柱体和另一个不规则体相交,一下子就得到了想要的形状。比手动调整快多了。
3.3 布尔运算的注意事项
布尔运算虽然好用,但有几个坑必须注意:
- 几何体必须相交:两个体如果没有重叠区域,布尔运算会失败
- 避免共面:两个体的面完全重合时,运算结果可能不稳定
- 运算顺序:多次布尔运算时,顺序会影响最终结果
- 保存备份:布尔运算不可逆,建议先复制一份原始体
3.4 实战:创建一个简单的透镜
光说不练假把式。我们来做一个简单的平凸透镜:
- 创建一个圆柱体,半径10mm,高度5mm
- 创建一个球体,半径20mm,中心位置在(0, 0, 15)
- 选中圆柱体(被减),再选中球体(减去)
- 执行差集运算
- 得到的就是一个平凸透镜
你看,就这么几步。但实际项目中,透镜的曲率半径、厚度都需要精确计算。这里只是演示布尔运算的用法。
3.5 知识体系总览
下面这张图是我自己整理的几何体建模知识结构,你一看就明白了:
这张图把本章的核心内容串起来了。基本几何体是砖块,布尔运算是水泥,两者结合就能搭建出各种复杂的光学结构。
好了,几何体建模的基础就讲到这里。记住我的一句话:建模不怕慢,就怕乱。养成好的建模习惯,后面做精密仿真时才不会手忙脚乱。
公众号:蓝海资料掘金营,微信deep3321