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

    +142.4

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    foreach (clsPoint Point in ArrPoint) {
                    if (!f1 && (P1.DistanceToPoint (p) > Point.DistanceToPoint (p) || P1.DistanceToPoint (p) < 1)
                        && (P2 == null || p.isInToLine (Point, P2) && Point.DistanceToPoint (P2) > 1) &&
                        (fc || Point1.Classify (P2.GetConnectBeem (this)[0].Point1, P2) ==
                                     Point.Classify (P2.GetConnectBeem (this)[0].Point1, P2))) {
                        P1 = Point;
                        continue;
                    }
                    if (!f2 && (P2.DistanceToPoint (p) > Point.DistanceToPoint (p) || P2.DistanceToPoint (p) < 1)
                        && (P1 == null || p.isInToLine (Point, P1) && Point.DistanceToPoint (P1) > 1) &&
                        (fc || Point2.Classify (P1.GetConnectBeem (this)[0].Point2, P1) ==
                                     Point.Classify (P1.GetConnectBeem (this)[0].Point2, P1))) {
                        P2 = Point;
                        continue;
                    }
                }

    Есть версии, что тут происходит? :D

    Запостил: guest, 13 Февраля 2009

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

    • хер:
      хер чо поймеш!
      бля условия хуячат через оператор!
      внатуре или говнокод, или это наговнокодил инопланетный гость
      Ответить
    • Уфаныч:
      Говнокод тут в основном в отсутствии описания условий выбора.
      Ищется точка, удовлетворяющая заданным условиям, вроде бы которая ближе и того же типа. f1, f2 - какие то селекторы. Итого - сложная многофакторная выборка.

      Кстати,
      && (P2 == null || p.isInToLine (Point, P2) && Point.DistanceToPoint (P2) > 1) &&
      похоже выполнится неправильно, т.к. && имеет больший приоритет чем ||.
      Ответить

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