feat: 完善参数化关系式与SCDM模型修改验证

This commit is contained in:
2026-08-17 18:53:03 +08:00
parent a633b5a338
commit 722256a41f
7 changed files with 1798 additions and 83 deletions
+18
View File
@@ -4808,6 +4808,24 @@ class StepModel(FeatureMixin, ExportMixin, TransformMixin, OperationMixin, Polyd
self._editable_feature_candidates_cache.clear()
self._cylindrical_feature_candidates_cache.clear()
def mark_external_recognition_stale(self, reason: str = "modified-topology") -> None:
self._topology_refresh_generation = max(int(getattr(self, "_topology_refresh_generation", 0) or 0), 2)
self._asitus_hole_regions_attempted = False
self._asitus_hole_regions_loading = False
self._asitus_hole_region_cache.clear()
self._asitus_face_relation_cache.clear()
self._asitus_adjacency_relation_cache.clear()
self._asitus_geometric_relation_cache.clear()
self._asitus_hole_recognition_info.clear()
self._asitus_hole_recognition_info.update(
{
"ok": False,
"reason": str(reason or "modified-topology"),
"message": "Analysis Situs result ignored because the model topology has changed.",
}
)
self._clear_same_domain_dependent_caches()
def _install_asitus_relation_summary(self, result: dict[str, object]) -> None:
faces = result.get("faces", ())
if isinstance(faces, (tuple, list)):