Показать сообщение отдельно
  #16 (permalink)  
Старый 03.01.2017, 13:07
Аватар для Black_Star
Профессор
Отправить личное сообщение для Black_Star Посмотреть профиль Найти все сообщения от Black_Star
 
Регистрация: 11.07.2016
Сообщений: 300

Всем спасибо за подсказки.
Придумал как решить данный вопрос разбив данный интервал на области видимости.
http://codepen.io/BlackStar1991/pen/bgGeqQ

Кому понадобится идея, такова.
1) Если случайное число по вертикале меньше чем верхняя точка блока или больше чем нижняя точка выводите текст как есть. (Учитывая размер шрифта)
2) Если по вертекали значение попадает в область блока (куда попадать не должно было) то пересчитывай горизонталь по формуле
RandomNumber = rand()%(100-(y-x));
if RandomNumber > x then RadomNumer +=(y-x);
Вообщем оно работает.
Есть конечно небольшие косяки, но результат меня устраивает
Ответить с цитированием