com.esri.arcgis.globecore
Interface IGlobeAdvancedOptions

All Superinterfaces:
Serializable
All Known Subinterfaces:
IGlobeAdvancedOptions2
All Known Implementing Classes:
GlobeAdvancedOptions

public interface IGlobeAdvancedOptions
extends Serializable

Provides access to the globe data processing and management options.

Superseded By

IGlobeAdvancedOptions2

Description

Use IGlobeAdvancedOptions interface to get\set Arcglobe’s advanced visualization and data management options. Using this interface you can get\set the following properties: CachePath – where cache data will reside on the local machine, DefaultUse16ElevBits and DefaultUse16ColorBits – default values for elevation and image color Compression, ClipNear and ClipFarFactor – Near and Far Clipping planes that aid in performance optimization by clipping areas that do not fall within the applications view, LevelOfDetail – the level of detail of image and elevation layers that gets applied during display, ManualLOD – a boolean that indicates if manual LOD control is on and TargetFrameRate – the target frame rate when using automatic control of LOD. Use VectorTileSize property to limit the amount of features (expressed as the maximum number of vertices) in a tile. Currently the maximum amount is 65,536 vertices (216) which is set as the default value. Lowering this value will in effect result in 'trimming' or dropping-off of features that exceed the limit set within a tile. This property applies to features treated as vectors only.


IGlobeAdvancedOptions interface also has methods GetUseCache and SetUseCache, to get\set whether disk cache will be used and the size to allocate for disk cache, a property to get if lossy compression is supported – IsLossyCompressionSupported , and a method to get the default lossy compression option for a data type and its quality from 1 to 100 – GetDefaultCompression.
The RestoreClipPlaneDefaults and RestoreLODDefaults methods set the default Clipping planes and level of Detail settings to their default values respectively. Most of these advanced options will not be used until WriteToRegistry is used to commit the changes to registry.

Product Availability

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


Method Summary
 String getCachePath()
          The path to the globe data cache in disk.
 double getClipFarFactor()
          The Far Plane Clipping Factor.
 double getClipNear()
          The value for where the near clipping plane is.
 void getDefaultCompression(int type, boolean[] pbLossyCompression, short[] pQuality)
          Gets default lossy compression option for a data type, and its quality from 1 to 100.
 double getLevelOfDetail(int type)
          The level of detail value.
 double getTargetFrameRate()
          The target frame rate -- for automatic control of level of detail.
 int getTileMemorySize()
          The memory used for tile data.
 void getUseCache(boolean[] pbUseDiskCache, double[] pSizeInMb)
          Gets disk cache option and cache size.
 int getVectorTileSize()
          The maximum size of a vector tile (< 2 power 16).
 boolean isDefaultUse16ColorBits()
          Indicates whether to perform radiometric compression to 16 color bits.
 boolean isDefaultUse16ElevBits()
          Indicates whether to perform elevation range compression to 16 bits.
 boolean isLossyCompressionSupported(int type)
          Indicates if lossy data compression is supported.
 boolean isManualLOD()
          Indicates if the level of detail is under manual control.
 boolean isUpdateCacheMonthlyPrompt()
          Indicates whether to update the cache monthly.
 void restoreClipPlaneDefaults()
          Restore the Default Clipping Plane Settings.
 void restoreLODDefaults()
          Restore the Default LOD Settings.
 void setCachePath(String pCachePath)
          The path to the globe data cache in disk.
 void setClipFarFactor(double pValue)
          The Far Plane Clipping Factor.
 void setClipNear(double pValue)
          The value for where the near clipping plane is.
 void setDefaultCompression(int type, boolean bLossyCompression, short quality)
          Sets default lossy compression option for a data type, and its quality from 1 to 100.
 void setDefaultUse16ColorBits(boolean pbUse16Bits)
          Indicates whether to perform radiometric compression to 16 color bits.
 void setDefaultUse16ElevBits(boolean pbUse16Bits)
          Indicates whether to perform elevation range compression to 16 bits.
 void setLevelOfDetail(int type, double levelOfDetail)
          The level of detail value.
 void setManualLOD(boolean pbManual)
          Indicates if the level of detail is under manual control.
 void setTargetFrameRate(double targetFrameRate)
          The target frame rate -- for automatic control of level of detail.
 void setTileMemorySize(int pSizeInMb)
          The memory used for tile data.
 void setUpdateCacheMonthlyPrompt(boolean pPrompt)
          Indicates whether to update the cache monthly.
 void setUseCache(boolean bUseDiskCache, double sizeInMb)
          Sets disk cache option and cache size.
 void setVectorTileSize(int psize)
          The maximum size of a vector tile (< 2 power 16).
 void writeToRegistry()
          Write the options in the system's registry.
 

