schematic-drawing / backend /category_config.py
samu's picture
1st
7c7ef49
from typing import Dict, TypedDict
class CategoryConfig(TypedDict):
name: str
description: str
style_guide: str
conventions: list[str]
common_elements: list[str]
CATEGORY_CONFIGS: Dict[str, CategoryConfig] = {
"mechanical": {
"name": "Mechanical Engineering",
"description": "Focuses on machine components, mechanisms, and mechanical systems design",
"style_guide": "Use isometric views for 3D components. Include detailed cross-sections for complex parts.",
"conventions": [
"Center lines for symmetric parts",
"Hidden lines for internal features",
"Section views for internal details",
"Dimensioning with tolerances"
],
"common_elements": [
"Gears and transmission systems",
"Bearings and shafts",
"Fasteners and joints",
"Hydraulic/pneumatic components"
]
},
"structural": {
"name": "Structural Engineering",
"description": "Focuses on building structures, load-bearing elements, and structural analysis",
"style_guide": "Use clear section markers. Include detailed connection points.",
"conventions": [
"Grid lines and axes",
"Member sizing annotations",
"Connection details",
"Load indicators"
],
"common_elements": [
"Beams and columns",
"Foundation details",
"Structural connections",
"Reinforcement details"
]
},
"civil": {
"name": "Civil Engineering",
"description": "Focuses on infrastructure, site plans, and civil structures",
"style_guide": "Use plan views with clear elevation markers. Include site context.",
"conventions": [
"Site orientation",
"Elevation markers",
"Drainage indicators",
"Material specifications"
],
"common_elements": [
"Road sections",
"Drainage systems",
"Site grading",
"Utilities layout"
]
},
"architectural": {
"name": "Architectural Engineering",
"description": "Focuses on building designs, spatial layouts, and architectural elements",
"style_guide": "Use multiple views (plan, elevation, section). Include material patterns.",
"conventions": [
"Room labels",
"Door/window schedules",
"Material hatching",
"Dimensional guidelines"
],
"common_elements": [
"Floor plans",
"Elevations",
"Building sections",
"Detail drawings"
]
},
"electrical": {
"name": "Electrical Engineering",
"description": "Focuses on electrical systems, circuits, and power distribution",
"style_guide": "Use standard electrical symbols. Include system block diagrams.",
"conventions": [
"Circuit symbols",
"Wire numbering",
"Component labels",
"Power ratings"
],
"common_elements": [
"Circuit diagrams",
"Wiring layouts",
"Panel schedules",
"Single-line diagrams"
]
},
"aerospace": {
"name": "Aerospace Engineering",
"description": "Focuses on aircraft, spacecraft, and aerospace systems",
"style_guide": "Use multiple projection views. Include aerodynamic profiles.",
"conventions": [
"Station numbering",
"Flow indicators",
"System interfaces",
"Zoning diagrams"
],
"common_elements": [
"Airframe structures",
"Propulsion systems",
"Control surfaces",
"System integration"
]
}
}