Example #1
0
 private static void PartOfSquare(double angle1, double angle2, double angle3, double angle4)
 {
     Risovatel.Go(100, angle1);
     Risovatel.Go(10 * Math.Sqrt(2), angle2);
     Risovatel.Go(100, angle3);
     Risovatel.Go(100 - (double)10, angle4);
 }
Example #2
0
        public static void Main()
        {
            Risovatel.Initialize();

            //Рисуем четыре одинаковые части невозможного квадрата.
            // Часть первая:
            Risovatel.set_pos(10, 0);
            Risovatel.Go(100, 0);
            Risovatel.Go(10 * Math.Sqrt(2), Math.PI / 4);
            Risovatel.Go(100, Math.PI);
            Risovatel.Go(100 - (double)10, Math.PI / 2);

            // Часть вторая:
            Risovatel.set_pos(120, 10);
            Risovatel.Go(100, Math.PI / 2);
            Risovatel.Go(10 * Math.Sqrt(2), Math.PI / 2 + Math.PI / 4);
            Risovatel.Go(100, Math.PI / 2 + Math.PI);
            Risovatel.Go(100 - (double)10, Math.PI / 2 + Math.PI / 2);

            // Часть третья:
            Risovatel.set_pos(110, 120);
            Risovatel.Go(100, Math.PI);
            Risovatel.Go(10 * Math.Sqrt(2), Math.PI + Math.PI / 4);
            Risovatel.Go(100, Math.PI + Math.PI);
            Risovatel.Go(100 - (double)10, Math.PI + Math.PI / 2);

            // Часть четвертая:
            Risovatel.set_pos(0, 110);
            Risovatel.Go(100, -Math.PI / 2);
            Risovatel.Go(10 * Math.Sqrt(2), -Math.PI / 2 + Math.PI / 4);
            Risovatel.Go(100, -Math.PI / 2 + Math.PI);
            Risovatel.Go(100 - (double)10, -Math.PI / 2 + Math.PI / 2);

            Risovatel.ShowResult();
        }
 private static void MyNewMethod(int x, int y, int k) // волшебный метод, рисует сторону по значениям
 {
     Risovatel.SetPos(x, y);
     Risovatel.Go(100, k * Math.PI / 2);
     Risovatel.Go(10 * Math.Sqrt(2), k * Math.PI / 2 + Math.PI / 4);
     Risovatel.Go(100, k * Math.PI / 2 + Math.PI);
     Risovatel.Go(100 - (double)10, k * Math.PI / 2 + Math.PI / 2);
 }
Example #4
0
 public static void DrawSquare(int x, int y, int index)
 {
     Risovatel.set_pos(x, y);
     Risovatel.Go(100, Math.PI * index / 2);
     Risovatel.Go(10 * Math.Sqrt(2), Math.PI / 4 + (Math.PI * index / 2));
     Risovatel.Go(100, ((Math.PI * index) / 2) + Math.PI);
     Risovatel.Go(100 - (double)10, Math.PI / 2 + (Math.PI * index / 2) % (2 * Math.PI));
 }
Example #5
0
 /// <summary>
 /// рисует одну часть невозможного квадрата
 /// </summary>
 /// <param name="x0">начальная координата x</param>
 /// <param name="y0">начальная координата Y</param>
 /// <param name="angle">угол направления части</param>
 static void DrowPart(double x0, double y0, double angle)
 {
     Risovatel.SetPos((float)x0, (float)y0);
     Risovatel.Go(Length, angle);
     Risovatel.Go(Width * Math.Sqrt(2), angle + Math.PI / 4);
     Risovatel.Go(Length, angle + Math.PI);
     Risovatel.Go(Length - Width, angle + 2 * Math.PI / Num);
 }
Example #6
0
 public static void DrawPart(int i)
 {
     Risovatel.SetPos(Pos[(i + 1) % 4], Pos[i % 4]);
     Risovatel.Go(100, Math.PI / 2 * i);
     Risovatel.Go(10 * Math.Sqrt(2), Math.PI / 4 + Math.PI / 2 * i);
     Risovatel.Go(100, Math.PI + Math.PI / 2 * i);
     Risovatel.Go(100 - (double)10, Math.PI / 2 + Math.PI / 2 * i);
 }
        public static void DrawPart(int i)
        {
            double angle = Math.PI / 2 * i;

            Risovatel.SetPos(Pos[(i + 1) % 4], Pos[i % 4]);
            Risovatel.Go(10 * size, angle);
            Risovatel.Go(1 * size * Math.Sqrt(2), Math.PI / 4 + angle);
            Risovatel.Go(10 * size, Math.PI + angle);
            Risovatel.Go(10 * size - (double)1 * size, Math.PI / 2 + angle);
        }