Tag: bezier

如何确定一个三angular贝塞尔path在一个终点的曲率

我一直在使用Bezierpath来绘制我需要的曲线。 我的项目中的每个基本形状都由三条三次贝塞尔曲线组成,这些曲线首尾相连排列,以便斜坡匹配。 我需要解决的基本问题是由三条贝塞尔曲线构成的复合曲线是否与自身相交。 经过一段时间的思考之后,我发现,考虑到曲线的限制,我可以将任务简化为其他任务: 三条贝塞尔曲线中的每一条的曲率在曲率方向上应该相对于它所邻接的曲线相反。 换句话说,应该有一条贝塞尔曲线与另一条曲线相邻的拐点。 如果不是这种情况,我想拒绝生成曲线的参数集并select一个不同的集合。 无论如何,我的基本问题是如何检测曲线是否存在一个拐点。 在图中,三条贝塞尔曲线中的每一条都以不同的颜色显示。 左边的黑色曲线在红色曲线相反的方向上弯曲,而右边的黑色曲线在相同的方向上曲线。 红色和左边的黑色曲线相交处有一个拐点,而红色和右边的黑色曲线相交处没有拐点。 编辑:下面,我添加了另一个图像,显示了包围贝塞尔path的多边形。 黑色曲线所示的多边形交叉线testing的是一个拐点,而不是一个循环。 我猜测可以通过检查包围的多边形是否相交来testing一条相交于另一条的曲线,如红色和蓝色曲线所示。 PS由于存在一些关于约束的问题,我将在这里列出其中的一些: 最左边的点和最右边的点具有相同的y值。 最左点的控制点的x值小于 最右端控制点的x值。 这保持 黑色和蓝色曲线相互交叉。 最左边和最右边的坡度在水平线的+/- 10度以内。 黑色和红色曲线的交叉点以及红色和蓝色曲线的交点将大致三分之一的曲线分开。 我没有确切的数字,但是一个样本界限应该是红色曲线左端的x值在最右边的x值的25%和40%之间。 交点的y值是整个宽度的+/-一小部分。 交叉点的斜率> 0.6和<3.0(正值或负值)。

创build一个具有圆顶的UIView

我想创build一个像这个图像圆顶的UIView,我该怎么做? 想要的结果 不想要的结果

在imageview中调整线条以适合我们的头部

我正在开发一个与HairTryOn相同的应用程序。 但在下面的图像中显示问题。 我想根据客户的脸部设置发型,使用蓝色线条按照图像中的显示。 我用下面的代码 testVw = [[UIView alloc]initWithFrame:CGRectMake(100,100, 100, 100)]; testVw.backgroundColor = [UIColor clearColor]; [self.view addSubview:testVw]; resizeVw = [[UIImageView alloc]initWithFrame:CGRectMake(testVw.frame.size.width-25, testVw.frame.size.height-25, 25, 25)]; resizeVw.backgroundColor = [UIColor clearColor]; resizeVw.userInteractionEnabled = YES; resizeVw.image = [UIImage imageNamed:@"button_02.png" ]; [testVw addSubview:resizeVw]; UIPanGestureRecognizer* panResizeGesture = [[UIPanGestureRecognizer alloc] initWithTarget:self action:@selector(resizeTranslate:)]; [testVw addGestureRecognizer:panResizeGesture]; resizeTranslate:方法: -(void)resizeTranslate:(UIPanGestureRecognizer *)recognizer { if ([recognizer state]== UIGestureRecognizerStateBegan) { […]

在UIView中的BezierPath旋转

我正在绘制一个BezierPath on Touch事件。 现在我必须使用手势方法在相同的位置上旋转Bezierpath。 但问题是,轮换之后它的地位就变了。 它看起来像下面的图像..我怎样才能解决这个问题? 上图是原始图像。 与我分享你的想法..在此先感谢

如何在我的iPad应用程序中通过不寻常的曲线pathanimation一个图像?

我有两个单独的图像。 CurvedPath图像(附在下面) PersonImage 正如你所看到的,这个path对于单angular来说没有完美的弧度。 我有另一个PersonImage,我想要在这个弧形图像的中心线上方进行放大animation。 这个animation应该从左下angular开始到右上angular。 如何实现这种animation? 我已经阅读了关于QuartzCore和BeizerPath的animation,但由于我对这些知识的了解不多,所以我很难很快实现这一点。

从UIBezierpath获取积分

我通过这样做了上面的BezierPath://位置是用户触摸屏幕的地方。 //位置将是图的最大值CGPoint origin = CGPointMake(xStart,620.0); CGPoint endpt = CGPointMake(xEnd,620.0); CGPoint midpt1 = midPointForPoints(origin,location); CGPoint midpt2 = midPointForPoints(location,endpt); UIBezierPath *path = [UIBezierPath bezierPath]; [path moveToPoint:origin]; [path addQuadCurveToPoint:location controlPoint:CGPointMake(midpt1.x, midpt1.y+50)]; [path addQuadCurveToPoint:endpt controlPoint:CGPointMake(midpt2.x, midpt2.y+50)]; [shapeLayer setPath:path.CGPath]; 现在,我想检索位于path上的某些x坐标的y坐标。 例如,给定x = 0.0,我想得到y = 0.0,或者给定x = 300.0,y = 50.0。 我看了一些像这个问题和示例代码的引用,我仍然不确定。 更新:基本上,我想要做这样的事情。 更新:继方达的build议: 给定方程 X = (1-t)^2*X0 + 2*t*(1-t)*X1 + t^2 […]

IOS:animation从一条线到贝塞尔曲线的变换

我想创build一条弯曲成贝塞尔曲线(从“_”到“n”)的直线,有没有一个库可以帮助我做到这一点? 我知道如何用UIBezierPath绘制一条贝塞尔曲线,我可以快速重绘,并逐步进行转换,但是如果已经有这样的事情,那就太酷了:-)

用我的手指在iOS中绘制贝塞尔曲线?

嘿,我试图找出如何在iOS中基于用户input生成贝塞尔曲线。 是否有任何现有的类? 有人能给我一个什么是需要的一般总结? 我只需要帮助开始右脚。