1. C# / Говнокод #9989

    +947

    1. 1
    2. 2
    3. 3
    xg = (int)Math.Round(40 + ye[0] * 360 / 12);
                    yg = (int)Math.Round(340 - ye[1] * (decimal)2.5);
                    cur = new PointF((float)xg, (float)yg);

    Отрисовка графика.

    Запостил: cgbs, 20 Апреля 2012

    Комментарии (6) RSS

    • yg = (
      Ответить
    • Говнокод в том что точка обьялена как флоат, и чтобы передать в нее координаты они приводятся к флоату соотведственно, н оведь строчкой выше они были были привены к инту из другого вещественного типа.
      Ответить
      • Да нет тут ничего фатального, в принципе. Нормальный код. Возможно за исключением yg = (int)... , но и для этого могут быть причины.
        А вот вы, похоже, среду с которой работаете - не знаете. System.Drawing использует дробные точки тупо потому, что умеет делать сглаживание. Попробуйте нарисовать линию с концами (10.5; 10) и (10.5; 110)
        Ответить
        • Извините, что встреваю в разговор, но дробные точки применяются потому что есть возможность использовать различные единицы измерения (GraphicsUnit.Inch, например). И со сглаживанием это никак не связано...
          Ответить
          • Видимо я неверно сформулировал.
            System.Drawing умеет рисовать линии с дробными координатами.
            (10.5; 10) и (10.5; 110)
            он нарисует линию шириной 2 пикселя с прозрачностью 50%
            Я это имел ввиду. Имхо, какой смысл использовать что-то от GraphicsUnit.Pixel (или как там его), если SDK не сможет его корректно отобразить?

            А вообще System.Drawing писали осминоги, да...
            Ответить

    Добавить комментарий