IT– category –
-
ツールバーの表示制御
[vb title="VBA"] Public Sub ModifyToolbar() 'ThisDocumentの取得 Dim pDocument As IDocument Set pDocument = ThisDocument 'CommandBarsの取得 Dim pCommandBars As ICommandBars Set pCommandBars = pDocument.CommandBars 'CommandBarの取得 Dim pCommandBar As ICommandBar Set pCo... -
ジオメトリ タイプに応じてジオメトリを一時描画
[vb title="Visual Basic"] '********************************************************************* ' 定義 :fncDisplayGeometry(pGeometry As IGeometry, Rgb As Long) ' 概要 :ジオメトリタイプに応じてジオメトリを一時描画 ' 第1引数:IGeometry 描画対象のジオメトリ ' 第2引数:Long 描画色(VBAで色の定数及び値... -
FGDB フィーチャクラスが圧縮されているかどうかを調べる方法
FeatureClass → IDataset IDataset::FullName → ICompressionInfo ICompressionInfo::IsCompressed -
UIToolControl による簡易編集ツール
[vb title="VBA"] Private Const IDX As Integer = 0 Private Sub UIToolControl1_MouseDown(ByVal button As Long, ByVal shift As Long, ByVal x As Long, ByVal y As Long) Dim pEditor As IEditor Set pEditor = Application.FindExtensionByName("esriEditor.Editor") If pEditor.EditState = esriStateNotEditing Then MsgBo... -
メタデータの取得
[vb title="VBA"] 'メタデータの取得 Public Sub GetMetadata() Dim pGxApplication As IGxApplication Set pGxApplication = Application Dim pGxObject As IGxObject Set pGxObject = pGxApplication.SelectedObject Dim pMetadata As IMetadata Set pMetadata = pGxObject Dim pXmlPropertySet As IXmlPropertySet2 Set pXmlPropertySet =... -
トポロジの構築
[vb title="VBA"] Public Sub CreateTopology() Dim pWSFact As IWorkspaceFactory Set pWSFact = New AccessWorkspaceFactory Dim pWor As IWorkspace Set pWor = pWSFact.OpenFromFile("D:\WorkSpace\Personal Geodatabase.mdb", 0) Dim pFWS As IFeatureWorkspace Set pFWS = pWor Dim pDS As IDataset Set pDS = pFWS.... -
ラスター レイヤーから指定した位置とバンドのピクセル値を取得
[vb title="VBA"] Private Function getPixelValue(pRasterLayer As IRasterLayer, lngBand As Long, pPoint As IPoint) As Variant Dim pRaster As IRaster2 Set pRaster = pRasterLayer.Raster If lngBand < 0 Or lngBand > pRasterLayer.BandCount - 1 Then MsgBox "指定したバンドは存在しません... -
IActiveViewEvents を使用したイベントの利用
[csharp title="C#"] private IActiveViewEvents_Event m_pActiveViewEvents; private void toolStripMenuItem2_Click(object sender, EventArgs e) { m_pActiveViewEvents = (IActiveViewEvents_Event)axMapControl1.ActiveView; //イベント ハンドラの登録 m_pActiveViewEvents.ViewRefreshed += new IActiveViewEvent... -
アノテーション フィーチャの追加
[vb title="VBA"] private void axMapControl1_OnMouseDown(object sender, IMapControlEvents2_OnMouset e) { //右クリック以外を除外 if (!(e.button == 2)) { return; } // アノテーション レイヤーの取得 IFeatureLayer pFeatureLayer = (IFeatureLayer)axMapControl1.get_Layer(0); IAnnotationL... -
個別値分類のシンボルを特定したフィーチャから判断して更新する方法
[vb title="VBA"] Public Sub subChangeSymbolFromFeature() 'ThisDocumentの取得 Dim pMxDocument As IMxDocument Set pMxDocument = ThisDocument 'アクティブなデータフレームの取得 Dim pMap As IMap Set pMap = pMxDocument.FocusMap '最上位レイヤの取得 Dim pLayer As ILayer Set pL...
