确定坐标是否在矢量形状内

时间:2014-01-12 01:51:06

标签: shape bezier

我有一组由二次贝塞尔曲线(point0(x,y),controlPoint(x,y),point1(x,y))定义的形状。这个形状总是封闭的,但可以由凹凸区域组成(例如:形状可以是椭圆形,也可以是缠绕蛇。是否有算法可以确定坐标(x,y)是否在闭合形状内由给定的二次贝塞尔曲线组形成?

感谢您的时间

1 个答案:

答案 0 :(得分:2)

基本方法是简单的https://en.wikipedia.org/wiki/Point_in_polygon测试。展平曲线,将其视为(有限)系列线,然后进行测试。为了提高性能,您还可以将形状视为多个不同的区域,每个区域由贝塞尔曲线限定,并且(可能重叠)船体。如果该点位于船体内部,则仅展平该曲线,然后进行实际测试。

该计划的变化是多种多样的。