com.esri.arcgis.display
Class DisplayTransformation

java.lang.Object
  extended by com.esri.arcgis.display.DisplayTransformation
All Implemented Interfaces:
IConnectionPointContainer, IDelayEvents, IDisplayTransformation, IDisplayTransformationAdmin, IDisplayTransformationScales, IOutputRasterSettings, IRasterOutputSettings, ITransformation, ITransformationGEN, com.esri.arcgis.interop.RemoteObjRef, Serializable

public class DisplayTransformation
extends Object
implements com.esri.arcgis.interop.RemoteObjRef, ITransformationGEN, IDisplayTransformation, IDisplayTransformationAdmin, IDisplayTransformationScales, IRasterOutputSettings, IOutputRasterSettings, ITransformation, IConnectionPointContainer, IDelayEvents

Display transformation class for converting from world to device units.

Remarks

Manages the map to device transformation. See IDisplayTransformation for information on how to prepare a transform for use.

Each DisplayTransformation object has a spatial reference object which manages the display's current coordinate system.

The DisplayTransformation is itself owned by a Display object, typically ScreenDisplay. Obtain an IDisplayTransformation reference to a DisplayTransformation object via IDisplay::DisplayTransformation; since IScreenDisplay inherits from IDisplay, you call also use IScreenDisplay::DisplayTransformation.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

See Also:
Serialized Form

Constructor Summary
DisplayTransformation()
          Constructs a DisplayTransformation using ArcGIS Engine.
DisplayTransformation(Object obj)
          Deprecated. As of ArcGIS 9.2, replaced by normal Java casts.
DisplayTransformation theDisplayTransformation = (DisplayTransformation) obj;
 
Method Summary
 void addITransformEventsListener(ITransformEvents theListener)
          addITransformEventsListener.
 void addUserScale(double scale)
          Add a new user scale.
 double calculateScale(IEnvelope extent)
          Calculate the scale of the specified extent.
 void enumConnectionPoints(IEnumConnectionPoints[] ppEnum)
          enumConnectionPoints
 boolean equals(Object o)
          Compare this object with another
 void findConnectionPoint(GUID riid, IConnectionPoint[] ppCP)
          findConnectionPoint
 void fromMapPoint(IPoint mapPoint, int[] x, int[] y)
          Calculates device coordinates corresponding to the map point.
 double fromPoints(double pointDistance)
          Calculates a map distance corresponding to a point (1/72) distance.
 IEnvelope getBounds()
          Full extent in world coordinates.
static String getClsid()
          getClsid.
 IEnvelope getConstrainedBounds()
          Intersection of Bounds and VisibleBounds.
 tagRECT getDeviceFrame()
          Visible extent in device coordinates.
 IEnvelope getFittedBounds()
          Device frame in world coordinates.
 short getMaxColorDepth()
          Maximum color depth for raster output.
 double getRasterRatio()
          Ratio between resolution and raster resolution.
 double getRasterResolution()
          Resolution used to output rasterized data.
 double getReferenceScale()
          Reference scale for computing scaled symbol sizes.
 int getResampleRatio()
          This coefficient states the scale level for the raster when it goes to output.
 double getResolution()
          Resolution of the device in dots (pixels) per inch.
 double getRotation()
          Rotation angle in degrees.
 double getScaleRatio()
          Scale between FittedBounds and DeviceFrame.
 int getScaleSnapping()
          Indicates if transform snaps the fitted bounds to a standard scale.
 ISpatialReference getSpatialReference()
          Current spatial reference.
 int getUnits()
          Units used by world coordinates.
 double getUserScale(int idx)
          Get the user scales.
 int getUserScaleCount()
          Get the number of user scales.
 IEnvelope getVisibleBounds()
          Visible extent in world coordinates.
 int hashCode()
          the hashcode for this object
 boolean isDelayEvents()
          Indicates if events are delayed.
 boolean isSuppressEvents()
          Indicates if transformation object suppresses events.
 boolean isZoomResolution()
          Indicates if resolution is tied to visible bounds.
 void loadDefaultUserScales()
          Initialize user scales to defaults.
 double nextScale(double scale)
          Find the nearest standard scale with a value that is higher than the specified scale.
 double previousScale(double scale)
          Find the nearest standard scale with a value that is lower than the specified scale.
 void removeAllUserScales()
          Remove all the user scales.
 void removeITransformEventsListener(ITransformEvents theListener)
          removeITransformEventsListener.
 void removeUserScale(double scale)
          Remove a user scale.
 void saveDefaultUserScales()
          Set the current set of user scales to be the defaults.
 void setBounds(IEnvelope bounds)
          Full extent in world coordinates.
 void setDelayEvents(boolean delayEvents)
          Indicates if events are delayed.
 void setDeviceFrame(tagRECT bounds)
          Visible extent in device coordinates.
 void setMaxColorDepth(short bitsPerPixel)
          Maximum color depth for raster output.
 void setRasterResolution(double dpi)
          Resolution used to output rasterized data.
 void setReferenceScale(double scale)
          Reference scale for computing scaled symbol sizes.
 void setResampleRatio(int pRatio)
          This coefficient states the scale level for the raster when it goes to output.
 void setResolution(double pDpi)
          Resolution of the device in dots (pixels) per inch.
 void setRotation(double degrees)
          Rotation angle in degrees.
 void setScaleRatio(double scale)
          Scale between FittedBounds and DeviceFrame.
 void setScaleRatioNoRecalc(double rhs1)
          The scale without any recalculation.
 void setScaleSnapping(int setting)
          Indicates if transform snaps the fitted bounds to a standard scale.
 void setSpatialReferenceByRef(ISpatialReference spatialReference)
          Current spatial reference.
 void setSuppressEvents(boolean suppressEvents)
          Indicates if transformation object suppresses events.
 void setUnits(int unitsCode)
          Units used by world coordinates.
 void setVisibleBounds(IEnvelope bounds)
          Visible extent in world coordinates.
 void setZoomResolution(boolean flag)
          Indicates if resolution is tied to visible bounds.
 double snapScale(double scale)
          Snap the specified scale to a standard scale.
 IPoint toMapPoint(int x, int y)
          Calculates a point in map coordinates corresponding to the device point.
 double toPoints(double mapDistance)
          Calculates a distance in points (1/72 inch) corresponding to the map distance.
 void transformCoords(_WKSPoint mapPoints, tagPOINT devPoints, int numPoints, int options)
          Transforms a set of points or measurements from device to world space or vice versa.
 void transformMeasuresFF(int direction, double[] inMeasures, double[][] outMeasures)
          Transforms floating point measures to floating point measures (or do the inverse).
 void transformMeasuresFF(int direction, int cMeasures, double[] inMeasures, double[] outMeasures)
          Transforms floating point measures to floating point measures (or do the inverse).
 void transformMeasuresFI(int direction, double[] inMeasures, int[][] outMeasures)
          Transforms floating point measures to integer measures (or do the inverse).
 void transformMeasuresFI(int direction, int cMeasures, double[] inMeasures, int[] outMeasures)
          Transforms floating point measures to integer measures (or do the inverse).
 void transformMeasuresIF(int direction, int[] inMeasures, double[][] outMeasures)
          Transforms integer measures to floating point measures (or do the inverse).
 void transformMeasuresIF(int direction, int cMeasures, int[] inMeasures, double[] outMeasures)
          Transforms integer measures to floating point measures (or do the inverse).
 void transformMeasuresII(int direction, int[] inMeasures, int[][] outMeasures)
          Transforms integer measures to integer measures (or do the inverse).
 void transformMeasuresII(int direction, int cMeasures, int[] inMeasures, int[] outMeasures)
          Transforms integer measures to integer measures (or do the inverse).
 void transformPointsFF(int direction, double[] inPoints, double[][] outPoints)
          Transforms floating point points to floating point points (or do the inverse).
 void transformPointsFF(int direction, int cPoints, double[] inPoints, double[] outPoints)
          Transforms floating point points to floating point points (or do the inverse).
 void transformPointsFI(int direction, double[] inPoints, int[][] outPoints)
          Transforms floating point points to integer points (or do the inverse).
 void transformPointsFI(int direction, int cPoints, double[] inPoints, int[] outPoints)
          Transforms floating point points to integer points (or do the inverse).
 void transformPointsIF(int direction, int[] inPoints, double[][] outPoints)
          Transforms integer points to floating point points (or do the inverse).
 void transformPointsIF(int direction, int cPoints, int[] inPoints, double[] outPoints)
          Transforms integer points to floating point points (or do the inverse).
 void transformPointsII(int direction, int[] inPoints, int[][] outPoints)
          Transforms integer points to integer points (or do the inverse).
 void transformPointsII(int direction, int cPoints, int[] inPoints, int[] outPoints)
          Transforms integer points to integer points (or do the inverse).
 void transformRect(IEnvelope mapRect, tagRECT[] devRect, int options)
          Transforms a rectangle from device to world space or vice versa.
 void zoomTo(IEnvelope extent, double scale)
          Zoom to the specified scale.
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface com.esri.arcgis.interop.RemoteObjRef
getJintegraDispatch, release
 

