com.esri.arcgis.globecore
Interface IGlobeDisplayLayers

All Superinterfaces:
Serializable
All Known Subinterfaces:
IGlobeDisplayLayers2
All Known Implementing Classes:
GlobeDisplay

public interface IGlobeDisplayLayers
extends Serializable

Provides access to members that manipulate globe display layers.

Superseded By

IGlobeDisplayLayers2

Description

IGlobeDisplayLayers interface provides access to members that affect a layers property. IGlobeDisplaylayers interface has the following properties and methods:

BaseLayers – an array containing internal layers used as a source of elevation for Floating Layers, IsLayerVisible – indicats if a layer is visible, and LayerTransparency – transparency value of the layer between 0 to 100.

ApplyHeightProperties method to apply hieght property (including offset, unit conversion and elevation expression) to a layer, FindGlobeLayerProperties a method to find GlobeLayerProperties, RefreshLayer refreshes a layer (regenerates the layer cache).

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.


Method Summary
 void addLayer(ILayer pLayer)
          Adds a layer.
 void applyHeightProperties(ILayer pGLayer)
          Applies changes in height properties to the layer.
 IGlobeLayerProperties findGlobeProperties(ILayer pLayer)
          Finds the globe properties of the layer.
 void generateTiles(ILayer pLayer, int fromLOD, int toLOD)
          Generates the tiles in the specified levels of detail.
 IArray getBaseLayers()
          The internal layers created to support base surfaces for floating layers.
 int getMaximumLayerLOD(ILayer pLayer)
          Gets the maximum level of detail to display the layer.
 boolean isParentsAreVisible(ILayer pLayer)
          Indicates if all parents are visible.
 void refreshLayer(ILayer pLayer)
          Refreshes a layer, possibly including recaching.
 void refreshLayerSelection(ILayer pLayer)
          Refreshes the display of the selection in a layer.
 void refreshTextureObjectsLayer(ILayer pLayer)
          Deletes all the textures corresponding to a layer and to force them to reload.
 void removeLayer(ILayer pLayer)
          Removes a layer.
 void reparent(ILayer layer, ICompositeLayer newParent)
          Re-parents the layer.
 void setIsLayerVisible(ILayer pLayer, boolean rhs2)
          Indicates if the layer is visible.
 void setLayerDepthPriority(ILayer pLayer, int depthPrior)
          Sets face depth priority of a layer.
 void setLayerFaceCulling(ILayer pLayer, int cullMode)
          Sets face culling property of a layer.
 void setLayerLightingOption(ILayer pLayer, boolean isIlluminated)
          Indicates if the layer is illuminated.
 void setLayerShadingMode(ILayer pLayer, boolean isSmooth)
          Indicates if the layer is smoothly shaded.
 void setLayerTransparency(ILayer pLayer, short rhs2)
          Transparency percentage of a layer.
 

Method Detail

addLayer

void addLayer(ILayer pLayer)
              throws IOException,
                     AutomationException
