Files
Mrpzx 977f97995a tripocli v2.0.0:Tripo AI 3D 生成与加工 CLI(面向 Agent 与开发者,纯 Python 标准库、零第三方依赖)
覆盖文生 3D、图生 3D、多视图、批量生成,以及重拓扑、绑定、动画、智能分割、
纹理、PBR、智能 UV、部件补全、格式导出与下载。

代码组织:一个功能一个模块(tripo/features/),入口薄壳 tripocli.py。
2026-10-13 19:22:54 +08:00

37 lines
1.5 KiB
Python
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
"""重拓扑 — remesh an existing project into clean quad/tri topology.
tripocli remesh -p <project_id> --face-limit 10000 --wait -o lowpoly.glb
Verified body: ``bake``, ``face_limit``, ``model_version`` ("default"), ``quad``,
``smart_poly`` and ``part_name_list`` holding ``tripo_node_<operator_id>``.
"""
from . import _common
NAME = "remesh"
HELP = "重拓扑:将模型重制为干净的四边形/三角面网格"
def add_arguments(parser):
_common.add_op_options(parser)
parser.add_argument("--face-limit", type=int, default=10000, help="目标面数(默认 10000)")
parser.add_argument("--tri", action="store_true", help="输出三角面(默认四边面)")
parser.add_argument("--no-bake", action="store_true", help="不烘焙原贴图")
parser.add_argument("--part", action="append", help="只处理指定部件节点名,可重复;默认整个模型")
def run(ctx):
args = ctx.args
parts = args.part or _common.node_part_name(ctx.client, args.project)
body = {
"project_id": args.project,
"face_limit": args.face_limit,
"quad": not args.tri,
"smart_poly": False,
"bake": not args.no_bake,
"model_version": _common.project_version(ctx.client, args.project, args.model) or "default",
"part_name_list": parts,
}
data = ctx.client.get_data("POST", "/v2/studio/operation/remesh", body=body)
return _common.run_operator(ctx, data, output=args.output, wait=args.wait, label="重拓扑")