com.esri.arcgis.globecore
Interface IGlobeLayerProperties2

All Superinterfaces:
IGlobeLayerProperties, Serializable
All Known Implementing Classes:
GlobeLayerProperties

public interface IGlobeLayerProperties2
extends IGlobeLayerProperties, Serializable

Provides access to members that manipulate the globe layer properties.

Superseded By

IGlobeLayerProperties4

Description

IGlobeLayerProperties2 interface has methods and properties mainly focused towards enhancing the performance of displaying and cache management of layers in the globe.

The IsMapConsolidatedParent and IsMapConsolidatedChild can be used to render group layer with a large number of children layers (rasterized features and images) in globe. The StrictOnDemandMode property allows you to display data on-demand, which means that only data within the view is displayed in the globe. As you navigate around more and more data is made available or visible depending on your location on the globe. The TextureDownsamplingFactor and TextureCompressionType are useful in displaying textured buildings and also images in the globe.

Product Availability

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


Method Summary
 void estimateMinimumCellSize(double[] minCellsize)
          Suggests the minimum cell size for rasterization.
 int getCacheCompressionType()
          The cache compression type.
 String getCacheID()
          Unique layer cache ID.
 int getMaxCacheSizeLimitMB()
          Maximum cache size [MB] as a hint to cache maintenance utilities.
 double getMinimumCellSizeDegrees()
          Minimum cell size for rasters, in degrees.
 void getPartialLODRange(int[] fromLod, int[] toLod)
          Returns LOD range of partial cache generation.
 int getTextureCompressionType()
          The current texture compression type.
 int getTextureDisplayType()
          The current texture display type.
 double getTextureDownsamplingFactor()
          The texture down-sampling factor.
 void invalidatePartialLODRange()
          Invalidates LOD range of partial cache generation.
 boolean isCacheIsDangling()
          Reports if the cache will be lost if the document is not saved.
 boolean isFetchingSuspendedWhenNavigating()
          Indicates if the layer is visible while interactive navigation.
 boolean isInvisibleWhenNavigating()
          Indicates if the layer is visible while interactive navigation.
 boolean isLayerClone()
          Indicates if the layer is a clone of the original in Globe.
 boolean isMapConsolidatedChild()
          Indicates if the group layer cache consolidates the child through map rendering.
 boolean isMapConsolidatedParent()
          Indicates if the group layer cache consolidates the children through map rendering.
 boolean isStrictOnDemandMode()
          Indicates if the tile generation is done strictly on demand.
 boolean isUseCache()
          Indicates if the layer will use a disk data cache.
 void setCacheCompressionType(int pType)
          The cache compression type.
 void setIsFetchingSuspendedWhenNavigating(boolean bFetchingDisabledWhenNavigating)
          Indicates if the layer is visible while interactive navigation.
 void setIsInvisibleWhenNavigating(boolean bInvisibleWhenNavigating)
          Indicates if the layer is visible while interactive navigation.
 void setIsLayerClone(boolean bIsClone)
          Indicates if the layer is a clone of the original in Globe.
 void setIsMapConsolidatedParent(boolean bConsolidated)
          Indicates if the group layer cache consolidates the children through map rendering.
 void setMaxCacheSizeLimitMB(int pLimit)
          Maximum cache size [MB] as a hint to cache maintenance utilities.
 void setMinimumCellSizeDegrees(double pMinCellSize)
          Minimum cell size for rasters, in degrees.
 void setNewCacheName(String cacheName, boolean rhs2)
          The path to the layer cache, with the option to avoid overwriting.
 void setPartialLODRange(int fromLod, int toLod)
          Sets LOD range of partial cache generation.
 void setStrictOnDemandMode(boolean strictOnDemandMode)
          Indicates if the tile generation is done strictly on demand.
 void setTextureCompressionType(int pType)
          The current texture compression type.
 void setTextureDisplayType(int pType)
          The current texture display type.
 void setTextureDownsamplingFactor(double pFactor)
          The texture down-sampling factor.
 void setUseCache(boolean pbUseCache)
          Indicates if the layer will use a disk data cache.
 
