From WikiSTEP
ISO-10303-21;
HEADER;
FILE_DESCRIPTION(('Callouts example',''),'2;1');
FILE_NAME('callouts214.stp',
'2006-10-18 T012351',
(''),
('','',''),
'',
'',
'');
FILE_SCHEMA(('AUTOMOTIVE_DESIGN {1 2 10303 214 0 1 1 1}'));
ENDSEC;
DATA;
/***********************************************************/
/* Here is leader directed callout */
/* taken from rec_prec of 3D associative text */
/* without some TOP stuff and with some fixes */
/***********************************************************/
/* General stuff */
#3=(NAMED_UNIT(*)SI_UNIT($,.STERADIAN.)SOLID_ANGLE_UNIT());
#4=(LENGTH_UNIT()NAMED_UNIT(*)SI_UNIT(.MILLI.,.METRE.));
#5=(NAMED_UNIT(*)PLANE_ANGLE_UNIT()SI_UNIT($,.RADIAN.));
#6=CARTESIAN_POINT('',(0.0,0.0,0.0));
#7=DIRECTION('',(1.0,0.0,0.0));
#8=DIRECTION('',(0.0,0.0,1.0));
#9=AXIS2_PLACEMENT_3D('',#6,#8,#7);
/* Required by Automotive_design */
#89=APPLICATION_CONTEXT('3D shape representation with annotation');
#90=APPLICATION_PROTOCOL_DEFINITION('draft international standard','automotive_design',1999,#89);
#91=PRODUCT_CONTEXT(' ',#89,'mechanical');
#92=PRODUCT_DEFINITION_CONTEXT(' ',#89,'design');
#93=PRODUCT('product_0','','',(#91));
#94=PRODUCT_RELATED_PRODUCT_CATEGORY('part','',(#93));
#95=PRODUCT_DEFINITION_FORMATION('1','',#93);
#96=PRODUCT_DEFINITION('','',#95,#92);
#97=PRODUCT_DEFINITION_SHAPE('','',#96);
#98=APPLIED_PERSON_AND_ORGANIZATION_ASSIGNMENT(#99,#102,(#93));
#99=PERSON_AND_ORGANIZATION(#100,#101);
#100=PERSON('123','Doe',$,$,$,$);
#101=ORGANIZATION($,'ABCD',$);
#102=PERSON_AND_ORGANIZATION_ROLE('id owner');
/* This is not finished and added here to pass mainly rep_item WR1 */
/*
#150=(GEOMETRIC_REPRESENTATION_CONTEXT(3)
GLOBAL_UNIT_ASSIGNED_CONTEXT((#4,#5,#3))
REPRESENTATION_CONTEXT('3D Annotation Context','3D'));*/
#151=DRAUGHTING_MODEL('Collect items for presentation',
(#200, #1000, #5000, #3000, #4000),#10167); /* SV change - from #150) */
/* --------- CALLOUT -------- */
/* Instance #200 defines the leader directed callout that combines */
/* the leader_curve/#205, */
/* the annotation_text_occurrence/#173, and */
/* the leader_terminator/#400. */
#200=LEADER_DIRECTED_CALLOUT('callout',(#205,#173,#400));
/* -------- TEXT ---------------*/
/* Text definition without style */
#160=DRAUGHTING_PRE_DEFINED_TEXT_FONT('ISO 3098');
#161=DIRECTION('',(0.0,-1.0,0.0));
#162=DIRECTION('',(1.0,0.0,0.0));
#163=CARTESIAN_POINT('',(30.48304684,74.72529668,-0.02658932493));
#164=AXIS2_PLACEMENT_3D('',#163,#161,#162);
#165=TEXT_LITERAL_WITH_EXTENT('','Look at this edge!',#164,'baseline right',.RIGHT.,#160,#600);
/* Instance #6000 defines the planar_extent used to define the */
/* occupying space for the text string defined in #165. */
#600=PLANAR_EXTENT('extent of text string',60,10);
/* Text style */
#169=DRAUGHTING_PRE_DEFINED_COLOUR('black');
#170=TEXT_STYLE_FOR_DEFINED_FONT(#169);
#171=TEXT_STYLE_WITH_BOX_CHARACTERISTICS('a text style',#170,
(BOX_HEIGHT(1.),
BOX_WIDTH(1.),
BOX_SLANT_ANGLE(0.),
BOX_ROTATE_ANGLE(0.)));
#172=PRESENTATION_STYLE_ASSIGNMENT((#171));
#173=(ANNOTATION_OCCURRENCE()
ANNOTATION_TEXT_OCCURRENCE()
DRAUGHTING_ANNOTATION_OCCURRENCE()
GEOMETRIC_REPRESENTATION_ITEM()
REPRESENTATION_ITEM('')
STYLED_ITEM((#172),#165));
/* --------- LEADER_CURVE ---------- */
/* Instances #205, #250-#254, #270, #300-#304 define the */
/* leader_curve depicted in the figure above. */
#205=(ANNOTATION_CURVE_OCCURRENCE()
ANNOTATION_OCCURRENCE()
DRAUGHTING_ANNOTATION_OCCURRENCE()
GEOMETRIC_REPRESENTATION_ITEM()
LEADER_CURVE()
REPRESENTATION_ITEM('')
STYLED_ITEM((#300),#250));
/* ------ GL - changed */
/* Curve of "leader_curve" */
#250=POLYLINE('leader curve',(#251,#252,#253));
/* Coordinates are very rough and likely not fully correct */
#251=CARTESIAN_POINT('Start',(25.0, 50.0, 0.0));
#252=CARTESIAN_POINT('Middle',(50.0, 75.0, 0.0));
#253=CARTESIAN_POINT('End',(75.0, 75.0, 0.0));
/* ------ ENDOF GL - changed */
/* Line style */
#300=PRESENTATION_STYLE_ASSIGNMENT((#301));
#301=CURVE_STYLE('',#302,#304,#303);
#302=DRAUGHTING_PRE_DEFINED_CURVE_FONT('continuous');
#303=DRAUGHTING_PRE_DEFINED_COLOUR('black');
#304=LENGTH_MEASURE_WITH_UNIT(POSITIVE_LENGTH_MEASURE(0.1),#4);
/* -------- TERMINATOR_SYMBOL -------- */
/* Instances #400, #410-413, #500, #510-#516 define the terminator for */
/* the leader_curve/#205. */
/* Style of symbol */
#400=(ANNOTATION_OCCURRENCE()
ANNOTATION_SYMBOL_OCCURRENCE()
DRAUGHTING_ANNOTATION_OCCURRENCE()
GEOMETRIC_REPRESENTATION_ITEM()
LEADER_TERMINATOR()
REPRESENTATION_ITEM('')
STYLED_ITEM((#410),#500)
TERMINATOR_SYMBOL(#205));
#410=PRESENTATION_STYLE_ASSIGNMENT((#411));
#411=SYMBOL_STYLE('black colour',#412); /* GL - resolved the conflict in names with #413 */
#412=SYMBOL_COLOUR(#413);
#413=DRAUGHTING_PRE_DEFINED_COLOUR('black');
/* Symbol and its placement */
#500=DEFINED_SYMBOL('',#510,#514);
#510=PRE_DEFINED_TERMINATOR_SYMBOL('filled arrow');
#511=AXIS2_PLACEMENT_3D('',#512,#513,#516);
#512=CARTESIAN_POINT('',(0.0,50.0,0.0));
#513=DIRECTION('',(1.0,0.0,0.0));
#514=SYMBOL_TARGET('',#511,7.5,2.5);
#516=DIRECTION('',(0.0,1.0,0.0));
/***************************************************/
/* DATUM_FEATURE_CALLOUT */
/***************************************************/
/* Complex is a must according description of draughting_elements */
#1000=(DATUM_FEATURE_CALLOUT()DRAUGHTING_CALLOUT((#1010, #1100, #1210, #1301))DRAUGHTING_ELEMENTS()
GEOMETRIC_REPRESENTATION_ITEM()REPRESENTATION_ITEM('callout'));
/* ------------- CURVE CONNECTING SYMBOL WITH DATUM BOX -------------- */
/* Annotation_curve - I think it is not leader_curve (as otherwise we would also need to have leader_directed_callout) */
#1010=(ANNOTATION_CURVE_OCCURRENCE()
ANNOTATION_OCCURRENCE()
DRAUGHTING_ANNOTATION_OCCURRENCE()
GEOMETRIC_REPRESENTATION_ITEM()
REPRESENTATION_ITEM('')
STYLED_ITEM((#1017),#1011));
/* Coordinates are very rough and likely not fully correct */
#1011=TRIMMED_CURVE('',#1012,
(PARAMETER_VALUE(0.0),#1016),(PARAMETER_VALUE(10.0),#1013),
.T.,.PARAMETER.);
#1012=LINE('',#1013,#1014);
#1013=CARTESIAN_POINT('end',(0,10,0));
#1014=VECTOR('',#1015,1.0);
#1015=DIRECTION('',(0,1,0));
#1016=CARTESIAN_POINT('start',(0,0,0));
/* Line style */
#1017=PRESENTATION_STYLE_ASSIGNMENT((#1018));
#1018=CURVE_STYLE('',#1019,#1021,#1020);
#1019=DRAUGHTING_PRE_DEFINED_CURVE_FONT('continuous');
#1020=DRAUGHTING_PRE_DEFINED_COLOUR('black');
#1021=LENGTH_MEASURE_WITH_UNIT(POSITIVE_LENGTH_MEASURE(0.1),#4);
/* -------- TRIANGLE SYMBOL -------- */
/* Style of symbol */
#1100=(ANNOTATION_OCCURRENCE()
ANNOTATION_SYMBOL_OCCURRENCE()
DRAUGHTING_ANNOTATION_OCCURRENCE()
GEOMETRIC_REPRESENTATION_ITEM()
REPRESENTATION_ITEM('')
STYLED_ITEM((#1101),#1105)
TERMINATOR_SYMBOL(#1010));
#1101=PRESENTATION_STYLE_ASSIGNMENT((#1102));
#1102=SYMBOL_STYLE('black colour',#1103);
#1103=SYMBOL_COLOUR(#1104);
#1104=DRAUGHTING_PRE_DEFINED_COLOUR('black');
/* Symbol and its placement */
#1105=DEFINED_SYMBOL('',#1106,#1107);
#1106=PRE_DEFINED_TERMINATOR_SYMBOL('filled triangle'); /* New value, which should extend the list of currently allowed values */
#1107=SYMBOL_TARGET('',#1109,7.5,2.5);
#1109=AXIS2_PLACEMENT_3D('',#1110,#1111,#1112);
#1110=CARTESIAN_POINT('',(0.0,50.0,0.0));
#1111=DIRECTION('',(1.0,0.0,0.0));
#1112=DIRECTION('',(0.0,1.0,0.0));
/* ------------- DATUM BOX ??????????????? -------------- */
#1210=(ANNOTATION_CURVE_OCCURRENCE()
ANNOTATION_OCCURRENCE()
DRAUGHTING_ANNOTATION_OCCURRENCE()
GEOMETRIC_REPRESENTATION_ITEM()
REPRESENTATION_ITEM('')
STYLED_ITEM((#1216),#1211));
/* Coordinates are very rough and likely not fully correct */
#1211=POLYLINE('datum box',(#1212,#1213,#1214,#1215,#1212));
/* Coordinates are very rough and likely not fully correct */
#1212=CARTESIAN_POINT('Left Top corner',(0.0, 10.0, 0.0));
#1213=CARTESIAN_POINT('Left Bottom corner',(0.0, 0.0, 0.0));
#1214=CARTESIAN_POINT('Right Bottom corner',(10.0, 0.0, 0.0));
#1215=CARTESIAN_POINT('Right Top corner',(10.0, 10.0, 0.0));
/* Line style */
#1216=PRESENTATION_STYLE_ASSIGNMENT((#1217));
#1217=CURVE_STYLE('',#1218,#1220,#1219);
#1218=DRAUGHTING_PRE_DEFINED_CURVE_FONT('continuous');
#1219=DRAUGHTING_PRE_DEFINED_COLOUR('black');
#1220=LENGTH_MEASURE_WITH_UNIT(POSITIVE_LENGTH_MEASURE(0.1),#4);
/* -------- TEXT ---------------*/
/* Just one letter - name of Datum */
#1301=(ANNOTATION_OCCURRENCE()
ANNOTATION_TEXT_OCCURRENCE()
DRAUGHTING_ANNOTATION_OCCURRENCE()
GEOMETRIC_REPRESENTATION_ITEM()
REPRESENTATION_ITEM('')
STYLED_ITEM((#1302),#1310));
#1302=PRESENTATION_STYLE_ASSIGNMENT((#1303));
#1303=TEXT_STYLE_WITH_BOX_CHARACTERISTICS('a text style',#1304,
(BOX_HEIGHT(1.),BOX_WIDTH(1.),BOX_SLANT_ANGLE(0.),BOX_ROTATE_ANGLE(0.)));
#1304=TEXT_STYLE_FOR_DEFINED_FONT(#1305);
#1305=DRAUGHTING_PRE_DEFINED_COLOUR('black');
#1310=TEXT_LITERAL_WITH_EXTENT('','F',#1313,'baseline right',.RIGHT.,#1312,#1311);
/* Instance #6000 defines the planar_extent used to define the */
/* occupying space for the text string defined in #165. */
#1311=PLANAR_EXTENT('extent of text string',10,10);
#1312=DRAUGHTING_PRE_DEFINED_TEXT_FONT('ISO 3098');
#1313=AXIS2_PLACEMENT_3D('',#1316,#1314,#1315);
#1314=DIRECTION('',(0.0,-1.0,0.0));
#1315=DIRECTION('',(1.0,0.0,0.0));
#1316=CARTESIAN_POINT('',(0.0,0.0,0.0));
/***************************************************/
/* GEOMETRICAL_TOLERANCE_CALLOUT - 2 */
/* Modelled without using TABLE stuff */
/***************************************************/
#5000=(DRAUGHTING_CALLOUT((#5100, #5200, #5300, #5400, #5500, #5600, #5700, #5800))DRAUGHTING_ELEMENTS()GEOMETRICAL_TOLERANCE_CALLOUT()
GEOMETRIC_REPRESENTATION_ITEM()REPRESENTATION_ITEM('callout'));
/* 1) Tolerance - 'position' symbol */
#5100=(ANNOTATION_OCCURRENCE()
ANNOTATION_SYMBOL_OCCURRENCE()
DRAUGHTING_ANNOTATION_OCCURRENCE()
GEOMETRIC_REPRESENTATION_ITEM()
REPRESENTATION_ITEM('')
STYLED_ITEM((#5101),#5105));
#5101=PRESENTATION_STYLE_ASSIGNMENT((#5102));
#5102=SYMBOL_STYLE('black colour',#5103);
#5103=SYMBOL_COLOUR(#5104);
#5104=DRAUGHTING_PRE_DEFINED_COLOUR('black');
/* Placement and symbol itself */
#5105=DEFINED_SYMBOL('',#5106,#5107);
#5106=PRE_DEFINED_GEOMETRICAL_TOLERANCE_SYMBOL('position');
#5107=SYMBOL_TARGET('',#5108,3.75,3.75);
#5108=AXIS2_PLACEMENT_3D('',#5109,#5110,#5111);
#5109=CARTESIAN_POINT('',(0.0,0.0,0.0));
#5110=DIRECTION('',(1.0,0.0,0.0));
#5111=DIRECTION('',(0.0,0.0,1.0));
/* 2) Tolerance - 'diameter' symbol */
#5200=(ANNOTATION_OCCURRENCE()
ANNOTATION_SYMBOL_OCCURRENCE()
DRAUGHTING_ANNOTATION_OCCURRENCE()
GEOMETRIC_REPRESENTATION_ITEM()
REPRESENTATION_ITEM('')
STYLED_ITEM((#5101),#5205));
/* Placement and symbol itself */
#5205=DEFINED_SYMBOL('',#5206,#5207);
#5206=PRE_DEFINED_GEOMETRICAL_TOLERANCE_SYMBOL('diameter');
#5207=SYMBOL_TARGET('',#5208,3.75,3.75);
#5208=AXIS2_PLACEMENT_3D('',#5209,#5210,#5211);
#5209=CARTESIAN_POINT('',(10.0,0.0,0.0));
#5210=DIRECTION('',(1.0,0.0,0.0));
#5211=DIRECTION('',(0.0,0.0,1.0));
/* 3) 0.2 as text in third place */
#5300=(ANNOTATION_OCCURRENCE()
ANNOTATION_TEXT_OCCURRENCE()
DRAUGHTING_ANNOTATION_OCCURRENCE()
GEOMETRIC_REPRESENTATION_ITEM()
REPRESENTATION_ITEM('')
STYLED_ITEM((#5301),#5305));
/* Text style */
#5301=PRESENTATION_STYLE_ASSIGNMENT((#5302));
#5302=TEXT_STYLE_WITH_BOX_CHARACTERISTICS('a text style',#5303,
(BOX_HEIGHT(1.),BOX_WIDTH(1.),BOX_SLANT_ANGLE(0.),BOX_ROTATE_ANGLE(0.)));
#5303=TEXT_STYLE_FOR_DEFINED_FONT(#5304);
#5304=DRAUGHTING_PRE_DEFINED_COLOUR('black');
/* Definition of text */
#5305=TEXT_LITERAL_WITH_EXTENT('','0.2',#5308,'baseline right',.RIGHT.,#5306,#5307);
#5306=DRAUGHTING_PRE_DEFINED_TEXT_FONT('ISO 3098');
#5307=PLANAR_EXTENT('extent of text string',5,5);
#5308=AXIS2_PLACEMENT_3D('',#5311,#5309,#5310);
#5309=DIRECTION('',(1.0,0.0,0.0));
#5310=DIRECTION('',(0.0,0.0,1.0));
/* Position of '0.2' in callout */
#5311=CARTESIAN_POINT('',(20.0,0.0,0.0));
/* 4) Tolerance - 'maximum material condition' symbol */
#5400=(ANNOTATION_OCCURRENCE()
ANNOTATION_SYMBOL_OCCURRENCE()
DRAUGHTING_ANNOTATION_OCCURRENCE()
GEOMETRIC_REPRESENTATION_ITEM()
REPRESENTATION_ITEM('')
STYLED_ITEM((#5101),#5405));
/* Placement and symbol itself */
#5405=DEFINED_SYMBOL('',#5406,#5407);
#5406=PRE_DEFINED_GEOMETRICAL_TOLERANCE_SYMBOL('maximum material condition');
#5407=SYMBOL_TARGET('',#5408,3.75,3.75);
#5408=AXIS2_PLACEMENT_3D('',#5409,#5410,#5411);
#5409=CARTESIAN_POINT('',(30.0,0.0,0.0));
#5410=DIRECTION('',(1.0,0.0,0.0));
#5411=DIRECTION('',(0.0,0.0,1.0));
/* 5) 'D' as text in fifth place */
#5500=(ANNOTATION_OCCURRENCE()
ANNOTATION_TEXT_OCCURRENCE()
DRAUGHTING_ANNOTATION_OCCURRENCE()
GEOMETRIC_REPRESENTATION_ITEM()
REPRESENTATION_ITEM('')
STYLED_ITEM((#5301),#5505));
/* Definition of text */
#5505=TEXT_LITERAL_WITH_EXTENT('','D',#5508,'baseline right',.RIGHT.,#5306,#5507);
#5507=PLANAR_EXTENT('extent of text string',5,5);
#5508=AXIS2_PLACEMENT_3D('',#5511,#5509,#5510);
#5509=DIRECTION('',(1.0,0.0,0.0));
#5510=DIRECTION('',(0.0,0.0,1.0));
/* Position of 'D' in callout */
#5511=CARTESIAN_POINT('',(40.0,0.0,0.0));
/* 6) 'E' as text in sixth place */
#5600=(ANNOTATION_OCCURRENCE()
ANNOTATION_TEXT_OCCURRENCE()
DRAUGHTING_ANNOTATION_OCCURRENCE()
GEOMETRIC_REPRESENTATION_ITEM()
REPRESENTATION_ITEM('')
STYLED_ITEM((#5301),#5605));
/* Definition of text */
#5605=TEXT_LITERAL_WITH_EXTENT('','E',#5608,'baseline right',.RIGHT.,#5306,#5607);
#5607=PLANAR_EXTENT('extent of text string',5,5);
#5608=AXIS2_PLACEMENT_3D('',#5611,#5609,#5610);
#5609=DIRECTION('',(1.0,0.0,0.0));
#5610=DIRECTION('',(0.0,0.0,1.0));
/* Position of 'E' in callout */
#5611=CARTESIAN_POINT('',(50.0,0.0,0.0));
/* 7) 'F' as text in seventh place */
#5700=(ANNOTATION_OCCURRENCE()
ANNOTATION_TEXT_OCCURRENCE()
DRAUGHTING_ANNOTATION_OCCURRENCE()
GEOMETRIC_REPRESENTATION_ITEM()
REPRESENTATION_ITEM('')
STYLED_ITEM((#5301),#5705));
/* Definition of text */
#5705=TEXT_LITERAL_WITH_EXTENT('','E',#5708,'baseline right',.RIGHT.,#5306,#5707);
#5707=PLANAR_EXTENT('extent of text string',5,5);
#5708=AXIS2_PLACEMENT_3D('',#5711,#5709,#5710);
#5709=DIRECTION('',(1.0,0.0,0.0));
#5710=DIRECTION('',(0.0,0.0,1.0));
/* Position of 'E' in callout */
#5711=CARTESIAN_POINT('',(60.0,0.0,0.0));
/* Table sceleton-framework */
#5800=(ANNOTATION_OCCURRENCE()
ANNOTATION_SYMBOL_OCCURRENCE()
/* DRAUGHTING_ANNOTATION_OCCURRENCE() */
GEOMETRIC_REPRESENTATION_ITEM()
REPRESENTATION_ITEM('')
STYLED_ITEM((#5801),#5810));
/* Style */
#5801=PRESENTATION_STYLE_ASSIGNMENT((#5802));
#5802=SYMBOL_STYLE('black colour',#5803);
#5803=SYMBOL_COLOUR(#5804);
#5804=DRAUGHTING_PRE_DEFINED_COLOUR('black');
#5810=(ANNOTATION_SYMBOL()
GEOMETRIC_REPRESENTATION_ITEM()
MAPPED_ITEM(#5811,#5812)
REPRESENTATION_ITEM(''));
#5811=SYMBOL_REPRESENTATION_MAP(#9,#5820);
#5812=SYMBOL_TARGET('',#5813,1,1);
/* Placing table - GD&T frame */
#5813=AXIS2_PLACEMENT_3D('',#5814,#5815,#5816);
#5814=CARTESIAN_POINT('',(0.0,50.0,0.0));
#5815=DIRECTION('',(1.0,0.0,0.0));
#5816=DIRECTION('',(0.0,1.0,0.0));
/* Finaly shape collecting all the curves */
#5820=SYMBOL_REPRESENTATION('Complete table for Datum feature control frame',(#9, #5822, #5830, #5840, #5850, #5860),#5821);
#5821=GEOMETRIC_REPRESENTATION_CONTEXT('Table context','',3);
/* Surrounding box */
#5822=POLYLINE('surrounding box',(#5823,#5824,#5825,#5826,#5823));
#5823=CARTESIAN_POINT('Left Bottom',(0, 0, 0));
#5824=CARTESIAN_POINT('Right Bottom',(60, 0, 0));
#5825=CARTESIAN_POINT('Right Top',(60, 10, 0));
#5826=CARTESIAN_POINT('Left Top',(0, 10, 0));
/* Line separating 1-2 cells */
#5830=POLYLINE('1st vertical line',(#5831,#5832));
#5831=CARTESIAN_POINT('Bottom',(10, 0, 0));
#5832=CARTESIAN_POINT('Top',(10, 10, 0));
/* Line separating 2-3 cells */
#5840=POLYLINE('2nd vertical line',(#5841,#5842));
#5841=CARTESIAN_POINT('Bottom',(40, 0, 0));
#5842=CARTESIAN_POINT('Top',(40, 10, 0));
/* Line separating 3-4 cells */
#5850=POLYLINE('3rd vertical line',(#5851,#5852));
#5851=CARTESIAN_POINT('Bottom',(50, 0, 0));
#5852=CARTESIAN_POINT('Top',(50, 10, 0));
/* Line separating 4-5 cells */
#5860=POLYLINE('4th vertical line',(#5861,#5862));
#5861=CARTESIAN_POINT('Bottom',(60, 0, 0));
#5862=CARTESIAN_POINT('Top',(60, 10, 0));
/***************************************************/
/* DATUM_TARGET_CALLOUT */
/***************************************************/
#3000=(DATUM_TARGET_CALLOUT()DRAUGHTING_CALLOUT((#3001, #3010, #3020, #3041, #3061, #3080))DRAUGHTING_ELEMENTS()
GEOMETRIC_REPRESENTATION_ITEM()LEADER_DIRECTED_CALLOUT()REPRESENTATION_ITEM('callout'));
/* Possible ways I see to model it:
1) It is a table and 2 cells - top bottom. Cells have styles -
a) half circle above cell and underline
b) half circle below cell
2) It is a table, with 2 cells only - all curves (circle and line) are additional annotation curves in callout
3) Not a table - just text, curves, etc.
WE CHOOSE OPTION 3
*/
/* 1) datum target circle containing symbols and letters */
#3001=(ANNOTATION_CURVE_OCCURRENCE()
ANNOTATION_OCCURRENCE()
DRAUGHTING_ANNOTATION_OCCURRENCE()
GEOMETRIC_REPRESENTATION_ITEM()
REPRESENTATION_ITEM('')
STYLED_ITEM((#1017),#3002));
#3002=CIRCLE('',#3003,20);
#3003=AXIS2_PLACEMENT_3D('',#3004,#3005,#3006);
#3004=CARTESIAN_POINT('',(0,0,0));
#3005=DIRECTION('',(1.0,0.0,0.0));
#3006=DIRECTION('',(0.0,0.0,1.0));
/* 2) Line segment separating datum target circle into 2 parts */
#3010=(ANNOTATION_CURVE_OCCURRENCE()
ANNOTATION_OCCURRENCE()
DRAUGHTING_ANNOTATION_OCCURRENCE()
GEOMETRIC_REPRESENTATION_ITEM()
REPRESENTATION_ITEM('')
STYLED_ITEM((#1017),#3011));
#3011=POLYLINE('horizontal line',(#3012,#3013));
#3012=CARTESIAN_POINT('Left',(-10.0, 10.0, 0.0));
#3013=CARTESIAN_POINT('Right',(10.0, 10.0, 0.0));
/* Text and symbol within datum target symbol */
/* 3) Diameter symbol */
#3020=(ANNOTATION_OCCURRENCE()
ANNOTATION_SYMBOL_OCCURRENCE()
DRAUGHTING_ANNOTATION_OCCURRENCE()
GEOMETRIC_REPRESENTATION_ITEM()
REPRESENTATION_ITEM('')
STYLED_ITEM((#3111),#3021));
#3111=PRESENTATION_STYLE_ASSIGNMENT((#3112));
#3112=SYMBOL_STYLE('black colour',#3113);
#3113=SYMBOL_COLOUR(#3114);
#3114=DRAUGHTING_PRE_DEFINED_COLOUR('black');
/* Placement and symbol itself */
#3021=DEFINED_SYMBOL('',#3022,#3026);
#3022=PRE_DEFINED_GEOMETRICAL_TOLERANCE_SYMBOL('diameter');
#3023=AXIS2_PLACEMENT_3D('',#3024,#3025,#3027);
#3024=CARTESIAN_POINT('',(0.0,10.0,0.0));
#3025=DIRECTION('',(1.0,0.0,0.0));
#3026=SYMBOL_TARGET('',#3023,3.75,3.75);
#3027=DIRECTION('',(0.0,1.0,0.0));
/* 4) Text "4" meaning the diameter value */
#3041=(ANNOTATION_OCCURRENCE()
ANNOTATION_TEXT_OCCURRENCE()
DRAUGHTING_ANNOTATION_OCCURRENCE()
GEOMETRIC_REPRESENTATION_ITEM()
REPRESENTATION_ITEM('')
STYLED_ITEM((#3042),#3050));
#3042=PRESENTATION_STYLE_ASSIGNMENT((#3043));
#3043=TEXT_STYLE_WITH_BOX_CHARACTERISTICS('a text style',#3044,
(BOX_HEIGHT(1.),BOX_WIDTH(1.),BOX_SLANT_ANGLE(0.),BOX_ROTATE_ANGLE(0.)));
#3044=TEXT_STYLE_FOR_DEFINED_FONT(#3045);
#3045=DRAUGHTING_PRE_DEFINED_COLOUR('black');
#3050=TEXT_LITERAL_WITH_EXTENT('','4',#3053,'baseline right',.RIGHT.,#3052,#3051);
#3051=PLANAR_EXTENT('extent of text string',5,5);
#3052=DRAUGHTING_PRE_DEFINED_TEXT_FONT('ISO 3098');
#3053=AXIS2_PLACEMENT_3D('',#3056,#3054,#3055);
#3054=DIRECTION('',(0.0,-1.0,0.0));
#3055=DIRECTION('',(1.0,0.0,0.0));
#3056=CARTESIAN_POINT('',(5.0,10.0,0.0));
/* 5) Text "D3" - name of datum target */
#3061=(ANNOTATION_OCCURRENCE()
ANNOTATION_TEXT_OCCURRENCE()
DRAUGHTING_ANNOTATION_OCCURRENCE()
GEOMETRIC_REPRESENTATION_ITEM()
REPRESENTATION_ITEM('')
STYLED_ITEM((#3042),#3070));
#3070=TEXT_LITERAL_WITH_EXTENT('','D3',#3073,'baseline right',.RIGHT.,#3072,#3071);
#3071=PLANAR_EXTENT('extent of text string',10,10);
#3072=DRAUGHTING_PRE_DEFINED_TEXT_FONT('ISO 3098');
#3073=AXIS2_PLACEMENT_3D('',#3076,#3074,#3075);
#3074=DIRECTION('',(0.0,-1.0,0.0));
#3075=DIRECTION('',(1.0,0.0,0.0));
#3076=CARTESIAN_POINT('',(0.0,0.0,0.0));
/* --------- LEADER_CURVE ---------- */
#3080=(ANNOTATION_CURVE_OCCURRENCE()
ANNOTATION_OCCURRENCE()
DRAUGHTING_ANNOTATION_OCCURRENCE()
GEOMETRIC_REPRESENTATION_ITEM()
LEADER_CURVE()
REPRESENTATION_ITEM('')
STYLED_ITEM((#3090),#3081));
/* Curve of "leader_curve" */
#3081=POLYLINE('leader curve',(#3082,#3083));
#3082=CARTESIAN_POINT('Start',(-10.0, 0.0, 0.0));
#3083=CARTESIAN_POINT('End',(-30.0, 30.0, 0.0));
/* Line style */
#3090=PRESENTATION_STYLE_ASSIGNMENT((#3091));
#3091=CURVE_STYLE('',#3092,#3094,#3093);
#3092=DRAUGHTING_PRE_DEFINED_CURVE_FONT('continuous');
#3093=DRAUGHTING_PRE_DEFINED_COLOUR('black');
#3094=LENGTH_MEASURE_WITH_UNIT(POSITIVE_LENGTH_MEASURE(0.1),#4);
/*******************************************************************************/
/* CURVE_DIMENSION */
/* It is NOT projection_directed_callout - because it contains */
/* 2 projection_curves (only exactly 1 is allowed */
/* It is curve_dimension - because it contains dimension_curve */
/*******************************************************************************/
#4000=(CURVE_DIMENSION()
DIMENSION_CURVE_DIRECTED_CALLOUT()
DRAUGHTING_CALLOUT((#4100, #4200, #4300, #4310, #4320, #4400))
DRAUGHTING_ELEMENTS()
GEOMETRIC_REPRESENTATION_ITEM()
REPRESENTATION_ITEM('callout'));
/* Left projection line */
#4100=(ANNOTATION_CURVE_OCCURRENCE()
ANNOTATION_OCCURRENCE()
DRAUGHTING_ANNOTATION_OCCURRENCE()
GEOMETRIC_REPRESENTATION_ITEM()
PROJECTION_CURVE()
REPRESENTATION_ITEM('left')
STYLED_ITEM((#300),#4101));
#4101=TRIMMED_CURVE('',#4102,
(PARAMETER_VALUE(0.0),#4106),(PARAMETER_VALUE(10.0),#4103),
.T.,.PARAMETER.);
#4102=LINE('',#4103,#4105);
#4103=CARTESIAN_POINT('end',(0,10,0));
#4104=DIRECTION('',(0,1,0));
#4105=VECTOR('',#4104,1.0);
#4106=CARTESIAN_POINT('start',(0,0,0));
/* Right projection line */
#4200=(ANNOTATION_CURVE_OCCURRENCE()
ANNOTATION_OCCURRENCE()
DRAUGHTING_ANNOTATION_OCCURRENCE()
GEOMETRIC_REPRESENTATION_ITEM()
PROJECTION_CURVE()
REPRESENTATION_ITEM('right')
STYLED_ITEM((#300),#4201));
#4201=TRIMMED_CURVE('',#4202,
(PARAMETER_VALUE(0.0),#4206),(PARAMETER_VALUE(10.0),#4203),
.T.,.PARAMETER.);
#4202=LINE('',#4203,#4205);
#4203=CARTESIAN_POINT('end',(10,10,0));
#4204=DIRECTION('',(0,1,0));
#4205=VECTOR('',#4204,1.0);
#4206=CARTESIAN_POINT('start',(10,0,0));
/* --- DIMENSION CURVE --- */
#4300=(ANNOTATION_CURVE_OCCURRENCE()
ANNOTATION_OCCURRENCE()
DIMENSION_CURVE()
DRAUGHTING_ANNOTATION_OCCURRENCE()
GEOMETRIC_REPRESENTATION_ITEM()
REPRESENTATION_ITEM('left')
STYLED_ITEM((#300),#4301));
#4301=TRIMMED_CURVE('',#4304,
(PARAMETER_VALUE(0.0),#4302),(PARAMETER_VALUE(2.0),#4303),
.T.,.PARAMETER.);
#4302=CARTESIAN_POINT('start',(0,0,0));
#4303=CARTESIAN_POINT('end',(10,0,0));
#4304=CIRCLE('',#4305,50);
#4305=AXIS2_PLACEMENT_3D('',#4306,#4307,#4308);
#4306=CARTESIAN_POINT('',(0,0,0));
#4307=DIRECTION('',(0.0,0.0,1.0));
#4308=DIRECTION('',(-1.0,0.0,0.0));
/* Left terminator */
#4310=(ANNOTATION_OCCURRENCE()
ANNOTATION_SYMBOL_OCCURRENCE()
DIMENSION_CURVE_TERMINATOR(.ORIGIN.)
DRAUGHTING_ANNOTATION_OCCURRENCE()
GEOMETRIC_REPRESENTATION_ITEM()
REPRESENTATION_ITEM('start')
STYLED_ITEM((#410),#4311)
TERMINATOR_SYMBOL(#4300));
/* Symbol and its placement */
#4311=DEFINED_SYMBOL('',#4312,#4316);
#4312=PRE_DEFINED_TERMINATOR_SYMBOL('filled arrow');
#4313=AXIS2_PLACEMENT_3D('',#4314,#4315,#4317);
#4314=CARTESIAN_POINT('',(0.0,10.0,0.0));
#4315=DIRECTION('',(1.0,0.0,0.0));
#4316=SYMBOL_TARGET('',#4313,7.5,2.5);
#4317=DIRECTION('',(0.0,1.0,0.0));
/* Right terminator */
#4320=(ANNOTATION_OCCURRENCE()
ANNOTATION_SYMBOL_OCCURRENCE()
DIMENSION_CURVE_TERMINATOR(.TARGET.)
DRAUGHTING_ANNOTATION_OCCURRENCE()
GEOMETRIC_REPRESENTATION_ITEM()
REPRESENTATION_ITEM('end')
STYLED_ITEM((#410),#4321)
TERMINATOR_SYMBOL(#4300));
/* Symbol and its placement */
#4321=DEFINED_SYMBOL('',#4312,#4326);
#4323=AXIS2_PLACEMENT_3D('',#4324,#4325,#4327);
#4324=CARTESIAN_POINT('',(10.0,10.0,0.0));
#4325=DIRECTION('',(1.0,0.0,0.0));
#4326=SYMBOL_TARGET('',#4323,7.5,2.5);
#4327=DIRECTION('',(0.0,1.0,0.0));
/* -------- TEXT ---------------*/
#4400=(ANNOTATION_OCCURRENCE()
ANNOTATION_TEXT_OCCURRENCE()
DRAUGHTING_ANNOTATION_OCCURRENCE()
GEOMETRIC_REPRESENTATION_ITEM()
REPRESENTATION_ITEM('')
STYLED_ITEM((#172),#4401));
#4401=TEXT_LITERAL_WITH_BLANKING_BOX('text with dimension value','76.64',#4404,'baseline right',.RIGHT.,#4402,#4403);
#4402=DRAUGHTING_PRE_DEFINED_TEXT_FONT('ISO 3098');
#4403=PLANAR_BOX('box of text',5,5, #4404);
#4404=AXIS2_PLACEMENT_3D('placement of text',#4405,#4406,#4407);
#4405=CARTESIAN_POINT('',(5,12,0));
#4406=DIRECTION('',(1.0,0.0,0.0));
#4407=DIRECTION('',(0.0,1.0,0.0));
/* A-BREP - cube model taken from 3D-associative_text example */
#10010=CARTESIAN_POINT('',(0.0,0.0,0.0));
#10011=VERTEX_POINT('',#10010);
#10012=CARTESIAN_POINT('',(0.0,50,0.0));
#10013=VERTEX_POINT('',#10012);
#10014=CARTESIAN_POINT('',(0.0,0.0,50));
#10015=VERTEX_POINT('',#10014);
#10016=CARTESIAN_POINT('',(0.0,50,50));
#10017=VERTEX_POINT('',#10016);
#10018=CARTESIAN_POINT('',(50,50,50));
#10019=VERTEX_POINT('',#10018);
#10020=CARTESIAN_POINT('',(50,50,0.0));
#10021=VERTEX_POINT('',#10020);
#10022=CARTESIAN_POINT('',(50,0.0,50));
#10023=VERTEX_POINT('',#10022);
#10024=CARTESIAN_POINT('',(50,0.0,0.0));
#10025=VERTEX_POINT('',#10024);
#10026=CARTESIAN_POINT('',(0.0,0.0,0.0));
#10027=DIRECTION('',(0.0,1.0,0.0));
#10028=VECTOR('',#10027,50);
#10029=LINE('',#10026,#10028);
#10030=CARTESIAN_POINT('',(0.0,0.0,0.0));
#10031=DIRECTION('',(0.0,0.0,1.0));
#10032=VECTOR('',#10031,50);
#10033=LINE('',#10030,#10032);
#10034=CARTESIAN_POINT('',(0.0,50,50));
#10035=DIRECTION('',(0.0,-1,0.0));
#10036=VECTOR('',#10035,50);
#10037=LINE('',#10034,#10036);
#10038=CARTESIAN_POINT('',(0.0,50,50));
#10039=DIRECTION('',(0.0,0.0,-1));
#10040=VECTOR('',#10039,50);
#10041=LINE('',#10038,#10040);
#10042=CARTESIAN_POINT('',(0.0,50,50));
#10043=DIRECTION('',(1.0,0.0,0.0));
#10044=VECTOR('',#10043,50);
#10045=LINE('',#10042,#10044);
#10046=CARTESIAN_POINT('',(50,50,0.0));
#10047=DIRECTION('',(0.0,0.0,1.0));
#10048=VECTOR('',#10047,50);
#10049=LINE('',#10046,#10048);
#10050=CARTESIAN_POINT('',(50,50,0.0));
#10051=DIRECTION('',(-1,0.0,0.0));
#10052=VECTOR('',#10051,50);
#10053=LINE('',#10050,#10052);
#10054=CARTESIAN_POINT('',(50,0.0,50));
#10055=DIRECTION('',(-1,0.0,0.0));
#10056=VECTOR('',#10055,50);
#10057=LINE('',#10054,#10056);
#10058=CARTESIAN_POINT('',(50,0.0,50));
#10059=DIRECTION('',(0.0,1.0,0.0));
#10060=VECTOR('',#10059,50);
#10061=LINE('',#10058,#10060);
#10062=CARTESIAN_POINT('',(0.0,0.0,0.0));
#10063=DIRECTION('',(1.0,0.0,0.0));
#10064=VECTOR('',#10063,50);
#10065=LINE('',#10062,#10064);
#10066=CARTESIAN_POINT('',(50,50,0.0));
#10067=DIRECTION('',(0.0,-1,0.0));
#10068=VECTOR('',#10067,50);
#10069=LINE('',#10066,#10068);
#10070=CARTESIAN_POINT('',(50,0.0,50));
#10071=DIRECTION('',(0.0,0.0,-1));
#10072=VECTOR('',#10071,50);
#10073=LINE('',#10070,#10072);
#10074=EDGE_CURVE('',#10011,#10013,#10029,.T.);
#10075=EDGE_CURVE('',#10011,#10015,#10033,.T.);
#10076=EDGE_CURVE('',#10017,#10015,#10037,.T.);
#10077=EDGE_CURVE('',#10017,#10013,#10041,.T.);
#10078=EDGE_CURVE('',#10017,#10019,#10045,.T.);
#10079=EDGE_CURVE('',#10021,#10019,#10049,.T.);
#10080=EDGE_CURVE('',#10021,#10013,#10053,.T.);
#10081=EDGE_CURVE('',#10023,#10015,#10057,.T.);
#10082=EDGE_CURVE('',#10023,#10019,#10061,.T.);
#10083=EDGE_CURVE('',#10011,#10025,#10065,.T.);
#10084=EDGE_CURVE('',#10021,#10025,#10069,.T.);
#10085=EDGE_CURVE('',#10023,#10025,#10073,.T.);
#10086=ORIENTED_EDGE('',*,*,#10074,.F.);
#10087=ORIENTED_EDGE('',*,*,#10075,.T.);
#10088=ORIENTED_EDGE('',*,*,#10076,.F.);
#10089=ORIENTED_EDGE('',*,*,#10077,.T.);
#10090=EDGE_LOOP('',(#10086,#10087,#10088,#10089));
#10091=FACE_OUTER_BOUND('',#10090,.T.);
#10092=CARTESIAN_POINT('',(0.0,25,25));
#10093=DIRECTION('',(-1.0,0.0,0.0));
#10094=DIRECTION('',(0.0,-1.0,0.0));
#10095=AXIS2_PLACEMENT_3D('',#10092,#10093,#10094);
#10096=PLANE('',#10095);
#10097=ADVANCED_FACE('',(#10091),#10096,.T.);
#10098=ORIENTED_EDGE('',*,*,#10077,.F.);
#10099=ORIENTED_EDGE('',*,*,#10078,.T.);
#10100=ORIENTED_EDGE('',*,*,#10079,.F.);
#10101=ORIENTED_EDGE('',*,*,#10080,.T.);
#10102=EDGE_LOOP('',(#10098,#10099,#10100,#10101));
#10103=FACE_OUTER_BOUND('',#10102,.T.);
#10104=CARTESIAN_POINT('',(25,50,25));
#10105=DIRECTION('',(0.0,1.0,0.0));
#10106=DIRECTION('',(0.0,0.0,1.0));
#10107=AXIS2_PLACEMENT_3D('',#10104,#10105,#10106);
#10108=PLANE('',#10107);
#10109=ADVANCED_FACE('',(#10103),#10108,.T.);
#10110=ORIENTED_EDGE('',*,*,#10078,.F.);
#10111=ORIENTED_EDGE('',*,*,#10076,.T.);
#10112=ORIENTED_EDGE('',*,*,#10081,.F.);
#10113=ORIENTED_EDGE('',*,*,#10082,.T.);
#10114=EDGE_LOOP('',(#10110,#10111,#10112,#10113));
#10115=FACE_OUTER_BOUND('',#10114,.T.);
#10116=CARTESIAN_POINT('',(25,25,50));
#10117=DIRECTION('',(0.0,0.0,1.0));
#10118=DIRECTION('',(-1.0,0.0,0.0));
#10119=AXIS2_PLACEMENT_3D('',#10116,#10117,#10118);
#10120=PLANE('',#10119);
#10121=ADVANCED_FACE('',(#10115),#10120,.T.);
#10122=ORIENTED_EDGE('',*,*,#10083,.F.);
#10123=ORIENTED_EDGE('',*,*,#10074,.T.);
#10124=ORIENTED_EDGE('',*,*,#10080,.F.);
#10125=ORIENTED_EDGE('',*,*,#10084,.T.);
#10126=EDGE_LOOP('',(#10122,#10123,#10124,#10125));
#10127=FACE_OUTER_BOUND('',#10126,.T.);
#10128=CARTESIAN_POINT('',(25,25,0.0));
#10129=DIRECTION('',(0.0,0.0,-1.0));
#10130=DIRECTION('',(-1.0,0.0,0.0));
#10131=AXIS2_PLACEMENT_3D('',#10128,#10129,#10130);
#10132=PLANE('',#10131);
#10133=ADVANCED_FACE('',(#10127),#10132,.T.);
#10134=ORIENTED_EDGE('',*,*,#10084,.F.);
#10135=ORIENTED_EDGE('',*,*,#10079,.T.);
#10136=ORIENTED_EDGE('',*,*,#10082,.F.);
#10137=ORIENTED_EDGE('',*,*,#10085,.T.);
#10138=EDGE_LOOP('',(#10134,#10135,#10136,#10137));
#10139=FACE_OUTER_BOUND('',#10138,.T.);
#10140=CARTESIAN_POINT('',(50,25,25));
#10141=DIRECTION('',(1.0,0.0,0.0));
#10142=DIRECTION('',(0.0,1.0,0.0));
#10143=AXIS2_PLACEMENT_3D('',#10140,#10141,#10142);
#10144=PLANE('',#10143);
#10145=ADVANCED_FACE('',(#10139),#10144,.T.);
#10146=ORIENTED_EDGE('',*,*,#10075,.F.);
#10147=ORIENTED_EDGE('',*,*,#10083,.T.);
#10148=ORIENTED_EDGE('',*,*,#10085,.F.);
#10149=ORIENTED_EDGE('',*,*,#10081,.T.);
#10150=EDGE_LOOP('',(#10146,#10147,#10148,#10149));
#10151=FACE_OUTER_BOUND('',#10150,.T.);
#10152=CARTESIAN_POINT('',(25,0.0,25));
#10153=DIRECTION('',(0.0,-1.0,0.0));
#10154=DIRECTION('',(0.0,0.0,-1.0));
#10155=AXIS2_PLACEMENT_3D('',#10152,#10153,#10154);
#10156=PLANE('',#10155);
#10157=ADVANCED_FACE('',(#10151),#10156,.T.);
#10158=CLOSED_SHELL('',(#10097,#10109,#10121,#10133,#10145,#10157));
#10159=MANIFOLD_SOLID_BREP('',#10158);
#10166=UNCERTAINTY_MEASURE_WITH_UNIT(LENGTH_MEASURE(9.999999999999998E-14),#4,'distance_accuracy_value','EDGE CURVE AND VERTEX POINT ACCURACY');
#10167=(GEOMETRIC_REPRESENTATION_CONTEXT(3)
GLOBAL_UNCERTAINTY_ASSIGNED_CONTEXT((#10166))
GLOBAL_UNIT_ASSIGNED_CONTEXT((#4,#5,#3))
REPRESENTATION_CONTEXT('MASTER','3D'));
#10168=ADVANCED_BREP_SHAPE_REPRESENTATION('',(#10159/*,#165,#178,#200*/),#10167);
#10198=SHAPE_DEFINITION_REPRESENTATION(#97,#10168);
/* MDGPR - styling the cube - faces are filled in blue colour, curves/edges are continous in black */
#10200=MECHANICAL_DESIGN_GEOMETRIC_PRESENTATION_REPRESENTATION('',(#10201),#10167);
#10201=STYLED_ITEM('',(#10202),#10159);
/* curves/edges are displayed in black-continuous */
#10202=PRESENTATION_STYLE_ASSIGNMENT((#10203,#10210));
#10203=CURVE_STYLE('',#10205,POSITIVE_LENGTH_MEASURE(0.1),
#10204);
#10204=DRAUGHTING_PRE_DEFINED_COLOUR('black');
#10205=DRAUGHTING_PRE_DEFINED_CURVE_FONT('continuous');
/* Surfaces are displayed in blue */
#10210=SURFACE_STYLE_USAGE(.BOTH.,#10211);
#10211=SURFACE_SIDE_STYLE('',(#10212));
#10212=SURFACE_STYLE_FILL_AREA(#10213);
#10213=FILL_AREA_STYLE('',(#10214));
#10214=FILL_AREA_STYLE_COLOUR('',#10215);
#10215=DRAUGHTING_PRE_DEFINED_COLOUR('blue');
/* Draughting model containing leader curve only AND associated with MDGPR */
#10300=DRAUGHTING_MODEL('Leader curve callout',
(#200, #10311),#10167);
#10301=REPRESENTATION_RELATIONSHIP('', $, #10300, #10200); /* Which particular type to use is unclear for now */
/* Take draughting_model, project it and place it presentation_set */
#10310=CAMERA_USAGE(#10311,#10300);
#10311=CAMERA_MODEL_D3_WITH_HLHSR('',#10312,#10320,.T.);
#10312=AXIS2_PLACEMENT_3D('',#10313,#10314,#10315);
#10313=CARTESIAN_POINT('',(1.,0.,1.));
#10314=DIRECTION('',(0.,-1.,0.));
#10315=DIRECTION('',(1.,0.,0.));
/* Establishing view_volume - kind of "projection frame" */
#10320=VIEW_VOLUME(.PARALLEL.,#10321,0.,10.,.T.,10.,.F.,.T.,#10322);
#10321=CARTESIAN_POINT('',(0.E0,0.E0,1.E2));
#10322=PLANAR_BOX('',3.,3.,#10323);
#10323=AXIS2_PLACEMENT_3D('',#10313/*#10324*/,#10325,#10326);
/* #10324=CARTESIAN_POINT('',(-1.5,-1.5,0.)); */
/* Changed in comparison to original model_view rec_prac as violating WR1 of camera_model_d3 */
#10325=DIRECTION('',(0.,-1.,0.));
#10326=DIRECTION('',(1.,0.,0.));
/************************************************************************
* 2D representation of styled model in presentation view *
************************************************************************/
#10400=PRESENTATION_VIEW('Front view',(#10410, #10323),#10401);
#10401=(GEOMETRIC_REPRESENTATION_CONTEXT(2)
GLOBAL_UNIT_ASSIGNED_CONTEXT((#4,#10402))
REPRESENTATION_CONTEXT('2D coordinate system context','2D'));
#10402=(CONVERSION_BASED_UNIT('DEGREE',#10403)NAMED_UNIT(#10404)PLANE_ANGLE_UNIT());
#10403=PLANE_ANGLE_MEASURE_WITH_UNIT(PLANE_ANGLE_MEASURE(0.0174532925),#10405);
#10404=DIMENSIONAL_EXPONENTS(0.,0.,0.,0.,0.,0.,0.);
#10405=(NAMED_UNIT(*)PLANE_ANGLE_UNIT()SI_UNIT($,.RADIAN.));
#10410=(CAMERA_IMAGE()
CAMERA_IMAGE_3D_WITH_SCALE()
GEOMETRIC_REPRESENTATION_ITEM()
MAPPED_ITEM(#10310,#10411)
REPRESENTATION_ITEM(''));
#10411=PLANAR_BOX('',5.,5.,#10412);
#10412=AXIS2_PLACEMENT_2D('',#10413,#10414);
#10413=CARTESIAN_POINT('',(0.,0.));
#10414=DIRECTION('',(1.,0.));
/************************************************************************
* The drawing sheet that contains the view. *
************************************************************************/
#10500=DRAWING_SHEET_REVISION('Sheet 1',(#10510,#10521),#10504,'-');
/************************************************************************
* Target location (0,0) on the sheet for the placement of the view. *
************************************************************************/
#10501=AXIS2_PLACEMENT_2D('',#10502,#10503);
#10502=CARTESIAN_POINT('',(0.0,0.0));
#10503=DIRECTION('',(1.0,0.0));
#10504=(GEOMETRIC_REPRESENTATION_CONTEXT(2)
GLOBAL_UNIT_ASSIGNED_CONTEXT((#4,#10402))
REPRESENTATION_CONTEXT('2D coordinate system context','2D'));
#10505=DRAUGHTING_TITLE((#10500),'English','Sheet 1');
/************************************************************************
* Map the view onto the sheet, with the mapping *
* origin defined as (0,0) within the view being mapped onto (0,0) *
* within the sheet coordinate system. *
************************************************************************/
#10510=MAPPED_ITEM('',#10511,#10501);
#10511=REPRESENTATION_MAP(#10323,#10400);
/************************************************************************
* Size of the drawing sheet. *
************************************************************************/
#10520=PRESENTATION_SIZE(#10500,#10521);
#10521=PLANAR_BOX('',10.0,10.0,#10522);
#10522=AXIS2_PLACEMENT_2D('',#10523,#10524);
#10523=CARTESIAN_POINT('',(0.0,0.0));
#10524=DIRECTION('',(1.0,0.0));
/************************************************************************
* The drawing revision, its title, its *
* association to the product definition it presents (#95), and the *
* link between the drawing revision and the sheet previously defined. *
************************************************************************/
#10600=DRAWING_DEFINITION('Drawing of product_0',$);
#10601=DRAWING_REVISION('A',#10600,$);
#10602=DRAUGHTING_TITLE((#10601),'English','Associative dimension test part');
#10603=APPLIED_PRESENTED_ITEM((#95));
#10604=PRESENTED_ITEM_REPRESENTATION(#10601,#10603);
#10605=DRAWING_SHEET_REVISION_USAGE(#10500,#10601,'1');
/************************************************************************
* Associativity between annotation and geometric model elements: *
* link edge_curve with callout *
************************************************************************/
#11000=SHAPE_ASPECT_ASSOCIATIVITY('link edge curve with callout pointing to it', $, #11010, #11020);
/* Edge */
/* Old style */
#11010=SHAPE_ASPECT('edge to highlight',$,#97,.T.);
#11011=SHAPE_REPRESENTATION('edge to highlight', (#10074), #10167);
#11012=SHAPE_DEFINITION_REPRESENTATION(#11013,#11011);
#11013=PROPERTY_DEFINITION('edge to highlight',$,#11010);
/* Callout */
/* Old style */
#11020=SHAPE_ASPECT('callout to pick',$,#97,.F.);
#11021=DRAUGHTING_MODEL('callout to pick', (#200), #10167);
#11022=PROPERTY_DEFINITION_REPRESENTATION(#11023,#11021);
#11023=PROPERTY_DEFINITION('callout to pick',$,#11020);
/* New style - officially those entities are not part of AP214 ed2 */
/* Edge */
#11030=GEOMETRIC_ITEM_SPECIFIC_USAGE(' ',$, #11010, #10168, #10074);
/* Callout */
#11040=DRAUGHTING_MODEL_ITEM_ASSOCIATION(' ',$, #11010, #10300, #200);
/**************************************************/
/* New entries made on 2008-12-31 and later */
#12040=DRAUGHTING_MODEL_ITEM_ASSOCIATION(' ',$, #12010, #151, #1000);
#12010=DATUM_FEATURE('',$,#97,.T.);
#12020=SHAPE_ASPECT_RELATIONSHIP('feature in datum A',$,#12010,#12030);
#12030=DATUM('',$,#97,.T.,'A');
#12050=GEOMETRIC_ITEM_SPECIFIC_USAGE(' ',$, #12010, #10168, #10096);
#13040=DRAUGHTING_MODEL_ITEM_ASSOCIATION(' ',$, #13010, #151, #3000);
#13010=DATUM_TARGET('',$,#97,.T.,'A1');
#13020=SHAPE_ASPECT_RELATIONSHIP('target in datum A',$,#13010,#12030);
#13050=GEOMETRIC_ITEM_SPECIFIC_USAGE(' ',$, #13010, #10168, #10074); /* #10074 - edge_curve one from set - which bounds plane of the datum */
ENDSEC;
END-ISO-10303-21;