-
ラスター レイヤー・フィーチャ レイヤーの立ち上げ
[csharp title="C#"] private void AddRasterLayerAsSurface() { //RasterLayerの作成 IRasterLayer pRasterLayer = new RasterLayerClass(); pRasterLayer.CreateFromFilePath(@"E:\SpatialData\Raster\ジオイド(ArcGIS93)mg"); pRasterLayer.Name = "DEM"; axSceneControl1.Scene.AddLayer((ILa... -
ビューの設定ダイアログの設定
[vb title="VBA"] Public Sub SetProperties() Dim pSxDocument As ISxDocument Set pSxDocument = ThisDocument Dim pScene As IScene Set pScene = pSxDocument.Scene Dim pSceneGraph As ISceneGraph Set pSceneGraph = pScene.SceneGraph Dim p3DViewer As I3DViewer Set p3DViewer... -
シーン レイヤのオフセットを設定
[vb title="VBA"] 'シーン レイヤのオフセットを設定 Sub OffsetExpressionString() Dim pSxDocument As ISxDocument Set pSxDocument = ThisDocument Dim pScene As IScene Set pScene = pSxDocument.Scene Dim pLayer As ILayer Set pLayer = pScene.layer(0) Dim p3DProperties As I3DPr... -
3D 表示に関する設定
ArcSceneの表示で最低限必要なパラメータは観測点位置、目標点位置、視野角、ロール角(ステレオ表示の場合は眼間隔・視差・表示方法)です。その他の設定は基本パラメータに影響を与える関連設定となります。ArcObjectsを使用すると設定可能なパラメータは増えますが、こちらも同様に基本のパラメータに影響するもので、ユニークな設定では... -
SimpleMarker3DSymbol の作成
[vb title="VBA"] Dim pRgbColor As IRgbColor Set pRgbColor = New RgbColor pRgbColor.Red = 255 pRgbColor.Green = 0 pRgbColor.Blue = 0 Dim pSimpleMarker3DSymbol As ISimpleMarker3DSymbol Set pSimpleMarker3DSymbol = pMultilayerMarkersymbol.layer(0) 'New SimpleMarker3DSymbol pSimpleMarker3DSymbol.ResolutionQuality = 0.5... -
Scene・Globe の再描画
[vb title="VBA"] pSceneGraph.RefreshViewers 'ビューの再描画 pSceneGraph.ActiveViewer.Redraw True pSceneGraph.Invalidate pFeatureLayer, True, True [/vb] -
Marker3DSymbol の作成
http://resources.esri.com/help/9.3/arcgisengine/ArcObjects/esri3DAnalyst/IGeneralMultiPatchCreator_Example.htm 任意の画像ファイルでテクスチャを作成するにはマルチパッチが必要だが、IImport3DFile2::CreateFromFile メソッドで作成し、Geomeryプロパティからマルチパッチが取得できる。 サムネイルがデフォルトのままなので、IMark... -
ITinSelection の使用
[vb title="VBA"] ’ ITinSelectionの使用 Public Sub Test() '現在のドキュメントを取得 Dim pMxDocument As IMxDocument Set pMxDocument = ThisDocument 'アクティブなデータフレームの取得 Dim pMap As IMap Set pMap = pMxDocument.FocusMap 'レイヤを取得 Dim pTinLayer As ITinLayer ... -
I3DProperties3 オブジェクトの取得
[vb title="VBA"] Private Function Get3DPropsFromLayer(layer As ILayer) As I3DProperties3 Dim layerExtensions As ILayerExtensions Set layerExtensions = layer Dim i As Long For i = 0 To layerExtensions.ExtensionCount - 1 If TypeOf layerExtensions.Extension(i) Is I3DProperties3 Then ... -
ArcScene と ArcGlobe によるクリック地点のポイント座標取得
[vb title="VBA"] 'ArcSceneによるクリック地点のポイント座標取得 Private Sub UIToolControl1_MouseDown(ByVal button As Long, ByVal shift As Long, ByVal x As Long, ByVal y As Long) Dim pSxDocument As ISxDocument Set pSxDocument = ThisDocument Dim pSceneGraph As ISceneGraph Set pSceneGraph = pSxDocu...
