longclaps, При трассировке лучом:
1. нет пересечений
2. короткое расстояние отрезка (когда луч проходит через 2 контурные точки)
3. длинное расстояние (когда луч проходит через 2 контурные точки)
4. снова короткое (когда луч проходит через 2 контурные точки)
5. нет пересечений
А все другие - уже не эллипсо-подобные. (длинное - только одно должно быть!)
Например, "часы" твои - уже будут так трассироваться:
1. нет пересечений
2. короткое расстояние отрезка (когда луч проходит через 2 контурные точки)
3. длинное расстояние (когда луч проходит через 2 контурные точки)
4. снова короткое (когда луч проходит через 2 контурные точки)
5. длинное расстояние (когда луч проходит через 2 контурные точки)
6. снова короткое (когда луч проходит через 2 контурные точки)
7. нет пересечений
longclaps, отрезок луча, проходя через объект, определяется пересечением луча с контурными точками. При повороте от CD и ниже: длина отрезка уменьшается до зоны линии BE, а потом - снова увеличивается, при подходе к AF.
longclaps, это частный случай, когда "песочные часы", там при смене знака относительного расстояния (по сравнению с предыдущем шагом поворота луча) между контурными пересечениями в противоположную сторону - строим диагонали сразу:
PS: диагонали - я немного перепутал (но это не влияет ни на что в данном случае...): они должны также из красных точек идти...
Руслан Хорошкевич, тогда достаточно попросить составить НАИПРОСТЕЙШИЙ класс "светофор"/"семафор" (например), чтобы понять владение джуна понятием класса в PHP.
OnYourLips, ну, если подскажешь как настроить рекламные блоки, чтобы можно было создать ненавязчивую - я настрою. А пока - я не знаю как это сделать...
У тебя нет этого в методе... Как найти?
И этого тоже...
Так что, тоже у тебя не алгоритм)