pub struct AnnotationMbdControlFrame {
///Geometric symbol, the type of geometric control specified
pub symbol: MbdSymbol,
/// Diameter symbol (if required) whether the geometric control requires a cylindrical or diameter tolerance
pub diameter_symbol: Option<MbdSymbol>,
/// Tolerance value - the total tolerance of the geometric control. The unit is based on the drawing standard.
pub tolerance: f64,
/// Feature of size or tolerance modifiers
pub modifier: Option<MbdSymbol>,
/// Primary datum
pub primary_datum: Option<char>,
/// Secondary datum
pub secondary_datum: Option<char>,
/// Tertiary datum
pub tertiary_datum: Option<char>,
}
The current AnnotationMbdControlFrame shape is both more restrictive and more permissive than the gd&t standards.
Current shape:
AAorAB.symbol,diameter_symbol, andmodifierare typed using theMbdSymbolenum but the standards are more restrictive in that:MbdSymbolMbdSymbolWhy it matters:
Spontaneous solution:
MbdSymbolenum into two sets, geometric and modifiers, to restrict symbol use to the domain they make sense in.