Method Detail

isLossyCompressionSupported

boolean isLossyCompressionSupported(int type)
                                    throws IOException,
                                           AutomationException
Indicates if lossy data compression is supported.

Product Availability

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

Parameters:
type - A com.esri.arcgis.globecore.esriGlobeDataType constant (in)
Returns:
The pbLossySupported
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getDefaultCompression

void getDefaultCompression(int type,
                           boolean[] pbLossyCompression,
                           short[] pQuality)
                           throws IOException,
                                  AutomationException
Gets default lossy compression option for a data type, and its quality from 1 to 100.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Parameters:
type - A com.esri.arcgis.globecore.esriGlobeDataType constant (in)
pbLossyCompression - The pbLossyCompression (out: use single element array)
pQuality - The pQuality (out: use single element array)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setDefaultCompression

void setDefaultCompression(int type,
                           boolean bLossyCompression,
                           short quality)
                           throws IOException,
                                  AutomationException
Sets default lossy compression option for a data type, and its quality from 1 to 100.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Parameters:
type - A com.esri.arcgis.globecore.esriGlobeDataType constant (in)
bLossyCompression - The bLossyCompression (in)
quality - The quality (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isDefaultUse16ColorBits

boolean isDefaultUse16ColorBits()
                                throws IOException,
                                       AutomationException
Indicates whether to perform radiometric compression to 16 color bits.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

setDefaultUse16ColorBits

void setDefaultUse16ColorBits(boolean pbUse16Bits)
                              throws IOException,
                                     AutomationException
Indicates whether to perform radiometric compression to 16 color bits.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

isDefaultUse16ElevBits

boolean isDefaultUse16ElevBits()
                               throws IOException,
                                      AutomationException
Indicates whether to perform elevation range compression to 16 bits.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

setDefaultUse16ElevBits

void setDefaultUse16ElevBits(boolean pbUse16Bits)
                             throws IOException,
                                    AutomationException
Indicates whether to perform elevation range compression to 16 bits.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

getCachePath

String getCachePath()
                    throws IOException,
                           AutomationException
The path to the globe data cache in disk.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

setCachePath

void setCachePath(String pCachePath)
                  throws IOException,
                         AutomationException
The path to the globe data cache in disk.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

getUseCache

void getUseCache(boolean[] pbUseDiskCache,
                 double[] pSizeInMb)
                 throws IOException,
                        AutomationException
Gets disk cache option and cache size.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

setUseCache

void setUseCache(boolean bUseDiskCache,
                 double sizeInMb)
                 throws IOException,
                        AutomationException
Sets disk cache option and cache size.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

getTileMemorySize

int getTileMemorySize()
                      throws IOException,
                             AutomationException
The memory used for tile data.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

setTileMemorySize

void setTileMemorySize(int pSizeInMb)
                       throws IOException,
                              AutomationException
The memory used for tile data.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

isManualLOD

boolean isManualLOD()
                    throws IOException,
                           AutomationException
Indicates if the level of detail is under manual control.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

setManualLOD

void setManualLOD(boolean pbManual)
                  throws IOException,
                         AutomationException
Indicates if the level of detail is under manual control.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

getTargetFrameRate

double getTargetFrameRate()
                          throws IOException,
                                 AutomationException
The target frame rate -- for automatic control of level of detail.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

setTargetFrameRate

void setTargetFrameRate(double targetFrameRate)
                        throws IOException,
                               AutomationException
The target frame rate -- for automatic control of level of detail.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

getLevelOfDetail

double getLevelOfDetail(int type)
                        throws IOException,
                               AutomationException
The level of detail value.

Product Availability

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

Parameters:
type - A com.esri.arcgis.globecore.esriLODType constant (in)
Returns:
The levelOfDetail
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setLevelOfDetail

void setLevelOfDetail(int type,
                      double levelOfDetail)
                      throws IOException,
                             AutomationException
The level of detail value.

Product Availability

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

Parameters:
type - A com.esri.arcgis.globecore.esriLODType constant (in)
levelOfDetail - The levelOfDetail (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

writeToRegistry

void writeToRegistry()
                     throws IOException,
                            AutomationException
Write the options in the system's registry.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

getClipNear

double getClipNear()
                   throws IOException,
                          AutomationException
The value for where the near clipping plane is.

Description

The near clipping plane cuts away any parts of the 3D display that are closer to the camera than the plane. The location of this clipping plane can be adjusted using the IGlobeAdvancedOptions.ClipNear value.

The numeric value used in ClipNear is interpreted as a factor of the Globe’s radius. If ClipNear is set to 0.1 (the default), then the near clipping plane at full extent is approximately (0.1 * 6376 km) = 637.6 km. As you zoom in, a precision gradient is applied, which adjusts the near clipping plane distance down to a value appropriate for your distance from the data.

You can set the ClipNear value to any valid double, though large values will start clipping a lot of data in the foreground, exhibiting behavior such as a hole in the globe or features that you can see through.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

setClipNear

void setClipNear(double pValue)
                 throws IOException,
                        AutomationException
The value for where the near clipping plane is.

Description

The near clipping plane cuts away any parts of the 3D display that are closer to the camera than the plane. The location of this clipping plane can be adjusted using the IGlobeAdvancedOptions.ClipNear value.

The numeric value used in ClipNear is interpreted as a factor of the Globe’s radius. If ClipNear is set to 0.1 (the default), then the near clipping plane at full extent is approximately (0.1 * 6376 km) = 637.6 km. As you zoom in, a precision gradient is applied, which adjusts the near clipping plane distance down to a value appropriate for your distance from the data.

You can set the ClipNear value to any valid double, though large values will start clipping a lot of data in the foreground, exhibiting behavior such as a hole in the globe or features that you can see through.

Remarks

The minimum value set by the slider bar in the View Settings dialog in ArcGlobe is 0.0001220703125 (2-13) and the maximum is 2 (21).

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

getClipFarFactor

double getClipFarFactor()
                        throws IOException,
                               AutomationException
The Far Plane Clipping Factor.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

setClipFarFactor

void setClipFarFactor(double pValue)
                      throws IOException,
                             AutomationException
The Far Plane Clipping Factor.

Description

The far clipping plane cuts away any parts of the 3D display that are further from the camera than the plane. The location of this clipping plane can be adjusted using the IGlobeAdvancedOptions.ClipFarFactor value. The value used does not represent a distance but rather a scaling factor that is applied to the ArcGlobe calculated value.

A ClipFarFactor of 1 (the default) accepts ArcGlobe’s calculated value. A ClipFarFactor of 2 will move the far clipping plane to twice the ArcGlobe calculated distance.

You can set the ClipFarFactor value to any valid double, though values less than 1 will pull the clipping plane in closer to the camera and start clipping a lot of data in the distance, creating such effects as an end of the planet before reaching the horizon.

Note that the value calculated by ArcGlobe for the Far clipping plane depends on the ClipNear value. If the ClipNear value is small, it might also cause undesired clipping in the background because of the Far Clipping Plane moving automatically closer.

Remarks

The minimum value set by the slider bar in the View Settings dialog in ArcGlobe is 1 (20) and the maximum is 32 (25).

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

restoreClipPlaneDefaults

void restoreClipPlaneDefaults()
                              throws IOException,
                                     AutomationException
Restore the Default Clipping Plane Settings.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

restoreLODDefaults

void restoreLODDefaults()
                        throws IOException,
                               AutomationException
Restore the Default LOD Settings.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

setVectorTileSize

void setVectorTileSize(int psize)
                       throws IOException,
                              AutomationException
The maximum size of a vector tile (< 2 power 16).

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

getVectorTileSize

int getVectorTileSize()
                      throws IOException,
                             AutomationException
The maximum size of a vector tile (< 2 power 16).

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

setUpdateCacheMonthlyPrompt

void setUpdateCacheMonthlyPrompt(boolean pPrompt)
                                 throws IOException,
                                        AutomationException
Indicates whether to update the cache monthly.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

isUpdateCacheMonthlyPrompt

boolean isUpdateCacheMonthlyPrompt()
                                   throws IOException,
                                          AutomationException
Indicates whether to update the cache monthly.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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