AFAIK, нет способа получить данные для любой заданной фигуры во флэш-памяти.Это что-то внутреннее, к сожалению.Однако вы все равно сможете рассчитать достаточную аппроксимацию площади между двумя вашими фигурами, используя ядро Pixel Bender.Используя ShaderJob, вы можете выполнять вычисления асинхронно и, таким образом, не блокировать пользовательский интерфейс.
Идея выглядит примерно так:
- Захват растрового изображения первой фигуры
- Захватить растровое изображение второй формы
- Создать ShaderJob, используя ядро Pixel Bender, используя в качестве входных данных два растровых изображения.Для каждого пикселя ядро будет вычислять, пересекаются ли фигуры или нет, и, возможно, насколько.Используйте один из выходных каналов для результата вычисления.
- Возьмите полученный результат и суммируйте все для окончательного альфа-значения.
Я не уверен, если этоэто менее хлопотно для вас, чем использование вашего подхода SVG, но это, по крайней мере, альтернатива. может имеет смысл вычислить пересечение границ двух фигур и захватить только растровое изображение пересекающихся прямоугольников в формах.Это дополнительный шаг, но, по крайней мере, он, вероятно, более эффективен для памяти, возможно, более эффективен и с точки зрения времени процессора.