Constructor Detail

DisplayTransformation

public DisplayTransformation()
                      throws IOException,
                             UnknownHostException
Constructs a DisplayTransformation using ArcGIS Engine.

Throws:
IOException - if there are interop problems
UnknownHostException - if there are interop problems

DisplayTransformation

public DisplayTransformation(Object obj)
                      throws IOException
Deprecated. As of ArcGIS 9.2, replaced by normal Java casts.
DisplayTransformation theDisplayTransformation = (DisplayTransformation) obj;

Construct a DisplayTransformation using a reference to such an object returned from ArcGIS Engine or Server. This is semantically equivalent to casting obj to DisplayTransformation.

Parameters:
obj - an object returned from ArcGIS Engine or Server
Throws:
IOException - if there are interop problems
Method Detail

getClsid

public static String getClsid()
getClsid.


equals

public boolean equals(Object o)
Compare this object with another

Overrides:
equals in class Object

hashCode

public int hashCode()
the hashcode for this object

Overrides:
hashCode in class Object

addITransformEventsListener

public void addITransformEventsListener(ITransformEvents theListener)
                                 throws IOException
addITransformEventsListener. Listen to events generated by this class.

Parameters:
theListener - An object that implements the com.esri.arcgis.display.ITransformEvents interface.
Throws:
IOException - If there are communications problems.

removeITransformEventsListener

public void removeITransformEventsListener(ITransformEvents theListener)
                                    throws IOException
removeITransformEventsListener. Stop listening to events generated by this class.

Parameters:
theListener - An object that implements the com.esri.arcgis.display.ITransformEvents interface.
Throws:
IOException - If there are communications problems.

transformMeasuresFF

public void transformMeasuresFF(int direction,
                                double[] inMeasures,
                                double[][] outMeasures)
                         throws IOException,
                                AutomationException
Transforms floating point measures to floating point measures (or do the inverse).

Product Availability

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

Specified by:
transformMeasuresFF in interface ITransformationGEN
Parameters:
direction - A com.esri.arcgis.geometry.esriTransformDirection constant (in)
inMeasures - The inMeasures (in)
outMeasures - The outMeasures (in/out: use single element array)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

transformMeasuresFI

public void transformMeasuresFI(int direction,
                                double[] inMeasures,
                                int[][] outMeasures)
                         throws IOException,
                                AutomationException
Transforms floating point measures to integer measures (or do the inverse).

Product Availability

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

Specified by:
transformMeasuresFI in interface ITransformationGEN
Parameters:
direction - A com.esri.arcgis.geometry.esriTransformDirection constant (in)
inMeasures - The inMeasures (in)
outMeasures - The outMeasures (in/out: use single element array)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

