SuperAPI AI 工具集

contour-to-mesh

设计与创作

查看项目

更新于 10-15 18:08

技能介绍

用途

contour-to-mesh 用于在 Blender 中直接从提取出的 2D 轮廓/遮罩构建网格表面,而不是用近似的图元(如通用椭圆)来替代。它适用于以下情形:源锁定的轮廓派生网格、轮廓优先(silhouette-first)建模、三角化的遮罩/轮廓表面、从 OpenCV 轮廓生成网格,或用测量得到的形状替换通用椭圆/图元。

当参考轮廓本身就是验收契约时使用本技能。网格从正视图 X/Z 平面上的填充 2D 轮廓开始,验证之后再添加较浅的 Y 方向深度/隆起。

主要能力

  • 从单个结构部件的干净轮廓/遮罩生成三角化网格配方。
  • 通过生成的 Blender Python 创建命名网格(GEO_*)。
  • 立即赋予正面投影 UV。
  • 仅以修改器或顶点位移方式添加深度,同时保持 X/Z 边界位置不变。
  • 对照源遮罩验证正面渲染。

使用方式

工作流

  1. 提取或选定一个结构部件的干净轮廓/遮罩。
  2. 使用 scripts/mask_to_mesh_recipe.py 生成三角化网格配方。
  3. 运行生成的 Blender Python 创建命名 GEO_* 网格。
  4. 立即赋予正面投影 UV。
  5. 仅以修改器或顶点位移方式添加深度,保持 X/Z 边界位置不变。
  6. 对照源遮罩验证正面渲染。

硬性规则

  • 除非清单(manifest)声明源是对称的,否则不要使用径向复制。
  • 如果存在轮廓,不要使用通用椭圆。
  • 边界顶点必须保持源 X/Z 坐标。
  • 深度变形可以移动 Y 和内部顶点,但不得改变正面轮廓。
  • 一个结构源部件应成为一个命名的结构网格。

Blender 模式

生成的网格坐标应将图像 x 映射到 Blender X,图像 y 映射到 Blender Z,并做垂直翻转。Y 仅用于厚度/深度。

正平面旋转规则

在此 Blender 坐标约定中,正面相机沿 Y 轴观察,参考轮廓位于 X/Z 平面。因此正视图内的 2D 旋转是绕 Y 轴旋转,而不是绕 Z 轴。对正投影中的 2D 部件朝向使用 rotation_euler = (0, angle, 0)。Z 轴旋转会让 X/Z 平面网格错误地旋入/旋出屏幕空间。

来源提炼

  • Blender Mesh API:使用 from_pydata 从顶点/面创建网格。
  • Blender BMesh:用于清理、三角化、法线、平滑。
  • OpenCV 轮廓:检测并简化边界。
  • Delaunay 三角化:在按遮罩包含关系过滤后,可用于填充内部网格。

部件清单交接

当遮罩来自 source-part-segmentation 时,在 Blender 中保留 part_inventory.json 的名称:GEO_<part_name>、MAT_<part_name> 以及 UV 层名称。网格生成必须记录:

  • 源图像尺寸;
  • 源遮罩路径;
  • 轮廓边界点数量;
  • 边界地标点(尖端、左底、右底、质心/极值点),当可检测时;
  • 图集 UV 矩形或投影模式。

对于精确的吉祥物/Logo 工作,从轮廓生成边界顶点,仅为表面支撑添加内部顶点。边界是一份契约:倒角、实体化、细分、收缩包裹或雕刻操作都不得移动正视图 X/Z 边界顶点,除非生成了新的源遮罩。

孔洞与描边策略

  • 填充的结构遮罩成为网格。
  • 线框描边用于引导边界/地标;除非清单将其归类为装饰性线条,否则它们不是结构网格。
  • 当孔洞/负区域影响轮廓时,应保留为单独的切割遮罩;否则将其实现为贴花/材质遮罩。

源锁定正面皮肤回退方案

当设计稿是绘画式/风格化的,且分离的正交视图不具备 CAD 一致性时,在雕塑式解读之前使用正面皮肤(front-skin)流程:

  1. 选择规范的正/主源;
  2. 提取可见主体遮罩作为填充轮廓;
  3. 创建浅 2.5D 网格,其 X/Z 边界即该轮廓;
  4. 赋予全图正面投影 UV,使渲染正面匹配源像素;
  5. 仅沿 Y 并在正面表面之后添加深度;
  6. 可选地添加单独的浮雕/背衬部件以增强侧面合理性,但保持正面皮肤作为视觉验收关口。

这是针对 Logo/吉祥物的通用回退方案,此时忠实的正面读取比推测性体积更重要。将其标记为 front_locked_visual_skin,而不是完全解决的转台模型。

脚本

scripts/source_locked_skin_recipe.py 提取最大/规范的前景组件,并使用全图正面投影 UV 坐标输出遮罩 + 轮廓网格配方。

适用场景

  • 吉祥物/Logo 的 1:1 还原。
  • 轮廓优先建模。
  • 从 OpenCV 轮廓生成三角化网格。
  • 用测量形状替换通用椭圆/图元。

限制

  • 在首次调用 Blender 之前,需阅读 ../text-to-blender/references/mcp-backends.md。共享能力优先使用官方 MCP;整个任务中保持所选后端不变。配方中的工具名称是客户端/旧版示例:需通过该参考及其 agent-host 指南进行映射。
  • 边界是契约,倒角、实体化、细分、收缩包裹或雕刻操作不得移动正视图 X/Z 边界顶点,除非生成新的源遮罩。
  • 关于收费、价格、平台支持等具体信息,资料中暂未提供。