com.esri.arcgis.carto
Class RenderingRule

java.lang.Object
  extended by com.esri.arcgis.carto.RenderingRule
All Implemented Interfaces:
IRenderingRule, com.esri.arcgis.interop.RemoteObjRef, IClone, IPersist, IPersistStream, IXMLSerialize, IXMLVersionSupport, Externalizable, Serializable

public class RenderingRule
extends Object
implements com.esri.arcgis.interop.RemoteObjRef, IRenderingRule, IClone, IPersist, IPersistStream, IXMLSerialize, IXMLVersionSupport, Externalizable

An image service rendering rule class.

Description

RenderingRule object is used to define how an image service should be rendered to generate the requested image. A rendering rule consists of: (1) a raster function; (2) a raster renderer; (3) a name and description of a rendering rule that is defined on the image service. The raster function will be applied first to the image service, and followed by the raster renderer. The result will then be converted to requested format, e.g. jpeg, png, bmp, and etc. If the function and renderer are both missing, the name is assumed to be a rendering rule available on the service. If there is no rendering rule, and the image service still needs to be rendered to generate the requested image, a default renderer will be applied. A proper default renderer is created using the same rule as when a raster dataset of the same properties, e.g. number of band, pixel type, and etc is added to ArcMap.

Product Availability

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

See Also:
Serialized Form

Constructor Summary
RenderingRule()
          Constructs a RenderingRule using ArcGIS Engine.
RenderingRule(Object obj)
          Deprecated. As of ArcGIS 9.2, replaced by normal Java casts.
RenderingRule theRenderingRule = (RenderingRule) obj;
 
Method Summary
 void assign(IClone src)
          Assigns the properties of src to the receiver.
 void deserialize(IXMLSerializeData data)
          Deserializes an object from XML.
 boolean equals(Object o)
          Compare this object with another
 IClone esri_clone()
          Clones the receiver and assigns the result to *clone.
 IRasterFunctionArguments getArguments()
          The raster function arguments.
 void getClassID(GUID[] pClassID)
          getClassID
static String getClsid()
          getClsid.
 String getDescription()
          The rendering rule description.
 IRasterFunction getFunction()
          The raster function.
 String getMinNamespaceSupported()
          The minimum namespace the class can serialize to (eg the 90 namespace).
 String getName()
          The rendering rule name.
 IRasterRenderer getRenderer()
          The raster renderer.
 void getSizeMax(_ULARGE_INTEGER[] pcbSize)
          getSizeMax
 String getVariableName()
          The raster function variable name.
 int hashCode()
          the hashcode for this object
 void isDirty()
          isDirty
 boolean isEqual(IClone other)
          Indicates if the receiver and other have the same properties.
 boolean isIdentical(IClone other)
          Indicates if the receiver and other are the same object.
 void load(IStream pstm)
          load
 void readExternal(ObjectInput in)
           
 void save(IStream pstm, int fClearDirty)
          save
 void serialize(IXMLSerializeData data)
          Serializes an object to XML.
 void setArgumentsByRef(IRasterFunctionArguments ppArguments)
          The raster function arguments.
 void setDescription(String pDescription)
          The rendering rule description.
 void setFunctionByRef(IRasterFunction ppFunction)
          The raster function.
 void setName(String pName)
          The rendering rule name.
 void setRendererByRef(IRasterRenderer ppRenderer)
          The raster renderer.
 void setVariableName(String pVariableName)
          The raster function variable name.
 void writeExternal(ObjectOutput out)
           
 
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

RenderingRule

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

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

RenderingRule

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

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

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

getName

public String getName()
               throws IOException,
                      AutomationException
The rendering rule name.

Product Availability

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

Specified by:
getName in interface IRenderingRule
Returns:
The pName
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setName

public void setName(String pName)
             throws IOException,
                    AutomationException
The rendering rule name.

Description

The rendering rule name. This is used to address a predefined rendering rule on the service when both the raster function and renderer are not specified.

Product Availability

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

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

getDescription

public String getDescription()
                      throws IOException,
                             AutomationException
The rendering rule description.

Product Availability

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

Specified by:
getDescription in interface IRenderingRule
Returns:
The pDescription
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setDescription

public void setDescription(String pDescription)
                    throws IOException,
                           AutomationException
The rendering rule description.

Product Availability

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

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

getFunction

public IRasterFunction getFunction()
                            throws IOException,
                                   AutomationException
The raster function.

Product Availability

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

Specified by:
getFunction in interface IRenderingRule
Returns:
A reference to a com.esri.arcgis.datasourcesraster.IRasterFunction
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setFunctionByRef

public void setFunctionByRef(IRasterFunction ppFunction)
                      throws IOException,
                             AutomationException
The raster function.

Description

It takes RasterFuntion object.The RasterFunction together with its arguments (RasterFunctionArguments) will be applied to the target service. The target image service will be assigned to the named argument of the function’s argument list, and the argument list is then bound to the function.

Product Availability

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

