Было бы полезно подробнее рассказать о сценарии. Я не считаю, что это специфика машинописного текста c. Обобщение проблемы: если вы хотите проверить, находится ли элемент в поле зрения, вам необходимо:
- a) Найти все события, в которых это состояние может измениться (вместо метода опроса)
- б) Определите метод оценки «находится в области просмотра»
Для всех событий а) запустите метод б) и сообщите об изменении состояния всем, кому это необходимо. Если предположить, что это веб и DOM, событиями будут widow.onload, window.onorientationchange, window.onscroll. «In veiwport» может быть чем угодно - от перекрытия пикселем до полного обзора. Это будет базовая c математика с учетом ограничивающего прямоугольника элементов и области просмотра