Adds a layer.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Parameters:
pLayer - A reference to a com.esri.arcgis.carto.ILayer (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

removeLayer

void removeLayer(ILayer pLayer)
                 throws IOException,
                        AutomationException
Removes a layer.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Parameters:
pLayer - A reference to a com.esri.arcgis.carto.ILayer (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

refreshLayer

void refreshLayer(ILayer pLayer)
                  throws IOException,
                         AutomationException
Refreshes a layer, possibly including recaching.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Parameters:
pLayer - A reference to a com.esri.arcgis.carto.ILayer (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

refreshLayerSelection

void refreshLayerSelection(ILayer pLayer)
                           throws IOException,
                                  AutomationException
Refreshes the display of the selection in a layer.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Parameters:
pLayer - A reference to a com.esri.arcgis.carto.ILayer (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setIsLayerVisible

void setIsLayerVisible(ILayer pLayer,
                       boolean rhs2)
                       throws IOException,
                              AutomationException
Indicates if the layer is visible.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Parameters:
pLayer - A reference to a com.esri.arcgis.carto.ILayer (in)
rhs2 - The rhs2 (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setLayerTransparency

void setLayerTransparency(ILayer pLayer,
                          short rhs2)
                          throws IOException,
                                 AutomationException
Transparency percentage of a layer.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Parameters:
pLayer - A reference to a com.esri.arcgis.carto.ILayer (in)
rhs2 - The rhs2 (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setLayerLightingOption

void setLayerLightingOption(ILayer pLayer,
                            boolean isIlluminated)
                            throws IOException,
                                   AutomationException
Indicates if the layer is illuminated.

Description

Use this method to set the lighting option for a layer.

Note that if you add a layer to globe via code and want the lighting property to be persisted when the globe document is saved then you should explicitly add the I3DProperties extension to your layer as follows:

ESRI.ArcGIS.Analyst3D.I3DProperties p3DProperties;
p3DProperties = new Feature3DPropertiesClass();
ESRI.ArcGIS.Carto.ILayerExtensions layerExtension = ftrLayer as ESRI.ArcGIS.Carto.ILayerExtensions;
layerExtension.AddExtension(p3DProperties);

//Now set the layer lighting
glbDisplayLayers.SetLayerLightingOption(ftrLayer as ESRI.ArcGIS.Carto.ILayer, true);
glbDisplayLayers.RefreshLayer(ftrLayer as ESRI.ArcGIS.Carto.ILayer);

If the extension is not added to the layer then on reopening a saved globe document lighting for the layer will be turned off by default.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Parameters:
pLayer - A reference to a com.esri.arcgis.carto.ILayer (in)
isIlluminated - The isIlluminated (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setLayerShadingMode

void setLayerShadingMode(ILayer pLayer,
                         boolean isSmooth)
                         throws IOException,
                                AutomationException
Indicates if the layer is smoothly shaded.

Description

Use this method to set the shading mode for a layer.

Note that if you add a layer to globe via code and want the shading mode to be persisted when the globe document is saved then you should explicitly add the I3DProperties extension to your layer as follows:

ESRI.ArcGIS.Analyst3D.I3DProperties p3DProperties;
p3DProperties = new Feature3DPropertiesClass();
ESRI.ArcGIS.Carto.ILayerExtensions layerExtension = ftrLayer as ESRI.ArcGIS.Carto.ILayerExtensions;
layerExtension.AddExtension(p3DProperties);

//Now set the layer shading

glbDisplayLayers.SetLayerShadingMode(ftrLayer as ESRI.ArcGIS.Carto.ILayer, true);
glbDisplayLayers.RefreshLayer(ftrLayer as ESRI.ArcGIS.Carto.ILayer);

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Parameters:
pLayer - A reference to a com.esri.arcgis.carto.ILayer (in)
isSmooth - The isSmooth (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setLayerFaceCulling

void setLayerFaceCulling(ILayer pLayer,
                         int cullMode)
                         throws IOException,
                                AutomationException
Sets face culling property of a layer.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Parameters:
pLayer - A reference to a com.esri.arcgis.carto.ILayer (in)
cullMode - A com.esri.arcgis.analyst3d.esri3DFaceCulling constant (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setLayerDepthPriority

void setLayerDepthPriority(ILayer pLayer,
                           int depthPrior)
                           throws IOException,
                                  AutomationException
Sets face depth priority of a layer.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Parameters:
pLayer - A reference to a com.esri.arcgis.carto.ILayer (in)
depthPrior - The depthPrior (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

applyHeightProperties

void applyHeightProperties(ILayer pGLayer)
                           throws IOException,
                                  AutomationException
Applies changes in height properties to the layer.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Parameters:
pGLayer - A reference to a com.esri.arcgis.carto.ILayer (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

findGlobeProperties

IGlobeLayerProperties findGlobeProperties(ILayer pLayer)
                                          throws IOException,
                                                 AutomationException
Finds the globe properties of the layer.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Parameters:
pLayer - A reference to a com.esri.arcgis.carto.ILayer (in)
Returns:
A reference to a com.esri.arcgis.globecore.IGlobeLayerProperties
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getBaseLayers

IArray getBaseLayers()
                     throws IOException,
                            AutomationException
The internal layers created to support base surfaces for floating layers.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Returns:
A reference to a com.esri.arcgis.system.IArray
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

refreshTextureObjectsLayer

void refreshTextureObjectsLayer(ILayer pLayer)
                                throws IOException,
                                       AutomationException
Deletes all the textures corresponding to a layer and to force them to reload.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Parameters:
pLayer - A reference to a com.esri.arcgis.carto.ILayer (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getMaximumLayerLOD

int getMaximumLayerLOD(ILayer pLayer)
                       throws IOException,
                              AutomationException
Gets the maximum level of detail to display the layer.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Parameters:
pLayer - A reference to a com.esri.arcgis.carto.ILayer (in)
Returns:
The pMaxLOD
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

generateTiles

void generateTiles(ILayer pLayer,
                   int fromLOD,
                   int toLOD)
                   throws IOException,
                          AutomationException
Generates the tiles in the specified levels of detail.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Parameters:
pLayer - A reference to a com.esri.arcgis.carto.ILayer (in)
fromLOD - The fromLOD (in)
toLOD - The toLOD (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isParentsAreVisible

boolean isParentsAreVisible(ILayer pLayer)
                            throws IOException,
                                   AutomationException
Indicates if all parents are visible.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Parameters:
pLayer - A reference to a com.esri.arcgis.carto.ILayer (in)
Returns:
The visible
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

reparent

void reparent(ILayer layer,
              ICompositeLayer newParent)
              throws IOException,
                     AutomationException
Re-parents the layer.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Parameters:
layer - A reference to a com.esri.arcgis.carto.ILayer (in)
newParent - A reference to a com.esri.arcgis.carto.ICompositeLayer (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.