feedback: VDE-139 - DrawingStandard enum lacks DIN/GB/BS/GOST support
This commit is contained in:
@@ -0,0 +1,42 @@
|
||||
# VDE-139: DrawingStandard enum supports only ISO/ANSI/JIS — lacks DIN/GB/BS/GOST
|
||||
|
||||
**Date**: 2026-07-31
|
||||
**Severity**: Medium
|
||||
**Status**: Open
|
||||
|
||||
## Summary
|
||||
|
||||
The `vde::brep::DrawingStandard` enum (in `vde/brep/auto_dimensioning.h`) supports only 3 standards:
|
||||
|
||||
```cpp
|
||||
enum class DrawingStandard {
|
||||
ISO, ///< ISO 129 / ISO 1101
|
||||
ANSI, ///< ANSI Y14.5 / ASME Y14.5
|
||||
JIS, ///< JIS B 0001 / JIS B 0021
|
||||
};
|
||||
```
|
||||
|
||||
Professional CAD software (SolidWorks, CATIA, NX, Creo) supports many more national/international standards.
|
||||
|
||||
## Request
|
||||
|
||||
Add support for at minimum:
|
||||
|
||||
| Standard | Country | Description |
|
||||
|----------|---------|-------------|
|
||||
| **DIN** | Germany | DIN 406 / DIN ISO 2768 |
|
||||
| **GB** | China | GB/T 4458 / GB/T 1182 |
|
||||
| **BS** | UK | BS 8888 / BS ISO 2768 |
|
||||
| **GOST** | Russia | GOST 2.307 / GOST 2.308 |
|
||||
|
||||
## Impact
|
||||
|
||||
- ViewDesign/FeatureBuilder's `standardDefaultsVde()` currently maps only ISO/ANSI/JIS
|
||||
- Users in Germany, China, UK, Russia cannot get standard-compliant drawing configurations
|
||||
- The `drawing_standards.h` already has class infrastructure (IsoStandard/AnsiStandard/JisStandard) — new classes would follow the same `DimensionStyle create_style()` + `description()` pattern
|
||||
|
||||
## Suggested Implementation
|
||||
|
||||
1. Add enum values: `DIN`, `GB`, `BS`, `GOST`
|
||||
2. Add corresponding standard classes: `DinStandard`, `GbStandard`, `BsStandard`, `GostStandard`
|
||||
3. Update `standard_defaults(DrawingStandard)` switch to handle new values
|
||||
Reference in New Issue
Block a user