
c++算法
文章平均质量分 76
qinken547
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
通过一点找最近线段
pair GetPioneerSegment(SkPoint pt,vector> vectorOfSemgents) { pair reValue; reValue.first = SkPoint::Make(0,0); reValue.second = SkPoint::Make(0,0); if (vectorOfSemgents.size() == 0) return reVa原创 2013-08-13 09:20:58 · 756 阅读 · 0 评论 -
绘制贝塞尔曲线通用方法
//计算三次贝塞尔曲线,后面n(n>=3)计算时,都是将点分成一组一组的三次贝塞尔曲线 //计算控制点思路来源:http://www.antigrain.com/research/bezier_interpolation/index.html#PAGE_BEZIER_INTERPOLATION SkPoint* CalcThreeBezier(Wm5::Vector2d ptw1,Wm5::Vec原创 2013-07-26 15:52:36 · 1265 阅读 · 0 评论 -
求任意多边形内一点
SkPoint findPointinPolygon(const std::vector& polygon) { if (polygon.size() < 3) return SkPoint::Make(-1,-1); SkPoint p1,p2,p3; //取多边形任意3个点 p1 = polygon[0];p2 = polygon[1];p3 = polygon[2]; /原创 2013-08-12 17:35:01 · 1616 阅读 · 0 评论 -
画贝塞尔曲线
SkPoint* DrawThreeEx(Wm5::Vector2d ptw1,Wm5::Vector2d ptw2,Wm5::Vector2d ptw3, SkCanvas* canvas,SkPaint& paint) { //算出两条边中点,再算出中点连线的中点 SkPoint midOfPtw12,midOfPtw23,mid,midOfmid12mid,midOfmid23mid;原创 2013-07-26 11:02:01 · 1299 阅读 · 0 评论 -
内包含多边形区域填充
#pragma once #include #include #include #include #include #include using namespace std; typedef vector PolygonData; void DrawPolygons( const vector t,SkCanvas* canvas ); bool IsPolyInPol原创 2013-08-16 15:38:58 · 848 阅读 · 0 评论 -
贝塞尔曲线上一点
计算Bezier曲线上的点,可用Bezier曲线方程,但使用de Casteljau提出的递推算法则要简单得多。 如图3.1.10所示,设P0、P02、P2是一条抛物线上顺序三个不同的点。过P0和P2点的两切线交于P1点,在P02点的切线交P0P1和P2P1于P01和P11,则如下比例成立: 这是所谓抛物线的三切线定理。 图3.1.10 抛物线三切线定理 当P0原创 2013-08-16 17:54:36 · 1092 阅读 · 2 评论