com.esri.arcgis.analyst3d
Class AVIExporter

java.lang.Object
  extended bycom.esri.arcgis.analyst3d.AVIExporter
All Implemented Interfaces:
IAVIExporter, ISceneExporter3d, ISceneVideoExporter, IVideoExporterProperties, java.io.Serializable

public class AVIExporter
extends java.lang.Object
implements ISceneExporter3d, ISceneVideoExporter, IVideoExporterProperties, IAVIExporter

An exporter to AVI video format.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server. Requires 3D Analyst Extension.

Supported Platforms

Windows

See Also:
Serialized Form

Constructor Summary
AVIExporter()
          Constructs a AVIExporter using ArcGIS Engine.
AVIExporter(java.lang.Object obj)
          Deprecated. As of ArcGIS 9.2, replaced by normal Java casts.
 
Method Summary
 boolean equals(java.lang.Object o)
          Compare this object with another
 void exportScene(IScene pScene)
          Exports the scene.
 IAVIExporter getAsIAVIExporter()
          Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed.
 ISceneExporter3d getAsISceneExporter3d()
          Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed.
 ISceneVideoExporter getAsISceneVideoExporter()
          Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed.
 IVideoExporterProperties getAsIVideoExporterProperties()
          Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed.
static java.lang.String getClsid()
           
 java.lang.String getCodec()
          The current video codec.
 java.lang.String getCodecCode()
          The current video codec's unique code.
 IStringArray getCodecCodeList()
          The list of unique codes of available codecs.
 IStringArray getCodecList()
          The list of names of available codecs.
 short getColorDepth()
          The number of bits per pixel in each video frame.
 void getCustomSize(int[] pWidth, int[] pHeight)
          The custom image size for video export.
 int getDataRate()
          The maximum number of bytes per second.
 java.lang.String getExportFileName()
          The exported file name.
 java.lang.String getFileExtension()
          The file extension associated with the current exporter.
 java.lang.String getFilter()
          The filter string used in the CFileDialog class.
 int getFrameDuration()
          The duration of each frame in milliseconds.
 int getFrameRate()
          The frame rate in images per second.
 int getKeyFrameRate()
          The frequency of keyframes in the video.
 java.lang.String getName()
          The name of the exporter.
 int getQuality()
          The quality of video compression (1-100).
 double getVideoDuration()
          The duration of the animation in seconds.
 int hashCode()
          the hashcode for this object
 boolean isInstalled()
          Indicates if the video exporter is installed.
 boolean isRecordOffScreen()
          Indicates if video is to be recorded offscreen.
 boolean isRecordWindow()
          Indicates if entire window is to be recorded.
 boolean isShowSettingsDialog()
          Indicates if video compression settings dialog is to be displayed.
 boolean isUseCustomSize()
          Indicates if a custom image size should be used.
 void putCustomSize(int width, int height)
          The custom image size for video export.
 void setCodec(java.lang.String pCodecName)
          The current video codec.
 void setCodecCode(java.lang.String pCodecCode)
          The current video codec's unique code.
 void setColorDepth(short pColorDepth)
          The number of bits per pixel in each video frame.
 void setDataRate(int pDataRate)
          The maximum number of bytes per second.
 void setExportFileName(java.lang.String fileName)
          The exported file name.
 void setFrameDuration(int pFrameDuration)
          The duration of each frame in milliseconds.
 void setFrameRate(int pImagesPerSecond)
          The frame rate in images per second.
 void setKeyFrameRate(int pKeyFrameRate)
          The frequency of keyframes in the video.
 void setQuality(int pQualityPercent)
          The quality of video compression (1-100).
 void setRecordOffScreen(boolean pbRecordOffScreen)
          Indicates if video is to be recorded offscreen.
 void setRecordWindow(boolean pbRecordAppWindow)
          Indicates if entire window is to be recorded.
 void setShowSettingsDialog(boolean pbShowSettingsDialog)
          Indicates if video compression settings dialog is to be displayed.
 void setUseCustomSize(boolean pbUseCustomSize)
          Indicates if a custom image size should be used.
 void setVideoDuration(double pSeconds)
          The duration of the animation in seconds.
 void setViewerByRef(ISceneViewer rhs1)
          The animated viewer to be exported.
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