Methods inherited from interface com.esri.arcgis.globecore.IGlobeLayerProperties
applyDisplayProperties, estimateFeatureLODRange, estimateSymbologyScalingFactor, estimateThresholdDistances, getBaseImageDrawingPriority, getCacheName, getCacheRemovalOption, getExtent, getFloatingSeeThroughOrder, getGlobeDisplay, getHeightProperties, getImageCatalogCrossoverLevel, getImageSamplingMode, getIMSConnection, getLossyCompressionOption, getMasterLayer, getMaxFeatureLevelOfDetail, getMaximumDistance, getMaxLOD, getMinimumCellSize, getMinimumDistance, getMinLOD, getRasterTileSize, getSymbologyScalingFactor, getType, getVectorTileSize, initCacheName, isCacheNameValid, isConsolidatedChild, isConsolidatedParent, isDisconnected, isDynamicallyRasterized, isExtruded, isFullCacheOption, isFullyCached, isInvalidateCache, isPerTileVisibility, isScale3DSymbols, isUse16ColorBits, isUse16ElevationBits, putLossyCompressionOption, setBaseImageDrawingPriority, setCacheName, setCacheRemovalOption, setFloatingSeeThroughOrder, setFullCacheOption, setGlobeDisplayByRef, setHeightPropertiesByRef, setImageCatalogCrossoverLevel, setImageSamplingMode, setIMSConnectionByRef, setInvalidateCache, setIsCacheNameValid, setIsConsolidatedParent, setIsDynamicallyRasterized, setIsExtruded, setIsFullyCached, setMaxFeatureLevelOfDetail, setMaximumDistance, setMaxLOD, setMinimumCellSize, setMinimumDistance, setMinLOD, setPerTileVisibility, setScale3DSymbols, setSymbologyScalingFactor, setType, setUse16ColorBits, setUse16ElevationBits, setVectorTileSize, validateType
 

Method Detail

setIsMapConsolidatedParent

void setIsMapConsolidatedParent(boolean bConsolidated)
                                throws IOException,
                                       AutomationException
Indicates if the group layer cache consolidates the children through map rendering.

Remarks

Setting this boolean property allows you to rasterizes a group layer by using map rendering. This allows you to optimize the rendering performance of group layers at the parent level. Rasterizing group layers consolidates the cache of the group layer and its children into a single cache and treats the group layer and its child layers as a single layer, which means that the contents of the layer are drawn as a raster on the globe surface. The layer is drawn similar to how it is drawn in ArcMap. This is beneficial when trying to display group layer created in ArcMap inside of ArcGlobe because rasertizing the group layer ensures that the display order and symbolgy of these layers is honored in ArcGlobe.

Product Availability

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

