问题标签 [cgpath]

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 回答
493 浏览

objective-c - 释放 CGMutablePathRef 是有问题的

我得到hexTouchAreas了我的方法的返回值-drawHexagonTouchArea,但是当我分析我的项目时,它所说的行CGMutablePathRef hexTouchArea = CGPathCreateMutable();会产生一个警告:“在初始化期间存储到 'hexTouchArea' 的值永远不会被读取”。并且在CGPathRelease(hexTouchArea);它抱怨我不拥有那个对象的那一行,并且释放它是多余的。

另一个警告是在return path;分析器说的行:“在第 629 行分配并存储到路径(即CGMutablePathRef path = CGPathCreateMutable();)中的对象的潜在泄漏”

创建和返回路径的方法:

0 投票
2 回答
1238 浏览

ios - 查找 CGPath 与 CGRect 相交的区域

我正在开发一个 iOS 应用程序,我需要能够看到屏幕范围内有多少 CGPath 以确保有足够的空间让用户仍然可以触摸。问题是,当形状在拐角处时,当路径在拐角处时,我通常会使用的所有方法(以及我能想到的所有尝试)都会失败。

这是一张照片:在此处输入图像描述

我如何计算屏幕上有多少该形状?

0 投票
1 回答
17079 浏览

objective-c - 如何为 UIBezierPath 设置动画

我想将矩形的 UIBezierPath 设置为三角形的动画,而不是为路径上的视图设置动画,而是为路径本身设置动画,使其从一种形状变形为另一种形状。路径被添加到 CALayer

0 投票
1 回答
363 浏览

ios - 通过子视图剪切父视图并将第一个的内容放在第二个但缩放

问题是...

我有一个父视图,在其中我绘制了一个由许多 CGPaths 组成的平面图。好吧,在这个应用程序中,我可以将一个子视图插入到父视图中,其中绘制了其他 CGPath(例如代表椅子的线条)。现在。我会复制像 UITextView 那样的缩放效果,当有人点击向下,按住点击,然后一个手玻璃出现,内容被缩放。

例如,我将放置一个子视图,其中背景表示在子视图矩形中剪辑并缩放为 x2 的父内容。这样,子视图背景就像父视图上的手玻璃。

我该如何实现呢?

我考虑过获取父上下文,将其传递给子视图,并使用矩形子视图剪辑父上下文。但什么也没有发生。我对 CGImageContext 表示红色,女巫对父 CGContext 进行图像表示,并将其传递给子视图,但我不知道如何实现它。而且,我不知道这是否正确。

希望有人可以帮助我(代码示例会很棒)!

对不起我的英语不好。我尽力了:)

0 投票
1 回答
4009 浏览

objective-c - QuartzCore:画一个有洞的形状?

如何使用 QuartzCore 绘制一个带有孔的形状?

这是一个例子: 在此处输入图像描述

我已经了解如何绘制路径:

并将其应用于 UIView:

但我不完全确定如何创建一条中心有洞的路径。我是否需要以某种方式从路径中减去,也许?

0 投票
2 回答
3362 浏览

objective-c - CGPath (AddCurveToPoint) - 第一个控制点的 x 和 y 与第二个控制点之间的差异

我对 Xcode 很陌生,所以我决定习惯 Quartz 绘图,虽然我慢慢习惯了,但我在绘制贝塞尔路径时遇到了麻烦。

特别是,从我的 Illustrator 设计中,我想绘制一个形状(一包扑克牌中的 Spade 标志)虽然 x 和 y 点都可以,但我想我混淆了哪个点是第一个控制点,哪个点是第一个控制点是第二个。

我一直把它想象成,如果你想象一张桌子并沿着它的顶部旋转形状的外部(所以形状总是在桌子上,而不是它下面),第一个控制点在左边,第二个是在右侧。

这是什么情况?

在此先感谢,亚当。

这是一张描述我的意思的图片

这是我的代码:

0 投票
3 回答
5551 浏览

iphone - 获取在 iOS UIFont 中追踪字符的路径

假设我有一个在我的 iOS 应用程序中使用的自定义字体“Foo”。我已经将它添加到我的项目、plist 等中,并且我能够很好地渲染UILabels 等。

现在,如果我想找出可以“追踪”该字体中字母“P”的点序列,我将如何获得该点序列?例如,假设我想使用 aCGPath像绘图仪一样缓慢地绘制字母“P”......

我只需要一个CGPoints数组中的序列,如果将其绘制为路径将绘制一个“P”。

我意识到对于像“T”这样的一些字母,这可能没有意义,因为必须抬起笔才能越过“T”。所以也许我需要一个序列CGPath...

关于如何做到这一点的任何提示?

谢谢!

0 投票
1 回答
422 浏览

cocoa - CGPathApplierFunction 异常

CGPathRef有 5 个元素,我想删除起点,并且有一个包含 4 个元素的路径,其起点与我要删除起点的路径的终点相同。

这是我现在生成异常的函数:

0 投票
1 回答
1527 浏览

cocoa - 如何获取 Quartz 用来描边 NSBezierPath 的路径

虚线

我正在使用此代码用宽的黑色虚线描边 NSBezierPath。

c并且strForBezier在其他地方定义)

我怎样才能得到黑色的 NSBezierPath ?我假设 NSBezierPath 已构建并填充以描边初始曲线。

0 投票
3 回答
12585 浏览

core-animation - 带有 CALayer 路径的 CABasicAnimation 不设置动画

我正在尝试动画化 CALayer 从正常角到圆角的过渡。我只想圆顶角,所以我使用的是 UIBezierPath。这是代码:

但是当我运行它时,角落是圆的,但没有动画——它会立即发生。我在这里看到了一些类似的问题,但它们并没有解决我的问题。

iPhone CALayer 动画

动画 CALayer 的 shadowPath 属性

我确定我只是做错了一件小事,这导致了问题,但对于我的生活,我无法弄清楚。

解决方案:

实际上,我需要做的就是为动画设置一个适当的“来自”值。