AVIExporter

public AVIExporter()
            throws java.io.IOException,
                   java.net.UnknownHostException
Constructs a AVIExporter using ArcGIS Engine.

Throws:
java.io.IOException - if there are interop problems
java.net.UnknownHostException - if there are interop problems

AVIExporter

public AVIExporter(java.lang.Object obj)
            throws java.io.IOException
Deprecated. As of ArcGIS 9.2, replaced by normal Java casts.

Construct a AVIExporter using a reference to such an object returned from ArcGIS Engine or Server. This is semantically equivalent to casting obj to AVIExporter.
AVIExporter theAVIExporter = (AVIExporter) obj;

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

getClsid

public static java.lang.String getClsid()

getAsISceneExporter3d

public ISceneExporter3d getAsISceneExporter3d()
Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed.


getAsISceneVideoExporter

public ISceneVideoExporter getAsISceneVideoExporter()
Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed.


getAsIVideoExporterProperties

public IVideoExporterProperties getAsIVideoExporterProperties()
Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed.


getAsIAVIExporter

public IAVIExporter getAsIAVIExporter()
Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed.


equals

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


hashCode

public int hashCode()
the hashcode for this object


getName

public java.lang.String getName()
                         throws java.io.IOException,
                                AutomationException
Description copied from interface: ISceneExporter3d
The name of the exporter.

Supported Platforms

Windows, Solaris, Linux

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

getFilter

public java.lang.String getFilter()
                           throws java.io.IOException,
                                  AutomationException
Description copied from interface: ISceneExporter3d
The filter string used in the CFileDialog class.

Supported Platforms

Windows, Solaris, Linux

Specified by:
getFilter in interface ISceneExporter3d
Returns:
The filter
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getFileExtension

public java.lang.String getFileExtension()
                                  throws java.io.IOException,
                                         AutomationException
Description copied from interface: ISceneExporter3d
The file extension associated with the current exporter.

Supported Platforms

Windows, Solaris, Linux

Specified by:
getFileExtension in interface ISceneExporter3d
Returns:
The name
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

setExportFileName

public void setExportFileName(java.lang.String fileName)
                       throws java.io.IOException,
                              AutomationException
Description copied from interface: ISceneExporter3d
The exported file name.

Supported Platforms

Windows, Solaris, Linux

Specified by:
setExportFileName in interface ISceneExporter3d
Parameters:
fileName - The fileName (in)
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

getExportFileName

public java.lang.String getExportFileName()
                                   throws java.io.IOException,
                                          AutomationException
Description copied from interface: ISceneExporter3d
The exported file name.

Supported Platforms

Windows, Solaris, Linux

Specified by:
getExportFileName in interface ISceneExporter3d
Returns:
The fileName
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

exportScene

public void exportScene(IScene pScene)
                 throws java.io.IOException,
                        AutomationException
Description copied from interface: ISceneExporter3d
Exports the scene.

Supported Platforms

Windows, Solaris, Linux

Specified by:
exportScene in interface ISceneExporter3d
Parameters:
pScene - A reference to a com.esri.arcgis.analyst3d.IScene (in)
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

setViewerByRef

public void setViewerByRef(ISceneViewer rhs1)
                    throws java.io.IOException,
                           AutomationException
Description copied from interface: ISceneVideoExporter
The animated viewer to be exported.

Specified by:
setViewerByRef in interface ISceneVideoExporter
Parameters:
rhs1 - A reference to a com.esri.arcgis.analyst3d.ISceneViewer (in)
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

setVideoDuration

public void setVideoDuration(double pSeconds)
                      throws java.io.IOException,
                             AutomationException
Description copied from interface: ISceneVideoExporter
The duration of the animation in seconds.

