Самый простой способ получить случайную точку непрямоугольной формы:
1) Compute the bounding rectangle (cheap)
2) Generate a point in the bounding rectangle (cheap)
3) Check if that point is inside your shape (expensive)
3.1) If it is, return the point
3.2) If it is not, go back to (2)
В зависимости от сложности формы, этого может быть достаточно.Вы можете использовать фигуры других поколений (круг или другую упрощенную фигуру), если известно, что они лучше подходят для исходной фигуры,
OpenLayers действительно имеет геометрические примитивы, так что вы можете реализовать это в несколько строк.