Specified by:
setFunctionByRef in interface IRenderingRule
Parameters:
ppFunction - A reference to a com.esri.arcgis.datasourcesraster.IRasterFunction (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getArguments

public IRasterFunctionArguments getArguments()
                                      throws IOException,
                                             AutomationException
The raster function arguments.

Product Availability

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

Specified by:
getArguments in interface IRenderingRule
Returns:
A reference to a com.esri.arcgis.datasourcesraster.IRasterFunctionArguments
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setArgumentsByRef

public void setArgumentsByRef(IRasterFunctionArguments ppArguments)
                       throws IOException,
                              AutomationException
The raster function arguments.

Description

The raster function arguments. One of the named arguments will be set using the target service.

Product Availability

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

Specified by:
setArgumentsByRef in interface IRenderingRule
Parameters:
ppArguments - A reference to a com.esri.arcgis.datasourcesraster.IRasterFunctionArguments (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getVariableName

public String getVariableName()
                       throws IOException,
                              AutomationException
The raster function variable name.

Product Availability

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

Specified by:
getVariableName in interface IRenderingRule
Returns:
The pVariableName
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setVariableName

public void setVariableName(String pVariableName)
                     throws IOException,
                            AutomationException
The raster function variable name.

Description

The variable name in the list of named function arguments to which the target image service should be assigned.

Remarks

This could be "Raster" for ExtractBandFunction, "DEM" for HillshadeFunction, etc.

Product Availability

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

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

getRenderer

public IRasterRenderer getRenderer()
                            throws IOException,
                                   AutomationException
The raster renderer.

Product Availability

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

Specified by:
getRenderer in interface IRenderingRule
Returns:
A reference to a com.esri.arcgis.carto.IRasterRenderer
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setRendererByRef

public void setRendererByRef(IRasterRenderer ppRenderer)
                      throws IOException,
                             AutomationException
The raster renderer.

Description

The raster renderer. The raster renderer will be used to render the target service, after the function is applied, to generate a requested image.

Product Availability

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

Specified by:
setRendererByRef in interface IRenderingRule
Parameters:
ppRenderer - A reference to a com.esri.arcgis.carto.IRasterRenderer (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

esri_clone

public IClone esri_clone()
                  throws IOException,
                         AutomationException
Clones the receiver and assigns the result to *clone.

Product Availability

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

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

assign

public void assign(IClone src)
            throws IOException,
                   AutomationException
Assigns the properties of src to the receiver.

Description

Use Assign method to assign the properties of source object to receiver object. Both objects need to have the same CLSIDs. Both source and receiver objects need to be instantiated.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
assign in interface IClone
Parameters:
src - A reference to a com.esri.arcgis.system.IClone (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isEqual

public boolean isEqual(IClone other)
                throws IOException,
                       AutomationException
Indicates if the receiver and other have the same properties.

Description

IsEqual returns True if the receiver and the source have the same properties. Note, this does not imply that the receiver and the source reference the same object.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
isEqual in interface IClone
Parameters:
other - A reference to a com.esri.arcgis.system.IClone (in)
Returns:
The equal
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isIdentical

public boolean isIdentical(IClone other)
                    throws IOException,
                           AutomationException
Indicates if the receiver and other are the same object.

Description

IsIdentical returns true if the receiver and the source reference the same object.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
isIdentical in interface IClone
Parameters:
other - A reference to a com.esri.arcgis.system.IClone (in)
Returns:
The identical
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getClassID

public void getClassID(GUID[] pClassID)
                throws IOException,
                       AutomationException
getClassID

Description

IPersist 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:
getClassID in interface IPersist
Parameters:
pClassID - A Structure: com.esri.arcgis.support.ms.stdole.GUID (out: use single element array)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isDirty

public void isDirty()
             throws IOException,
                    AutomationException
isDirty

Description

IPersistStream 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:
isDirty in interface IPersistStream
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

load

public void load(IStream pstm)
          throws IOException,
                 AutomationException
load

Description

IPersistStream 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:
load in interface IPersistStream
Parameters:
pstm - A reference to a com.esri.arcgis.system.IStream (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

save

public void save(IStream pstm,
                 int fClearDirty)
          throws IOException,
                 AutomationException
save

Description

IPersistStream 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:
save in interface IPersistStream
Parameters:
pstm - A reference to a com.esri.arcgis.system.IStream (in)
fClearDirty - The fClearDirty (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getSizeMax

public void getSizeMax(_ULARGE_INTEGER[] pcbSize)
                throws IOException,
                       AutomationException
getSizeMax

Description

IPersistStream 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:
getSizeMax in interface IPersistStream
Parameters:
pcbSize - A Structure: com.esri.arcgis.system._ULARGE_INTEGER (out: use single element array)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

serialize

public void serialize(IXMLSerializeData data)
               throws IOException,
                      AutomationException
Serializes an object to XML.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
serialize in interface IXMLSerialize
Parameters:
data - A reference to a com.esri.arcgis.system.IXMLSerializeData (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

deserialize

public void deserialize(IXMLSerializeData data)
                 throws IOException,
                        AutomationException
Deserializes an object from XML.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
deserialize in interface IXMLSerialize
Parameters:
data - A reference to a com.esri.arcgis.system.IXMLSerializeData (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getMinNamespaceSupported

public String getMinNamespaceSupported()
                                throws IOException,
                                       AutomationException
The minimum namespace the class can serialize to (eg the 90 namespace).

Product Availability

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

Specified by:
getMinNamespaceSupported in interface IXMLVersionSupport
Returns:
The namespaceURI
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

writeExternal

public void writeExternal(ObjectOutput out)
                   throws IOException
Specified by:
writeExternal in interface Externalizable
Throws:
IOException

readExternal

public void readExternal(ObjectInput in)
                  throws IOException,
                         ClassNotFoundException
Specified by:
readExternal in interface Externalizable
Throws:
IOException
ClassNotFoundException