Supported Platforms

Windows, Solaris, Linux

Specified by:
setVideoDuration in interface ISceneVideoExporter
Parameters:
pSeconds - The pSeconds (in)
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

getVideoDuration

public double getVideoDuration()
                        throws java.io.IOException,
                               AutomationException
Description copied from interface: ISceneVideoExporter
The duration of the animation in seconds.

Supported Platforms

Windows, Solaris, Linux

Specified by:
getVideoDuration in interface ISceneVideoExporter
Returns:
The pSeconds
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

setFrameRate

public void setFrameRate(int pImagesPerSecond)
                  throws java.io.IOException,
                         AutomationException
Description copied from interface: ISceneVideoExporter
The frame rate in images per second.

Supported Platforms

Windows, Solaris, Linux

Specified by:
setFrameRate in interface ISceneVideoExporter
Parameters:
pImagesPerSecond - The pImagesPerSecond (in)
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

getFrameRate

public int getFrameRate()
                 throws java.io.IOException,
                        AutomationException
Description copied from interface: ISceneVideoExporter
The frame rate in images per second.

Supported Platforms

Windows, Solaris, Linux

Specified by:
getFrameRate in interface ISceneVideoExporter
Returns:
The pImagesPerSecond
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setUseCustomSize

public void setUseCustomSize(boolean pbUseCustomSize)
                      throws java.io.IOException,
                             AutomationException
Description copied from interface: ISceneVideoExporter
Indicates if a custom image size should be used.

Supported Platforms

Windows, Solaris, Linux

Specified by:
setUseCustomSize in interface ISceneVideoExporter
Parameters:
pbUseCustomSize - The pbUseCustomSize (in)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isUseCustomSize

public boolean isUseCustomSize()
                        throws java.io.IOException,
                               AutomationException
Description copied from interface: ISceneVideoExporter
Indicates if a custom image size should be used.

Supported Platforms

Windows, Solaris, Linux

Specified by:
isUseCustomSize in interface ISceneVideoExporter
Returns:
The pbUseCustomSize
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

putCustomSize

public void putCustomSize(int width,
                          int height)
                   throws java.io.IOException,
                          AutomationException
Description copied from interface: ISceneVideoExporter
The custom image size for video export.

Supported Platforms

Windows, Solaris, Linux

Specified by:
putCustomSize in interface ISceneVideoExporter
Parameters:
width - The width (in)
height - The height (in)
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

getCustomSize

public void getCustomSize(int[] pWidth,
                          int[] pHeight)
                   throws java.io.IOException,
                          AutomationException
Description copied from interface: ISceneVideoExporter
The custom image size for video export.

Supported Platforms

Windows, Solaris, Linux

Specified by:
getCustomSize in interface ISceneVideoExporter
Parameters:
pWidth - The pWidth (out: use single element array)
pHeight - The pHeight (out: use single element array)
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

isInstalled

public boolean isInstalled()
                    throws java.io.IOException,
                           AutomationException
Description copied from interface: IVideoExporterProperties
Indicates if the video exporter is installed.

Specified by:
isInstalled in interface IVideoExporterProperties
Returns:
The pbIsInstalled
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getCodecList

public IStringArray getCodecList()
                          throws java.io.IOException,
                                 AutomationException
Description copied from interface: IVideoExporterProperties
The list of names of available codecs.

Supported Platforms

Windows, Solaris, Linux

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

getCodecCodeList

public IStringArray getCodecCodeList()
                              throws java.io.IOException,
                                     AutomationException
Description copied from interface: IVideoExporterProperties
The list of unique codes of available codecs.

Supported Platforms

Windows, Solaris, Linux

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

setCodec

public void setCodec(java.lang.String pCodecName)
              throws java.io.IOException,
                     AutomationException
Description copied from interface: IVideoExporterProperties
The current video codec.

Supported Platforms

Windows, Solaris, Linux