Parameters:
bConsolidated - The bConsolidated (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isMapConsolidatedParent

boolean isMapConsolidatedParent()
                                throws IOException,
                                       AutomationException
Indicates if the group layer cache consolidates the children through map rendering.

Description

Cache consolidation allows you to improve the performance of ArcGlobe by reducing the number of disk caches that are stored and displayed for an ArcGlobe document. Cache consolidation is only available for group layers in ArcGlobe. There are two options for cache consolidation: rasterizing the group layer or merging child caches.

Rasterizing the group layer option is also known as map consolidation. Rasterizing a group layer consolidates the child layers into a single cache, rendering them as a single raster layer with a single cache. All the child layers within the rasterized group layer must also be rasterized. Any child layers that were not rasterized before will become rasterized when the option is set to True. In this way, the group layer will be drawn similar to how it is drawn in ArcMap.

Product Availability

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

Returns:
The bConsolidated
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isMapConsolidatedChild

boolean isMapConsolidatedChild()
                               throws IOException,
                                      AutomationException
Indicates if the group layer cache consolidates the child through map rendering.

Description

Cache consolidation allows you to improve the performance of ArcGlobe by reducing the number of disk caches that are stored and displayed for an ArcGlobe document. Cache consolidation is only available for group layers in ArcGlobe. There are two options for cache consolidation: rasterizing the group layer or merging child caches.

Rasterizing the group layer option is also known as map consolidation. Rasterizing a group layer consolidates the child layers into a single cache, rendering them as a single raster layer with a single cache. All the child layers within the rasterized group layer must also be rasterized and any child layers that were not rasterized before will become rasterized. In this way, the group layer will be drawn similar to how it is drawn in ArcMap.

Product Availability

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

Returns:
The bConsolidated
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setTextureDownsamplingFactor

void setTextureDownsamplingFactor(double pFactor)
                                  throws IOException,
                                         AutomationException
The texture down-sampling factor.

Product Availability

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

Parameters:
pFactor - The pFactor (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getTextureDownsamplingFactor

double getTextureDownsamplingFactor()
                                    throws IOException,
                                           AutomationException
The texture down-sampling factor.

Description

Texture downscaling is applied as a layer property and is only applicable to multipatch layers. Setting texture downscaling for a layer will reduce the in-memory requirements to render it, freeing up resources for other tasks such as navigation. The amount of downscaling that can be applied to a texture without greatly reducing the quality of the display will vary from texture to texture.

For downsampling textures the range of values is from 1 (Minimum downsampling) TO 10 (Maximum downsampling).

Product Availability

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

Returns:
The pFactor
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setTextureCompressionType

void setTextureCompressionType(int pType)
                               throws IOException,
                                      AutomationException
The current texture compression type.

Product Availability

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

Parameters:
pType - A com.esri.arcgis.analyst3d.esriTextureFormatType constant (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getTextureCompressionType

int getTextureCompressionType()
                              throws IOException,
                                     AutomationException
The current texture compression type.

Description

Used to apply DXT compression to material textures. This conserves memory usage and improves interactive performance. There is a minor degradation in the visual quality of textures. Valid values are esriTextureFormatType.esriTextureDXT (to apply DXT compression) and esriTextureFormatType.esriTextureJPEG.

Product Availability

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

Returns:
A com.esri.arcgis.analyst3d.esriTextureFormatType constant
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setStrictOnDemandMode

void setStrictOnDemandMode(boolean strictOnDemandMode)
                           throws IOException,
                                  AutomationException
Indicates if the tile generation is done strictly on demand.

Description

Setting this boolean property to True will force the layer to generate the level of detail relevant for the view. This means that coarser or intermediate levels of detail will not be generated for the view. As you navigate around in the view, new level of details will be generated based on the view. The levels of details generated are written to the cache.

For rasterized feature layers, rasterized group layers and ArcIMS layers, this boolean property is set to True by default.

Product Availability

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

Parameters:
strictOnDemandMode - The strictOnDemandMode (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isStrictOnDemandMode

boolean isStrictOnDemandMode()
                             throws IOException,
                                    AutomationException
Indicates if the tile generation is done strictly on demand.

Description

Setting this boolean property to True will force the layer to generate the level of detail relevant for the view. This means that coarser or intermediate levels of detail will not be generated for the view. As you navigate around in the view, new level of details will be generated based on the view. The levels of details generated are written to the cache.

For rasterized feature layers, rasterized group layers and ArcIMS layers, this boolean property is set to True by default.

Product Availability

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

Returns:
The strictOnDemandMode
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getCacheID

String getCacheID()
                  throws IOException,
                         AutomationException
Unique layer cache ID.

Description

Disk caching creates a set of temporary files, or cache, for each layer in the ArcGlobe document. The name of a layer's disk cache is a concatenation of its display name and global unique identifier (GUID).

This method returns the GUID portion of the layer's disk cache name.

Product Availability

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

Returns:
The pCacheID
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isUseCache

boolean isUseCache()
                   throws IOException,
                          AutomationException
Indicates if the layer will use a disk data cache. This property cannot be changed once the layer is initialized.

Product Availability

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

Returns:
The pbUseCache
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setUseCache

void setUseCache(boolean pbUseCache)
                 throws IOException,
                        AutomationException
Indicates if the layer will use a disk data cache. This property cannot be changed once the layer is initialized.

Product Availability

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

Parameters:
pbUseCache - The pbUseCache (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setMaxCacheSizeLimitMB

void setMaxCacheSizeLimitMB(int pLimit)
                            throws IOException,
                                   AutomationException
Maximum cache size [MB] as a hint to cache maintenance utilities. If zero, no suggested limit.

Product Availability

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

Parameters:
pLimit - The pLimit (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getMaxCacheSizeLimitMB

int getMaxCacheSizeLimitMB()
                           throws IOException,
                                  AutomationException
Maximum cache size [MB] as a hint to cache maintenance utilities. If zero, no suggested limit.

Product Availability

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

Returns:
The pLimit
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setNewCacheName

void setNewCacheName(String cacheName,
                     boolean rhs2)
                     throws IOException,
                            AutomationException
The path to the layer cache, with the option to avoid overwriting.

Product Availability

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

Parameters:
cacheName - The cacheName (in)
rhs2 - The rhs2 (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

estimateMinimumCellSize

void estimateMinimumCellSize(double[] minCellsize)
                             throws IOException,
                                    AutomationException
Suggests the minimum cell size for rasterization.

Product Availability

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

Parameters:
minCellsize - The minCellsize (out: use single element array)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setTextureDisplayType

void setTextureDisplayType(int pType)
                           throws IOException,
                                  AutomationException
The current texture display type.

Product Availability

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

Parameters:
pType - A com.esri.arcgis.analyst3d.esriTextureFormatType constant (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getTextureDisplayType

int getTextureDisplayType()
                          throws IOException,
                                 AutomationException
The current texture display type.

Description

Used to enable or disable material textures. Valid values are esriTextureFormatType.esriTextureNone (to disable) and esriTextureFormatType.esriTextureJPEG (to enable).

Product Availability

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

Returns:
A com.esri.arcgis.analyst3d.esriTextureFormatType constant
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setPartialLODRange

void setPartialLODRange(int fromLod,
                        int toLod)
                        throws IOException,
                               AutomationException
Sets LOD range of partial cache generation.

Product Availability

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

Parameters:
fromLod - The fromLod (in)
toLod - The toLod (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getPartialLODRange

void getPartialLODRange(int[] fromLod,
                        int[] toLod)
                        throws IOException,
                               AutomationException
Returns LOD range of partial cache generation.

Description

Disk caching creates a temporary file, or cache, for each layer in ArcGlobe that helps you display and navigate your data efficiently. A disk cache stores the data and information that allows ArcGlobe to better manage your environment by controlling levels of detail. The status of a cache can be on demand, partial (containing some details of the layer), or full (containing all the details the layer has to offer).

This property returns the current range of the level of detail for the layer - FromLOD (minimum level of detail) to ToLOD (maximum level of detail).

Product Availability

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

Parameters:
fromLod - The fromLod (out: use single element array)
toLod - The toLod (out: use single element array)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

invalidatePartialLODRange

void invalidatePartialLODRange()
                               throws IOException,
                                      AutomationException
Invalidates LOD range of partial cache generation.

Product Availability

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

Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isCacheIsDangling

boolean isCacheIsDangling()
                          throws IOException,
                                 AutomationException
Reports if the cache will be lost if the document is not saved.

Description

When exiting an ArcGlobe document, on-demand caches for layers that have not been saved to a layer file or ArcGlobe document are automatically deleted.
Partial or full caches are not automatically deleted when exiting an ArcGlobe document, regardless of whether the layer was saved to a layer file or ArcGlobe document or not. However, you should still save a layer file or ArcGlobe document for these layers so you can preserve a link to the cache.

This property will return True unless a layer file or the ArcGlobe document is saved.

Product Availability

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

Returns:
The bDangling
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setCacheCompressionType

void setCacheCompressionType(int pType)
                             throws IOException,
                                    AutomationException
The cache compression type.

Product Availability

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

Parameters:
pType - A com.esri.arcgis.analyst3d.esriTextureFormatType constant (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getCacheCompressionType

int getCacheCompressionType()
                            throws IOException,
                                   AutomationException
The cache compression type.

Description

Applicable to rasters and rasterized feature data. Valid values are esriTextureFormatType.esriTextureJPEG and esriTextureFormatType.esriTextureDXT.

Product Availability

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

Returns:
A com.esri.arcgis.analyst3d.esriTextureFormatType constant
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getMinimumCellSizeDegrees

double getMinimumCellSizeDegrees()
                                 throws IOException,
                                        AutomationException
Minimum cell size for rasters, in degrees.

Product Availability

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

Returns:
The pMinCellSize
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setMinimumCellSizeDegrees

void setMinimumCellSizeDegrees(double pMinCellSize)
                               throws IOException,
                                      AutomationException
Minimum cell size for rasters, in degrees.

Product Availability

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

Parameters:
pMinCellSize - The pMinCellSize (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setIsLayerClone

void setIsLayerClone(boolean bIsClone)
                     throws IOException,
                            AutomationException
Indicates if the layer is a clone of the original in Globe.

Product Availability

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

Parameters:
bIsClone - The bIsClone (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isLayerClone

boolean isLayerClone()
                     throws IOException,
                            AutomationException
Indicates if the layer is a clone of the original in Globe.

Product Availability

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

Returns:
The bIsClone
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setIsInvisibleWhenNavigating

void setIsInvisibleWhenNavigating(boolean bInvisibleWhenNavigating)
                                  throws IOException,
                                         AutomationException
Indicates if the layer is visible while interactive navigation.

Product Availability

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

Parameters:
bInvisibleWhenNavigating - The bInvisibleWhenNavigating (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isInvisibleWhenNavigating

boolean isInvisibleWhenNavigating()
                                  throws IOException,
                                         AutomationException
Indicates if the layer is visible while interactive navigation.

Description

Some layers in the ArcGlobe document may be very expensive to render, reducing the responsiveness of interactive navigation through the 3D view. When this option is set to True, the layer will not display while navigating, thereby freeing up resources to improve the interactive navigation experience. When navigation halts, the layer will be displayed again.

The view is said to be navigating when the Globe Camera is moving continuously. For example, using the Fly Tool will set the ‘while navigating’ state to true and cause layer drawing to be suspended appropriately. When the Fly Tool halts, the ‘while navigating’ state is set to false and layer will draw. An example of a navigation technique which does not set the ‘while navigating’ state to true is the mouse-wheel zoom in. This functionality uses discrete steps to zoom in and is therefore not a continuous navigation event.

This option may not be preferred when outputting animation files, as the animation framework will set the ‘while navigating’ status to true and the resulting video will not include display of this layer.

Product Availability

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

Returns:
The bInvisibleWhenNavigating
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setIsFetchingSuspendedWhenNavigating

void setIsFetchingSuspendedWhenNavigating(boolean bFetchingDisabledWhenNavigating)
                                          throws IOException,
                                                 AutomationException
Indicates if the layer is visible while interactive navigation.

Product Availability

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

Parameters:
bFetchingDisabledWhenNavigating - The bFetchingDisabledWhenNavigating (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isFetchingSuspendedWhenNavigating

boolean isFetchingSuspendedWhenNavigating()
                                          throws IOException,
                                                 AutomationException
Indicates if the layer is visible while interactive navigation.

Product Availability

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

Returns:
The bFetchingDisabledWhenNavigating
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.