быстрый расчет площади пересечения треугольника и единичного квадрата

В моем текущем проекте мне нужно вычислить площадь пересечения треугольников и единичных квадратов в бесконечной сетке.

Для каждого треугольника (заданного тремя парами чисел с плавающей запятой) мне нужно знать площадь (в интервале(0,1]) имеет общее с каждым квадратом, который пересекает.

Прямо сейчас я конвертирую оба (треугольник и квадрат) в многоугольники и используюСрезание полигонов Сазерленда-Ходжмана рассчитать полигон пересечения, который я затем использую длярассчитать его площадь.

Этот подход теперь является узким местом для производительности в моем приложении. Я предполагаю, что более специализированный (аналитический) алгоритм будет намного быстрее. Есть ли стандартное решение этой проблемы, или у вас есть идеи? Мне нужны только области, а не форма пересечений.

Ответы на вопрос(4)

Ваш ответ на вопрос