YouTube | Facebook | Twitter  Feed

アノテーション フィーチャクラスにアノテーション クラスを追加

2016/9/1 (木)

'VBA
'アノテーション レイヤからアノテーションフィーチャクラスを取得
Dim pFeatureClass As IFeatureClass
Set pFeatureClass = pFeatureLayer.FeatureClass
 
'AnnotationFeatureClassExtensionの取得
Dim pAnnoClass As IAnnoClass
Set pAnnoClass = pFeatureClass.Extension
 
'シンボル コレクションの取得
Dim pSymbolCollection As ISymbolCollection2
Set pSymbolCollection = pAnnoClass.SymbolCollection
 
'既存のシンボル コレクションからデフォルト アノテーションクラス(インデックス番号0)を取得
Dim pSymbolIdentifier  As ISymbolIdentifier2
Call pSymbolCollection.GetSymbolIdentifier(0, pSymbolIdentifier)
 
'アノテーションクラスからテキスト シンボルを取得
Dim pTextSymbol As ITextSymbol
Set pTextSymbol = pSymbolIdentifier.Symbol
 
Dim pRGBColor As IRgbColor
Set pRGBColor = pTextSymbol.Color
pRGBColor.Red = 255
pRGBColor.Green = 0
pRGBColor.Blue = 0
 
'色を変更
pTextSymbol.Color = pRGBColor
 
Dim pNewSymbolIdentifier As ISymbolIdentifier2
   
'アノテーションクラスの追加
Call pSymbolCollection.AddSymbol(pTextSymbol, "新規アノテーション クラス", pNewSlIdentifier)
 
'追加されたアノテーションクラスのIDと名前を取得
Debug.Print pNewSymbolIdentifier.ID, pNewSymbolIdentifier.Name
 
'新規にアノテーション フィーチャを作成する際、シンボルIDを変更することでアノテーラスで定義しシンボルで表示されます。

関連記事

  • この記事を書いた人

羽田 康祐

Twitter#一日一図法を連載中。GIS上級技術者、Esri認定インストラクター、CompTIA CTT+ Classroom Trainer、潜水士、元PADIダイブマスター、四アマ。WordPress は 2.1 からのユーザーで歴だけは長い。 代表著書『地図リテラシー入門―地図の正しい読み方・描き方がわかる』 GIS を使った自己紹介はこちら。ESRIジャパン(株)所属、青山学院大学非常勤講師を兼務。発言は個人の見解です。

-プログラミング, ArcGIS
-,