Wpf 模型3DGROUP的3DRotation

Wpf 模型3DGROUP的3DRotation,wpf,3d,Wpf,3d,我有一个model3dgroup,应用了一个变换,如下所示 <Transform3DGroup x:Key="B3OR34TR33"> <TranslateTransform3D OffsetX="0" OffsetY="-1.5748" OffsetZ="-8.10376e-011" />

我有一个model3dgroup,应用了一个变换,如下所示

<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" />