|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object com.esri.arcgis.carto.DynamicGlyphFactory
public class DynamicGlyphFactory
Dynamic glyph factory class.
This object is new at ArcGIS 9.3.
Constructor Summary | |
---|---|
DynamicGlyphFactory()
Constructs a DynamicGlyphFactory using ArcGIS Engine. |
|
DynamicGlyphFactory(Object obj)
Deprecated. As of ArcGIS 9.2, replaced by normal Java casts. DynamicGlyphFactory theDynamicGlyphFactory = (DynamicGlyphFactory) obj; |
Method Summary | |
---|---|
IDynamicGlyph |
createDynamicGlyph(ISymbol symbol)
Creates a dynamic glyph from a symbol. |
IDynamicGlyph |
createDynamicGlyphFromBitmap(int glyphType,
int hBmp,
boolean preserveAlphaChannel,
IColor transparencyColor)
Create a dynamic glyph from a bitmap handle. |
IDynamicGlyph |
createDynamicGlyphFromFile(int glyphType,
String fileName,
IColor transparencyColor)
Creates a dynamic glyph from a file. |
void |
deleteDynamicGlyph(IDynamicGlyph glyph)
Deletes the dynamic glyph's resource. |
boolean |
equals(Object o)
Compare this object with another |
static String |
getClsid()
getClsid. |
void |
getCreatedDynamicGlyphSize(int glyphType,
int[] sizeX,
int[] sizeY)
Indicates the texture size of the created dynamic glyph. |
IDynamicGlyph |
getDynamicGlyph(int groupId,
int glyphType,
int index)
Retrieves a dynamic glyph from a glyph group. |
int |
hashCode()
the hashcode for this object |
void |
init(IScreenDisplay screenDisplay)
Initialize the dynamic glyph factory. |
int |
loadDynamicGlyphsGroup(String fileName)
Loads a dynamic glyph group from files. |
void |
setCreatedDynamicGlyphSize(int glyphType,
int sizeX,
int sizeY)
Indicates the texture size of the created dynamic glyph. |
void |
unloadDynamicGlyphsGroup(int groupId)
Unloads a dynamic glyph group, and any corresponding resources. |
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 |
---|
public DynamicGlyphFactory() throws IOException, UnknownHostException
IOException
- if there are interop problems
UnknownHostException
- if there are interop problemspublic DynamicGlyphFactory(Object obj) throws IOException
DynamicGlyphFactory theDynamicGlyphFactory = (DynamicGlyphFactory) obj;
obj
to DynamicGlyphFactory
.
obj
- an object returned from ArcGIS Engine or Server
IOException
- if there are interop problemsMethod Detail |
---|
public static String getClsid()
public boolean equals(Object o)
equals
in class Object
public int hashCode()
hashCode
in class Object
public void init(IScreenDisplay screenDisplay) throws IOException, AutomationException
This method should only be used after co-creating a Dynamic Glyph Factory. There is no need to init a Dynamic Glyph Factory that was retrieved from a Dynamic Display object.
init
in interface IDynamicGlyphFactory
screenDisplay
- A reference to a com.esri.arcgis.display.IScreenDisplay (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public IDynamicGlyph createDynamicGlyph(ISymbol symbol) throws IOException, AutomationException
For monochromatic symbols (symbols that consist of only one color and might even have fixed black pixels), it is advisable to set the Symbol color to white before passing it into the method. When rendering the Dynamic Symbol, using the Dynamic Glyph created using this method, you should then set the color to the desired color. That will result in coloring the white pixels to the desired color, while leaving the black colors black.
createDynamicGlyph
in interface IDynamicGlyphFactory
symbol
- A reference to a com.esri.arcgis.display.ISymbol (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void deleteDynamicGlyph(IDynamicGlyph glyph) throws IOException, AutomationException
It is important to call this method in order to release the Dynamic Glyph’s resources. A Dynamic Glyph object that is destroyed without calling this method might result in memory leaks on the graphic card memory. Also, it is recommended to delete unused Dynamic Glyphs in order to free up Graphic Card memory.
deleteDynamicGlyph
in interface IDynamicGlyphFactory
glyph
- A reference to a com.esri.arcgis.display.IDynamicGlyph (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public IDynamicGlyph createDynamicGlyphFromFile(int glyphType, String fileName, IColor transparencyColor) throws IOException, AutomationException
Creates a dynamic glyph from an image file. If the image file consists of an alpha channel, the method will honor the alpha values in the alpha channel, otherwise the alpha values will be set to be opaque (255). If the transparency color is not NULL, each pixel that matches the transparencyColor parameter will be transparent (its alpha values in the glyph will be set to 0).
createDynamicGlyphFromFile
in interface IDynamicGlyphFactory
glyphType
- A com.esri.arcgis.display.esriDynamicGlyphType constant (in)fileName
- The fileName (in)transparencyColor
- A reference to a com.esri.arcgis.display.IColor (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public int loadDynamicGlyphsGroup(String fileName) throws IOException, AutomationException
The fileName points to an XML file. This XML file holds information regarding the image files that should be used in order to load the group image, and a database that describes the identity, location, and size of the glyphs in the group.
On success, the method returns the ID of the loaded group. This ID can be used to get a dynamic glyph from the group, using the get property IDynamicGlyphFactory.DynamicGlyph, or unload the glyphs group, using the method IDynamicGlyphFactory.UnloadDynamicGlyphsGroup.
loadDynamicGlyphsGroup
in interface IDynamicGlyphFactory
fileName
- The fileName (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void unloadDynamicGlyphsGroup(int groupId) throws IOException, AutomationException
When the Dynamic Glyphs Group is no longer needed, it is important to call this method in order to release the Group’s resources.
Unused Dynamic Glyph Groups that are not unloaded might result in memory leaks on the graphic card memory.
unloadDynamicGlyphsGroup
in interface IDynamicGlyphFactory
groupId
- The groupId (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public IDynamicGlyph getDynamicGlyph(int groupId, int glyphType, int index) throws IOException, AutomationException
getDynamicGlyph
in interface IDynamicGlyphFactory
groupId
- The groupId (in)glyphType
- A com.esri.arcgis.display.esriDynamicGlyphType constant (in)index
- The index (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void getCreatedDynamicGlyphSize(int glyphType, int[] sizeX, int[] sizeY) throws IOException, AutomationException
The Created Dynamic Glyph Size values determine the size of the texture that will be created when the CreateDynamicGlyph method will be used. These values need to be a power of two (2, 4, 8, 16, 32, 64, 128, 256, etc). If they are not a power of two, the values will be snapped to the lower power of two values. For example, a value of 33 will be adjusted to be 32.
getCreatedDynamicGlyphSize
in interface IDynamicGlyphFactory2
glyphType
- A com.esri.arcgis.display.esriDynamicGlyphType constant (in)sizeX
- The sizeX (in/out: use single element array)sizeY
- The sizeY (in/out: use single element array)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void setCreatedDynamicGlyphSize(int glyphType, int sizeX, int sizeY) throws IOException, AutomationException
The Created Dynamic Glyph Size values determine the size of the texture that will be created when the CreateDynamicGlyph method will be used. These values need to be a power of two (2, 4, 8, 16, 32, 64, 128, 256, etc). If they are not a power of two, the values will be snapped to the lower power of two values. For example, a value of 33 will be adjusted to be 32.
setCreatedDynamicGlyphSize
in interface IDynamicGlyphFactory2
glyphType
- A com.esri.arcgis.display.esriDynamicGlyphType constant (in)sizeX
- The sizeX (in)sizeY
- The sizeY (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public IDynamicGlyph createDynamicGlyphFromBitmap(int glyphType, int hBmp, boolean preserveAlphaChannel, IColor transparencyColor) throws IOException, AutomationException
Creates a dynamic glyph from a handle to a bitmap. If preserveAlphaChannel parameter is set, the method will honor the alpha values in the alpha channel, otherwise the alpha values will be set to to be opaque (255). If the transparency color parameter is not NULL, each pixel that matches the transparencyColor will be transparent (its alpha values in the glyph will be set to 0).
To get a handle to the bitmap (hBmp) you can use RasterPicture::loadPicture() or BasicRasterPicture::loadPicture(). These methods return an IPicture which has a getHandle() method that can be used to get the handle.
createDynamicGlyphFromBitmap
in interface IDynamicGlyphFactory2
glyphType
- A com.esri.arcgis.display.esriDynamicGlyphType constant (in)hBmp
- The hBmp (A COM typedef) (in)preserveAlphaChannel
- The preserveAlphaChannel (in)transparencyColor
- A reference to a com.esri.arcgis.display.IColor (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |