DATA;
#10=IFCSPACE($,$,$,$,(),$,(),$,(),.INTERNAL.,'R1','Office Room',0.,100.,250.,0.,0.,0.,0.);
#11=IFCSPACE($,$,$,$,(),$,(),$,(),.INTERNAL.,'R2','Meeting Room',0.,20.,50.,0.,0.,0.,0.);
ENDSEC;
'/// エンティティの集合を取得 ///
'[3]に入れる
Dim objEntities
Set objEntities = objDesign.FindObjects("IfcSpace")
If IsObject(objEntities) = TRUE Then
' 処理[7]
Set objEntites = Nothing
End If
'/// エンティティを取得 ///
'[7]に入れる
Dim objEntity
For Each objEntity In objEntities
If IsObject(objEntity) = TRUE Then
' 処理[8]
Set objEntity = Nothing
End If
Next
'または
Dim imax,imin,i
imax = objEntities.Count
imin = 1
For i = imin To imax
Set objEntity = objEntities.Item(i)
If IsObject(objEntity) = TRUE Then
' 処理[8]
Set objEntity = Nothing
End If
Next
'/// アトリビュートの集合を取得 ///
'[8]に入れる
Dim objAttributes
Set objAttributes = objEntity.Attributes
If IsObject(objAttributes) = TRUE Then
' 処理[9]
Set objAttributes = Nothing
End If
'/// アトリビュートを取得 ///
'[9]に入れる
Dim objAttribute
Dim txt_sum
txt_sum = ""
Set objAttribute = objAttributes.Item("SpaceReference")
If IsObject(objAttribute) = TRUE Then
' 処理
txt_sum = txt_sum & "/部屋番号:" & objAttribute.Value
Set objAttribute = Nothing
End If
Set objAttribute = objAttributes.Item("SpaceName")
If IsObject(objAttribute) = TRUE Then
' 処理
txt_sum = txt_sum & "/部屋名:" & objAttribute.Value
Set objAttribute = Nothing
End If
Set objAttribute = objAttributes.Item("calcTotalArea")
If IsObject(objAttribute) = TRUE Then
' 処理
txt_sum = txt_sum & "/部屋面積:" & CStr(objAttribute.Value)
Set objAttribute = Nothing
End If
Set objAttribute = objAttributes.Item("calcTotalVolume")
If IsObject(objAttribute) = TRUE Then
' 処理
txt_sum = txt_sum & "/部屋容積:" & CStr(objAttribute.Value)
Set objAttribute = Nothing
End If
MsgBox txt_sum