コード例 #1
0
ファイル: MenuView.xaml.cs プロジェクト: wozaiha/Anamnesis
        private async void ExportPose(TargetService.ActorTableActor actor)
        {
            ActorViewModel?actorVm = actor.GetViewModel();

            if (actorVm == null)
            {
                return;
            }

            SkeletonVisual3d skeletonVm = await PoseService.GetVisual(actorVm);

            await PoseFile.Save(actorVm, skeletonVm);
        }
コード例 #2
0
ファイル: PosePage.xaml.cs プロジェクト: EliCodesThings/CM3
        public PosePage()
        {
            this.poseService = Services.Get <PoseService>();
            this.poseService.EnabledChanged   += this.OnEnabledChanged;
            this.poseService.AvailableChanged += this.OnAvailableChanged;

            this.InitializeComponent();

            this.SkeletonViewModel       = new SkeletonViewModel();
            this.ContentArea.DataContext = this;

            this.OnEnabledChanged(this.poseService.IsEnabled);
            this.OnAvailableChanged(this.poseService.IsAvailable);
        }
コード例 #3
0
ファイル: PosePage.xaml.cs プロジェクト: Caraxi/Anamnesis
        private async void OnDataContextChanged(object?sender, DependencyPropertyChangedEventArgs e)
        {
            this.Actor = this.DataContext as ActorViewModel;

            if (this.Actor == null || this.Actor.ModelObject == null)
            {
                this.Skeleton = null;
                return;
            }

            if (!this.IsVisible)
            {
                return;
            }

            try
            {
                this.Skeleton = await PoseService.GetVisual(this.Actor);

                this.ThreeDView.DataContext = this.Skeleton;
                this.GuiView.DataContext    = this.Skeleton;
                this.MatrixView.DataContext = this.Skeleton;

                if (this.Skeleton.File != null)
                {
                    if (!this.Skeleton.File.AllowPoseGui)
                    {
                        this.ViewSelector.SelectedIndex = 1;
                    }

                    if (!this.Skeleton.File.AllowPoseMatrix)
                    {
                        this.ViewSelector.SelectedIndex = 2;
                    }
                }
            }
            catch (Exception ex)
            {
                Log.Error(ex, "Failed to bind skeleton to view");
            }
        }