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(); }
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; }
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)); }
public void TurnRight(TurtInteger angle) { this.angle = (this.angle + angle.Value) % 360; }
public void TurnLeft(TurtInteger angle) { this.angle = (this.angle - angle.Value) % 360; }
public void SetWidth(TurtInteger width) { pen.Width = width.Value.Clamp(1, 10); }