''' <summary> ''' XYイベントクラスの作成 ''' </summary> ''' <param name="pTable">テーブル</param> ''' <param name="pSpatialReference">空間参照</param> ''' <param name="XFieldName">Xフィールド</param> ''' <param name="YFieldName">Yフィールド</param> ''' <param name="ZFieldName">Zフィールド</param> ''' <returns>フィーチャクラス</returns> ''' <remarks></remarks> Public Function CreateXYEventSource( ByVal pTable As ITable, ByVal pSpatialReference As ISpatialReference, Optional ByVal XFieldName As String = "X", Optional ByVal YFieldName As String = "Y", Optional ByVal ZFieldName As String = "") As IFeatureClass 'XYEvent2FieldsProperties オブジェクトの作成 Dim pXYEvent2FieldsProperties As IXYEvent2FieldsProperties = New XYEvent2FieldsPropertiesClass() pXYEvent2FieldsProperties.XFieldName = XFieldName pXYEvent2FieldsProperties.YFieldName = YFieldName pXYEvent2FieldsProperties.ZFieldName = ZFieldName 'Z値を設定する場合のオプション設定 'ソース テーブルからNameオブジェクトの取得 Dim pDataset As IDataset = CType(pTable, IDataset) Dim pSourceName As IName = pDataset.FullName 'XYEventSourceNameオブジェクトの作成 Dim pXYEventSourceName As IXYEventSourceName = New XYEventSourceNameClass() pXYEventSourceName.EventProperties = pXYEvent2FieldsProperties pXYEventSourceName.EventTableName = pSourceName pXYEventSourceName.SpatialReference = pSpatialReference '空間参照 'XY イベント ソースの作成 Dim pEventName As IName = CType(pXYEventSourceName, IName) Dim pXYEventSource As IXYEventSource = CType(pEventName.Open(), IXYEventSource) 'IFeatureClass型へキャスト Dim pFeatureClass As IFeatureClass = CType(pXYEventSource, IFeatureClass) Return pFeatureClass End Function
XY イベント クラスの作成
2016/9/1 (木)