예제 #1
0
 private void btnAnimate_Click(object sender, EventArgs e)
 {
     if (Animator == null)
     {
         Animator = new D3DSceneAnimator(Device, Device.MSC);
     }
     Animator.Start();
     btnAnimate.Visible       = false;
     btnStopanimation.Visible = true;
 }
예제 #2
0
        private void openFileToolStripMenuItem_Click(object sender, EventArgs e)
        {
            if (openFileDialog1.ShowDialog() == System.Windows.Forms.DialogResult.OK)
            {
                string FileName = openFileDialog1.FileName;// "C:\\D3d2\\Windows\\Examples\\Assimp\\bin\\Debug\\ArmyPilot\\ArmyPilot.ms3d";
                Text = FileName;
                if (Device.MSC != null)
                {
                    Device.MSC.Dispose();
                }
                Device.DisposeTextures();

                Device.MSC = Reader.FromFile(FileName);
                //Device.Image.Children.Clear();
                //for (int i = 0; i < MS.Meshes.Count; i++)
                //{
                //    Device.Image.Children.Add(MS.Meshes[i]);
                //}
                //Box b = Device.Image.GetMaxBox();

                //Device.fitToPage(Device, Device.Image.GetMaxBox());

                //GC.Collect();
                //return;

                if (Device.MSC == null)
                {
                    return;
                }
                Box b = Device.MSC.GetMaxBox();

                Device.fitToPage(Device, Device.MSC.GetMaxBox());

                if (Animator != null)
                {
                    Animator.End();
                    Animator = null;
                }
                btnAnimate.Visible       = false;
                btnStopanimation.Visible = false;
                btnContinue.Visible      = false;
                if (Device.MSC.HasAnimations)
                {
                    btnAnimate.Visible = true;
                    button2.Visible    = true;
                }
                else
                {
                    btnAnimate.Visible = false;
                    button2.Visible    = false;
                }
                Device.ResetShadow();
            }
        }
예제 #3
0
 private void lbAnimations_SelectedIndexChanged(object sender, EventArgs e)
 {
     if (Animator == null)
     {
         Animator = new D3DSceneAnimator(Device, Device.MSC);
     }
     //Device.MSC.SceneAnimator.Loop = false;
     //Device.MSC.SceneAnimator.ActiveAnimation = -1;
     Animator.Start(lbAnimations.SelectedIndex);
     lbAnimations.Visible     = false;
     btnAnimate.Visible       = false;
     btnStopanimation.Visible = false;
     btnContinue.Visible      = true;
 }