첨부 실행 코드는 나눔고딕코딩 폰트를 사용합니다.

728x90
반응형
728x170

TestProject.zip
다운로드

▶ MainWindow.xaml

<Window x:Class="TestProject.MainWindow"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    Width="800"
    Height="600"
    Title="AxisAngleRotation3D 엘리먼트 : 3D 애니메이션 사용하기"
    FontFamily="나눔고딕코딩"
    FontSize="16">
    <Grid>
        <Viewport3D>
            <Viewport3D.Camera>
                <PerspectiveCamera
                    FarPlaneDistance="20"
                    LookDirection="5 -2 -3"
                    UpDirection="0 1 0"
                    NearPlaneDistance="0"
                    Position="-5 2 3"
                    FieldOfView="45" />
            </Viewport3D.Camera>
            <ModelVisual3D x:Name="topModelVisual3D">
                <ModelVisual3D.Children>
                    <ModelVisual3D>
                        <ModelVisual3D.Content>
                            <DirectionalLight
                                Color="#ffffffff"
                                Direction="-3 -4 -5" />
                        </ModelVisual3D.Content>
                    </ModelVisual3D>
                    <ModelVisual3D>
                        <ModelVisual3D.Content>
                            <GeometryModel3D Geometry="{StaticResource TeapotMeshGeometry3DKey}">
                                <GeometryModel3D.Material>
                                    <DiffuseMaterial>
                                        <DiffuseMaterial.Brush>
                                            <SolidColorBrush
                                                Color="RoyalBlue"
                                                Opacity="1" />
                                        </DiffuseMaterial.Brush>
                                    </DiffuseMaterial>
                                </GeometryModel3D.Material>
                                <GeometryModel3D.Transform>
                                    <RotateTransform3D>
                                        <RotateTransform3D.Rotation>
                                            <AxisAngleRotation3D x:Name="axisAngleRotation3D"
                                                Axis="0 3 0"
                                                Angle="1" />
                                        </RotateTransform3D.Rotation>
                                    </RotateTransform3D>
                                </GeometryModel3D.Transform>
                            </GeometryModel3D>
                        </ModelVisual3D.Content>
                    </ModelVisual3D>
                </ModelVisual3D.Children>
            </ModelVisual3D>
            <Viewport3D.Triggers>
                <EventTrigger RoutedEvent="Viewport3D.Loaded">
                    <BeginStoryboard>
                        <Storyboard>
                            <DoubleAnimation 
                                Storyboard.TargetName="axisAngleRotation3D"
                                Storyboard.TargetProperty="Angle"
                                RepeatBehavior="Forever"
                                From="0"
                                To="360"
                                Duration="0:0:10" />
                        </Storyboard>
                    </BeginStoryboard>
                </EventTrigger>
            </Viewport3D.Triggers>
        </Viewport3D>
    </Grid>
</Window>
728x90
반응형
그리드형(광고전용)
Posted by icodebroker

댓글을 달아 주세요