尧图网站设计 尧图网站设计YAOTU DESIGN
ARTICLE DETAIL

资讯详情

深耕网站设计与一线实操的经验洞察。

text-to-cad 的 SDF 里 mesh 资源该怎么选 URI 形式?model:// 与 package:// 的记录约定

text-to-cad 的 SDF 里 mesh 资源该怎么选 URI 形式?model:// 与 package:// 的记录约定 text-to-cad 的 SDF 里 mesh 资源该怎么选 URI 形式model:// 与 package:// 的记录约定【免费下载链接】text-to-cadA library of agent skills for CAD, CAE and CAM项目地址: https://gitcode.com/GitHub_Trending/tex/text-to-cad在 text-to-cad 仓库的sdfskill 中编写或修改.sdf文件时mesh的uri写什么形式直接决定目标消费者Gazebo 等仿真器、ROS 包环境、纯可视化工具能否加载到网格资源。这个仓库的约定是SDF 只引用几何与 mesh 资源、不重新生成它们见 skills/sdf/references/interoperability.md而资源解析是环境相关的environment-dependent——同一个 URI 通过本地验证不代表在目标仿真环境里也能解析。因此实际操作路径是三步先按消费者环境选定 URI 形式再把选择记录进.sdf顶部的设计台账design ledger最后用 bundled validator 做结构校验。先确定目标消费者再选 URI 形式skills/sdf/references/sdf-workflow.md 给出的选择标准是mesh URI 要么对.sdf文件的位置保持稳定要么使用消费者能理解的 simulator/package URI 约定。文档列出的可用形式及适用条件如下URI 形式解析预期何时使用相对本地路径相对.sdf文件所在目录解析模型自包含self-containedmesh 放在.sdf旁边file://绝对本地文件需要固定绝对路径的本地资源model://仿真器模型路径simulator model path下解析资源随仿真器模型包simulator model package分发package://仿真器/ROS 包环境下解析仿真环境会解析包根目录package roots时fuel://、http://、https://外部资源仅当消费者预期会抓取外部资产时model://和package://并不是更高级的写法而是把解析责任交给不同环境用model://的前提是资源会落在目标环境的仿真器模型路径下用package://的前提是目标环境按 ROS/package 方式解析包根目录两者都不满足时不要硬凑外部 URL——interoperability.md 明确要求记录目标消费者能解析哪种 URI 形式而不是假设某种形式通用。选错形式不会立即报错bundled validator 对model://、package://等已知外部 scheme 不做本地文件系统解析就放行这正是后面要把选择记录进台账的原因。还有一条资源归属边界mesh 资产由 CAD/mesh 工作流拥有——每个 link 一个资产、在 link 自身坐标系下导出、并记录源单位。如果 mesh 本身是错的修导出不要在 SDF 里用 pose 去凑。记录约定写进设计台账的 Mesh URI policy按 skills/sdf/SKILL.md 的工作流写 XML 之前先建好设计台账其规范位置是.sdf文件顶部的注释块。skills/sdf/references/design-ledger.md 中专门有一张 Mesh URI policy 表这就是model://与package://的记录约定——逐行声明每种 URI 形式是否允许、预期如何解析、备注什么| URI kind | Allowed? | Resolution expectation | Notes | |---|---|---|---| | Relative local path | | Relative to the .sdf file location | | | file:// | | Absolute local file | | | model:// | | Simulator model path | | | package:// | | Simulator/ROS package environment | | | fuel://, http://, https:// | | External resource | |填写时至少落实三件事Allowed? 列给出判断当前模型允许哪些形式。例如自包含模型只允许 Relative local pathmodel://、package://行要么标注不允许要么在 Notes 里写明部署前提例如仅当部署到 ROS 包环境时使用package://。Geometry 表同步记录同一台账的 Geometry 部分要求每个 visual/collision 记录 URI or dimensions、Mesh units、Scale保证 mesh 单位约定和缩放可审计。未解析的外部 URI 必须上报台账的 Assumptions to report 清单明确包含 unresolved external URI 以及 mesh 单位/缩放假设llm-guardrails.md 也强调 mesh 单位、scale、外部 URI 是否能在部署环境解析属于不允许静默推断的范畴只能来自 manifest、CAD 导出配置或显式假设。如果 SDF 引用的是已导出的 mesh 资产interoperability.md 还要求记录六项源几何文件、导出 mesh 路径、mesh 单位约定、mesh 原点约定、visual scale、碰撞简化决策。XML 中的 URI 必须与上面的记录一致。结构示意如下代码块为示例model://后的模型名与资源路径必须替换为目标环境中实际可解析的值不能照抄visual namebase_visual geometry mesh urimodel://model_name/meshes/asset.dae/uri /mesh /geometry /visual用 bundled validator 校验校验命令python是解释器占位按 SKILL.md 说明裸python不可用时换成python3、项目虚拟环境解释器或已配置的解释器路径path/to/model.sdf替换为你的实际文件路径python scripts/validate path/to/model.sdf python scripts/validate path/to/model.sdf --strict针对 mesh URIvalidation.md 描述的校验行为是mesh URI 值非空本地 mesh 引用按.sdf文件位置解析文件不存在时报错missing_mesh_file——这是本地相对路径能被证实的部分model://、package://、fuel://、http://、https://属于已知外部 schemeaccepted without local filesystem resolution即放行但不验证真实可达性其他未知 scheme 给出 warningunresolved_mesh_uri_scheme。--strict会把 warning 当作失败处理任一目标文件失败时 validator 以非零退出。如果目标环境装有 Gazebo 工具链可以再跑一次面向目标消费者的解析检查gz sdf --check path/to/model.sdf或者通过 validator 的--gz-check auto/--gz-check required/--gz-check never选项控制外部检查的触发方式。gz sdf --check是可选的目标消费者校验环境里没有gz时按跳过上报不算 bundled 校验失败除非显式用了--gz-check required。边界与限制bundled validator 只能确认本地相对路径无法证明外部仿真器资源路径在目标环境可解析interoperability.md 的表述是 it cannot prove external simulator resource paths unless the target environment is available。model:///package://写得合规最终仍要靠目标环境的真实加载来验证。bundled 校验是轻量预检preflight不是 libsdformat/Gazebo 的替代品涉及兼容性时用目标仿真器的 parser 和 loader。URI 风格preferred URI style、mesh 位置、不允许未解析外部 URI 等属于 project policy 类别与 SDF 结构有效性分开文档明确不要仅因违反项目偏好就拒绝合法的 SDF策略问题优先用 warning 和 strict 模式表达。mesh 几何本身不属于 SDF 层的判断范围mesh 不对时回到其拥有工作流修导出不要在 SDF 里用 pose/scale 补救。收尾按报告格式交代按 SKILL.md 要求的报告格式完成 SDF 任务时要写明跑过的检查及结果bundled validation、gz sdf --check、simulator load、viewer handoff、跳过的外部检查及原因、假设清单例如假设 mesh 单位是米、外部 URI 未解析、以及需要仿真器验证的风险。URI 选择的正确性最终落在两件事上台账里 Allowed/Resolution expectation 的记录与 XML 中的实际写法一致且目标消费者环境里真的能加载到 mesh。【免费下载链接】text-to-cadA library of agent skills for CAD, CAE and CAM项目地址: https://gitcode.com/GitHub_Trending/tex/text-to-cad创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表