版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、實現(xiàn)動畫控制器,它為創(chuàng)建和管理動畫提供了中央接口。class CAnimationController : public CObject;成員:公共構(gòu)造函數(shù)名稱說明CAnimationController:CAnimationController構(gòu)造動畫控制器。CAnimationController( void);CAnimationController:CAnimationController該析構(gòu)函數(shù)。 當(dāng)動畫控制器對象被銷毀時調(diào)用。virtual CAnimationController( void);公共方法名稱說明CAnimationController:AddAnima
2、tionObject將動畫對象添加到屬于該動畫控制器的組。CAnimationGroup* AddAnimationObject( CAnimationBaseObject* pObject);CAnimationController:AddKeyframeToGroup將關(guān)鍵幀添加到組。BOOL AddKeyframeToGroup( UINT32 nGroupID, CBaseKeyFrame* pKeyframe);CAnimationController:AnimateGroup準(zhǔn)備用來運行動畫的組,并可有選擇地對其進(jìn)行安排。BOOL AnimateGroup( UINT32 nGro
3、upID, BOOL bScheduleNow = TRUE);CAnimationController:CleanUpGroup已重載。 由框架調(diào)用以在動畫已計劃好時清理組。void CleanUpGroup( UINT32 nGroupID);void CleanUpGroup( CAnimationGroup* pGroup);CAnimationController:CreateKeyframe已重載。 創(chuàng)建取決于轉(zhuǎn)換并將其添加到指定組的關(guān)鍵幀。CKeyFrame* CreateKeyframe( UINT32 nGroupID, CBaseTransition*
4、pTransition);CKeyFrame* CreateKeyframe( UINT32 nGroupID, CBaseKeyFrame* pKeyframe, UI_ANIMATION_SECONDS offset = 0.0);CAnimationController:EnableAnimationManagerEvent設(shè)置或釋放在動畫管理器的狀態(tài)更改時調(diào)用的處理程序。virtual BOOL EnableAnimationManagerEvent( BOOL bEnable = TRUE);CAnimationController:EnableAnimationTimerEvent
5、Handler設(shè)置或釋放計時事件處理程序和定時更新處理程序。virtual BOOL EnableAnimationTimerEventHandler( BOOL bEnable = TRUE, UI_ANIMATION_IDLE_BEHAVIOR idleBehavior = UI_ANIMATION_IDLE_BEHAVIOR_DISABLE);CAnimationController:EnablePriorityComparisonHandler設(shè)置或釋放要調(diào)用的優(yōu)先級比較處理程序,以確定計劃的情節(jié)提要是否可以取消、結(jié)束、剪裁或壓縮。virtual BOOL EnablePriority
6、ComparisonHandler( DWORD dwHandlerType);CAnimationController:EnableStoryboardEventHandler設(shè)置或釋放情節(jié)提要狀態(tài)以及更新事件的處理程序。virtual BOOL EnableStoryboardEventHandler( UINT32 nGroupID, BOOL bEnable = TRUE);CAnimationController:FindAnimationGroup已重載。 依據(jù)其情節(jié)提要查找動畫組。CAnimationGroup* FindAnimationGroup( UINT32 n
7、GroupID);CAnimationGroup* FindAnimationGroup( IUIAnimationStoryboard* pStoryboard);CAnimationController:FindAnimationObject查找包含指定的動畫變量的動畫對象。BOOL FindAnimationObject( IUIAnimationVariable* pVariable, CAnimationBaseObject* ppObject, CAnimationGroup* ppGroup);CAnimationController:GetKeyframeStoryboardS
8、tart返回標(biāo)志情節(jié)提要的開頭的關(guān)鍵幀。static CBaseKeyFrame* GetKeyframeStoryboardStart();CAnimationController:GetUIAnimationManager提供對封裝 IUIAnimationManager 對象的訪問權(quán)。IUIAnimationManager* GetUIAnimationManager();CAnimationController:GetUIAnimationTimer提供對封裝 IUIAnimationTimer 對象的訪問權(quán)。IUIAnimationTimer* GetUIAnimationTimer
9、();CAnimationController:GetUITransitionFactory指向 IUIAnimationTransitionFactory 接口的,或者如果創(chuàng)建轉(zhuǎn)換庫失敗則為 NULL 的指針。IUIAnimationTransitionFactory* GetUITransitionFactory();CAnimationController:GetUITransitionLibrary提供對封裝 IUIAnimationTransitionLibrary 對象的訪問權(quán)。IUIAnimationTransitionLibrary* GetUITransitionLibrar
10、y();CAnimationController:IsAnimationInProgress指示是否至少一個組在播放動畫。virtual BOOL IsAnimationInProgress();CAnimationController:IsValid指示動畫控制器是否有效。BOOL IsValid() const;CAnimationController:OnAnimationIntegerValueChanged由框架在動畫變量的整數(shù)值更改后調(diào)用。virtual void OnAnimationIntegerValueChanged( CAnimationGroup* pGroup, CA
11、nimationBaseObject* pObject, IUIAnimationVariable* variable, INT32 newValue, INT32 prevValue);CAnimationController:OnAnimationManagerStatusChanged由框架調(diào)用以響應(yīng)來自動畫管理器的 StatusChanged 事件。virtual void OnAnimationManagerStatusChanged( UI_ANIMATION_MANAGER_STATUS newStatus, UI_ANIMATION_MANAGER_STATUS previou
12、sStatus);CAnimationController:OnAnimationTimerPostUpdate由框架在動畫更新完成后調(diào)用。virtual void OnAnimationTimerPostUpdate();CAnimationController:OnAnimationTimerPreUpdate由框架在動畫更新開始之前調(diào)用。virtual void OnAnimationTimerPreUpdate();CAnimationController:OnAnimationTimerRenderingTooSlow當(dāng)動畫的呈現(xiàn)幀速率低于最小的理想幀速率時,由框架調(diào)用。virtua
13、l void OnAnimationTimerRenderingTooSlow( UINT32 fps);CAnimationController:OnAnimationValueChanged由框架在動畫變量的值更改后調(diào)用。virtual void OnAnimationValueChanged( CAnimationGroup* pGroup, CAnimationBaseObject* pObject, IUIAnimationVariable* variable, DOUBLE newValue, DOUBLE prevValue);CAnimationController:OnBef
14、oreAnimationStart由框架在該動畫安排好之前調(diào)用。virtual void OnBeforeAnimationStart( CAnimationGroup* pGroup);CAnimationController:OnHasPriorityCancel由框架調(diào)用此方法來解決安排沖突。virtual BOOL OnHasPriorityCancel( CAnimationGroup* pGroupScheduled, CAnimationGroup* pGroupNew, UI_ANIMATION_PRIORITY_EFFECT priorityEffect);CAnimatio
15、nController:OnHasPriorityCompress由框架調(diào)用此方法來解決安排沖突。virtual BOOL OnHasPriorityCompress( CAnimationGroup* pGroupScheduled, CAnimationGroup* pGroupNew, UI_ANIMATION_PRIORITY_EFFECT priorityEffect);CAnimationController:OnHasPriorityConclude由框架調(diào)用此方法來解決安排沖突。virtual BOOL OnHasPriorityConclude( CAnimationGrou
16、p* pGroupScheduled, CAnimationGroup* pGroupNew, UI_ANIMATION_PRIORITY_EFFECT priorityEffect);CAnimationController:OnHasPriorityTrim由框架調(diào)用此方法來解決安排沖突。virtual BOOL OnHasPriorityTrim( CAnimationGroup* pGroupScheduled, CAnimationGroup* pGroupNew, UI_ANIMATION_PRIORITY_EFFECT priorityEffect);CAnimationCont
17、roller:OnStoryboardStatusChanged由框架在情節(jié)提要狀態(tài)更改后調(diào)用。virtual void OnStoryboardStatusChanged( CAnimationGroup* pGroup, UI_ANIMATION_STORYBOARD_STATUS newStatus, UI_ANIMATION_STORYBOARD_STATUS previousStatus);CAnimationController:OnStoryboardUpdated由框架在情節(jié)提要更新后調(diào)用。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從屬于指定的組的動畫對象中刪除轉(zhuǎn)換。void RemoveTransitions( UINT32 nGroupID);CAnimationController:ScheduleGroup安排動畫。BOOL ScheduleGroup( UINT32 nGroupID, UI_ANIMATION_SECONDS time = 0.0);CAnimationController:SetRelatedWnd建立動畫控制器
20、和窗口之間的關(guān)系。void SetRelatedWnd( CWnd* pWnd);CAnimationController:UpdateAnimationManager指引動畫管理器更新所有動畫變量的值。virtual void UpdateAnimationManager();受保護(hù)的方法名稱說明CAnimationController:CleanUpGroup已重載。 清除該組的幫助器。void CleanUpGroup( UINT32 nGroupID);void CleanUpGroup( CAnimationGroup* pGroup);CAnimationControll
21、er:OnAfterSchedule由框架在指定組的動畫剛剛安排好時調(diào)用。virtual void OnAfterSchedule( CAnimationGroup* pGroup);受保護(hù)的數(shù)據(jù)成員名稱說明CAnimationController:g_KeyframeStoryboardStart表示情節(jié)提要的開頭的關(guān)鍵幀。static CBaseKeyFrame g_KeyframeStoryboardStart;CAnimationController:m_bIsValid指定動畫控制器是否有效。 如果當(dāng)前操作系統(tǒng)不支持 Windows 動畫 API,則該成員會設(shè)置為 FALSE。BOOL m_bIsValid;CAnimationController:m_lstAnimationGroups屬于此動畫控制器的動畫組列表。C
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 沈陽理工大學(xué)《工廠供電》2021-2022學(xué)年期末試卷
- 固定總價合同規(guī)范要求
- 國藥器械銷售合同
- 合同保證金遺失聲明
- 合同法第三章42條
- 2024年興安客運從業(yè)資格證考試模板
- 2024融資合同股權(quán)股份轉(zhuǎn)讓協(xié)議
- 2024工傷勞動合同范文
- 2024小區(qū)綠化工程合同
- 英語閱讀記錄卡-20210813175455
- 網(wǎng)球比賽計分表(共2頁)
- Y2系列電機外形及安裝尺寸(共2頁)
- 地錨抗拔力計算
- 補償收縮混凝土應(yīng)用技術(shù)規(guī)程JGJT1782009
- 豆類食物營養(yǎng)成分表
- 兒童福利機構(gòu)設(shè)備配置標(biāo)準(zhǔn)
- 智慧樹知到《配位化學(xué)本科生版》章節(jié)測試答案
- 最新實用培訓(xùn)技巧與方法課件PPT
- 羊頭崗村拆遷安置住宅—3#樓工程試驗方案
- 大同煤業(yè)股份有限公司會計信息披露存在的問題和對策研究論文設(shè)計
- 利用Ansoft HFSS仿真軟件實現(xiàn)微帶-波導(dǎo)過渡的設(shè)計
評論
0/150
提交評論