YZPolygonHelper 0.0.3

YZPolygonHelper 0.0.3

测试已测试
语言语言 Obj-CObjective C
许可 MIT
发布最后发布2015年1月

Yichi Zhang维护。



  • Yichi Zhang

一些帮助处理多边形的类方法,例如:找到多边形的中心(质心);测试一个点是否在多边形内部。

Screenshot

示例

    func updateCentroid(){

        self.centroidPointView.center =
        YZPolygonHelper.findCentroidForNumberOfPoints(
            self.controlPointViewsArray.count,

            xAtIndexBlock: { (UInt idx) -> CGFloat in

                let view:ControlPointView = self.controlPointViewsArray[idx]
                return view.center.x
            },

            yAtIndexBlock:{ (UInt idx) -> CGFloat in

                let view:ControlPointView = self.controlPointViewsArray[idx]
                return view.center.y
            }
        )

    }
    var result:Bool =
    YZPolygonHelper.isPointContained(
        point,
        inNumberOfPoints: pointsArray.count,
        xAtIndexBlock: { (idx:Int) -> CGFloat in

            return pointsArray[idx].x
        },
        yAtIndexBlock: { (idx:Int) -> CGFloat in

            return pointsArray[idx].y
        }
    )

致谢/版权信息

'找到质心'

算法由 Paul Bourke 提供,网址为 http://paulbourke.net/geometry/polygonmesh/

根据 'squeamish ossifrage' 提供的 C 代码修改,网址为 http://stackoverflow.com/users/1679849/squeamish-ossifrage

从页面 http://stackoverflow.com/questions/19766485/how-to-calculate-centroid-of-polygon-in-c 中获取