YouTube | Facebook | X(Twitter) | RSS

ArcToolboxのツール数を数える方法

2009/12/9 (水)

ふと、ArcGISで利用できるツールボックスの数がいくつあるのか数えたくなりました。 ESRIジャパンの製品資料によると基本ライセンスのツール数は掲載されてたのですが、エクステンションで利用できるツール数が分からなかったので数えてみました。手で数えるのが面倒だったので数を求めるメソッドを探してたら方法がありました。

下のコードをArcMapのVBAに貼り付けて、マクロ”GetArcToolboxCount”を実行してください。ツールボックスのファイル名は、ArcMapやArcCatalogでArcToolboxウィンドウを開き、各ツールボックスのプロパティから確認できます。

'ツールボックス内のツール数カウント
Public Sub GetArcToolboxCount()

'Toolboxファイル
Dim strSystemToolboxName As String
strSystemToolboxName = InputBox("システム ツールボックスのファイル名を入力してください。", , "Spatial Analyst Tools.tbx")

If strSystemToolboxName = "" Then Exit Sub<br /><br /> 'ToolboxWorkspaceFactoryの作成
Dim pToolboxWorkspaceFactory As IWorkspaceFactory
Set pToolboxWorkspaceFactory = New esriGeoprocessing.ToolboxWorkspaceFactory

'ToolboxWorkspaceの作成
Dim pToolboxWorkspace As IToolboxWorkspace
Set pToolboxWorkspace = pToolboxWorkspaceFactory.OpenFromFile("C:\Program Files\ArcGIS\ArcToolbox\Toolboxes", 0)

'名前によるToolboxの取得
Dim pGPToolbox As IGPToolbox
Set pGPToolbox = pToolboxWorkspace.OpenToolbox(strSystemToolboxName)

Dim pEnumGPTool As IEnumGPTool
Set pEnumGPTool = pGPToolbox.Tools

pEnumGPTool.Reset<br /><br /> Dim pGPTool As IGPTool
Set pGPTool = pEnumGPTool.Next

Dim i As Long
i = 0
'ループ
Do Until pGPTool Is Nothing
i = i + 1

Set pGPTool = pEnumGPTool.Next
Loop

MsgBox i, , strSystemToolboxName
Debug.Print strSystemToolboxName, i
End Sub

 

結果このようになりました。

  • 3D Analyst Tools.tbx         74
  • ArcPad Tools.tbx             4
  • Geocoding Tools.tbx          5
  • Geostatistical Analyst Tools.tbx           11
  • Network Analyst Tools.tbx    18
  • Spatial Analyst Tools.tbx    167
  • Tracking Analyst Tools.tbx   2
  • Cartography Tools.tbx        20
  • Server Tools.tbx             7
  • Samples.tbx    13
  • Schematics Tools.tbx         5
  • Data Management Tools.tbx    175
  • Multidimension Tools.tbx     7
  • Mobile Tools.tbx             2
  • Linear Referencing Tools.tbx               7
  • Analysis Tools.tbx           19
  • Spatial Statistics Tools.tbx               25
  • Conversion Tools.tbx         36
  • Coverage Tools.tbx           56

Coverage Tools.tbxだけは、tbxファイルが保存されているパスが異なる("C:\Programs\ArcGIS\arcexe9x\Toolboxes")ので、IWorkspaceFactory::Openの引数を修正する必要があります。

参考:ESRI User Forum

  • この記事を書いた人

羽田 康祐

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

-プログラミング, ArcGIS
-