Ejemplo n.º 1
0
 private void DrawAxis(ArcBallCamera camera, Effect wireframeEffect)
 {
     foreach (EffectPass pass in wireframeEffect.CurrentTechnique.Passes)
     {
         pass.Apply();
         graphics.GraphicsDevice.DrawUserIndexedPrimitives <VertexPositionColor>(PrimitiveType.LineList, GlobalAxisVertices.ToArray(), 0, GlobalAxisVertices.Count, GlobalAxisIndices.ToArray(), 0, GlobalAxisIndices.Count / 2);
     }
 }
Ejemplo n.º 2
0
 public void DrawStages(ArcBallCamera camera, BasicEffect effect, BasicEffect wireframeEffect)
 {
     Axe0.Draw(effect);
     Axe1.Draw(effect);
     foreach (var a in Steps)
     {
         a.Draw(effect);
     }
 }
Ejemplo n.º 3
0
        protected override void Initialize()
        {
            this.IsMouseVisible = true;
            effect          = new BasicEffect(graphics.GraphicsDevice);
            wireframeEffect = new BasicEffect(graphics.GraphicsDevice);
            camera          = new ArcBallCamera(new Vector3(0f, 0f, 0f), MathHelper.ToRadians(-200), 0f, 10f, 300f, 50f, GraphicsDevice.Viewport.AspectRatio, 0.1f, 512f);
            Puma1           = new Puma(graphics.GraphicsDevice, 2, 2, 2, 2);
            InitializeGlobalAxis(4);
            InitializePositionAxis();

            base.Initialize();
        }
Ejemplo n.º 4
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="camera"></param>
        /// <param name="effect"></param>
        /// <param name="timeElapsedFromAnimationStart">in miliseconds</param>
        /// <param name="totalAnimationTime">in seconds</param>
        public void Draw(ArcBallCamera camera, BasicEffect effect, BasicEffect wireframeEffect, double timeElapsedFromAnimationStart, double totalAnimationTime, bool isAnimated)
        {
            if (isAnimated)
            {
                totalAnimationTime *= 1000;
                if (timeElapsedFromAnimationStart <= totalAnimationTime /*&& gameTime.ElapsedGameTime.TotalMilliseconds>=1*/)
                {
                    NextStep((float)(timeElapsedFromAnimationStart / totalAnimationTime), AxeNext, true);
                }
            }
            Axe0.Draw(effect);
            Axe1.Draw(effect);
            AxeNext.Draw(effect);

            if (LineVertices.Count - 1 > 0)
            {
                foreach (EffectPass pass in wireframeEffect.CurrentTechnique.Passes)
                {
                    pass.Apply();
                    device.DrawUserIndexedPrimitives <VertexPositionColor>(PrimitiveType.LineList, LineVertices.ToArray(), 0, LineVertices.Count, LineIndices.ToArray(), 0, LineVertices.Count - 1);
                }
            }
        }