com.esri.arcgis.animation
Interface IAGAnimationTrackKeyframes

All Superinterfaces:
Serializable
All Known Implementing Classes:
AGAnimationTrack, AnimationTrack

public interface IAGAnimationTrackKeyframes
extends Serializable

Provides access to animation tracks that support keyframes.

Remarks

This interface provides properties and methods for managing keyframes associated with the track.

Product Availability

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


Method Summary
 IAGKeyframe createKeyframe(int index)
          Creates a new keyframe of the appropriate type and inserts it.
 void findKeyframe(String name, IAGKeyframe[] ppKeyframe)
          Finds a keyframe by name.
 ILongArray getActiveProperties()
          The combination of active properties for the track.
 int getKeyframeCount()
          The number of keyframes defined in the track.
 IAGKeyframe getLastInterpolatedKeyframe()
          The last keyframe that was interpolated in the track.
 IAGKeyframe IAGAnimationTrackKeyframes_getKeyframe(int index)
          The keyframe with the given index in the track.
 void insertKeyframe(IAGKeyframe pKeyframe, int index)
          Inserts a new keyframe.
 boolean isActiveProperty(int propIndex)
          Indicates if an animation property is active.
 boolean isEvenTimeStamps()
          Indicates whether to distribute time stamps evenly in the interval 0-1.
 void moveKeyframe(int originIndex, int destinationIndex)
          Moves the keyframe with the given index, inserting it with a different index.
 void removeAllKeyframes()
          Removes all the keyframes.
 void removeKeyframe(int index)
          Removes the keyframe with the given index.
 void resetTimeStamps()
          Redistributes the time stamps in the interval [0,1].
 void restoreObjectProperties(IAGAnimationContainer pContainer, int index)
          Restores the saved properties of the attached object specified.
 void saveObjectProperties(IAGAnimationContainer pContainer, int index)
          Internally saves the properties of the attached object specified.
 void setActiveProperties(ILongArray ppActiveProps)
          The combination of active properties for the track.
 void setEvenTimeStamps(boolean pbEvenTimeStamps)
          Indicates whether to distribute time stamps evenly in the interval 0-1.
 void setIsActiveProperty(int propIndex, boolean pbIsActiveProp)
          Indicates if an animation property is active.
 void sortKeyframes()
          Sorts the keyframes in ascending time order.
 

Method Detail

getActiveProperties

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

Remarks

This property stores the indexes of all the active properties of an animation track.

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 for the track.

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.

getKeyframeCount

int getKeyframeCount()
                     throws IOException,
                            AutomationException
The number of keyframes defined in the track.

Product Availability

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

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

IAGAnimationTrackKeyframes_getKeyframe

IAGKeyframe IAGAnimationTrackKeyframes_getKeyframe(int index)
                                                   throws IOException,
                                                          AutomationException
The keyframe with the given index in the track.

Product Availability

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

Parameters:
index - The index (in)
Returns:
A reference to a com.esri.arcgis.animation.IAGKeyframe
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

createKeyframe

IAGKeyframe createKeyframe(int index)
                           throws IOException,
                                  AutomationException
Creates a new keyframe of the appropriate type and inserts it. If the index is -1, it is added last.

Product Availability

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

Parameters:
index - The index (in)
Returns:
A reference to a com.esri.arcgis.animation.IAGKeyframe
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

insertKeyframe

void insertKeyframe(IAGKeyframe pKeyframe,
                    int index)
                    throws IOException,
                           AutomationException
Inserts a new keyframe. If the index is -1, it is added last.

Product Availability

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

Parameters:
pKeyframe - A reference to a com.esri.arcgis.animation.IAGKeyframe (in)
index - The index (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

removeKeyframe

void removeKeyframe(int index)
                    throws IOException,
                           AutomationException
Removes the keyframe with the given index.

Product Availability

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

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

removeAllKeyframes

void removeAllKeyframes()
                        throws IOException,
                               AutomationException
Removes all the keyframes.

Product Availability

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

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

findKeyframe

void findKeyframe(String name,
                  IAGKeyframe[] ppKeyframe)
                  throws IOException,
                         AutomationException
Finds a keyframe by name.

Product Availability

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

Parameters:
name - The name (in)
ppKeyframe - A reference to a com.esri.arcgis.animation.IAGKeyframe (out: use single element array)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

moveKeyframe

void moveKeyframe(int originIndex,
                  int destinationIndex)
                  throws IOException,
                         AutomationException
Moves the keyframe with the given index, inserting it with a different index.

Remarks

This method first insert the keyframe into the destination index, and then remove the original keyframe. Suppose that you have 3 keyframes in a track with indexes 0, 1 and 2. When executing "MoveKeyframe 0, 2", the procedure taken by this method is 0, 1, 2 -> 0, 1, 0, 2 -> 1, 0, 2. Therefore, keyframe 0 gets a new index of 1 after "MoveKeyframe 0, 2" is executed.

Product Availability

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

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

sortKeyframes

void sortKeyframes()
                   throws IOException,
                          AutomationException
Sorts the keyframes in ascending time order.

Product Availability

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

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

resetTimeStamps

void resetTimeStamps()
                     throws IOException,
                            AutomationException
Redistributes the time stamps in the interval [0,1].

Remarks

This method redistributes keyframe time stamps in the interval [0, 1]. For example, if the EvenTimeStamps is set to be true, this method will redistribute the time stamps evenly in the interval [0, 1].

Product Availability

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

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

saveObjectProperties

void saveObjectProperties(IAGAnimationContainer pContainer,
                          int index)
                          throws IOException,
                                 AutomationException
Internally saves the properties of the attached object specified.

Product Availability

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

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

restoreObjectProperties

void restoreObjectProperties(IAGAnimationContainer pContainer,
                             int index)
                             throws IOException,
                                    AutomationException
Restores the saved properties of the attached object specified.

Product Availability

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

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

setEvenTimeStamps

void setEvenTimeStamps(boolean pbEvenTimeStamps)
                       throws IOException,
                              AutomationException
Indicates whether to distribute time stamps evenly in the interval 0-1.

Product Availability

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

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

isEvenTimeStamps

boolean isEvenTimeStamps()
                         throws IOException,
                                AutomationException
Indicates whether to distribute time stamps evenly in the interval 0-1.

Product Availability

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

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

getLastInterpolatedKeyframe

IAGKeyframe getLastInterpolatedKeyframe()
                                        throws IOException,
                                               AutomationException
The last keyframe that was interpolated in the track.

Product Availability

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

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