755 lines
19 KiB
JSON
755 lines
19 KiB
JSON
{
|
|
"source": "05_壳体与盖件/0501_箱体壳体/050199_通用壳体/CRQ2BS20-90C_CRQ2B-Body.solidworks_evidence_v2.json",
|
|
"part_id": "CRQ2BS20-90C_CRQ2B-Body",
|
|
"source_status": "hybrid_semantic_surfaceir_pending",
|
|
"source_self_validation": {
|
|
"schema": "solidworks.cad_evidence.self_validation.v1",
|
|
"passed": false,
|
|
"meaning": "complete reusable extraction; not a claim of backend feature support or 1:1 rebuild",
|
|
"counts": {
|
|
"features": 71,
|
|
"opaque_exact_geometry_features": 0,
|
|
"typed_body_features": 30,
|
|
"direct_semantic_features": 15,
|
|
"typed_features_requiring_history": 15,
|
|
"complete_history_features": 10,
|
|
"spline_segments": 0,
|
|
"incomplete_splines": 0,
|
|
"exact_bcurves": 0,
|
|
"incomplete_bcurves": 0,
|
|
"exact_bsurfaces": 0,
|
|
"incomplete_bsurfaces": 0,
|
|
"exact_trimmed_faces": 0,
|
|
"incomplete_trimmed_faces": 0,
|
|
"missing_exact_geometry_catalog_references": 0,
|
|
"incomplete_topology_records": 0,
|
|
"skipped_getter_signatures": 1
|
|
},
|
|
"feature_contracts": [
|
|
{
|
|
"feature": "Base-Extrude",
|
|
"family": "extrude",
|
|
"passed": true,
|
|
"blockers": []
|
|
},
|
|
{
|
|
"feature": "BodySplitChamfer",
|
|
"family": "chamfer",
|
|
"passed": true,
|
|
"blockers": []
|
|
},
|
|
{
|
|
"feature": "SwitchGrooves",
|
|
"family": "extrude",
|
|
"passed": true,
|
|
"blockers": []
|
|
},
|
|
{
|
|
"feature": "20-40_Groove",
|
|
"family": "extrude",
|
|
"passed": true,
|
|
"blockers": []
|
|
},
|
|
{
|
|
"feature": "BodyTopNose",
|
|
"family": "extrude",
|
|
"passed": true,
|
|
"blockers": []
|
|
},
|
|
{
|
|
"feature": "Bore",
|
|
"family": "revolve",
|
|
"passed": true,
|
|
"blockers": []
|
|
},
|
|
{
|
|
"feature": "MountsThroughHole",
|
|
"family": "extrude",
|
|
"passed": true,
|
|
"blockers": []
|
|
},
|
|
{
|
|
"feature": "MountsCounterbore",
|
|
"family": "extrude",
|
|
"passed": true,
|
|
"blockers": []
|
|
},
|
|
{
|
|
"feature": "TopDowelHole",
|
|
"family": "extrude",
|
|
"passed": true,
|
|
"blockers": []
|
|
},
|
|
{
|
|
"feature": "BottomDowelHole",
|
|
"family": "extrude",
|
|
"passed": true,
|
|
"blockers": []
|
|
},
|
|
{
|
|
"feature": "30-40TopThreadedHoles",
|
|
"family": "extrude",
|
|
"passed": true,
|
|
"blockers": []
|
|
},
|
|
{
|
|
"feature": "30-40BottomThreadedHoles",
|
|
"family": "mirror",
|
|
"passed": false,
|
|
"blockers": [
|
|
"mirror plane is missing",
|
|
"mirror source features/faces are missing"
|
|
]
|
|
},
|
|
{
|
|
"feature": "FrontCover",
|
|
"family": "extrude",
|
|
"passed": true,
|
|
"blockers": []
|
|
},
|
|
{
|
|
"feature": "RearCover",
|
|
"family": "mirror",
|
|
"passed": false,
|
|
"blockers": [
|
|
"mirror plane is missing",
|
|
"mirror source features/faces are missing"
|
|
]
|
|
},
|
|
{
|
|
"feature": "Ports",
|
|
"family": "extrude",
|
|
"passed": true,
|
|
"blockers": []
|
|
},
|
|
{
|
|
"feature": "10-15CoverSwitchGroove",
|
|
"family": "extrude",
|
|
"passed": true,
|
|
"blockers": []
|
|
},
|
|
{
|
|
"feature": "10-15CoverMounts",
|
|
"family": "extrude",
|
|
"passed": true,
|
|
"blockers": []
|
|
},
|
|
{
|
|
"feature": "10-15CoverSHCS",
|
|
"family": "extrude",
|
|
"passed": true,
|
|
"blockers": []
|
|
},
|
|
{
|
|
"feature": "10-15RearCoverDetail",
|
|
"family": "mirror",
|
|
"passed": false,
|
|
"blockers": [
|
|
"mirror plane is missing",
|
|
"mirror source features/faces are missing"
|
|
]
|
|
},
|
|
{
|
|
"feature": "20-40FrontCoverSwitchGroove",
|
|
"family": "extrude",
|
|
"passed": true,
|
|
"blockers": []
|
|
},
|
|
{
|
|
"feature": "20-40RearCoverSwitchGroove",
|
|
"family": "extrude",
|
|
"passed": true,
|
|
"blockers": []
|
|
},
|
|
{
|
|
"feature": "20-40CoverMounts",
|
|
"family": "extrude",
|
|
"passed": true,
|
|
"blockers": []
|
|
},
|
|
{
|
|
"feature": "20-40CoverSHCS",
|
|
"family": "extrude",
|
|
"passed": true,
|
|
"blockers": []
|
|
},
|
|
{
|
|
"feature": "20-40RearCoverDetail",
|
|
"family": "mirror",
|
|
"passed": false,
|
|
"blockers": [
|
|
"mirror plane is missing",
|
|
"mirror source features/faces are missing"
|
|
]
|
|
},
|
|
{
|
|
"feature": "20-MountDetail",
|
|
"family": "extrude",
|
|
"passed": true,
|
|
"blockers": []
|
|
},
|
|
{
|
|
"feature": "20-DetailMirror",
|
|
"family": "mirror",
|
|
"passed": false,
|
|
"blockers": [
|
|
"mirror plane is missing",
|
|
"mirror source features/faces are missing"
|
|
]
|
|
},
|
|
{
|
|
"feature": "AdjusterRod",
|
|
"family": "extrude",
|
|
"passed": true,
|
|
"blockers": []
|
|
},
|
|
{
|
|
"feature": "AdjusterNut",
|
|
"family": "extrude",
|
|
"passed": true,
|
|
"blockers": []
|
|
},
|
|
{
|
|
"feature": "CushionRod",
|
|
"family": "extrude",
|
|
"passed": true,
|
|
"blockers": []
|
|
},
|
|
{
|
|
"feature": "CushionKnob",
|
|
"family": "extrude",
|
|
"passed": true,
|
|
"blockers": []
|
|
}
|
|
],
|
|
"blockers": [
|
|
"30-40BottomThreadedHoles: incomplete before/after history state or stage truth",
|
|
"30-40BottomThreadedHoles: mirror plane is missing",
|
|
"30-40BottomThreadedHoles: mirror source features/faces are missing",
|
|
"RearCover: incomplete before/after history state or stage truth",
|
|
"RearCover: mirror plane is missing",
|
|
"RearCover: mirror source features/faces are missing",
|
|
"10-15RearCoverDetail: incomplete before/after history state or stage truth",
|
|
"10-15RearCoverDetail: mirror plane is missing",
|
|
"10-15RearCoverDetail: mirror source features/faces are missing",
|
|
"20-40RearCoverDetail: incomplete before/after history state or stage truth",
|
|
"20-40RearCoverDetail: mirror plane is missing",
|
|
"20-40RearCoverDetail: mirror source features/faces are missing",
|
|
"20-DetailMirror: incomplete before/after history state or stage truth",
|
|
"20-DetailMirror: mirror plane is missing",
|
|
"20-DetailMirror: mirror source features/faces are missing"
|
|
]
|
|
},
|
|
"step_inference": {
|
|
"available": true,
|
|
"face_count": 259,
|
|
"surface_counts": {
|
|
"cylinder": 72,
|
|
"plane": 187
|
|
},
|
|
"axis_count": 72,
|
|
"repeat_spacings_mm": [
|
|
{
|
|
"spacing_mm": 32.7812,
|
|
"pair_count": 8
|
|
},
|
|
{
|
|
"spacing_mm": 102.8633,
|
|
"pair_count": 8
|
|
},
|
|
{
|
|
"spacing_mm": 33.4195,
|
|
"pair_count": 8
|
|
},
|
|
{
|
|
"spacing_mm": 6.5,
|
|
"pair_count": 8
|
|
},
|
|
{
|
|
"spacing_mm": 97.5,
|
|
"pair_count": 6
|
|
},
|
|
{
|
|
"spacing_mm": 95.7804,
|
|
"pair_count": 4
|
|
},
|
|
{
|
|
"spacing_mm": 110.4015,
|
|
"pair_count": 4
|
|
},
|
|
{
|
|
"spacing_mm": 104.6096,
|
|
"pair_count": 4
|
|
},
|
|
{
|
|
"spacing_mm": 102.0745,
|
|
"pair_count": 4
|
|
},
|
|
{
|
|
"spacing_mm": 51.0,
|
|
"pair_count": 4
|
|
},
|
|
{
|
|
"spacing_mm": 109.0441,
|
|
"pair_count": 4
|
|
},
|
|
{
|
|
"spacing_mm": 70.3092,
|
|
"pair_count": 4
|
|
}
|
|
],
|
|
"metrics": {
|
|
"bounding_box_mm": [
|
|
-31.5,
|
|
-14.5,
|
|
-52.0,
|
|
31.5,
|
|
17.0,
|
|
63.0
|
|
],
|
|
"volume_mm3": 175622.388444418,
|
|
"surface_area_mm2": 32874.978058491,
|
|
"solid_count": 1,
|
|
"face_count": 259,
|
|
"edge_count": 658,
|
|
"vertex_count": 432
|
|
},
|
|
"error": null,
|
|
"truth_comparison": {
|
|
"expected_from_evidence": {
|
|
"bounding_box_mm": [
|
|
-31.5,
|
|
-14.5,
|
|
-52.0,
|
|
31.5,
|
|
17.0,
|
|
63.0
|
|
],
|
|
"volume_mm3": 175622.388444418,
|
|
"surface_area_mm2": 32874.978058491,
|
|
"solid_count": 1,
|
|
"face_count": 229,
|
|
"edge_count": 544,
|
|
"vertex_count": 324
|
|
},
|
|
"comparisons": {
|
|
"volume_mm3": {
|
|
"expected": 175622.388444418,
|
|
"actual": 175622.388444418,
|
|
"absolute_delta": 0.0,
|
|
"within_tolerance": true
|
|
},
|
|
"surface_area_mm2": {
|
|
"expected": 32874.978058491,
|
|
"actual": 32874.978058491,
|
|
"absolute_delta": 0.0,
|
|
"within_tolerance": true
|
|
},
|
|
"bounding_box_mm": {
|
|
"expected": [
|
|
-31.5,
|
|
-14.5,
|
|
-52.0,
|
|
31.5,
|
|
17.0,
|
|
63.0
|
|
],
|
|
"actual": [
|
|
-31.5,
|
|
-14.5,
|
|
-52.0,
|
|
31.5,
|
|
17.0,
|
|
63.0
|
|
],
|
|
"max_absolute_delta": 0.0,
|
|
"within_tolerance": true
|
|
},
|
|
"solid_count": {
|
|
"expected": 1,
|
|
"actual": 1,
|
|
"matches": true
|
|
},
|
|
"face_count": {
|
|
"expected": 229,
|
|
"actual": 259,
|
|
"matches": false
|
|
},
|
|
"edge_count": {
|
|
"expected": 544,
|
|
"actual": 658,
|
|
"matches": false
|
|
},
|
|
"vertex_count": {
|
|
"expected": 324,
|
|
"actual": 432,
|
|
"matches": false
|
|
}
|
|
},
|
|
"numeric_geometry_match": true,
|
|
"topology_counts_match": false
|
|
}
|
|
},
|
|
"features": [
|
|
{
|
|
"feature_id": "f_001",
|
|
"source_name": "Front",
|
|
"atomic_id": "reference_plane",
|
|
"execution_status": "deferred",
|
|
"unresolved": [],
|
|
"step_inferred_selector_count": 0
|
|
},
|
|
{
|
|
"feature_id": "f_002",
|
|
"source_name": "Top",
|
|
"atomic_id": "reference_plane",
|
|
"execution_status": "deferred",
|
|
"unresolved": [],
|
|
"step_inferred_selector_count": 0
|
|
},
|
|
{
|
|
"feature_id": "f_003",
|
|
"source_name": "Right",
|
|
"atomic_id": "reference_plane",
|
|
"execution_status": "deferred",
|
|
"unresolved": [],
|
|
"step_inferred_selector_count": 0
|
|
},
|
|
{
|
|
"feature_id": "f_004",
|
|
"source_name": "Base-Extrude",
|
|
"atomic_id": "extrude_add_blind",
|
|
"execution_status": "deferred",
|
|
"unresolved": [],
|
|
"step_inferred_selector_count": 0
|
|
},
|
|
{
|
|
"feature_id": "f_005",
|
|
"source_name": "BodySplitChamfer",
|
|
"atomic_id": "chamfer",
|
|
"execution_status": "deferred",
|
|
"unresolved": [],
|
|
"step_inferred_selector_count": 0
|
|
},
|
|
{
|
|
"feature_id": "f_006",
|
|
"source_name": "SwitchGrooves",
|
|
"atomic_id": "extrude_cut_blind",
|
|
"execution_status": "deferred",
|
|
"unresolved": [],
|
|
"step_inferred_selector_count": 0
|
|
},
|
|
{
|
|
"feature_id": "f_007",
|
|
"source_name": "20-40_Groove",
|
|
"atomic_id": "extrude_cut_blind",
|
|
"execution_status": "deferred",
|
|
"unresolved": [],
|
|
"step_inferred_selector_count": 0
|
|
},
|
|
{
|
|
"feature_id": "f_008",
|
|
"source_name": "BodyTopNose",
|
|
"atomic_id": "extrude_add_blind",
|
|
"execution_status": "supported",
|
|
"unresolved": [],
|
|
"step_inferred_selector_count": 0
|
|
},
|
|
{
|
|
"feature_id": "f_009",
|
|
"source_name": "Bore",
|
|
"atomic_id": "revolve_cut",
|
|
"execution_status": "deferred",
|
|
"unresolved": [],
|
|
"step_inferred_selector_count": 0
|
|
},
|
|
{
|
|
"feature_id": "f_010",
|
|
"source_name": "MountsThroughHole",
|
|
"atomic_id": "extrude_cut_blind",
|
|
"execution_status": "supported",
|
|
"unresolved": [],
|
|
"step_inferred_selector_count": 0
|
|
},
|
|
{
|
|
"feature_id": "f_011",
|
|
"source_name": "MountsCounterbore",
|
|
"atomic_id": "extrude_cut_blind",
|
|
"execution_status": "supported",
|
|
"unresolved": [],
|
|
"step_inferred_selector_count": 0
|
|
},
|
|
{
|
|
"feature_id": "f_012",
|
|
"source_name": "TopDowelHole",
|
|
"atomic_id": "extrude_cut_blind",
|
|
"execution_status": "deferred",
|
|
"unresolved": [],
|
|
"step_inferred_selector_count": 0
|
|
},
|
|
{
|
|
"feature_id": "f_013",
|
|
"source_name": "BottomDowelHole",
|
|
"atomic_id": "extrude_cut_blind",
|
|
"execution_status": "deferred",
|
|
"unresolved": [],
|
|
"step_inferred_selector_count": 0
|
|
},
|
|
{
|
|
"feature_id": "f_014",
|
|
"source_name": "30-40TopThreadedHoles",
|
|
"atomic_id": "extrude_cut_blind",
|
|
"execution_status": "supported",
|
|
"unresolved": [],
|
|
"step_inferred_selector_count": 0
|
|
},
|
|
{
|
|
"feature_id": "f_015",
|
|
"source_name": "30-40BottomThreadedHoles",
|
|
"atomic_id": "pattern_mirror",
|
|
"execution_status": "deferred",
|
|
"unresolved": [
|
|
"mirror pattern source features or plane were not captured",
|
|
"mirror plane is missing",
|
|
"mirror source features/faces are missing"
|
|
],
|
|
"step_inferred_selector_count": 0
|
|
},
|
|
{
|
|
"feature_id": "f_016",
|
|
"source_name": "FrontCover",
|
|
"atomic_id": "extrude_add_blind",
|
|
"execution_status": "deferred",
|
|
"unresolved": [],
|
|
"step_inferred_selector_count": 0
|
|
},
|
|
{
|
|
"feature_id": "f_017",
|
|
"source_name": "RearCover",
|
|
"atomic_id": "pattern_mirror",
|
|
"execution_status": "deferred",
|
|
"unresolved": [
|
|
"mirror pattern source features or plane were not captured",
|
|
"mirror plane is missing",
|
|
"mirror source features/faces are missing"
|
|
],
|
|
"step_inferred_selector_count": 0
|
|
},
|
|
{
|
|
"feature_id": "f_018",
|
|
"source_name": "Ports",
|
|
"atomic_id": "extrude_cut_blind",
|
|
"execution_status": "supported",
|
|
"unresolved": [],
|
|
"step_inferred_selector_count": 0
|
|
},
|
|
{
|
|
"feature_id": "f_019",
|
|
"source_name": "10-15CoverSwitchGroove",
|
|
"atomic_id": "extrude_cut_blind",
|
|
"execution_status": "deferred",
|
|
"unresolved": [],
|
|
"step_inferred_selector_count": 0
|
|
},
|
|
{
|
|
"feature_id": "f_020",
|
|
"source_name": "10-15CoverMounts",
|
|
"atomic_id": "extrude_cut_blind",
|
|
"execution_status": "deferred",
|
|
"unresolved": [],
|
|
"step_inferred_selector_count": 0
|
|
},
|
|
{
|
|
"feature_id": "f_021",
|
|
"source_name": "10-15CoverSHCS",
|
|
"atomic_id": "extrude_add_blind",
|
|
"execution_status": "deferred",
|
|
"unresolved": [],
|
|
"step_inferred_selector_count": 0
|
|
},
|
|
{
|
|
"feature_id": "f_022",
|
|
"source_name": "10-15RearCoverDetail",
|
|
"atomic_id": "pattern_mirror",
|
|
"execution_status": "deferred",
|
|
"unresolved": [
|
|
"mirror pattern source features or plane were not captured",
|
|
"mirror plane is missing",
|
|
"mirror source features/faces are missing"
|
|
],
|
|
"step_inferred_selector_count": 0
|
|
},
|
|
{
|
|
"feature_id": "f_023",
|
|
"source_name": "20-40FrontCoverSwitchGroove",
|
|
"atomic_id": "extrude_cut_blind",
|
|
"execution_status": "deferred",
|
|
"unresolved": [],
|
|
"step_inferred_selector_count": 0
|
|
},
|
|
{
|
|
"feature_id": "f_024",
|
|
"source_name": "20-40RearCoverSwitchGroove",
|
|
"atomic_id": "extrude_cut_blind",
|
|
"execution_status": "deferred",
|
|
"unresolved": [],
|
|
"step_inferred_selector_count": 0
|
|
},
|
|
{
|
|
"feature_id": "f_025",
|
|
"source_name": "20-40CoverMounts",
|
|
"atomic_id": "extrude_cut_blind",
|
|
"execution_status": "deferred",
|
|
"unresolved": [],
|
|
"step_inferred_selector_count": 0
|
|
},
|
|
{
|
|
"feature_id": "f_026",
|
|
"source_name": "20-40CoverSHCS",
|
|
"atomic_id": "extrude_add_blind",
|
|
"execution_status": "deferred",
|
|
"unresolved": [],
|
|
"step_inferred_selector_count": 0
|
|
},
|
|
{
|
|
"feature_id": "f_027",
|
|
"source_name": "20-40RearCoverDetail",
|
|
"atomic_id": "pattern_mirror",
|
|
"execution_status": "deferred",
|
|
"unresolved": [
|
|
"mirror pattern source features or plane were not captured",
|
|
"mirror plane is missing",
|
|
"mirror source features/faces are missing"
|
|
],
|
|
"step_inferred_selector_count": 0
|
|
},
|
|
{
|
|
"feature_id": "f_028",
|
|
"source_name": "20-MountDetail",
|
|
"atomic_id": "extrude_cut_blind",
|
|
"execution_status": "deferred",
|
|
"unresolved": [],
|
|
"step_inferred_selector_count": 0
|
|
},
|
|
{
|
|
"feature_id": "f_029",
|
|
"source_name": "20-DetailMirror",
|
|
"atomic_id": "pattern_mirror",
|
|
"execution_status": "deferred",
|
|
"unresolved": [
|
|
"mirror pattern source features or plane were not captured",
|
|
"mirror plane is missing",
|
|
"mirror source features/faces are missing"
|
|
],
|
|
"step_inferred_selector_count": 0
|
|
},
|
|
{
|
|
"feature_id": "f_030",
|
|
"source_name": "AdjusterRod",
|
|
"atomic_id": "extrude_add_blind",
|
|
"execution_status": "supported",
|
|
"unresolved": [],
|
|
"step_inferred_selector_count": 0
|
|
},
|
|
{
|
|
"feature_id": "f_031",
|
|
"source_name": "AdjusterNut",
|
|
"atomic_id": "extrude_add_blind",
|
|
"execution_status": "deferred",
|
|
"unresolved": [],
|
|
"step_inferred_selector_count": 0
|
|
},
|
|
{
|
|
"feature_id": "f_032",
|
|
"source_name": "CushionRod",
|
|
"atomic_id": "extrude_add_blind",
|
|
"execution_status": "supported",
|
|
"unresolved": [],
|
|
"step_inferred_selector_count": 0
|
|
},
|
|
{
|
|
"feature_id": "f_033",
|
|
"source_name": "CushionKnob",
|
|
"atomic_id": "extrude_add_blind",
|
|
"execution_status": "supported",
|
|
"unresolved": [],
|
|
"step_inferred_selector_count": 0
|
|
}
|
|
],
|
|
"semantic_validation": {
|
|
"schema_version": "1.1.0",
|
|
"feature_count": 33,
|
|
"sketch_count": 25,
|
|
"deferred_feature_ids": [
|
|
"f_001",
|
|
"f_002",
|
|
"f_004",
|
|
"f_003",
|
|
"f_005",
|
|
"f_012",
|
|
"f_006",
|
|
"f_007",
|
|
"f_009",
|
|
"f_015",
|
|
"f_016",
|
|
"f_013",
|
|
"f_017",
|
|
"f_019",
|
|
"f_023",
|
|
"f_025",
|
|
"f_020",
|
|
"f_024",
|
|
"f_026",
|
|
"f_028",
|
|
"f_031",
|
|
"f_021",
|
|
"f_027",
|
|
"f_029",
|
|
"f_022"
|
|
],
|
|
"unresolved": [
|
|
{
|
|
"feature_id": "f_015",
|
|
"reasons": [
|
|
"mirror pattern source features or plane were not captured",
|
|
"mirror plane is missing",
|
|
"mirror source features/faces are missing"
|
|
]
|
|
},
|
|
{
|
|
"feature_id": "f_017",
|
|
"reasons": [
|
|
"mirror pattern source features or plane were not captured",
|
|
"mirror plane is missing",
|
|
"mirror source features/faces are missing"
|
|
]
|
|
},
|
|
{
|
|
"feature_id": "f_027",
|
|
"reasons": [
|
|
"mirror pattern source features or plane were not captured",
|
|
"mirror plane is missing",
|
|
"mirror source features/faces are missing"
|
|
]
|
|
},
|
|
{
|
|
"feature_id": "f_029",
|
|
"reasons": [
|
|
"mirror pattern source features or plane were not captured",
|
|
"mirror plane is missing",
|
|
"mirror source features/faces are missing"
|
|
]
|
|
},
|
|
{
|
|
"feature_id": "f_022",
|
|
"reasons": [
|
|
"mirror pattern source features or plane were not captured",
|
|
"mirror plane is missing",
|
|
"mirror source features/faces are missing"
|
|
]
|
|
}
|
|
],
|
|
"future_rebuild_ready": false
|
|
}
|
|
}
|