第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

將動畫應用于情節(jié)提要中的 ModelVisual3D

將動畫應用于情節(jié)提要中的 ModelVisual3D

C#
斯蒂芬大帝 2022-12-24 14:34:55
我有一個 ModelVisual3D。我想為其在 Viewport3D 中的位置設置動畫。我已經獲得了用于 BoxVisual3D(來自 HelixToolkit)的代碼,但該代碼不適用于我的 ModelVisual3D。ModelVisual3D 應沿 X 軸平移,但它只是靜止不動。我實際上已經將我的 BoxVisual3D 的工作代碼復制到我的 ModelVisual3D 中?,F在,我只是在做 OffsetX 屬性,但稍后我需要在多個 ModelVisual3D 上同時設置多個屬性,因此需要故事板。這是不起作用的代碼:Transform3DGroup modelTransformGroup = (Transform3DGroup)_myModel.Transform;TranslateTransform3D curTransform = (TranslateTransform3D)modelTransformGroup.Children[1];var moveX = new DoubleAnimation(0, 1000, TimeSpan.FromSeconds(5));Storyboard.SetTarget(moveX, curTransform);Storyboard.SetTargetProperty(moveX, new PropertyPath(TranslateTransform3D.OffsetXProperty));var sb = new Storyboard();sb.Children.Add(moveX);sb.Begin();這是一些有效的代碼,但還不夠,因為我需要同時將許多動畫與故事板同步:Transform3DGroup modelTransformGroup = (Transform3DGroup)_myModel.Transform;TranslateTransform3D curTransform = (TranslateTransform3D)modelTransformGroup.Children[1];var moveX = new DoubleAnimation(0, 1000, TimeSpan.FromSeconds(5));curTransform.BeginAnimation(TranslateTransform3D.OffsetXProperty, moveX);謝謝你的幫助!
查看完整描述

2 回答

?
Qyouu

TA貢獻1786條經驗 獲得超11個贊

不好意思在這里提問。我真的很想知道為什么代碼會出現一些錯誤,例如:無法輸入“System.Windows.Media.Media3D.MatrixTransform3D”對象強制轉換為類型“System.Windows.Media.Media3D.Transform3DGroup。

Transform3DGroup modelTransformGroup = (Transform3DGroup)_myModel.Transform;
TranslateTransform3D curTransform (TranslateTransform3D)modelTransformGroup.Children[1];



查看完整回答
反對 回復 2022-12-24
?
手掌心

TA貢獻1942條經驗 獲得超3個贊

我在這篇文章中找到了答案,它也指向了這篇文章。原來你必須為你的轉換注冊一個名稱并設置目標名稱而不是目標。這是因為轉換不是 FrameworkElement 的一部分。

下面是我的工作代碼集。

Transform3DGroup modelTransformGroup = (Transform3DGroup)_myModel.Transform;

TranslateTransform3D curTransform = (TranslateTransform3D)modelTransformGroup.Children[1];

var moveX = new DoubleAnimation(0, 1000, TimeSpan.FromSeconds(5));

RegisterName("Translate", translate);

Storyboard.SetTargetName(moveX, "Translate");

Storyboard.SetTargetProperty(moveX, new PropertyPath(TranslateTransform3D.OffsetXProperty));

var sb = new Storyboard();

sb.Children.Add(moveX);

sb.Begin(this);

我測試了幾種不同的模型類型。這似乎適用于繼承 Visual3D 的任何類型的對象。


查看完整回答
反對 回復 2022-12-24
  • 2 回答
  • 0 關注
  • 91 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號