transformMeasuresIF

public void transformMeasuresIF(int direction,
                                int[] inMeasures,
                                double[][] outMeasures)
                         throws IOException,
                                AutomationException
Transforms integer measures to floating point measures (or do the inverse).

Product Availability

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

Specified by:
transformMeasuresIF in interface ITransformationGEN
Parameters:
direction - A com.esri.arcgis.geometry.esriTransformDirection constant (in)
inMeasures - The inMeasures (in)
outMeasures - The outMeasures (in/out: use single element array)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

transformMeasuresII

public void transformMeasuresII(int direction,
                                int[] inMeasures,
                                int[][] outMeasures)
                         throws IOException,
                                AutomationException
Transforms integer measures to integer measures (or do the inverse).

Product Availability

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

Specified by:
transformMeasuresII in interface ITransformationGEN
Parameters:
direction - A com.esri.arcgis.geometry.esriTransformDirection constant (in)
inMeasures - The inMeasures (in)
outMeasures - The outMeasures (in/out: use single element array)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

transformPointsFF

public void transformPointsFF(int direction,
                              double[] inPoints,
                              double[][] outPoints)
                       throws IOException,
                              AutomationException
Transforms floating point points to floating point points (or do the inverse).

Product Availability

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

Specified by:
transformPointsFF in interface ITransformationGEN
Parameters:
direction - A com.esri.arcgis.geometry.esriTransformDirection constant (in)
inPoints - The inPoints (in)
outPoints - The outPoints (in/out: use single element array)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

transformPointsFI

public void transformPointsFI(int direction,
                              double[] inPoints,
                              int[][] outPoints)
                       throws IOException,
                              AutomationException
Transforms floating point points to integer points (or do the inverse).

Product Availability

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

Specified by:
transformPointsFI in interface ITransformationGEN
Parameters:
direction - A com.esri.arcgis.geometry.esriTransformDirection constant (in)
inPoints - The inPoints (in)
outPoints - The outPoints (in/out: use single element array)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

transformPointsIF

public void transformPointsIF(int direction,
                              int[] inPoints,
                              double[][] outPoints)
                       throws IOException,
                              AutomationException
Transforms integer points to floating point points (or do the inverse).

Product Availability

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

Specified by:
transformPointsIF in interface ITransformationGEN
Parameters:
direction - A com.esri.arcgis.geometry.esriTransformDirection constant (in)
inPoints - The inPoints (in)
outPoints - The outPoints (in/out: use single element array)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

transformPointsII

public void transformPointsII(int direction,
                              int[] inPoints,
                              int[][] outPoints)
                       throws IOException,
                              AutomationException
Transforms integer points to integer points (or do the inverse).

Product Availability

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

Specified by:
transformPointsII in interface ITransformationGEN
Parameters:
direction - A com.esri.arcgis.geometry.esriTransformDirection constant (in)
inPoints - The inPoints (in)
outPoints - The outPoints (in/out: use single element array)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setBounds

public void setBounds(IEnvelope bounds)
               throws IOException,
                      AutomationException