Specified by:
setCodec in interface IVideoExporterProperties
Parameters:
pCodecName - The pCodecName (in)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getCodec

public java.lang.String getCodec()
                          throws java.io.IOException,
                                 AutomationException
Description copied from interface: IVideoExporterProperties
The current video codec.

Supported Platforms

Windows, Solaris, Linux

Remarks

The Codec property is an identifier showing what the current codec is used when exporting to a video format.  When you check for the Codec property, be it an AVI or QuickTime video, it's always in Code:Codec format, where the Code is a four-letter string that uniquely identifies a particular codec.  The codec name proper (i.e. the codec name without the four-letter code name and the colon in front), however, may not be unique in some situations.  For some AVI codecs, the name proper could even be blank.  In this scenario the only identifier for that codec would be the four-letter code.  Some codec code names (i.e. the four-letter string) may appear as three-letter codes - the fourth one is just a blank space, which is also a valid character.  All the four-letter code names are not case sensitive.

Specified by:
getCodec in interface IVideoExporterProperties
Returns:
The pCodecName
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setCodecCode

public void setCodecCode(java.lang.String pCodecCode)
                  throws java.io.IOException,
                         AutomationException
Description copied from interface: IVideoExporterProperties
The current video codec's unique code.

Supported Platforms

Windows, Solaris, Linux

Specified by:
setCodecCode in interface IVideoExporterProperties
Parameters:
pCodecCode - The pCodecCode (in)
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

getCodecCode

public java.lang.String getCodecCode()
                              throws java.io.IOException,
                                     AutomationException
Description copied from interface: IVideoExporterProperties
The current video codec's unique code.

Supported Platforms

Windows, Solaris, Linux

Specified by:
getCodecCode in interface IVideoExporterProperties
Returns:
The pCodecCode
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

setColorDepth

public void setColorDepth(short pColorDepth)
                   throws java.io.IOException,
                          AutomationException
Description copied from interface: IVideoExporterProperties
The number of bits per pixel in each video frame.

Supported Platforms

Windows, Solaris, Linux

Specified by:
setColorDepth in interface IVideoExporterProperties
Parameters:
pColorDepth - The pColorDepth (in)
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

getColorDepth

public short getColorDepth()
                    throws java.io.IOException,
                           AutomationException
Description copied from interface: IVideoExporterProperties
The number of bits per pixel in each video frame.

Supported Platforms

Windows, Solaris, Linux

Specified by:
getColorDepth in interface IVideoExporterProperties
Returns:
The pColorDepth
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

setQuality

public void setQuality(int pQualityPercent)
                throws java.io.IOException,
                       AutomationException
Description copied from interface: IVideoExporterProperties
The quality of video compression (1-100). 200 - Lossless.

Supported Platforms

Windows, Solaris, Linux

Specified by:
setQuality in interface IVideoExporterProperties
Parameters:
pQualityPercent - The pQualityPercent (in)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getQuality

public int getQuality()
               throws java.io.IOException,
                      AutomationException
Description copied from interface: IVideoExporterProperties
The quality of video compression (1-100). 200 - Lossless.

Supported Platforms

Windows, Solaris, Linux

Specified by:
getQuality in interface IVideoExporterProperties
Returns:
The pQualityPercent
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

setKeyFrameRate

public void setKeyFrameRate(int pKeyFrameRate)
                     throws java.io.IOException,
                            AutomationException
Description copied from interface: IVideoExporterProperties
The frequency of keyframes in the video.

Supported Platforms

Windows, Solaris, Linux

Specified by:
setKeyFrameRate in interface IVideoExporterProperties
Parameters:
pKeyFrameRate - The pKeyFrameRate (in)
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

getKeyFrameRate

public int getKeyFrameRate()
                    throws java.io.IOException,
                           AutomationException
Description copied from interface: IVideoExporterProperties
The frequency of keyframes in the video.

Supported Platforms

Windows, Solaris, Linux

Specified by:
getKeyFrameRate in interface IVideoExporterProperties
Returns:
The pKeyFrameRate
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

