Skip to content

设计草图区域的稳定身份与 face(id) / faces(ids) 选择 #72

Description

@vilicvane

#23 拆出的后续设计讨论,源于用户提出未来支持 face(id) / faces(ids) 并保留空参数用法。当前不预定公开签名或实现方案,也不阻塞已完成的草图原型。

现有已确认语义保持:sketch.face() 要求恰好一个有效面;sketch.faces() 返回所有面组成的普通只读数组,由调用者自行 map。闭合轮廓的孔洞/岛屿规则保留;不把相交轮廓自动 union 或取消单面限制夹带到本需求中。

需要设计可由源码稳定引用的区域身份,而不是以遍历顺序或数组下标充当 ID。重点讨论边界拆分/修剪、区域合并或分裂、孔洞变化、上游派生更新后,哪些引用可以保留、哪些应明确失效;不能把旧引用静默指向另一个区域。现有点/边稳定 ID 与派生层引用是输入条件,区域层的标识和持久化方式尚未决定。

方案确定后再拆实施范围,覆盖选择 API、编辑器选择/源码生成及拓扑变化回归。设计基线见 草图方案。与 #9 的通用拓扑讨论相关,但这里专门讨论草图求面后的区域身份。

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    discussionDesign question; not an implementation commitment

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions