プログラミング– category –
-
マップ ドキュメントの新規作成時にダイアログを表示させない回避策
[csharp title="C#"] ITemplates pTemplates = m_pApplication.Templates; string strPath = pTemplates.get_Item(0); //Normal テンプレートの取得 m_pApplication.NewDocument (false); //これだとダイアログが表示される m_pApplication.NewDocument(false, strPath); //新規作成 [/csharp] -
マップの回転
[vb title="VBA"] ActiveView.ScreenDisplay.DisplayTransformation.Rotation [/vb] -
ISelectionSet-Search メソッドの動作
[vb title="VBA"] Dim pFeatureCursor As IFeatureCursor Set pFeatureCursor = pFeatureClass.Insert(True) 'フィーチャバッファを使用 Dim pFeature As IFeature Set pFeature = pFeatureClass.CreateFeatureBuffer Dim i As Long 'ループ用 Dim q As Long 'ObjectID Dim c As Long 'フィーチャ フラッシュ用 c = 0 'ループ処理 For i = 0 ... -
アクティブなデータ フレーム内の全てのフィーチャ レイヤーから指定したフィールド表示を切り替え
[vb title="VBA"] Sub ShowHideField() 'フィールド名の設定 Dim vrnFieldName As Variant vrnFieldName = Array("City.Shape_Length", _ "City.Shape_Area", _ "CITY_H17_copy.ObjectID", _ "CITY_H17_copy.KEY_CODE", _ "CITY_H17_copy.Shape_Length", _ "CITY_H17_copy.Shape_Are... -
属性検索で取り出したレコードの順序を変更する方法
[vb title="VBA"] Sub test() Dim pMxDoc As IMxDocument Set pMxDoc = ThisDocument Dim pFL As IFeatureLayer Set pFL = pMxDoc.FocusMap.Layer(0) Dim pFeatureClass As IFeatureClass Set pFeatureClass = pFL.FeatureClass Dim strFieldName As String strFieldName = "P_NUM" Dim pQueryFilter As IQueryFilter Se... -
フィーチャクラスから個別値一覧を取得
[vb title="VBA"] Dim pMxDoc As IMxDocument, pFLayer As IFeatureLayer, pData As IDataStatistics Dim pCursor As ICursor, pStatResults As IStatisticsResults Set pMxDoc = ThisDocument Set pFLayer = pMxDoc.FocusMap.Layer(0) Set pCursor = pFLayer.Search(Nothing, False) Set pData = New DataStatistics pData.Field = "... -
ArcMap 最上位レイヤーの取得
[vb title="VBA"] 'ThisDocumentの取得 Dim pMxDocument As IMxDocument Set pMxDocument = ThisDocument 'アクティブなデータフレームの取得 Dim pMap As IMap Set pMap = pMxDocument.FocusMap '最上位レイヤの取得 Dim pLayer As ILayer Set pLayer = pMap.Layer(0) [/vb] -
IGeoReference を利用したラスターデータセットのジオリファレンス
[csharp title="C#"] IRasterLayer pRasterLayer = (IRasterLayer)ArcMap.Document.FocusMap.get_Layer(0); IGeoDataset pGeoDataset = (IGeoDataset)pRasterLayer; IGeoReference pGeoReference = (IGeoReference)pRasterLayer; if(pGeoReference.CanGeoRef == false) { return; } //基準参照点(現在のマップ座標系に... -
アノテーション レイヤーに代替シンボルを追加する方法
[vb title="VBA"] Public Sub Test() '現在のドキュメントを取得 Dim pMxDocument As IMxDocument Set pMxDocument = ThisDocument 'アクティブなデータフレームの取得 Dim pMap As IMap Set pMap = pMxDocument.FocusMap 'レイヤを取得 Dim pLayer As IFeatureLayer Set pLayer = pMap.Lay... -
指定した XY 座標値を中心にマップを移動する方法
[vb title="VBA"] '****************************************************************************** ' 定義 :fncMapMove(X As Double, Y As Double) ' 概要 :指定したXY座標を中心にマップを移動 ' 第1引数 :Double ' 第2引数 :Double ' 戻り値 :なし ' ' 製品 :ArcGIS Desktop 9.1 ArcView ' ライブラリ :ArcMapUI, Carto, Display, Geom...
