com.esri.arcgis.animation
Interface IAGKeyframe

All Superinterfaces:
Serializable
All Known Implementing Classes:
Bookmark3D, GlobeCameraKeyframe, GlobeLayerKeyframe, LayerKeyframe, MapLayerKeyframe, MapViewKeyframe, SceneKeyframe, TimeKeyframe, TimeLayerKeyframe

public interface IAGKeyframe
extends Serializable

Provides access to keyframes of animated objects.

Remarks

A keyframe stores a snapshot of the properties of an animation object at a given moment. When an animation is played, keyframes are interpolated and applied to the animation objects to create the dynamic visual effect.

Product Availability

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


Method Summary
 void apply(IAGAnimationTrack pTrack, IAGAnimationContainer pContainer, Object pObject)
          Apply to the object the active properties of the keyframe.
 void captureProperties(IAGAnimationContainer pContainer, Object pObject)
          Copy the properties from the object to the keyframe.
 ILongArray getActiveProperties()
          The combination of active properties.
 String getName()
          The name of the keyframe.
 Object getPropertyValue(int propIndex)
          The value of a typed property.
 double getTimeStamp()
          The time stamp (in the interval 0-1).
 IAGAnimationType IAGKeyframe_getAnimationType()
          The animation type.
 void interpolate(IAGAnimationTrack pTrack, IAGAnimationContainer pContainer, Object pObject, int propertyIndex, double time, IAGKeyframe pNextKeyframe, IAGKeyframe pPrevKeyframe, IAGKeyframe pAfterNextKeyframe)
          Interpolates the values of an object property for a time between this keyframe and the next (time is in [0,1]).
 boolean isActiveProperty(int propIndex)
          Indicates if an animation property is active.
 boolean isObjectNeedsRefresh()
          Indicates if the object must be refreshed after interpolating its state.
 void refreshObject(IAGAnimationTrack pTrack, IAGAnimationContainer pContainer, Object pObject)
          Recreates the object after its properties have been interpolated.
 void setActiveProperties(ILongArray ppActiveProps)
          The combination of active properties.
 void setIsActiveProperty(int propIndex, boolean pbIsActiveProp)
          Indicates if an animation property is active.
 void setName(String name)
          The name of the keyframe.
 void setPropertyValue(int propIndex, Object pValue)
          The value of a typed property.
 void setTimeStamp(double pTimeStamp)
          The time stamp (in the interval 0-1).
 

Method Detail

getName

String getName()
               throws IOException,
                      AutomationException
The name of the keyframe.

Product Availability

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

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

setName

void setName(String name)
             throws IOException,
                    AutomationException
The name of the keyframe.

Product Availability

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

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

getActiveProperties

ILongArray getActiveProperties()
                               throws IOException,
                                      AutomationException
The combination of active properties.

Product Availability

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

Returns:
A reference to a com.esri.arcgis.system.ILongArray
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setActiveProperties

void setActiveProperties(ILongArray ppActiveProps)
                         throws IOException,
                                AutomationException
The combination of active properties.

Product Availability

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

Parameters:
ppActiveProps - A reference to a com.esri.arcgis.system.ILongArray (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isActiveProperty

boolean isActiveProperty(int propIndex)
                         throws IOException,
                                AutomationException
Indicates if an animation property is active.

Product Availability

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

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

setIsActiveProperty

void setIsActiveProperty(int propIndex,
                         boolean pbIsActiveProp)
                         throws IOException,
                                AutomationException
Indicates if an animation property is active.

Product Availability

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

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

getPropertyValue

Object getPropertyValue(int propIndex)
                        throws IOException,
                               AutomationException
The value of a typed property.

Product Availability

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

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

setPropertyValue

void setPropertyValue(int propIndex,
                      Object pValue)
                      throws IOException,
                             AutomationException
The value of a typed property.

Product Availability

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

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

setTimeStamp

void setTimeStamp(double pTimeStamp)
                  throws IOException,
                         AutomationException
The time stamp (in the interval 0-1).

Product Availability

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

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

getTimeStamp

double getTimeStamp()
                    throws IOException,
                           AutomationException
The time stamp (in the interval 0-1).

Product Availability

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

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

IAGKeyframe_getAnimationType

IAGAnimationType IAGKeyframe_getAnimationType()
                                              throws IOException,
                                                     AutomationException
The animation type.

Product Availability

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

Returns:
A reference to a com.esri.arcgis.animation.IAGAnimationType
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

apply

void apply(IAGAnimationTrack pTrack,
           IAGAnimationContainer pContainer,
           Object pObject)
           throws IOException,
                  AutomationException
Apply to the object the active properties of the keyframe.

Product Availability

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

Parameters:
pTrack - A reference to a com.esri.arcgis.animation.IAGAnimationTrack (in)
pContainer - A reference to a com.esri.arcgis.animation.IAGAnimationContainer (in)
pObject - A Variant (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

captureProperties

void captureProperties(IAGAnimationContainer pContainer,
                       Object pObject)
                       throws IOException,
                              AutomationException
Copy the properties from the object to the keyframe.

Product Availability

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

Parameters:
pContainer - A reference to a com.esri.arcgis.animation.IAGAnimationContainer (in)
pObject - A Variant (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

interpolate

void interpolate(IAGAnimationTrack pTrack,
                 IAGAnimationContainer pContainer,
                 Object pObject,
                 int propertyIndex,
                 double time,
                 IAGKeyframe pNextKeyframe,
                 IAGKeyframe pPrevKeyframe,
                 IAGKeyframe pAfterNextKeyframe)
                 throws IOException,
                        AutomationException
Interpolates the values of an object property for a time between this keyframe and the next (time is in [0,1]).

Product Availability

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

Parameters:
pTrack - A reference to a com.esri.arcgis.animation.IAGAnimationTrack (in)
pContainer - A reference to a com.esri.arcgis.animation.IAGAnimationContainer (in)
pObject - A Variant (in)
propertyIndex - The propertyIndex (in)
time - The time (in)
pNextKeyframe - A reference to a com.esri.arcgis.animation.IAGKeyframe (in)
pPrevKeyframe - A reference to a com.esri.arcgis.animation.IAGKeyframe (in)
pAfterNextKeyframe - A reference to a com.esri.arcgis.animation.IAGKeyframe (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isObjectNeedsRefresh

boolean isObjectNeedsRefresh()
                             throws IOException,
                                    AutomationException
Indicates if the object must be refreshed after interpolating its state.

Product Availability

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

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

refreshObject

void refreshObject(IAGAnimationTrack pTrack,
                   IAGAnimationContainer pContainer,
                   Object pObject)
                   throws IOException,
                          AutomationException
Recreates the object after its properties have been interpolated.

Product Availability

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

Parameters:
pTrack - A reference to a com.esri.arcgis.animation.IAGAnimationTrack (in)
pContainer - A reference to a com.esri.arcgis.animation.IAGAnimationContainer (in)
pObject - A Variant (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.