二次元図面のstep/ap202 - ocfc 507 surface c 508 non-manifold c 509 manifold c 510 wf c 511...
TRANSCRIPT
Application Protocol (and ATS)
Mechanical DesignC 204 Brep (C)C 205 Surface(W)X 206 WireFrame(X)
CommonI 201 Draughting (W)I 202 Ass. Draught(C)I 203 Config Cont(C)
Sheet Metal、DieE 207 Sheet M、Die(W)
Electro.ElectricC 210 PCB design (W)W 211 PCB test(W)C 212 Electric (W)O 220 PCB manu (O)
Lifecyvle ChangeW 208 Lifecycle (W)
Composite・MetalC 209 Composite (W)W 222 Structure (W)
NC、MachiningE 213 NC Process (W)E 224 Feature(W)
AutomobileC 214 Automobile (W)
ShipW 215 Arrange (W)C 216 Mold (W)C 217 HVAC (W)C 218 構造 (W)W 226 Machinery (W)
Dimension InspectionX 219 Dim Inspection (X)
PlantC 221 P&I (C)E 227 Arrange(W)W 231 Data (W)
CastingW 223 Cast (W)W 229 Forge (W)
BuildingC 225 Bld Elemnt (W)E 228 HVAC (O)W 230 Steel (W)
PDM/TDPW 232 TDP (W)
OtherO Opt data (O)O NATO (O)
Integrated ResourceIntegrated Application Resource
I 101 Draughting X 102 Ship hull X 103 Electro,elctric ConnectionC 104 FEA I 105 Kinematics W 106 Building Core Model
Generic Integrated ResourceI 41 Product I 42 Geometry I 43 Presen I 44 Config E 45 MaterialI 46 Presentation F 47 Tolerance X 48 Form feature E 49 Property
ImplementationI 21 Phy.file E 22 SDAI C 23 C++ C 24 Late C X 25 FortranC 26 IDL O JAVA
AICC 501 Edge C 502 Shell C 503 2DWF C 504 Annotation C 505 StructureC 506 Draught ele. C 507 Surface C 508 Non-Manifold C 509 ManifoldC 510 WF C 511 Top-b C 512 Facet C 513 Brep C 514 Adv-BrepC 515 CSG X 516 Mech. design C 517 Mech. design (Geo) C 518 shadeing
I 31 GeneralE 32 Test EnvirX 33 ATSC 34 Part21TestW35 Part22 Test
Conformance Test
I 1 OverviewI 11 EXPRESSX 12 EXPRESS-I
O EXPRESS-X
Description
O = Pre-ProposalA = Proposal -> NPW = Wdraft->CDC = CD->DISE = DIS->FDISF = FDIS->Int’l STDI = PublicationX = Cancel
STEP
STANDARD
STEPの規格体系
AP202のSCOPE
- 機械及びAEC分野の製図交換の為の表現
- 製図管理情報
- 製図化された製品の版数情報
- 計算機が解釈可能な2又3次元製品形状モデル
- 図面ビューによる変換と見え方
- 寸法、表記又は塗りと製品幾何との連携
- 図面上の要素のグルーピング
AP202のSCOPEに入らないもの
- 製図標準の作成- 製図来歴の交換- 図面に描かれない製品の幾何モデル- 製品に関係しない図面- 非平面の3次元表記- シェーデイング- 製図形状モデルの表示- 計算機が解釈可能できなければならないBOM- 交差と幾何との連携- 管理情報以外の表示出来ない属性
AP202の適合性クラス
- CC1: 製品形状のビューなしの表記- C C 2: 2次元(位相なし)の初等ワイヤーフレーム- CC3: 2次元(位相なし)のワイヤーフレーム- CC4: 2次元(位相付き)ワイヤーフレーム- CC5: 3次元(位相なし)のワイヤーフレーム/サーフェス
- CC6: 3次元(位相付き)ワイヤーフレーム- CC7: ファセット境界表現- CC8: 初等境界表現- CC9: 高等境界表現- CC10: 位相付きマニフォールドサーフェス
AP202のUOF
① associative_dimension② draughting_shape_model③ drawing_structure_and_administration④ elements_of_annotation⑤ elements_of_appearance⑥ elements_of_draughting_annotation⑦ grouping⑧ model_viewing⑨ product_relation
Mod
el V
iew
ing
UOF関連図
Product
Product Relation
2DAnnotation
Element
Annotation Element3D
AnnotationElement
2DAnnotation
Draughting Annotation3D Planar
Annotation
Appearance
DraughtingShapeModel
DraughtingShape Model
2DShape
3DShape
2DGeometricElement
3DGeometricElement
Drawing
Drawing Structureand Administration
DrawingSheet
DrawingView Group
AssociativeDimension
①
②
③
④
⑤
⑥
⑦
⑧
⑨
Model Viewing
富士通STEP研究開発センター
富士通STEP研究開発センター
presentation_area (drawing sheet)
presentation_view (drawing view) sheet_placed_annotation
view_placed_annotationcamera_model
view A
view B
view C
view A
view B
view C
view A
view B
view C
drawing_revision (drawing)
図面構造 (PDES Incの資料を流用)
Associative Dimension
dimensional_size
dimensiona_characteristic_representation
shape_dimension_representation
representation_map
dimension_text_associativity
10.0
Drawing
mapping_target
applies_to
diameter
10.0125
mapping_source
mapping_representation
dimension
representation
magnitude
mapping_origin
text_literal
10.0
① ②
③
④
⑤
⑥
⑦
⑧⑨⑩
右側面図
draughting_model
camera_usage
ビューの切り抜き
name
内一つはrepresentation_mapのmapping_origin属性と同一インスタンス
items S[1:?]
name
‘’
×2
×9
context_of_items(INV) representations_in context S[1:?]
mapping_source(INV)map_usage S[1:?]
mapped_representation
mapping_origin
hidden_line_surface_removal
nameview_reference_systemperspective_of_volume
‘’
.F.‘RIGHT’
★
mapping_target
camera_model_d3_with_hlhsr
camera_image_3d_with_scale
presentation_view
axis2_placement_3D
view_volume
planar_box表記要素
axis2_placement_2D
正面図
draughting_model
camera_usage
ビューの切り抜き
name
内一つはrepresentation_mapのmapping_origin属性と同一インスタンス
items S[1:?]
name
‘ ‘
×2
×19
context_of_items(INV) representations_in context S[1:?]
mapping_source(INV)map_usage S[1:?]
mapped_representation
mapping_origin
hidden_line_surface_removal
nameview_reference_systemperspective_of_volume
‘’
.F.‘FRONT’
★
mapping_target
camera_model_d3_with_hlhsr
camera_image_3d_with_scale
presentation_view
axis2_placement_3D
view_volume
planar_box表記要素
axis2_placement_2D
上面図
draughting_model
camera_usage
ビューの切り抜き
name 内一つはrepresentation_mapのmapping_origin属性と同一インスタンス
items S[1:?]
name
‘’
×2
×1
context_of_items(INV) representations_in context S[1:?]
mapping_source(INV)map_usage S[1:?]
mapped_representation
mapping_origin
hidden_line_surface_removal
nameview_reference_systemperspective_of_volume
‘’
.F.‘TOP’
★
mapping_target
camera_model_d3_with_hlhsr
representation_item
presentation_view
axis2_placement_3D
view_volume
planar_box
表記要素
axis2_placement_2D
camera_image_3d_with_scale
camera_imagegeometoric_
representation_item
mapped_itemcoodinate_space_dimension
2
context_identifiercontext_type
‘ID1’‘2D’
global_unit_assigned_context
Geometric_representation_context
representation_context
製図モデル
mapping_origin
mapping_source(INV)map_usage S[1:?] name
‘’item
×23
×23
mapping_representation
name
mapping_target
items S[1:?]‘block202’
context_of_items(INV)representations_in context S[1:?]
★
axis2_placement_3D
representation_item
draughting_model
mapped_item styled_item
幾何要素
context_identifier
context_type‘ID1’
‘3D’
3coodinate_space_dimension
geometric_representation_context
representation_context
global_unit_assigned_context
context_identifier
context_type‘ID1’
‘2D’
2coodinate_space_dimension
geometric_representation_context
representation_context
global_unit_assigned_context
product_definition_shapename
description‘description’‘product shape’
difinition
幾何モデル
context_of_items(INV) representations_
in context S[1:?]
name
name
‘’
‘’items S[1:?]
elements S[1:?]
used_representation
difinition
geometric_set
geometrically_bounded_surface_shape_representation
shape_definition_representation
application_protoclol_year
使用STEP規格 application_interpreted_model_schema_name
‘ASSOCIATIVE DRAUGHTING’
‘draughting’
1995‘International Standard’
applicationstatusapplicationapplication_protcol_
definition
幹部インスタンス化例
application_context
approval_date_time
承認日付
calendar_date
date_and_time
local_timecoordinated_universal_time_offset
.BEHIND.
sense
hour_offsetminute_offset
5
5
$
0
12hour_component
minute_conponentsecond_component
zonetime_component
date_component
1
2
1995year_component
month_component
day_component
date_time
dated_approval
図面承認
assigned_approval level ‘release for production’
status name ‘approved’
approved_items S[1:?]draughting_approval_
asignment
approval_date_time approval_status
図面契約
purposename
‘create AP202 instance’‘234’
kind
description‘fixed_price’
assigned_contract
items S[1:?]
contract_typecontract
draughting_contract_assignment
人/組織の実体
people S[1:?]
organizations S[1:?]
the_person
the_organization
person_and_organization
person
personal_address
organization
organization_address
製品所有者/組織
assigned_items S[1:?]assigned_person_
and_organization
rolename ‘owner’
draughting_person_and_organization_assignment
person_and_organization_role
図面作成者/組織assigned_person_and_organization role
name ‘creater ’
assigned_items S[1:?]draughting_person_and_organization_assignment
person_and_organization_role
図面機密分類
‘security1’‘draughting classification’‘unclassified’
name purposesecurity_
level
name
assigned_security_classification
assigned_items S[1:?]
draughting_security_classification_assignment
security_classification
security_classification_level
使用製図規格assigned_document
source‘engineering’
product_data_type‘draughting_specification’
idname
description kind
specified_items S[1:?]‘ANSI Y14.5’
‘Deimensioning and Tolerancing’‘US National dimensioning standard’
draughting_specification_reference
document
document_type
図面revision_identifier
intended_scale‘A’$
$
drawing_typedrawing_number
drawing_identifier
‘PRODUCT_NAME’
draughting_drawing_revision
drawing_definition
contents
図面タイトル
draughting_title language‘block202.prt’‘ENGLISH’
items S[1:?]
in_set (INV)areas S[1:?]
sheet_numberdrawing_sheet_revision_usage
‘1’area
レイヤーNo.1presentation assignment
namedescription
assigned_items S[1:?]
×17 ×13 ×2
×5 ×12
×2
presentation_layer_usage
presentation_layer_assignment
長さ寸法
幾何要素 注記 注記線
シンボル
注記線実体
‘1’‘’
レイヤーNo.2presentation assignment
namedescription
assigned_items S[1:?]
×3 ×3 ×2 ×2
‘2’‘’
注記線実体注記線注記幾何要素
presentation_layer_usage
presentation_layer_assignment
レイヤーNo.5
namedescription
assigned_items S[1:?]
assignmentpresentation
×3 ×3
‘5’‘’presentation_layer_assignment
presentation_layer_usage
長さ寸法幾何要素
context_of_items(INV) representations_
In_context S[1:?]
図面シート
各々のpresentation_viewの中身については左記参照
×3
×3
×3
×3
×3
×3
×10
mapped_representation
mapping_origin
name
‘’
シートに配置する各view(presentation_view)へのマッピング
44.0 34.0
size_in_xsize_in_y
placement
size
unit
items S[1:?] name‘’
revision_identifer‘a’
presentation_size
planar_box
mapped_item
representation_map
drawing_sheet_revision
axis2_placement_2D
axis2_placement_2D
axis2_placement_2D
axis2_placement_2D
presentation_view
表記要素(styled_item)
mapping_source(INV)map_usage
承認者
authorized_approvalrole
person_organization
role‘drawing releave’
approval_person_organization
approval_role
person
製品
description
iddescription
description
id
idname
frame_of_reference
‘A id’‘ug_20.prt’
‘INITIAL RELEASE’‘A’
‘530T’‘REAR PANEL’
‘REAR PANEL FOR BOX’
formation
of_product
frame_of_reference S[1:?]name
‘ASSOCIATIVE_DRAUGHTING’
descipline_type
‘mechanical’
frame_of_reference(INV) context_elements S[1:?] frame_of_reference
(INV) context_elements S[1:?]
life_cycle_stage
‘design’name
‘PRODUCTION’
product_definition_contextproduct_context
product
product_definition_formation
product_definition
線分インスタンス線分インスタンス線分インスタンス
revision_identifier図面図面図面
area_in_set
drawing_sheet_revision
図面シート図面シート図面シート
drawing_revision
draughting_definition
global_unit_assigned_context
si_unitsi_unit
presentation_layer_assignment
“0”name
“”discription
レイヤレイヤレイヤ
見え方見え方見え方
styled_item
annotation_occurrence
annotation_curve_occurrence
draughting_annotation_occurrence
representation_item
幾何要素幾何要素幾何要素
“10.0”cartesian_point
trimmed_curve
line
vector direction
“10.0”
“20.0”
“0.”parameter_value
“1.”parameter_value
“4.0”
“3.0“
presentation_style_assignment curve_style
positive_length_measure “0.15”
draughting_pre_defined_colour “green”
draughting_pre_defined_curve_font “continious””
形状形状形状
#17#17
#16#16
#18#18
#15#15
#14#14 #12#12
#13#13
#10#10
#9#9 #8#8 #7#7
#6#6
#5#5
#4#4
#3#3
#2#2 #1#1
#11#11
dir
ref_derection
stylesitems
items
area
assigned_items
in_set(INV)areas
drawing_identifier
basis_curve
trim_1
trim_2
pnt
ISO-10303-21;HEADER;FILE_DESCRIPTION(('ISO 10303-202'),'2;1');FILE_NAME('Conceptual Part Example','1999-05-17 14:30:37',('<author>'),('FQS Ltd.'), '<preprocessor>', '<system>','<authorisation>');FILE_SCHEMA(('ASSOCIATIVE_DRAUGHTING'));ENDSEC;DATA;#10 = DIRECTION('',(4.0,3.0));#20 = VECTOR('',#10,10.0);#30 = CARTESIAN_POINT('',(10.0,20.0));#40 = LINE('',#30,#20);#50 = TRIMMED_CURVE('',#40,(PARAMETER_VALUE(0.)), (PARAMETER_VALUE(1.)),.T.,.PARAMETER.);#60 = DRAUGHTING_PRE_DEFINED_CURVE_FONT('continuous');#70 = DRAUGHTING_PRE_DEFINED_COLOUR('green');#80 = CURVE_STYLE('<curvestylename>',#60,POSITIVE_LENGTH_MEASURE(0.15),#70);#90 = PRESENTATION_STYLE_ASSIGNMENT((#80));#100 = (ANNOTATION_CURVE_OCCURRENCE() ANNOTATION_OCCURRENCE() DRAUGHTING_ANNOTATION_OCCURRENCE() REPRESENTATION_ITEM('') STYLED_ITEM((#90),#50));#110 = PRESENTATION_LAYER_ASSIGNMENT('0','',(#100));#120 = SI_UNIT(*,.MILLI.,.METRE.);#130 = SI_UNIT(*,$,.RADIAN.);#140 = GLOBAL_UNIT_ASSIGNED_CONTEXT('<context id>','<context type>',(#120,#130));#150 = DRAWING_SHEET_REVISION('<sheet name>',(#100),#140,'<sheet id>');#160 = DRAWING_DEFINITION('<drawing definition id>',$);#170 = DRAWING_REVISION('<drawing revision id>',#160,$);#180 = AREA_IN_SET(#150,#170);ENDSEC;END-ISO-10303-21;
線分インスタンス(Part21ファイル)線分インスタンス線分インスタンス((Part21Part21ファイルファイル))
文字インスタンス文字インスタンス文字インスタンス
文字インスタンス
presentation_layer_assignment
レイア#1472
item
annotation_occurrence
draughting_annotation_occurence
annotation_text_occurrence
文字本体
representation_item
name ・・
styles
geometric_representation_item
styled_item
#602
items
presentation_view‘TOP’
略
文字実体
text_literal
draughting_ pre_defined_text_font
name‘ISO 3098-1 font B’
font
RIGHTpath
‘TOP VIEW’literal
locationcartesian_
point
derection
axis2_placement_2D
name・・
alignmentbaseline lift
placementref_direction
#596#595
#200
#594
#569
文字の見え方
presentation_style_assignment
text_style_with_box_characteristics
name・・
draughting_ pre_defined_colour
name‘blue’
text_style_for_defined_fontcharacter_
appearancetext_colour
box_hight
box_width
box_rotate_angle
3.2
box_stant_angle
3.2
0.0
0.0
styles#601 #600
#102
#599
略
assigned_items
文字インスタンス(Part21ファイル)文字インスタンス文字インスタンス((Part21Part21ファイルファイル))#420 = TEXT_LITERAL('','TOP VIEW',#430,'baseline left',.RIGHT.,#70);#430 = AXIS2_PLACEMENT_2D('',#440,$);#440 = CARTESIAN_POINT('',(1.34976081725825,-1.40961478361176));#450 = TEXT_STYLE_FOR_DEFINED_FONT(#60);#460 = TEXT_STYLE_WITH_BOX_CHARACTERISTICS('',#450,(BOX_HEIGHT(3.2),BOX_WIDTH(3.2),BOX_SLANT_ANGLE(0.),BOX_ROTATE_ANGLE(0.)));#470 = PRESENTATION_STYLE_ASSIGNMENT((#460));#480 = (ANNOTATION_OCCURRENCE()ANNOTATION_TEXT_OCCURRENCE()DRAUGHTING_ANNOTATION_OCCURRENCE()REPRESENTATION_ITEM('')STYLED_ITEM((#470),#420)GEOMETRIC_REPRESENTATION_ITEM());#490 = MAPPED_ITEM('',#500,#540);#500 = REPRESENTATION_MAP(#510,#230);#510 = AXIS2_PLACEMENT_2D('',#520,#530);#520 = CARTESIAN_POINT('',(0.,0.));#530 = DIRECTION('',(1.,0.));#540 = AXIS2_PLACEMENT_2D('',#550,#560);#550 = CARTESIAN_POINT('',(10.9074453128387,26.4253893960984));#560 = DIRECTION('',(1.,0.));
trimmed_curve
draughting_annotation_occurrence
projection_curve
item
annotation_occurrence
geometric_representation_item
name
representation_item
styled_item syles
annotation_curve_occurrence
寸法線本体
寸法線実体
trimmed_curve
draughting_annotation_occurrence
projection_curve
item
annotation_occurrence
annotation_curve_occurrence
geometric_representation_item
name
representation_item
styled_item syles
補助線本体
補助線実体
name ・・
geometric_representation_item
draughting_callout
representation_item
draughting_elements
dimension_curve_directed_callout
name ・・
representation_item
geometric_representation_item
draughting_callout
relating_draughting_callout
dimension_callout_relationship
・・‘primary’descriptoin
name
寸法表記本体
itemsitems寸法表記線本体
axis2_placement_2D
x_scaley_scale
symbol_target
name・・1.01.0
pre_defined_terminator_symbol
‘open_arrow’
name
item
terminator_symbol dimension_curve_terminator
role
TARGET
styled_item
geometric_representation_item
representation__item
name・・
矢印本体
矢印実体
difinitiondraughting_annotation_occurence
annotation_occurence
presentation_style_assignment
symbol_style
symbol_colour
style
style_of_symbol
colour_of_symbol
draughting_pre_defined_colour
name ‘blue’
name・・
styles
寸法表記値の見え方
draughting_pre_defined_curve_font
name ‘continuous’
curve_stylepresentation_style_assignment
curve_fontstyles
draughting_pre_defined_colour
name ‘blue’
curve_colour
curve_width
value_component
length_measure_with_unit
unit_component length_unit
si_unit
named_unit
positive_length_measure(0.125)
寸法表記線見え方trimmed_curve
draughting_annotation_occurrence
projection_curve
item
annotation_occurrence
annotation_curve_occurrence
geometric_representation_item
name
representation_item
styled_item syles
補助線本体
補助線実体
difinition
placement
target
矢印本体
矢印の見え方
矢印実体
styles
defined_symbol
name・・
item
geometric_representation_item
symbol_item
annotation_symbol_occurrence
terminator_symbol
role
dimension_curve_terminator
‘ORIGIN’
draughting_annotation_occurrence
annotation_occurrence
representation_item
name・・
annotated_curve annotated_curve
linear_dimension
relating_draughting_callout
contents
item
寸法表記値本体
実測寸法値
contents
contents
name ‘bluecontinuous’
presentation_view‘FRONT’
略
annotation_symbol_accurrence
presentation_style_assignment
text_style_with_box_characteristics
name ・・
draughting_ pre_defined_colour
name‘blue’
text_style_for_defined_fontcharacter_
appearancetext_colour
box_hightbox_width
box_rotate_angle
3.2
box_stant_angle
3.20.0
0.0
styles
representation_item
name ‘dimension value’
寸法表記値実体
annotation_occurrence
draughting_annotation_occurence
annotation_text_occurrence
寸法表記値本体
representation_item
name ・・
blanking
3.2
name・・
planar_box
12.8size_in_xsize_in_y
axis2_placement_2Dname
・・
cartesian_ point
derectionplacement
locationtext_literal_
with_blanking_box
styles
geometric_representation_item
styled_item
mapped_itemgeometric_
representation_item
text_literaldimension_text_
associativity
draughting_ pre_defined_text_font
name‘ISO 3098-1 font B’
font
RIGHTpath
‘12.5’literal
locationcartesian_ point
derection
axis2_placement_2Dname
・・
alignmentbaseline lift
placement・・
representationmpping_source
mpped_targete
寸法本体
寸法対象物本体
items
mapped_origin
representatio_map
measure_representation_item
length_measure_with_unit
measure_with_unit
unit_componemt
length_measure(12.5)
named_unit
length_unit
si_unit
value_componemt
representation_item
name ‘dimension’
mapped_representation
context_of_items
shape_demension_representatoin
name・・
representation_context
context_identifier・・
context_type‘3D’
global_unit_assignment_context
geometric_representation_context(3)
寸法対象物実体
product_definition
applies_to
‘dimension’namedimentional_ size
product_definition_shape ・・
description
‘productshape
name
shape_aspect
product_definitional.U.
‘dimension’name
・・description
of_shape
definition
demensional_characteristic_represemtaion
name‘dimension’
dimension
sahpe_definition_representaiton
property_definition
definition
‘demension’description
name ‘aspect’
definition
sahpe_representaiton
itemmed_curve
used_representatoin
context_of_items
name・・
items
name・・
x_scale 1.0
y_scale 1.0
pre_defined_terminator_symbol
‘open_arrow’
name
symbol_target
axis2_placement_2D
defined_symbol
name・・
placement
target
・・
draughting_elements
structured_dimension_callout
definition
C5tc6-2.p21解析結果
styled_item
item
styles
ref_direction
ref_direction
100.0
164
32
5
6
2
1
3
4 5
STEP の実装とTool Kit
ExpressCompiler
STEPParser
STEPFormatter
Express ModelAP2XX
STEP Phy.File Applicationwith SDAI
S D A I
DataBase
DictionaryRepository
ModelRepository
STEP DataManagementSystem
SDAI データベース関連関数
SDAI SDAI データベース関連関数データベース関連関数 ::
––sdaiCreateModelsdaiCreateModel(), (), sdaiCreateModelBNsdaiCreateModelBN()()
––sdaiDeleteModelsdaiDeleteModel()()
––sdaiOpenModelsdaiOpenModel(), (), sdaiOpenModelBNsdaiOpenModelBN()()
––sdaiOpenRepositorysdaiOpenRepository(), (), sdaiOpenRepositoryBNsdaiOpenRepositoryBN()()
––sdaiCloseModelsdaiCloseModel()()
SDAI 初期化関数
■■DatabaseDatabaseにアクセスするには、先ずにアクセスするには、先ずsessionsessionがオープンされていながオープンされていな
ければならないければならない
■■ModelModelを操作するには、それが属するを操作するには、それが属するRepositoryRepositoryが、先ずオープンが、先ずオープン
される必要があるされる必要がある
■モデルをオープンする場合、しかるべきアクセス権を設定する■モデルをオープンする場合、しかるべきアクセス権を設定する
関連する関数関連する関数
––sdaiOpenSessionsdaiOpenSession(),(), sdaiCloseSession sdaiCloseSession()()
––sdaiOpenRepositorysdaiOpenRepository(),(), sdaiCloseRepository sdaiCloseRepository()()
––sdaiCreateModelsdaiCreateModel()()
––sdaiOpenModelsdaiOpenModel(),(), sdaiCloseModel sdaiCloseModel().(). sdaiDeleteModel sdaiDeleteModel()()
SDAI 識別子検索機能
名前で検索する場合と名前で検索する場合とInstanceInstance識別子を用いて検索する場合識別子を用いて検索する場合
があるがある
関連する関数関連する関数
–– sdaiGetEntitysdaiGetEntity(),(), sdaiGetAttrDefinition sdaiGetAttrDefinition(), (), sdaiGetAttrDefinitionBNsdaiGetAttrDefinitionBN()()
SdaiInstance pointIdSdaiInstance pointId,, xId xId,,yIdyId,,modelIdmodelId;;
pointIdpointId = = sdaiGetEntity sdaiGetEntity((modelIdmodelId,,””pointpoint””););’’xIdxId = = sdaiGetAttrDefinitionBN sdaiGetAttrDefinitionBN((““MySchemaMySchema””,,””POINTPOINT””,,””XX””););yIdyId = = sdaiGetAttrDefinition sdaiGetAttrDefinition((pointIdpointId,,””yy””););
SDAI データ操作関数 I
■如何なるデータ操作関数も、名前またはインスタンス識別子を用いて、実際の■如何なるデータ操作関数も、名前またはインスタンス識別子を用いて、実際の EXPRESEXPRES項目項目((entityNameentityName,, attributeName attributeName))を識別するを識別する
■インスタンス識別子を用いた方が性能は良い■インスタンス識別子を用いた方が性能は良い
■データ操作関数は、インスタンスの特定の属性や他のどの属性にもアクセス出来る■データ操作関数は、インスタンスの特定の属性や他のどの属性にもアクセス出来る
関連する関連する EDMinterfaceEDMinterface 関数関数::
––sdaiCreateInstancesdaiCreateInstance(),(), sdaiDeleteInstance sdaiDeleteInstance()()
––sdaiPutAttrsdaiPutAttr(),(), sdaiGetAttr sdaiGetAttr(),(), sdaiPutAttrs sdaiPutAttrs(),(), sdaiGetAttrs sdaiGetAttrs()()
––sdaiTestAttrsdaiTestAttr(),(), sdaiUnsetAttr sdaiUnsetAttr()()
––sdaiCreateAggrsdaiCreateAggr(),(), edmiDeleteAggr edmiDeleteAggr()()
––sdaiCreateNestedAggrsdaiCreateNestedAggr()()
SDAI データ操作関数 II
SdaiInstance pointInstSdaiInstance pointInst,, pointId pointId,, yId yId;;SdaiRealSdaiReal x, y, z; x, y, z;
yIdyId = = sdaiGetAttrDefinition sdaiGetAttrDefinition((pointIdpointId,,””YY””););
sdaiGetAttrBNsdaiGetAttrBN((pointInstpointInst, , ““XX””,, sdaiREAL sdaiREAL, &x);, &x);
sdaiGetAttrsdaiGetAttr((pointInstpointInst,, yId yId,, sdaiREAL sdaiREAL, &y);, &y);
sdaiPutAttrsBNsdaiPutAttrsBN((pointInstpointInst, 3, , 3, ““xx””,, sdaiREAL sdaiREAL, 1.2,, 1.2, ““yy””,, sdaiREAL sdaiREAL, 0.2,, 0.2, ““zz””,, sdaiREAL sdaiREAL, 1.1);, 1.1);
SDAISDAIのの使用例使用例
ENTITY organizational_address SUBTYPE OF (address); organizations : SET [1:?] OF organization; description : text;END_ENTITY;
ENTITY personal_address SUBTYPE OF (address); people : SET [1:?] OF person; description : text;END_ENTITY;
ENTITY address; internal_location : OPTIONAL label; street_number : OPTIONAL label; street : OPTIONAL label; postal_box : OPTIONAL label; town : OPTIONAL label; region : OPTIONAL label; postal_code : OPTIONAL label; country : OPTIONAL label; facsimile_number : OPTIONAL label; telephone_number : OPTIONAL label; electronic_mail_address : OPTIONAL label; telex_number : OPTIONAL label; WHERE WR1: EXISTS(internal_location) OR EXISTS(street_number) OR EXISTS(street) OR EXISTS(postal_box) OR EXISTS(town) OR EXISTS(region) OR EXISTS(postal_code) OR EXISTS(country) OR EXISTS(facsimile_number) OR EXISTS(telephone_number) OR EXISTS(electronic_mail_address) OR EXISTS(telex_number);END_ENTITY; -- address
ENTITY person; id : identifier last_name : OPTIONAL label; first_name : OPTIONAL label; middle_name : OPTIONAL LIST[1:?] OF label; prefix_titles : OPTIONAL LIST[1:?] OF label; suffix_titles : OPTIONAL LIST[1:?] OF label; UNIQUE UR1 : id; WHERE WR1 : EXISTS (last_name) OR EXISTS (first_name);END_ENTITY;
SDAISDAIのの使用例使用例 modelRepository = sdaiOpenRepositoryBN (“ModelRepository”);model = sdaiOpenModelBN (modelRepository, ”EmployeeAddress”, sdaiRO ); :モデル名EmployeeAddressをオープンするaggeregate = sdaiGetEntityExtentBN (model, “personal_address”); :エンテイテイpersonal_addressにアクセスMaxNumber = sdaiGetMemberCount (aggregate); :personal_addressエンテイテイのインスタンスの数Iterator = sdaiCreateIterator (aggregate);for (i1= 0; i1<MaxNumber; i1++) { :インスタンスを1ケ毎呼び出して属性値を得る sdaiNext (Iterator); sdaiGetAggrByIterator (Iterator, sdai INSTANCE, &resultId); sdaiGetAttrBN (resultId, “internal_location”, sdaiSTRING, &intLocation); : Internal location (地域名) sdaiGetAttrBN (resultId, “street_number”, sdaiSTRING, &streetNo); : Street number (通り番号) sdaiGetAttrBN (resultId, “street”, sdaiSTRING, &street); : Street (通り) sdaiGetAttrBN (resultId, “postal_box”, sdaiSTRING, &boxNo); : Postal box (私書箱) sdaiGetAttrBN (resultId, “town”, sdaiSTRING, &town); : Town (町) sdaiGetAttrBN (resultId, “region”, sdaiSTRING, ®ion); : region (地域) sdaiGetAttrBN (resultId, “postal_code”, sdaiSTRING, &postalCode); : Postal code (郵便番号) sdaiGetAttrBN (resultId, “country”, sdaiSTRING, &country); : Country (国) sdaiGetAttrBN (resultId, “facsimile_number”, sdaiSTRING, &faxNumber); : Fax (ファクス番号) sdaiGetAttrBN (resultId, “telephone_number”, sdaiSTRING, &phoneNumber); : Phone (電話番号) sdaiGetAttrBN (resultId, “electronic_mail_address”, sdaiSTRING, &e-mailAddress); : E-mail (eメールアドレス) sdaiGetAttrBN (resultId, “telex_number”, sdaiSTRING, &telexNumber); : Telex (テレックス番号) sdaiGetAttrBN (resultId, “description”, sdaiSTRING, &description); sdaiGetAttrBN (resultID, “people”, sdaiAGGR, & AggrID); : 属性peopleが指すpersonエンテイテイを指定 nElements = sdaiGetMemberCourt (AggrId); : personエンテイテイのインスタンスの数 IterId = sdaiCreateIterator (AggrId); for (i2 = 0; i2<nElements; i2++) { : 同一住所に住む人の名前を取り出す
sdaiNext (IterId); sdaiGetAggrByIterator (IterId, sdai INSTANCE, &InstanceId);
sdaiGetAttrBN (InstanceId, “id”, sdai STRING, &id); : 識別番号sdaiGetAttrBN (InstanceId, “last_name”, sdai STRING, &lastName); : 姓sdaiGetAttrBN (InstanceId, “first_name”, sdaiSTRING, &firstName); : 名
・ ・ ・ }}
情報要件IDEF1X,EXPRESS-G
ARM
情報要件IDEF1X,EXPRESS-G
ARM
翻訳EXPRESS-G,EXPRESS
AIM
翻訳EXPRESS-G,EXPRESS
AIM
MappingTableMappingTable
総称リソース
総称リソース
STEPの仕組み
業務分析IDEF0AAM
業務分析IDEF0AAM
現状分析現状分析
内部仕様(システム)
内部仕様(システム)
外部仕様外部仕様
ARMとAIMのギャップを埋めるHLDAI
MappingTable
MappingTable
AIMAIM
ARMARM
①
②
③
③のレベルで操作
③のレベルで操作
APM
AIM
SDAI
①のレベルで操作
①のレベルで操作
APM
AIM
HLDAISDAI
① EXPRESS-Xは、ISOのNWI・Dr.Hardwick (RPI), Ian Bailey (EuroSTEP)
② EXPRESS-Xは、異なるスキーマ間のデータ交
換プログラムのコンパイラの仕様・一括変換のイメージが強く、過渡的な処理には不向き。
③ EXPRESS-Xの源は、EXPRESS-V(TOOLs Inc)とEXPRESS-M(CIMIO)
Mapping Language
HLDAIとMapping
HLDAI Generator
APMschema
AIMschema
Mappingdescription
HLDAI Compiler
HLDAI Parts
Base Schema(Ordinary EXPRESS)
● ● ● ● ●
View Schema(Ordinary EXPRESS)
● ●
Mapping Schema(EXPRESS-X)
■
■
内容・STEPデータへのアクセスを業務レベルで可能にす
る仕組みを提供する。
狙い・「より効率的にSTEPシステムの構築が行える環境」
を整備する
プロジェクト概要
建設建設CALSCALSの共通ライブラリの共通ライブラリ イイ
AIMのレベ
ルで操作
AIMのレベ
ルで操作
APM
AIM
SDAI
CADのレベ
ルで操作
CADのレベ
ルで操作
CAD
AIM
ライブラリイ
SDAI
CADに限定した効
率的なアクセスルーチン群を準備
STEPをライブラリで隠蔽して利用者はCADのビューでハンドリング出来る
主な共通ライブラリ主な共通ライブラリ イイ
下記のそれぞれにCADのビューで関数群を準備する
1.幾何要素
- 点、直線、折れ線、円・円弧、楕円・楕円弧
2.表記要素
-文字
-寸法線(直線寸法、角度寸法、半径・直径寸法等)
-ハッチング等
3.共通
-STEPファイル読み書き
主な共通ライブラリ主な共通ライブラリ イイ ------直線の場合のイメージ直線の場合のイメージ
presentation_layer_assignment
“0”name
“”discription
レイヤレイヤレイヤ
見え方見え方見え方
styled_item
annotation_occurrence
annotation_curve_occurrence
draughting_annotation_occurrence
representation_item
幾何要素幾何要素幾何要素
“10.0”cartesian_point
trimmed_curve
line
vector direction
“10.0”
“20.0”
“0.”parameter_value
“1.”parameter_value
“4.0”
“3.0“
presentation_style_assignment curve_style
positive_length_measure “0.15”
draughting_pre_defined_colour “green”
draughting_pre_defined_curve_font “continious””
形状形状形状
#10#10
#9#9 #8#8 #7#7
#6#6
#5#5
#4#4
#3#3
#2#2 #1#1
#11#11
dir
ref_derection
stylesitems
assigned_items
basis_curve
trim_1
trim_2
pnt
cadLine(layer,view,color,lineFont,lineWidth,x1,y1,x2,y2,&return);
共通ライブラリの使用イメージ共通ライブラリの使用イメージ (1)Read時:return = OpenPart21 (“FileName”,”RO”,level); :Part21ファイルをオープンするif (return != 0{… … … :Error処理をするGetElementTypes (ElementTypeArray); :ElementType(Feature)全体を得るwhile(ElementTypeArray[i1]) { :ElementType毎に処理する ReadElementIds (ElementTypeArray[i1],ElementIds);:構成要素の識別子 while (ElementIds[i2]) { :構成要素毎に処理をする GetElementMember (ElementIds[i2],structure); case ElementIds[i2]: ・ ・(2) Write時:return = OpenPart21 (“FileName”, “RW”, level); : Part21ファイルをオープンするif (return != 0) { … … … … … … … : Error処理をするPutElementMember(ElementType,structure); : ElementType(Feature)毎に処理
・ ・
EXPRESS-XによるSTEPデータの扱い
システムの基本構成
P21P21Excel ↓Part21Excel ↓Part21
Excel ↑Part21Excel ↑Part21
Excel(CSV)Excel(CSV)
RDB
STEP/DB
Rea
der
Writ
er
Compiler EXPRESS-X
STEP/DB
Express Data Manager
名前 郵便 住所 電話
鈴木 一郎 100 東京都・… 03-5555-xxxx
山田 太郎 812 福岡市・… 092-812-y y y y
・
・
名簿
名前
郵便番号
住所
電話番号
入力モデル入力モデル STEPモデルSTEPモデル
address
personal_address
internal_location
street_number
street
town
・・・
person
id
last_name
first_name
middle_name
・・・
CSV表形式モデルからSTEPモデルに変換するために1次的に作成する(STEP形式の)モデル
維持される(貯蔵用の)STEPデータモデル 国際標準に基づくデータ表現がさ
れている
ISO10303Part40番台のリソー
スを用いて表現
Express-Xの機能によりSTEPデータモデルを作成する
(注)この時点で入力モデルは削除する
2. STEPモデルへの変換
出力モデル
3. 出力モデルの作成とRDBへの登録
Express-Xの機能により出力モデルに変換する 次にRDBへの書込みをする
(注)出力モデルは処理が終わったら削除する
Read
er
Writ
er
Compiler EXPRESS-X
STEP/DB
P21 Excel ↑
Part21
Excel ↑
Part21 RDB
②
ExpExp Mpx
STEPモデルスキーマ
出力モデルスキーマ
Mappingスキーマ(STEP→出力)
①
①
Read
er
Writ
er
Compiler EXPRESS-X
STEP/DB
入力モデルスキーマ
ExpExp Mpx
STEPモデル
スキーマ
Mappingスキーマ(入力→STEP)
STEPモデル
入力モデル
②
1. 入力モデルの登録 Express-Xの機能により出力モ
デルに変換する
(注)出力モデルは処理が終わったら削除する
入力モデルdictionary
Read
er
Writ
er
Compiler EXPRESS-X
STEP/DB
P21Excel ↓
Part21Excel ↓
Part21
Excel(CSV)Excel(CSV)
入力モデル
入力モデルスキーマ
Exp ①
②
CALSとSTEP
●計算機が解釈可能な製品データの表現方法(構造と制約)と交換方法の規定
●製品のライフサイクルを通した製品DBの実装、共有、保管の基盤を提供する
ISO10303 Industrial automation system andintegration - Product data representationand exchange
物を表現するSTEPの偉大な力とその活用に取り組もう !
参考文献など
- 木村他:「製品モデルの表現とその利用法」、日本規格協会
国内で始めて出版されたSTEPの本、AP201の実装を元に解説。(¥2,900)
- J.Fowler:「STEPがわかる本」、工業調査会
プラントCALS研究会が翻訳。STEPの全貌を記述している。(¥2,800)
- 富士通:「STEP/EXPRESSへの道」、富士通STEP研究開発センター
STEPシステムとペアになった自己学習教材。(¥19,800)
- D. Schenck他:「Information Modeling the EXPRESS way」、Oxford
EXPRESSによる製品のモデリングを詳細に解説している。 (US$ 50.00)