Wpf 模型3DGROUP的3DRotation
我有一个model3dgroup,应用了一个变换,如下所示Wpf 模型3DGROUP的3DRotation,wpf,3d,Wpf,3d,我有一个model3dgroup,应用了一个变换,如下所示 <Transform3DGroup x:Key="B3OR34TR33"> <TranslateTransform3D OffsetX="0" OffsetY="-1.5748" OffsetZ="-8.10376e-011" />
<Transform3DGroup x:Key="B3OR34TR33">
<TranslateTransform3D OffsetX="0"
OffsetY="-1.5748"
OffsetZ="-8.10376e-011" />
<ScaleTransform3D ScaleX="1"
ScaleY="0.750021"
ScaleZ="1" />
<RotateTransform3D>
<RotateTransform3D.Rotation>
<AxisAngleRotation3D Angle="90.0000025"
Axis="1 0 0" />
</RotateTransform3D.Rotation>
</RotateTransform3D>
<TranslateTransform3D OffsetX="0"
OffsetY="0.0259444"
OffsetZ="5.51401" />
</Transform3DGroup>
还有一个动画,在加载时为model3dgroup设置动画
<DoubleAnimationUsingKeyFrames
BeginTime="0:0:0"
Duration="0:0:0.9"
Storyboard.TargetName="B3OR34"
Storyboard.TargetProperty="(Model3D.Transform).(Transform3DGroup.Children)[3].(TranslateTransform3D.OffsetX)">
<LinearDoubleKeyFrame KeyTime="0:0:0"
Value="-38.50234985" />
<LinearDoubleKeyFrame KeyTime="0:0:0.9"
Value="0" />
</DoubleAnimationUsingKeyFrames>
<DoubleAnimationUsingKeyFrames
BeginTime="0:0:0"
Duration="0:0:0.9"
Storyboard.TargetName="B3OR34"
Storyboard.TargetProperty="(Model3D.Transform).(Transform3DGroup.Children)[3].(TranslateTransform3D.OffsetY)">
<LinearDoubleKeyFrame KeyTime="0:0:0"
Value="0.02594435215" />
<LinearDoubleKeyFrame KeyTime="0:0:0.9"
Value="0" />
</DoubleAnimationUsingKeyFrames>
<DoubleAnimationUsingKeyFrames
BeginTime="0:0:0"
Duration="0:0:0.9"
Storyboard.TargetName="B3OR34"
Storyboard.TargetProperty="(Model3D.Transform).(Transform3DGroup.Children)[3].(TranslateTransform3D.OffsetZ)">
<LinearDoubleKeyFrame KeyTime="0:0:0"
Value="5.514007568" />
<LinearDoubleKeyFrame KeyTime="0:0:0.9"
Value="0" />
</DoubleAnimationUsingKeyFrames>
model3dgroup是一个具有5种几何图形(顶部、底部、前部、后部和侧面)的立方体。问题是,当我应用一个行为来旋转model3dgroup时,旋转发生在其中一个geometrymodel3d的x轴的中间。要围绕model3dgroup的中心旋转,我应该在这里看什么。您可以使用CenterX/Y/Z属性设置RotateTransform3D的中心 在你的情况下,中心必须是你的应用翻译
<RotateTransform3D CenterX="0"
CenterY="-1.5748"
CenterZ="-8.10376e-011" />