143 lines
6.6 KiB
JSON
143 lines
6.6 KiB
JSON
{
|
|
"schema_version": "2.0",
|
|
"routing_policy": {
|
|
"default_backend": null,
|
|
"selection_basis": [
|
|
"native source continuity",
|
|
"standard factory coverage",
|
|
"semantic and replay requirements",
|
|
"geometry vocabulary coverage",
|
|
"assembly requirements",
|
|
"validation requirements"
|
|
],
|
|
"uploaded_step_execution_engine": "surfaceir",
|
|
"uploaded_step_validation_engines": [
|
|
"surfaceir_geometry_acceptance",
|
|
"simplecadapi_brep_compare"
|
|
]
|
|
},
|
|
"routing_catalog": {
|
|
"selection_rule": "For a new model, choose SimpleCADAPI only when the requested primary object matches one catalog entry. Feature-context matches are excluded. Every other request chooses build123d.",
|
|
"source": "SimpleCADAPI/src/simplecadapi/std/{gear,bearing,chain,fastener}.py",
|
|
"simplecadapi_standard_part_types": [
|
|
{
|
|
"type": "spur_gear",
|
|
"factory": "simplecadapi.std.gear.make_spur_gear_rsolid",
|
|
"aliases": ["齿轮", "直齿轮", "正齿轮", "spur gear"],
|
|
"feature_context_exclusions": ["齿轮孔", "齿轮安装", "齿轮座", "齿轮箱", "gear hole", "gear mount", "gear housing", "gearbox"]
|
|
},
|
|
{
|
|
"type": "straight_bevel_gear",
|
|
"factory": "simplecadapi.std.gear.make_straight_bevel_gear_rsolid",
|
|
"aliases": ["直齿锥齿轮", "锥齿轮", "straight bevel gear", "bevel gear"],
|
|
"feature_context_exclusions": ["锥齿轮箱", "bevel gearbox", "锥齿轮座"]
|
|
},
|
|
{
|
|
"type": "helical_gear",
|
|
"factory": "simplecadapi.std.gear.make_helical_gear_rsolid",
|
|
"aliases": ["斜齿轮", "helical gear"],
|
|
"feature_context_exclusions": ["斜齿轮箱", "helical gearbox", "斜齿轮座"]
|
|
},
|
|
{
|
|
"type": "herringbone_gear",
|
|
"factory": "simplecadapi.std.gear.make_herringbone_gear_rsolid",
|
|
"aliases": ["人字齿轮", "herringbone gear"],
|
|
"feature_context_exclusions": ["人字齿轮箱", "herringbone gearbox", "人字齿轮座"]
|
|
},
|
|
{
|
|
"type": "ring_gear",
|
|
"factory": "simplecadapi.std.gear.make_spur_ring_gear_rsolid",
|
|
"aliases": ["内齿圈", "齿圈", "ring gear"],
|
|
"feature_context_exclusions": ["齿圈座", "ring gear housing", "ring gear mount"]
|
|
},
|
|
{
|
|
"type": "gear_rack",
|
|
"factory": "simplecadapi.std.gear.make_spur_rack_rsolid",
|
|
"aliases": ["齿条", "直齿条", "斜齿条", "人字齿条", "gear rack", "rack gear", "spur rack", "helical rack", "herringbone rack"],
|
|
"feature_context_exclusions": ["齿条安装", "齿条座", "rack mount", "rack housing"]
|
|
},
|
|
{
|
|
"type": "cycloidal_disc",
|
|
"factory": "simplecadapi.std.gear.make_cycloidal_disc_rsolid",
|
|
"aliases": ["摆线盘", "摆线轮", "cycloidal disc"],
|
|
"feature_context_exclusions": ["摆线减速器", "cycloidal reducer", "摆线针轮减速器"]
|
|
},
|
|
{
|
|
"type": "ball_bearing",
|
|
"factory": "simplecadapi.std.bearing.make_ball_bearing_rassembly",
|
|
"aliases": ["轴承", "滚动轴承", "球轴承", "深沟球轴承", "ball bearing"],
|
|
"feature_context_exclusions": ["轴承座", "轴承壳", "轴承孔", "轴承安装", "bearing housing", "bearing seat", "bearing hole", "bearing mount"]
|
|
},
|
|
{
|
|
"type": "roller_chain_sprocket",
|
|
"factory": "simplecadapi.std.chain.make_roller_chain_sprocket_rsolid",
|
|
"aliases": ["滚子链轮", "链轮", "roller chain sprocket", "sprocket"],
|
|
"feature_context_exclusions": ["链轮座", "链轮箱", "链轮安装", "sprocket housing", "sprocket mount"]
|
|
},
|
|
{
|
|
"type": "bolt",
|
|
"factory": "simplecadapi.std.fastener.make_bolt_rsolid",
|
|
"aliases": ["螺栓", "六角螺栓", "内六角螺栓", "螺栓本体", "bolt", "hex bolt", "socket head bolt"],
|
|
"feature_context_exclusions": ["螺栓孔", "螺栓圆", "螺栓阵列", "bolt hole", "bolt circle", "bolt pattern"]
|
|
},
|
|
{
|
|
"type": "nut",
|
|
"factory": "simplecadapi.std.fastener.make_nut_rsolid",
|
|
"aliases": ["螺母", "六角螺母", "螺母本体", "nut", "hex nut"],
|
|
"feature_context_exclusions": ["螺母槽", "螺母孔", "螺母避让", "nut pocket", "nut hole", "nut clearance"]
|
|
}
|
|
]
|
|
},
|
|
"backends": {
|
|
"build123d": {
|
|
"project": "text-to-cad",
|
|
"runner_skill": "cad",
|
|
"source_formats": ["py"],
|
|
"primary_formats": ["step", "stp"],
|
|
"strengths": [
|
|
"general mechanical parts",
|
|
"machined features",
|
|
"source-level assemblies",
|
|
"freeform profiles, lofts, sweeps, and mixed surface workflows",
|
|
"geometry measurement and validation"
|
|
],
|
|
"preferred_when": [
|
|
"the part is a custom bracket, housing, shaft, flange, fixture, or enclosure",
|
|
"source-level assembly mates or existing build123d Python must be preserved",
|
|
"the geometry needs custom profiles or surface-heavy construction not covered by a SimpleCADAPI factory"
|
|
],
|
|
"weak_when": [
|
|
"a deterministic SimpleCADAPI standard factory covers the requested part",
|
|
"operation-graph replay, typed semantic tags, units, or tolerance chains are primary requirements"
|
|
],
|
|
"source_of_truth": "build123d Python generator"
|
|
},
|
|
"simplecadapi": {
|
|
"project": "SimpleCADAPI",
|
|
"runner_skill": "simplecadapi",
|
|
"minimum_version": "2.0.2",
|
|
"source_formats": ["py", "json"],
|
|
"primary_formats": ["step", "stp"],
|
|
"strengths": [
|
|
"gears, ring gears, racks, bevel gears, and cycloidal discs",
|
|
"bearings, bolts, nuts, roller-chain sprockets, reducers, and joint actuators",
|
|
"replayable ModelResult operation graphs and scene packages",
|
|
"typed semantic tags, topology lineage, and source mapping",
|
|
"physical units and tolerance-chain validation",
|
|
"STEP B-Rep inspection, strict comparison, and slice diagnostics",
|
|
"FreeCAD, Fusion 360, and SolidWorks translation"
|
|
],
|
|
"preferred_when": [
|
|
"a standard mechanical factory directly covers the requested family",
|
|
"replayable model JSON, semantic edit anchors, units, tolerances, or CAD translation are required",
|
|
"a reusable mechanical product family should become a deterministic library function"
|
|
],
|
|
"weak_when": [
|
|
"the request depends on complex freeform surfaces outside the supported operation vocabulary",
|
|
"an existing build123d generator or source-level build123d assembly must be preserved"
|
|
],
|
|
"source_of_truth": "SimpleCADAPI Python generator and model JSON"
|
|
}
|
|
}
|
|
}
|