- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在使用 swift 4。
我写了下面的代码并尝试用笔画画一个圆。
但是,使用下面的代码我无法绘制我想要的圆。
问题是线是从圆心画到外围
(严格来说,是朝向'startAngle'属性的坐标点)。
我想擦掉这条线,我该怎么办?
(我准备了一张图片。)
class Something{
var line:[CAShapeLayer] = []
var path:[UIBezierPath] = []
func drawingNow(){
let layer = CAShapeLayer()
self.layer.addSublayer(layer)
self.line.append(layer)
let addPath: UIBezierPath = UIBezierPath()
addPath.move(to: CGPoint(x: 100, y: 100))
addPath.addArc(
withCenter: CGPoint(x: 100, y: 100),
radius: CGFloat(50),
startAngle: CGFloat(//someangle),
endAngle: CGFloat(//someangle),
clockwise: true
)
self.path.append(addPath)
//self.line.last!.strokeColor = etc... (If don't use "override func draw()")
self.line.last!.fillColor = UIColor.clear.cgColor
self.line.last!.path = addPath.cgPath
self.setNeedsDisplay()
}
override func draw(_ rect: CGRect) {
if self.path.count != 0{
UIColor.orange.setStroke()
self.path.last!.stroke()
}
}
}
最佳答案
调用addPath.move(to: CGPoint(x: 100, y: 100))
后,UIBezierPath移动到指定坐标。现在您要告诉它添加一个圆弧 从那里 中心为 (100, 100)。以(100, 100)为圆心画圆弧,首先需要向圆周移动。但此时它已经开始绘图了! addArc
就是这样工作的。 addLine
也是如此。看docs :
This method adds the specified arc beginning at the current point.
所以圆弧总是从当前点开始,即 (100, 100)。
与其告诉它先移动到中心,不如告诉它通过移除 move(to:)` 线来绘制弧线。
关于ios - 使用 strokeColor,从中心到圆周绘制一条线,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50197212/
如何迭代(一行)分割函数给我的每个类? 我试过这个: 编辑(抱歉) $("p").attr("class").split(' ').each (function (i,n){alert(n)}
我有一条垂直线和一条水平线,当我动态调整我的 Canvas 父级时,我想调整它们的大小。 (地标) 我希望水平线始终距 Canvas 的左右边界 25 处,距底部边界 13 处。 垂直线也是如此,距上
我有一个 y 变量,我试图在图形的顶部和底部针对两个相关的 x 轴绘制它(例如 y="立方体中的事物数",x1="立方体的边长", x2="立方体的体积")。我在 numpy 数组中有 y、x1、x2
我想画一条简单的水平线,并在这条线 flex 的地方制作动画。我有这个动画的视频。你能给我一些建议如何开始以及我必须使用哪个 js/css 吗? 都是关于矩形底部的线: http://www.stop
我是一名优秀的程序员,十分优秀!