CAnimationController 類_第1頁
CAnimationController 類_第2頁
CAnimationController 類_第3頁
CAnimationController 類_第4頁
CAnimationController 類_第5頁
已閱讀5頁,還剩9頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、實現動畫控制器,它為創建和管理動畫提供了中央接口。class CAnimationController : public CObject;成員:公共構造函數名稱說明CAnimationController:CAnimationController構造動畫控制器。CAnimationController( void);CAnimationController:CAnimationController該析構函數。 當動畫控制器對象被銷毀時調用。virtual CAnimationController( void);公共方法名稱說明CAnimationController:AddAnima

2、tionObject將動畫對象添加到屬于該動畫控制器的組。CAnimationGroup* AddAnimationObject( CAnimationBaseObject* pObject);CAnimationController:AddKeyframeToGroup將關鍵幀添加到組。BOOL AddKeyframeToGroup( UINT32 nGroupID, CBaseKeyFrame* pKeyframe);CAnimationController:AnimateGroup準備用來運行動畫的組,并可有選擇地對其進行安排。BOOL AnimateGroup( UINT32 nGro

3、upID, BOOL bScheduleNow = TRUE);CAnimationController:CleanUpGroup已重載。 由框架調用以在動畫已計劃好時清理組。void CleanUpGroup( UINT32 nGroupID);void CleanUpGroup( CAnimationGroup* pGroup);CAnimationController:CreateKeyframe已重載。 創建取決于轉換并將其添加到指定組的關鍵幀。CKeyFrame* CreateKeyframe( UINT32 nGroupID, CBaseTransition*

4、pTransition);CKeyFrame* CreateKeyframe( UINT32 nGroupID, CBaseKeyFrame* pKeyframe, UI_ANIMATION_SECONDS offset = 0.0);CAnimationController:EnableAnimationManagerEvent設置或釋放在動畫管理器的狀態更改時調用的處理程序。virtual BOOL EnableAnimationManagerEvent( BOOL bEnable = TRUE);CAnimationController:EnableAnimationTimerEvent

5、Handler設置或釋放計時事件處理程序和定時更新處理程序。virtual BOOL EnableAnimationTimerEventHandler( BOOL bEnable = TRUE, UI_ANIMATION_IDLE_BEHAVIOR idleBehavior = UI_ANIMATION_IDLE_BEHAVIOR_DISABLE);CAnimationController:EnablePriorityComparisonHandler設置或釋放要調用的優先級比較處理程序,以確定計劃的情節提要是否可以取消、結束、剪裁或壓縮。virtual BOOL EnablePriority

6、ComparisonHandler( DWORD dwHandlerType);CAnimationController:EnableStoryboardEventHandler設置或釋放情節提要狀態以及更新事件的處理程序。virtual BOOL EnableStoryboardEventHandler( UINT32 nGroupID, BOOL bEnable = TRUE);CAnimationController:FindAnimationGroup已重載。 依據其情節提要查找動畫組。CAnimationGroup* FindAnimationGroup( UINT32 n

7、GroupID);CAnimationGroup* FindAnimationGroup( IUIAnimationStoryboard* pStoryboard);CAnimationController:FindAnimationObject查找包含指定的動畫變量的動畫對象。BOOL FindAnimationObject( IUIAnimationVariable* pVariable, CAnimationBaseObject* ppObject, CAnimationGroup* ppGroup);CAnimationController:GetKeyframeStoryboardS

8、tart返回標志情節提要的開頭的關鍵幀。static CBaseKeyFrame* GetKeyframeStoryboardStart();CAnimationController:GetUIAnimationManager提供對封裝 IUIAnimationManager 對象的訪問權。IUIAnimationManager* GetUIAnimationManager();CAnimationController:GetUIAnimationTimer提供對封裝 IUIAnimationTimer 對象的訪問權。IUIAnimationTimer* GetUIAnimationTimer

9、();CAnimationController:GetUITransitionFactory指向 IUIAnimationTransitionFactory 接口的,或者如果創建轉換庫失敗則為 NULL 的指針。IUIAnimationTransitionFactory* GetUITransitionFactory();CAnimationController:GetUITransitionLibrary提供對封裝 IUIAnimationTransitionLibrary 對象的訪問權。IUIAnimationTransitionLibrary* GetUITransitionLibrar