setDataRate

public void setDataRate(int pDataRate)
                 throws java.io.IOException,
                        AutomationException
Description copied from interface: IVideoExporterProperties
The maximum number of bytes per second.

Supported Platforms

Windows, Solaris, Linux

Specified by:
setDataRate in interface IVideoExporterProperties
Parameters:
pDataRate - The pDataRate (in)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getDataRate

public int getDataRate()
                throws java.io.IOException,
                       AutomationException
Description copied from interface: IVideoExporterProperties
The maximum number of bytes per second.

Supported Platforms

Windows, Solaris, Linux

Specified by:
getDataRate in interface IVideoExporterProperties
Returns:
The pDataRate
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setFrameDuration

public void setFrameDuration(int pFrameDuration)
                      throws java.io.IOException,
                             AutomationException
Description copied from interface: IVideoExporterProperties
The duration of each frame in milliseconds.

Supported Platforms

Windows, Solaris, Linux

Specified by:
setFrameDuration in interface IVideoExporterProperties
Parameters:
pFrameDuration - The pFrameDuration (in)
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

getFrameDuration

public int getFrameDuration()
                     throws java.io.IOException,
                            AutomationException
Description copied from interface: IVideoExporterProperties
The duration of each frame in milliseconds.

Supported Platforms

Windows, Solaris, Linux

Specified by:
getFrameDuration in interface IVideoExporterProperties
Returns:
The pFrameDuration
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setRecordWindow

public void setRecordWindow(boolean pbRecordAppWindow)
                     throws java.io.IOException,
                            AutomationException
Description copied from interface: IVideoExporterProperties
Indicates if entire window is to be recorded.

Supported Platforms

Windows, Solaris, Linux

Specified by:
setRecordWindow in interface IVideoExporterProperties
Parameters:
pbRecordAppWindow - The pbRecordAppWindow (in)
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

isRecordWindow

public boolean isRecordWindow()
                       throws java.io.IOException,
                              AutomationException
Description copied from interface: IVideoExporterProperties
Indicates if entire window is to be recorded.

Supported Platforms

Windows, Solaris, Linux

Specified by:
isRecordWindow in interface IVideoExporterProperties
Returns:
The pbRecordAppWindow
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

setRecordOffScreen

public void setRecordOffScreen(boolean pbRecordOffScreen)
                        throws java.io.IOException,
                               AutomationException
Description copied from interface: IVideoExporterProperties
Indicates if video is to be recorded offscreen.

Supported Platforms

Windows, Solaris, Linux

Specified by:
setRecordOffScreen in interface IVideoExporterProperties
Parameters:
pbRecordOffScreen - The pbRecordOffScreen (in)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isRecordOffScreen

public boolean isRecordOffScreen()
                          throws java.io.IOException,
                                 AutomationException
Description copied from interface: IVideoExporterProperties
Indicates if video is to be recorded offscreen.

Supported Platforms

Windows, Solaris, Linux

Specified by:
isRecordOffScreen in interface IVideoExporterProperties
Returns:
The pbRecordOffScreen
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

setShowSettingsDialog

public void setShowSettingsDialog(boolean pbShowSettingsDialog)
                           throws java.io.IOException,
                                  AutomationException
Description copied from interface: IVideoExporterProperties
Indicates if video compression settings dialog is to be displayed.

Supported Platforms

Windows, Solaris, Linux

Specified by:
setShowSettingsDialog in interface IVideoExporterProperties
Parameters:
pbShowSettingsDialog - The pbShowSettingsDialog (in)
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

isShowSettingsDialog

public boolean isShowSettingsDialog()
                             throws java.io.IOException,
                                    AutomationException
Description copied from interface: IVideoExporterProperties
Indicates if video compression settings dialog is to be displayed.

Supported Platforms

Windows, Solaris, Linux

Specified by:
isShowSettingsDialog in interface IVideoExporterProperties
Returns:
The pbShowSettingsDialog
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.