Пересечение двух геометрий не подходит, необходимо только с определенной точкой.
Так я и не предлагал использовать пересечение в чистом виде.
Оба из предложенных варианта требуют определения, находится ли заданная точка внутри геометрии.
Посмотрел что есть из готовых методов. Подходящим мне показался метод
Solid.IntersectWithCurve.
Естественно, имеется ввиду, что рассматриваемая геометрия элемента является твердотельным объектом.
Алгоритм таков:
1) Берете твердотельный объект из геометрии элемента.
2) Создаете линию, где началом является заданная точка, а конец находится где-то ближе к бесконечности.
3) С помощью метода
Solid.IntersectWithCurve определяете сколько раз линия пересекает твердотельный объект
4) Если
нечетное количество раз, то точка находится внутри твердотельного объекта, если четное, то за его пределами.
Подобный алгоритм я рассматривал вот в
этой статье.