10、y();CAnimationController:IsAnimationInProgress指示是否至少一個組在播放動畫。virtual BOOL IsAnimationInProgress();CAnimationController:IsValid指示動畫控制器是否有效。BOOL IsValid() const;CAnimationController:OnAnimationIntegerValueChanged由框架在動畫變量的整數值更改后調用。virtual void OnAnimationIntegerValueChanged( CAnimationGroup* pGroup, CA

11、nimationBaseObject* pObject, IUIAnimationVariable* variable, INT32 newValue, INT32 prevValue);CAnimationController:OnAnimationManagerStatusChanged由框架調用以響應來自動畫管理器的 StatusChanged 事件。virtual void OnAnimationManagerStatusChanged( UI_ANIMATION_MANAGER_STATUS newStatus, UI_ANIMATION_MANAGER_STATUS previou

12、sStatus);CAnimationController:OnAnimationTimerPostUpdate由框架在動畫更新完成后調用。virtual void OnAnimationTimerPostUpdate();CAnimationController:OnAnimationTimerPreUpdate由框架在動畫更新開始之前調用。virtual void OnAnimationTimerPreUpdate();CAnimationController:OnAnimationTimerRenderingTooSlow當動畫的呈現幀速率低于最小的理想幀速率時,由框架調用。virtua

13、l void OnAnimationTimerRenderingTooSlow( UINT32 fps);CAnimationController:OnAnimationValueChanged由框架在動畫變量的值更改后調用。virtual void OnAnimationValueChanged( CAnimationGroup* pGroup, CAnimationBaseObject* pObject, IUIAnimationVariable* variable, DOUBLE newValue, DOUBLE prevValue);CAnimationController:OnBef

14、oreAnimationStart由框架在該動畫安排好之前調用。virtual void OnBeforeAnimationStart( CAnimationGroup* pGroup);CAnimationController:OnHasPriorityCancel由框架調用此方法來解決安排沖突。virtual BOOL OnHasPriorityCancel( CAnimationGroup* pGroupScheduled, CAnimationGroup* pGroupNew, UI_ANIMATION_PRIORITY_EFFECT priorityEffect);CAnimatio

15、nController:OnHasPriorityCompress由框架調用此方法來解決安排沖突。virtual BOOL OnHasPriorityCompress( CAnimationGroup* pGroupScheduled, CAnimationGroup* pGroupNew, UI_ANIMATION_PRIORITY_EFFECT priorityEffect);CAnimationController:OnHasPriorityConclude由框架調用此方法來解決安排沖突。virtual BOOL OnHasPriorityConclude( CAnimationGrou

16、p* pGroupScheduled, CAnimationGroup* pGroupNew, UI_ANIMATION_PRIORITY_EFFECT priorityEffect);CAnimationController:OnHasPriorityTrim由框架調用此方法來解決安排沖突。virtual BOOL OnHasPriorityTrim( CAnimationGroup* pGroupScheduled, CAnimationGroup* pGroupNew, UI_ANIMATION_PRIORITY_EFFECT priorityEffect);CAnimationCont

17、roller:OnStoryboardStatusChanged由框架在情節提要狀態更改后調用。virtual void OnStoryboardStatusChanged( CAnimationGroup* pGroup, UI_ANIMATION_STORYBOARD_STATUS newStatus, UI_ANIMATION_STORYBOARD_STATUS previousStatus);CAnimationController:OnStoryboardUpdated由框架在情節提要更新后調用。virtual void OnStoryboardUpdated( CAnimation

18、Group* pGroup);CAnimationController:RemoveAllAnimationGroups從動畫控制器中刪除所有動畫組。void RemoveAllAnimationGroups();CAnimationController:RemoveAnimationGroup從動畫控制器中刪除具有指定 ID 的動畫組。void RemoveAnimationGroup( UINT32 nGroupID);CAnimationController:RemoveAnimationObject從動畫控制器中刪除動畫對象。void RemoveAnimationObject( CA

19、nimationBaseObject* pObject, BOOL bNoDelete = FALSE);CAnimationController:RemoveTransitions從屬于指定的組的動畫對象中刪除轉換。void RemoveTransitions( UINT32 nGroupID);CAnimationController:ScheduleGroup安排動畫。BOOL ScheduleGroup( UINT32 nGroupID, UI_ANIMATION_SECONDS time = 0.0);CAnimationController:SetRelatedWnd建立動畫控制器

20、和窗口之間的關系。void SetRelatedWnd( CWnd* pWnd);CAnimationController:UpdateAnimationManager指引動畫管理器更新所有動畫變量的值。virtual void UpdateAnimationManager();受保護的方法名稱說明CAnimationController:CleanUpGroup已重載。 清除該組的幫助器。void CleanUpGroup( UINT32 nGroupID);void CleanUpGroup( CAnimationGroup* pGroup);CAnimationControll

21、er:OnAfterSchedule由框架在指定組的動畫剛剛安排好時調用。virtual void OnAfterSchedule( CAnimationGroup* pGroup);受保護的數據成員名稱說明CAnimationController:g_KeyframeStoryboardStart表示情節提要的開頭的關鍵幀。static CBaseKeyFrame g_KeyframeStoryboardStart;CAnimationController:m_bIsValid指定動畫控制器是否有效。 如果當前操作系統不支持 Windows 動畫 API,則該成員會設置為 FALSE。BOOL m_bIsValid;CAnimationController:m_lstAnimationGroups屬于此動畫控制器的動畫組列表。C

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論