You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Blender Python脚本:前视图选择网格左半部分(排除中心顶点)

Blender 自动选择前视图左半网格(排除中心线顶点)脚本

核心修改逻辑非常简单:前视图下网格左右方向对应物体局部坐标系的X轴,中心线上的顶点X坐标为0,原有方案选中中心线顶点是因为判断条件用了「X小于等于0」,只要把判断条件改为X严格小于0(加极小阈值规避浮点误差),就能直接排除中心线顶点,不需要改动其他逻辑。

可直接运行的完整脚本

import bpy
import bmesh

# 校验当前选中对象为网格类型
active_obj = bpy.context.active_object
if not active_obj or active_obj.type != "MESH":
    raise Exception("请先选中目标网格对象")

# 切换到编辑模式,清空已有选择
bpy.ops.object.mode_set(mode="EDIT")
bpy.ops.mesh.select_all(action="DESELECT")
bm = bmesh.from_edit_mesh(active_obj.data)

# 顶点选择核心逻辑
threshold = -1e-6  # 浮点误差容错阈值,可根据需求调整
for vert in bm.verts:
    # 仅选中X坐标小于阈值的顶点,自动排除X≈0的中心线顶点
    if vert.co.x < threshold:
        vert.select = True

# 更新网格选择状态,切换到顶点选择模式
bmesh.update_edit_mesh(active_obj.data)
bpy.context.tool_settings.mesh_select_mode = (True, False, False)

使用说明

  • 运行脚本前先选中需要操作的网格对象
  • 脚本会自动进入编辑模式,清空原有选择后选中所有左半部分顶点
  • 阈值参数可以根据自己的建模精度需求调整,数值越大排除的中心线附近顶点范围越宽

注意:脚本中设置-1e-6的容错阈值,是为了规避Blender建模过程中常见的浮点精度误差,避免把本应属于中心线、实际坐标为0.0000002这类极小值的顶点误选。如果你的模型中心线顶点坐标严格为0,也可以直接将判断条件写为vert.co.x < 0。

内容的提问来源于stack exchange,提问作者axe

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.27 01:06:30