问题标签 [uibezierpath]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
442 浏览

iphone - 我想在 ios 中的自定义视图单元格上执行动画

我有一个要求,比如在 tableView 单元格上点击它应该动画并丢弃(跳转)到垃圾图标。

我正在使用UIBezierPath动画文本和跳转功能,但我无法移动 tableViewCell 内的标签。

任何想法和建议将不胜感激。

到目前为止,请检查以下代码。

阿伦..

0 投票
2 回答
385 浏览

objective-c - 绘制矩形时如何避免颜色混合?

在 iOS 的 UIView 中绘制矩形时,我一直遇到同样的问题:矩形边距将它们的颜色与背景混合。我尝试了几种矩形绘制方法,结果相同——使用贝塞尔路径,逐行绘制,绘制边距并填充矩形的内部。

视图的框架本身总是正确绘制。我什至考虑过在需要矩形时使用视图,但这似乎不是专门做事的正确方法,因为我需要绘制许多视图。

这是我的问题的一个例子。为了比较,我正在绘制一个具有相同尺寸的矩形绿色视图:

对于矩形本身:

这会产生以下结果(10 倍变焦):

10倍缩放矩形测试

是什么导致颜色混合?

我怎样才能避免这种情况?

0 投票
1 回答
481 浏览

bezier - 如果 iPhone 中的控制点未知,如何绘制通过触摸位置的贝塞尔路径?

我有两个固定点,P1 和 P2。触摸时,如何绘制通过 P1、触摸点和 P2 的贝塞尔路径?
换句话说,如果我们知道接触点的位置,有没有办法找出控制点的位置呢?

0 投票
1 回答
6528 浏览

iphone - 如何创建 UIBezierPath 渐变填充?

我想创建一个UIBezierPath10px 圆角和渐变填充。我怎样才能达到这种效果?

这是我想要做的图像:

在此处输入图像描述

如您所见,这个广场有:

  • 2px黑色边框
  • 10px圆角
  • 红到绿线性渐变填充

如何在不使用图案图像颜色的情况下以编程方式执行此操作?

这是我创建路径的方式:

0 投票
1 回答
364 浏览

iphone - 想要绘制多边形列表并检测选择了哪个多边形

我正在使用UIBezierPath该类绘制一个多边形。

我有多边形列表。现在,当我单击任何多边形时,我想检测它是哪个多边形。我认为您可以在 中看到相同的概念UIMapView

0 投票
1 回答
6284 浏览

ios - UIBezierPath 和 applytransform

我正在尝试实现一个自定义 UIView,它基本上是一个饼状菜单(就像一个蛋糕被分成几片)。

为此,我试图从中心绘制一个圆圈和一系列线条,就像图表轮中的光线一样。

我已经成功地画出了圆圈,现在我想画出将圆圈分成几片的线条。

这是我到目前为止所拥有的:

问题是路径上的 applyTransform 似乎没有做任何事情。正确绘制的第一条路径和后续路径不受旋转的影响。基本上我看到的只是一条路。在此处查看屏幕截图http://img837.imageshack.us/img837/9757/iossimulatorscreenshotf.png

感谢您的帮助!

0 投票
2 回答
1104 浏览

iphone - 使用 touchesMoved 进行缩放:

我有一个使用 UIBezierPath 制作的饼图。我现在需要这些单独的路径(饼图)是可扩展的。我相信你需要一个能够使用捏缩放的视图,所以我认为 touchesMoved: 是要走的路(除非有解决方法)。

任何建议或帮助表示赞赏!

更新/进度代码

MySliceClass.m

我的切片视图.m

0 投票
2 回答
6152 浏览

ios - UIBezierPath 阴影效果

目前我正在为 iOS 开发一个绘画应用程序。我坚持将阴影效果应用于特定的绘制路径。我已经使用 UIBezierpath 来绘制路径。有没有办法在 UIBezierpath 上应用阴影效果?

0 投票
1 回答
219 浏览

cocoa-touch - 应用图层蒙版后导航栏停止工作

我使用 CAShapeLayer 创建了一个蒙版,我在左上/右上方给出了圆角,然后将它应用到我navigationControllernavigationBar.

它就像一个魅力,但我现在注意到我不能使用导航栏上的按钮!

这是我使用的代码(在viewDidLoad):

0 投票
1 回答
1547 浏览

objective-c - 在 Core Graphics 中斜切路径/形状

我正在尝试在核心图形中斜切路径。有没有人已经为任意形状做过这个,如果有,他们愿意分享代码吗?

我在下面包含了我的实现。我使用三个变量来确定斜角:CGFloat bevelSizeUIColor highlightColorUIColor shadow。请注意,光源的角度始终为 135 度。我还没有完成这个实现,但这基本上是我想要做的,分为两部分。第一部分,生成焦点:

  1. 我找到了路径中每条相邻线之间角度的平分线。
  2. 对于弧线,平分线是垂直于由弧线的两个端点创建的线的线,起源于中点。这应该考虑到使用弧的大多数情况。我不取圆弧和直线的平分线。在这些情况下,弧平分线应该可以正常工作。
  3. 然后我根据每个相邻平分线的交点计算焦点。
  4. 如果焦点在它使用的形状内,否则将被丢弃。

生成焦点的目的是按比例“缩小”形状。

第二部分稍微复杂一些。我必须创建斜面形状的每一边/段。我通过绘制“in”来做到这一点(由bevelSize) 沿从最近的焦点延伸到相关点的直线半径的原始形状的每个点。当我有两个连续的“bevelPoints”时,我创建了一个 UIBezierPath,它从 bevelPoints 延伸到原始点并返回到 bevelPoints(注意,这包括弧)。这会创建一个我可以用来填充的“边/段”。在直边上,我只是根据边的角度填充阴影或高光颜色。对于弧,我确定弧度“弧”。如果该弧包含过渡角度(M_PI_4 或 M_PI + M_PI_4),我会用渐变填充它(从阴影到高光或从高光到阴影,无论哪种方式都合适)。否则我用纯色填充它。

更新

我已将我的答案(见下文)拆分为单独的博客文章。我不再使用您在上面看到的实现细节,但我将其全部保留以供参考。我希望这可以帮助其他希望使用 Core Graphics 的人。