Example #1
0
        public void Dot(TurtInteger size)
        {
            var half_size = size.Value / 2;

            graphics.FillEllipse(pen.Brush, x - half_size, y - half_size, size.Value, size.Value);
            Invalidate();
        }
Example #2
0
        public void Go(TurtInteger distance)
        {
            var angleInRadians = Math.PI * angle / 180;
            var directionX     = Math.Cos(angleInRadians);
            var directionY     = Math.Sin(angleInRadians);

            var d    = distance.Value;
            var newX = (float)(x + directionX * d).Clamp(0, buffer.Width);
            var newY = (float)(y + directionY * d).Clamp(0, buffer.Height);

            if (penDown)
            {
                graphics.DrawLine(pen, x, y, newX, newY);
                Invalidate();
            }

            x = newX;
            y = newY;
        }
Example #3
0
 public void SetColor(TurtInteger red, TurtInteger green, TurtInteger blue)
 {
     pen.Color = Color.FromArgb(red.Value.Clamp(0, 255), green.Value.Clamp(0, 255), blue.Value.Clamp(0, 255));
 }
Example #4
0
 public void TurnRight(TurtInteger angle)
 {
     this.angle = (this.angle + angle.Value) % 360;
 }
Example #5
0
 public void TurnLeft(TurtInteger angle)
 {
     this.angle = (this.angle - angle.Value) % 360;
 }
Example #6
0
 public void SetWidth(TurtInteger width)
 {
     pen.Width = width.Value.Clamp(1, 10);
 }