Текстовые эффекты при наведении
Я пытаюсь создать простой эффект наведения мыши (или зависания) при обработке. Мне удалось сделать этот эффект только на фигурах, таких как прямоугольники, эллипсы и т. Д., Но я не могу понять, как это сделать на текстовых объектах.
Например, чтобы обнаружить наведение мыши по кругу:
if (sqrt(sq(x - mouseX) + sq(y - mouseX)) < diameter/2 ) {
return true;
} else {
return false;
}
Эффект будет таким же простым, как изменение цвета текста, чтобы указать, что мышь находится над текстом.
Любая помощь приветствуется, спасибо!
1 ответ
Используйте ограничивающий прямоугольник, который представляет собой просто прямоугольник, который "нарисован" вокруг текста. (Этот прямоугольник обычно не рисуется, за исключением отладки.)
Вы можете получить ограничивающую рамку текста, используя textWidth()
Функция и ее друзья, о которых вы можете прочитать в ссылке.
Затем, когда у вас есть этот ограничивающий прямоугольник, вы можете использовать код обнаружения столкновения для прямоугольников, которые у вас уже есть.
В будущем, пожалуйста, попробуйте опубликовать MCVE вместо публикации отключенного фрагмента.