Full extent in world coordinates.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
setBounds in interface IDisplayTransformation
Parameters:
bounds - A reference to a com.esri.arcgis.geometry.IEnvelope (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
See Also:
IDisplayTransformation.getBounds(), IDisplayTransformation, IActiveView.getFullExtent()

getBounds

public IEnvelope getBounds()
                    throws IOException,
                           AutomationException
Full extent in world coordinates.

Remarks

The Bounds property controls the full extent of the display. IActiveView::FullExtent really stores its full extent here and it has two uses for this property. In data view, IActiveView calculates the full extent of all the layers and automatically recalculates it whenever the spatial reference changes and when layers are added or removed from the Map. In layout view, IActiveView stores in FullExtent, the page size (expanded some) and it recalculates this property whenever the page size changes.

Setting the Bounds also sets the VisibleBounds to the same envelope and fires the ITransformEvents::BoundsUpdated and ITransformEvents::VisibleBoundsUpdated events.

Example:

>

//IActiveView.FullExtent relates to IDisplayTransformation.Bounds. 
MapControl mapControl; 
IActiveView activeView = mapControl.getActiveView(); 
System.out.println(activeView.getFullExtent().getEnvelope().getXMax()); 
IDisplayTransformation pDisplayTransform = activeView.getScreenDisplay().getDisplayTransformation(); 
System.out.println(pDisplayTransform.getBounds().getXMax());

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
getBounds in interface IDisplayTransformation
Returns:
A reference to a com.esri.arcgis.geometry.IEnvelope
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
See Also:
IDisplayTransformation.getBounds(), IDisplayTransformation, IActiveView.getFullExtent()

setVisibleBounds

public void setVisibleBounds(IEnvelope bounds)
                      throws IOException,
                             AutomationException
Visible extent in world coordinates.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
setVisibleBounds in interface IDisplayTransformation
Parameters:
bounds - A reference to a com.esri.arcgis.geometry.IEnvelope (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getVisibleBounds

public IEnvelope getVisibleBounds()
                           throws IOException,
                                  AutomationException
Visible extent in world coordinates.

Remarks

VisibleBounds controls the visible extent of the display. By setting this property to different extents, you will get zoom in / zoom out effects. The VisibleBounds must fit within the current Bounds.

IActiveView::Extent really stores its value in this property. In data view, the Extent (VisibleBounds) is modified whenever the spatial reference changes. Also, the Extent is set the first time a layer is added to the Map. In layout view, the Extent is initially set to the page size. In both views, zooming in or out changes the Extent. The Extent is persisted in map documents.

When the VisibleBounds is set, it is always adjusted to match the aspect ratio the DeviceFrame and this is stored as the FittedBounds.

Setting the Visible Bounds also fires the ITransformEvents::BoundsUpdated and ITransformEvents::VisibleBoundsUpdated events to notify any clients that the bounds have changed.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
getVisibleBounds in interface IDisplayTransformation
Returns:
A reference to a com.esri.arcgis.geometry.IEnvelope
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
See Also:
IDisplayTransformation.getVisibleBounds(), ITin.getExtent(), IActiveView.getExtent(), IFeatureClassManage.updateExtent(), IFeatureClassManage, IDisplayTransformation.getFittedBounds()

getFittedBounds

public IEnvelope getFittedBounds()
                          throws IOException,
                                 AutomationException
Device frame in world coordinates.

Remarks

The VisibleBounds is adjusted to match the aspect ratio of the DeviceFrame. This adjusted rectangle is stored in FittedBounds and VisibleBounds stores the actual rectangle specified by the client. In this way, the FittedBounds is the true visible extent of the display and is a read-only property.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
getFittedBounds in interface IDisplayTransformation
Returns:
A reference to a com.esri.arcgis.geometry.IEnvelope
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
See Also:
IDisplayTransformation.getVisibleBounds(), ITin.getExtent(), IActiveView.getExtent(), IFeatureClassManage.updateExtent(), IFeatureClassManage, IDisplayTransformation.getFittedBounds()

getConstrainedBounds

public IEnvelope getConstrainedBounds()
                               throws IOException,
                                      AutomationException
Intersection of Bounds and VisibleBounds.

Remarks

This is usually the same as the FittedBounds unless the display is at full extent and sized so that part of the visible area falls outside of the full extent.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
getConstrainedBounds in interface IDisplayTransformation
Returns:
A reference to a com.esri.arcgis.geometry.IEnvelope
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setDeviceFrame

public void setDeviceFrame(tagRECT bounds)
                    throws IOException,
                           AutomationException
Visible extent in device coordinates.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
setDeviceFrame in interface IDisplayTransformation
Parameters:
bounds - A Structure: com.esri.arcgis.system.tagRECT (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getDeviceFrame

public tagRECT getDeviceFrame()
                       throws IOException,
                              AutomationException
Visible extent in device coordinates.

Remarks

Each DisplayTransformation must have its Bounds, VisibleBounds, and DeviceFrame set. The DeviceFrame is normally the full extent of the device with the origin equal to (0, 0). Output can also be directed to some rectangle on the device by specifying the rectangle as the device frame.
For example, if a Map object is not framed, as in the case in ArcMap's data view, the Map uses the Windows API call GetClientRect to get the coordinates of the client (drawing) area of a window and stores them in this property. This tells the Map where in the window it can draw.
A DeviceFrame can be obtained from IMxDocument::ActiveView::ScreenDisplay::DisplayTransformation::DeviceFrame. It will contain the full extent of the map window. There may be a difference between the values returned in Map view or Layout view due to the possible presence of rulers..
You may also cast a reference to the document's page layout (as found in IMxDocument::PageLayout) into an IActiveView. The IMxDocument::ActiveView::ScreenDisplay::DisplayTransformation::DeviceFrame will return the same data as above corresponding to the current device extent of the page layout.
Finally if you cast a reference to the map (e.g. from IMxDocument::FocusMap) into an IActiveView, the IMxDocument::ActiveView::ScreenDisplay::DisplayTransformation::DeviceFrame will return the current device extent of the map. In Map view it will be the same as above, but in Layout view it will give back the size of the dataframe in which the map is drawn.
Setting the DeviceFrame will fire the ITransformEvents::DeviceFrameUpdated event. Clients typically need to know when the device frame has changed sized so they can redraw. For example, the ScreenDisplay object listens for this event so that it may update its caches, cause a refresh, and update the scrollbars.
If you are working within ArcMap, no display object's DeviceFrame property should be changed programmatically.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
getDeviceFrame in interface IDisplayTransformation
Returns:
A Structure: com.esri.arcgis.system.tagRECT
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setZoomResolution

public void setZoomResolution(boolean flag)
                       throws IOException,
                              AutomationException
Indicates if resolution is tied to visible bounds. If true, zooming in magnifies contents (i.e., zoom in on page).

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
setZoomResolution in interface IDisplayTransformation
Parameters:
flag - The flag (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isZoomResolution

public boolean isZoomResolution()
                         throws IOException,
                                AutomationException
Indicates if resolution is tied to visible bounds. If true, zooming in magnifies contents (i.e., zoom in on page).

Remarks

ZoomResolution is a flag that tells the DisplayTransformation whether or not to automatically adjust the device resolution (pixels per inch) based on the current zoom level. This is useful when you want to define a page display. With this kind of display, graphics are drawn at their actual size, i.e., scale is 1:1. Zooming in really means magnifying the graphics when drawing them to a computer monitor. When a map page is exported or printed, the zoom level is always 100% and the extent is defined by the page. Use ZoomResolution to specify this page-style behavior. With ZoomResolution set to true, the DisplayTransformation monitors the current zoom level. When the display is zoomed to 100%, a higher effective resolution is calculated. This has the effect of automatically magnifying all drawing. The Resolution property always returns the effective resolution. ScaleRatio always returns 1:1.

Note, when ZoomResolution is true, in order to get the physical device resolution, you must temporarily set ZoomResolution to false, get the Resolution, and then restore the ZoomResolution to true.

To find the current zoom percentage, simply divide the effective resolution by the physical resolution and multiply by 100. This is what IPageLayout::ZoomPercent does.

If you don't want graphics to scale as you zoom in, set this flag to false. For example, the Map object sets its DisplayTransformation's ZoomResolution property to false so that the contents of the map are not magnified when you zoom in on them. The PageLayout sets its DisplayTransformaion's ZoomResolution property to true.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
isZoomResolution in interface IDisplayTransformation
Returns:
The flag
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
See Also:
IDisplayTransformation, IDisplayTransformation.getResolution()

setResolution

public void setResolution(double pDpi)
                   throws IOException,
                          AutomationException
Resolution of the device in dots (pixels) per inch.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
setResolution in interface IDisplayTransformation
Parameters:
pDpi - The pDpi (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getResolution

public double getResolution()
                     throws IOException,
                            AutomationException
Resolution of the device in dots (pixels) per inch.

Description


Remarks

In layout view, when the Page is zoomed 1:1, the resolution equals the device resolution. When the Page is zoomed to > 100%, the resolution is set higher so that graphics are magnified.

In data view, the Map object always has its resolution set to that of the display. Graphics are not magnified in this view when you zoom in.

The units are always in pixels per inch.

After setting the resolution, the ITransformEvents::ResolutionUpdated event is fired.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
getResolution in interface IDisplayTransformation
Returns:
The pDpi
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
See Also:
IDisplayTransformation, IDisplayTransformation.getResolution()

setRotation

public void setRotation(double degrees)
                 throws IOException,
                        AutomationException
Rotation angle in degrees.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
setRotation in interface IDisplayTransformation
Parameters:
degrees - The degrees (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getRotation

public double getRotation()
                   throws IOException,
                          AutomationException
Rotation angle in degrees.

Remarks

This property controls the rotation of the display. The angle of the rotation is measured in degrees and the rotation occurs around the center of the FittedBounds.

TrackRotate automatically sets this property but if you are using RotateStart / RotateStop, you must do so yourself. RotateStop provides the final angle rotation that should be used with this property.

Setting a new rotation automatically fires the ITransformEvents::RotationUpdated event.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
getRotation in interface IDisplayTransformation
Returns:
The degrees
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
See Also:
IScreenDisplay.rotateTimer(), IDisplayTransformation.getRotation(), IScreenDisplay.rotateMoveTo(com.esri.arcgis.geometry.IPoint), IScreenDisplay.rotateStop(), IScreenDisplay.rotateStart(com.esri.arcgis.geometry.IPoint, com.esri.arcgis.geometry.IPoint)

getUnits

public int getUnits()
             throws IOException,
                    AutomationException
Units used by world coordinates.

Remarks

Units is the type of esriUnits used by the DisplayTransformation. For example, the Map object stores its map units in this property and the units are based on the current coordinate system. See IMap::MapUnits for more details. Also, the PageLayout's Page object stores its units in this property and it uses inches by default. See IPage::Units for more details.

You should not change the units of your Map or Page using this property. Instead, use the related properties mentioned above. Although setting the Map's or Page's Units property will set its DisplayTransform Units property, the reverse is not always true.

Setting the Units property fires the ITransformEvents::UnitsUpdated event.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
getUnits in interface IDisplayTransformation
Returns:
A com.esri.arcgis.system.esriUnits constant
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setUnits

public void setUnits(int unitsCode)
              throws IOException,
                     AutomationException
Units used by world coordinates.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
setUnits in interface IDisplayTransformation
Parameters:
unitsCode - A com.esri.arcgis.system.esriUnits constant (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getScaleRatio

public double getScaleRatio()
                     throws IOException,
                            AutomationException
Scale between FittedBounds and DeviceFrame.

Remarks

Several objects that manage a DisplayTransformation, such as the Map object, use this property to control the map scale. Map scale is the relationship between the dimensions of features on a map and the geographic objects they represent on the earth, commonly expressed as a fraction or a ratio. A map scale of 1/100,000 or 1:100,000 means that one unit of measure on the map equals 100,000 of the same units on the earth. When you zoom in or out in ArcMap's data view, you are changing this property on the Map's DisplayTransformation .

The Map object has a short-cut (IMap::MapScale) directly to this property on its DisplayTransformation object.

The PageLayout object does not use this property the same way as the Map object. In ArcMap's layout view, zooming in is akin to using a magnifying glass to zoom in on the page where the map is displayed. When you zoom in, you are magnifying what is actually going to print. To get this effect, the PageLayout objects always keeps its ReferenceScale set to zero and its ScaleRatio set to 1:1 (meaning that 1 inch on the screen equals one inch on the printer).

Example:

The following java code zooms the focus map to a 1:10,000 scale.

MapControl mapControl; 
IActiveView pActiveView = mapControl.getActiveView(); 
IDisplayTransformation pDisplayTransform = pActiveView.getScreenDisplay().getDisplayTransformation() 
pDisplayTransform.setScaleRatio(10000); 
pActiveView.refresh();

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
getScaleRatio in interface IDisplayTransformation
Returns:
The scale
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setScaleRatio

public void setScaleRatio(double scale)
                   throws IOException,
                          AutomationException
Scale between FittedBounds and DeviceFrame.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
setScaleRatio in interface IDisplayTransformation
Parameters:
scale - The scale (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getReferenceScale

public double getReferenceScale()
                         throws IOException,
                                AutomationException
Reference scale for computing scaled symbol sizes.

Remarks

All symbols are drawn relative to the scale value set in this property. By default this value is zero. Symbol size is true at the reference scale. When the reference scale is 0, symbols are always drawn at the same size regardless of the map scale (ScaleRatio). For example, if you set your labels to display with 10 pt font, they will appear as 10 pt text at any map scale. When the reference scale is greater than 0, symbols are drawn at a size relative to the map scale. For example, if you set your labels to display with 10 pt font and have a reference scale of 10,000, the labels will appear as 10 pt only at that map scale; as you zoom in, the size of all symbols increases because the size of the symbols is based on the smaller scale.

The Map object has a short-cut (IMap::ReferenceScale) directly to the ReferenceScale property on its DisplayTransformation object.

The PageLayout object does not use ReferenceScale and ScaleRatio the same way as the Map object. In layout view, zooming in is more like a magnifying glass looking at what is going to print. When you zoom in, you only magnify what is actually going to print. To get this effect, the ReferenceScale is always set to zero and the ScaleRatio is always set to 1:1 (i.e., 1 inch on the screen equals one inch on the printer). In data view however, zooming in or out, changes what gets printed - WYSIWYG (What You See Is What You Get).

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
getReferenceScale in interface IDisplayTransformation
Returns:
The scale
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setReferenceScale

public void setReferenceScale(double scale)
                       throws IOException,
                              AutomationException
Reference scale for computing scaled symbol sizes.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
setReferenceScale in interface IDisplayTransformation
Parameters:
scale - The scale (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setSpatialReferenceByRef

public void setSpatialReferenceByRef(ISpatialReference spatialReference)
                              throws IOException,
                                     AutomationException
Current spatial reference.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
setSpatialReferenceByRef in interface IDisplayTransformation
Parameters:
spatialReference - A reference to a com.esri.arcgis.geometry.ISpatialReference (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getSpatialReference

public ISpatialReference getSpatialReference()
                                      throws IOException,
                                             AutomationException
Current spatial reference.

Remarks

Use this property to obtain a reference to the transforms coordinate system object.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
getSpatialReference in interface IDisplayTransformation
Returns:
A reference to a com.esri.arcgis.geometry.ISpatialReference
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isSuppressEvents

public boolean isSuppressEvents()
                         throws IOException,
                                AutomationException
Indicates if transformation object suppresses events.

Remarks

SuppressEvents on IDisplayTransformation prevents events collected under ITransformEvents from being fired.

For example, IScreenDisplay::StartDrawing sets SuppressEvents to TRUE and FinishDrawing sets it back to FALSE, this prevents all transform events from firing during the drawing.

SuppressEvents is set to FALSE by default.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
isSuppressEvents in interface IDisplayTransformation
Returns:
The suppressEvents
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setSuppressEvents

public void setSuppressEvents(boolean suppressEvents)
                       throws IOException,
                              AutomationException
Indicates if transformation object suppresses events.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
setSuppressEvents in interface IDisplayTransformation
Parameters:
suppressEvents - The suppressEvents (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

transformRect

public void transformRect(IEnvelope mapRect,
                          tagRECT[] devRect,
                          int options)
                   throws IOException,
                          AutomationException
Transforms a rectangle from device to world space or vice versa. Use the flags specified by esriDisplayTransformEnum.

Remarks

TransformRect converts a rectangle from map units to device units or vice versa. Multiple options can be entered to control the direction of the transformation etc by added the values of constants from esriDisplayTransformationEnum. The values in esriDisplayTransformationEnum define the accepted values that can be used in the transformation.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
transformRect in interface IDisplayTransformation
Parameters:
mapRect - A reference to a com.esri.arcgis.geometry.IEnvelope (in)
devRect - A Structure: com.esri.arcgis.system.tagRECT (in/out: use single element array)
options - The options (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

transformCoords

public void transformCoords(_WKSPoint mapPoints,
                            tagPOINT devPoints,
                            int numPoints,
                            int options)
                     throws IOException,
                            AutomationException
Transforms a set of points or measurements from device to world space or vice versa. Use the flags specified by esriDisplayTransformEnum.

Remarks

TransformCoords converts an array of points from map units to device units or vice versa. The TRANSFORM_TOMAP and TRANSFORM_TODEVICE flags control the direction of the transformation. The TRANSFORM_SIZE and TRANSFORM_POSITION flags specify whether the points are coordinates or sizes.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
transformCoords in interface IDisplayTransformation
Parameters:
mapPoints - A Structure: com.esri.arcgis.system._WKSPoint (A com.esri.arcgis.system._WKSPoint COM typedef) (in)
devPoints - A Structure: com.esri.arcgis.display.tagPOINT (in)
numPoints - The numPoints (in)
options - The options (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

toMapPoint

public IPoint toMapPoint(int x,
                         int y)
                  throws IOException,
                         AutomationException
Calculates a point in map coordinates corresponding to the device point.

Remarks

ToMapPoint converts an (X,Y) location in device coordinates to real world coordinates (either map units or page units if working with ArcMap's PageLayout ).

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
toMapPoint in interface IDisplayTransformation
Parameters:
x - The x (in)
y - The y (in)
Returns:
A reference to a com.esri.arcgis.geometry.IPoint
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

fromMapPoint

public void fromMapPoint(IPoint mapPoint,
                         int[] x,
                         int[] y)
                  throws IOException,
                         AutomationException
Calculates device coordinates corresponding to the map point.

Remarks

FromMapPoint converts a point in map units to device coordinates.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
fromMapPoint in interface IDisplayTransformation
Parameters:
mapPoint - A reference to a com.esri.arcgis.geometry.IPoint (in)
x - The x (out: use single element array)
y - The y (out: use single element array)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

toPoints

public double toPoints(double mapDistance)
                throws IOException,
                       AutomationException
Calculates a distance in points (1/72 inch) corresponding to the map distance.

Remarks

Converts the specified map distance into point distance (1/72 inch).

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
toPoints in interface IDisplayTransformation
Parameters:
mapDistance - The mapDistance (in)
Returns:
The pointDistance
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

fromPoints

public double fromPoints(double pointDistance)
                  throws IOException,
                         AutomationException
Calculates a map distance corresponding to a point (1/72) distance.

Remarks

Converts the point distance into map distance.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
fromPoints in interface IDisplayTransformation
Parameters:
pointDistance - The pointDistance (in)
Returns:
The mapDistance
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

transformMeasuresFF

public void transformMeasuresFF(int direction,
                                int cMeasures,
                                double[] inMeasures,
                                double[] outMeasures)
                         throws IOException,
                                AutomationException
Transforms floating point measures to floating point measures (or do the inverse).

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
transformMeasuresFF in interface ITransformation
Parameters:
direction - A com.esri.arcgis.geometry.esriTransformDirection constant (in)
cMeasures - The cMeasures (in)
inMeasures - The inMeasures (in)
outMeasures - The outMeasures (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

transformMeasuresFI

public void transformMeasuresFI(int direction,
                                int cMeasures,
                                double[] inMeasures,
                                int[] outMeasures)
                         throws IOException,
                                AutomationException
Transforms floating point measures to integer measures (or do the inverse).

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
transformMeasuresFI in interface ITransformation
Parameters:
direction - A com.esri.arcgis.geometry.esriTransformDirection constant (in)
cMeasures - The cMeasures (in)
inMeasures - The inMeasures (in)
outMeasures - The outMeasures (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

transformMeasuresIF

public void transformMeasuresIF(int direction,
                                int cMeasures,
                                int[] inMeasures,
                                double[] outMeasures)
                         throws IOException,
                                AutomationException
Transforms integer measures to floating point measures (or do the inverse).

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
transformMeasuresIF in interface ITransformation
Parameters:
direction - A com.esri.arcgis.geometry.esriTransformDirection constant (in)
cMeasures - The cMeasures (in)
inMeasures - The inMeasures (in)
outMeasures - The outMeasures (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

transformMeasuresII

public void transformMeasuresII(int direction,
                                int cMeasures,
                                int[] inMeasures,
                                int[] outMeasures)
                         throws IOException,
                                AutomationException
Transforms integer measures to integer measures (or do the inverse).

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
transformMeasuresII in interface ITransformation
Parameters:
direction - A com.esri.arcgis.geometry.esriTransformDirection constant (in)
cMeasures - The cMeasures (in)
inMeasures - The inMeasures (in)
outMeasures - The outMeasures (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

transformPointsFF

public void transformPointsFF(int direction,
                              int cPoints,
                              double[] inPoints,
                              double[] outPoints)
                       throws IOException,
                              AutomationException
Transforms floating point points to floating point points (or do the inverse).

Remarks

The cPoints parameter is the number of points you wish to transform. inPoints and outPoints are one-dimensional arrays so you must interleave coordinate pairs into the arrays.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
transformPointsFF in interface ITransformation
Parameters:
direction - A com.esri.arcgis.geometry.esriTransformDirection constant (in)
cPoints - The cPoints (in)
inPoints - The inPoints (in)
outPoints - The outPoints (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

transformPointsFI

public void transformPointsFI(int direction,
                              int cPoints,
                              double[] inPoints,
                              int[] outPoints)
                       throws IOException,
                              AutomationException
Transforms floating point points to integer points (or do the inverse).

Remarks

The cPoints parameter is the number of points you wish to transform. inPoints and outPoints are one-dimensional arrays so you must interleave coordinate pairs into the arrays.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
transformPointsFI in interface ITransformation
Parameters:
direction - A com.esri.arcgis.geometry.esriTransformDirection constant (in)
cPoints - The cPoints (in)
inPoints - The inPoints (in)
outPoints - The outPoints (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

transformPointsIF

public void transformPointsIF(int direction,
                              int cPoints,
                              int[] inPoints,
                              double[] outPoints)
                       throws IOException,
                              AutomationException
Transforms integer points to floating point points (or do the inverse).

Remarks

The cPoints parameter is the number of points you wish to transform. inPoints and outPoints are one-dimensional arrays so you must interleave coordinate pairs into the arrays.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
transformPointsIF in interface ITransformation
Parameters:
direction - A com.esri.arcgis.geometry.esriTransformDirection constant (in)
cPoints - The cPoints (in)
inPoints - The inPoints (in)
outPoints - The outPoints (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

transformPointsII

public void transformPointsII(int direction,
                              int cPoints,
                              int[] inPoints,
                              int[] outPoints)
                       throws IOException,
                              AutomationException
Transforms integer points to integer points (or do the inverse).

Remarks

The cPoints parameter is the number of points you wish to transform. inPoints and outPoints are one-dimensional arrays so you must interleave coordinate pairs into the arrays.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
transformPointsII in interface ITransformation
Parameters:
direction - A com.esri.arcgis.geometry.esriTransformDirection constant (in)
cPoints - The cPoints (in)
inPoints - The inPoints (in)
outPoints - The outPoints (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setScaleRatioNoRecalc

public void setScaleRatioNoRecalc(double rhs1)
                           throws IOException,
                                  AutomationException
The scale without any recalculation.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
setScaleRatioNoRecalc in interface IDisplayTransformationAdmin
Parameters:
rhs1 - The rhs1 (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getScaleSnapping

public int getScaleSnapping()
                     throws IOException,
                            AutomationException
Indicates if transform snaps the fitted bounds to a standard scale.

Product Availability

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

Specified by:
getScaleSnapping in interface IDisplayTransformationScales
Returns:
A com.esri.arcgis.display.esriScaleSnapping constant
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setScaleSnapping

public void setScaleSnapping(int setting)
                      throws IOException,
                             AutomationException
Indicates if transform snaps the fitted bounds to a standard scale.

Product Availability

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

Specified by:
setScaleSnapping in interface IDisplayTransformationScales
Parameters:
setting - A com.esri.arcgis.display.esriScaleSnapping constant (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getUserScaleCount

public int getUserScaleCount()
                      throws IOException,
                             AutomationException
Get the number of user scales.

Product Availability

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

Specified by:
getUserScaleCount in interface IDisplayTransformationScales
Returns:
The count
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getUserScale

public double getUserScale(int idx)
                    throws IOException,
                           AutomationException
Get the user scales.

Product Availability

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

Specified by:
getUserScale in interface IDisplayTransformationScales
Parameters:
idx - The idx (in)
Returns:
The scale
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

addUserScale

public void addUserScale(double scale)
                  throws IOException,
                         AutomationException
Add a new user scale.

Product Availability

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

Specified by:
addUserScale in interface IDisplayTransformationScales
Parameters:
scale - The scale (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

removeUserScale

public void removeUserScale(double scale)
                     throws IOException,
                            AutomationException
Remove a user scale.

Product Availability

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

Specified by:
removeUserScale in interface IDisplayTransformationScales
Parameters:
scale - The scale (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

removeAllUserScales

public void removeAllUserScales()
                         throws IOException,
                                AutomationException
Remove all the user scales.

Product Availability

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

Specified by:
removeAllUserScales in interface IDisplayTransformationScales
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

loadDefaultUserScales

public void loadDefaultUserScales()
                           throws IOException,
                                  AutomationException
Initialize user scales to defaults.

Product Availability

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

Specified by:
loadDefaultUserScales in interface IDisplayTransformationScales
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

saveDefaultUserScales

public void saveDefaultUserScales()
                           throws IOException,
                                  AutomationException
Set the current set of user scales to be the defaults.

Product Availability

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

Specified by:
saveDefaultUserScales in interface IDisplayTransformationScales
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

calculateScale

public double calculateScale(IEnvelope extent)
                      throws IOException,
                             AutomationException
Calculate the scale of the specified extent.

Product Availability

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

Specified by:
calculateScale in interface IDisplayTransformationScales
Parameters:
extent - A reference to a com.esri.arcgis.geometry.IEnvelope (in)
Returns:
The scale
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

zoomTo

public void zoomTo(IEnvelope extent,
                   double scale)
            throws IOException,
                   AutomationException
Zoom to the specified scale. Center on extent.

Product Availability

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

Specified by:
zoomTo in interface IDisplayTransformationScales
Parameters:
extent - A reference to a com.esri.arcgis.geometry.IEnvelope (in)
scale - The scale (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

snapScale

public double snapScale(double scale)
                 throws IOException,
                        AutomationException
Snap the specified scale to a standard scale.

Product Availability

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

Specified by:
snapScale in interface IDisplayTransformationScales
Parameters:
scale - The scale (in)
Returns:
The snappedScale
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

nextScale

public double nextScale(double scale)
                 throws IOException,
                        AutomationException
Find the nearest standard scale with a value that is higher than the specified scale.

Product Availability

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

Specified by:
nextScale in interface IDisplayTransformationScales
Parameters:
scale - The scale (in)
Returns:
The nextScale
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

previousScale

public double previousScale(double scale)
                     throws IOException,
                            AutomationException
Find the nearest standard scale with a value that is lower than the specified scale.

Product Availability

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

Specified by:
previousScale in interface IDisplayTransformationScales
Parameters:
scale - The scale (in)
Returns:
The previousScale
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getRasterResolution

public double getRasterResolution()
                           throws IOException,
                                  AutomationException
Resolution used to output rasterized data. A value of 0 means 'same as device'.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
getRasterResolution in interface IRasterOutputSettings
Returns:
The dpi
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setRasterResolution

public void setRasterResolution(double dpi)
                         throws IOException,
                                AutomationException
Resolution used to output rasterized data. A value of 0 means 'same as device'.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
setRasterResolution in interface IRasterOutputSettings
Parameters:
dpi - The dpi (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getMaxColorDepth

public short getMaxColorDepth()
                       throws IOException,
                              AutomationException
Maximum color depth for raster output. Specify bits per pixel, i.e., 4, 8, 16.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
getMaxColorDepth in interface IRasterOutputSettings
Returns:
The bitsPerPixel
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setMaxColorDepth

public void setMaxColorDepth(short bitsPerPixel)
                      throws IOException,
                             AutomationException
Maximum color depth for raster output. Specify bits per pixel, i.e., 4, 8, 16.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
setMaxColorDepth in interface IRasterOutputSettings
Parameters:
bitsPerPixel - The bitsPerPixel (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getRasterRatio

public double getRasterRatio()
                      throws IOException,
                             AutomationException
Ratio between resolution and raster resolution.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
getRasterRatio in interface IRasterOutputSettings
Returns:
The ratio
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getResampleRatio

public int getResampleRatio()
                     throws IOException,
                            AutomationException
This coefficient states the scale level for the raster when it goes to output. 1 means 1:1; 2 means 1:2, i.e. 2 times less than the output quality.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
getResampleRatio in interface IOutputRasterSettings
Returns:
The pRatio
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setResampleRatio

public void setResampleRatio(int pRatio)
                      throws IOException,
                             AutomationException
This coefficient states the scale level for the raster when it goes to output. 1 means 1:1; 2 means 1:2, i.e. 2 times less than the output quality.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
setResampleRatio in interface IOutputRasterSettings
Parameters:
pRatio - The pRatio (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

enumConnectionPoints

public void enumConnectionPoints(IEnumConnectionPoints[] ppEnum)
                          throws IOException,
                                 AutomationException
enumConnectionPoints

Description

IConnectionPointContainer is a Microsoft interface. Please refer to MSDN for information about this interface.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
enumConnectionPoints in interface IConnectionPointContainer
Parameters:
ppEnum - A reference to a com.esri.arcgis.display.IEnumConnectionPoints (out: use single element array)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

findConnectionPoint

public void findConnectionPoint(GUID riid,
                                IConnectionPoint[] ppCP)
                         throws IOException,
                                AutomationException
findConnectionPoint

Description

IConnectionPointContainer is a Microsoft interface. Please refer to MSDN for information about this interface.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
findConnectionPoint in interface IConnectionPointContainer
Parameters:
riid - A Structure: com.esri.arcgis.support.ms.stdole.GUID (in)
ppCP - A reference to a com.esri.arcgis.display.IConnectionPoint (out: use single element array)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setDelayEvents

public void setDelayEvents(boolean delayEvents)
                    throws IOException,
                           AutomationException
Indicates if events are delayed. If something changes while events are being delayed, a single event is fired when events are resumed.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
setDelayEvents in interface IDelayEvents
Parameters:
delayEvents - The delayEvents (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isDelayEvents

public boolean isDelayEvents()
                      throws IOException,
                             AutomationException
Indicates if events are delayed. If something changes while events are being delayed, a single event is fired when events are resumed.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
isDelayEvents in interface IDelayEvents
Returns:
The delayEvents
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.