- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我的场景是,我正在沿着拱形移动现有节点,并希望它在到达另一侧时停止。一个简单的比喻是,我想让一些东西沿着彩虹移动。
虽然我当前的代码确实执行了正确的椭圆形,但它随后在我的 y 原点下方继续返回到其起点。我知道我可以更好地控制圆圈停在我想要的地方,但对于我的用例,圆形路径不起作用。
我的代码的缩写版本是:
override func didMove(to view: SKView) {
let size = CGSize(width: frame.width - 60, height: 100)
let box = SKSpriteNode(color: .orange,
size: CGSize(width: 30, height: 30))
box.position = CGPoint(x: frame.midX, y: frame.midY)
addChild(box)
let origin = CGPoint(x: 30, y: frame.midY)
let rect = CGRect(origin: origin, size: size)
let path = UIBezierPath(ovalIn: rect)
let action = SKAction.follow(path.cgPath,
asOffset: false,
orientToPath: false,
speed: 250)
box.run(action)
}
上面的代码运行时会产生以下结果:
我的目标是橙色盒子到达左侧后停止。
我已经查看了各种 UIBezierPath 初始值设定项,唯一看起来有前途的另一个是使用 UIBezierPath(cgPath:)
。理想情况下,我需要 cgPath
来填充它以满足我的标准。
最佳答案
所以我对基于 UIBezierPath(cgPath:)
的方法的看法是正确的。
对我来说,关键是使用问题中发布的代码运行,然后捕获 path
变量的内容,以便我可以从中提取值。有了这些,我就可以构建一个可以使用的硬编码 CGPath
。
override func didMove(to view: SKView) {
let box = SKSpriteNode(color: .orange,
size: CGSize(width: 30, height: 30))
box.position = CGPoint(x: frame.midX, y: frame.midY)
addChild(box)
let path = UIBezierPath()
let start = CGPoint(x: 345, y: 383.5)
let end = CGPoint(x: 30, y: 383.5)
let controlPoint = CGPoint(x: 190, y: 533.5)
path.move(to: start)
path.addQuadCurve(to: end, controlPoint: controlPoint)
let action = SKAction.follow(path.cgPath,
asOffset: false,
orientToPath: false,
speed: 250)
box.run(SKAction.repeatForever(action))
}
最后,使用时的样子:
如果我避免 SKAction
上的重复
,它将完成并让对象准确地位于我想要的位置。
由于我不是 SpriteKit 方面的专家,因此我有兴趣了解是否有更好的方法来解决这个问题。
关于ios - 我想沿着半椭圆形路径移动 SKNode,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58152218/
我希望通过具有可以具有不同 x 和 y 值的 vec2 半径将我当前的圆形光变成椭圆形。有没有什么方法可以根据我当前在片段着色器中的代码执行此操作? uniform struct Light { ve
我正在尝试在显示的图像中实现形状。我不知道该怎么做。我尝试的最后一件事是: Container( height: 175, deco
刚开始摆弄 GUI。我希望这个程序绘制矩形/圆形(取决于用户单击的位置),并继续在前一个形状内绘制相同的形状,直到达到用户在文本字段中输入的数量。当我运行它时,它似乎永远无法进入paintCompon
我需要在Python程序中计算两个椭圆相交的数量。我知道在shaply如果两个对象相交,有一个函数返回 true。就像这样: from shapely.geometry import Polygon
不幸的是,我无法为 EditText 作品制作椭圆大小。当文本太长时,甚至可以在文本末尾放置三个点吗?它适用于 TextiView 但不适用于 EditText。有什么想法吗? android:id
谁能帮我从div中剪出这样的一个? 找到了可能的解决方案,但不了解 SVG。也许有人可以帮助我。 HTML: CSS: svg { position: relative; top:
有没有办法省略 NSTextField 的文本内容,而不是截断? 所以代替: The quick brown fox jumped over 它会说: The quick brown fox jump
我有一个线性布局 View ,我已将其背景设置为椭圆形纯色。到目前为止,我的背景是圆圈。现在我想实现相同的效果,即使用可绘制的形状来获得具有 2 种颜色的圆圈。请见附件。 最佳答案 关
我有一个指向 CursorAdapter 的微调器。我用一个特定的 View 设置这个适配器。我想修复微调器的宽度,我尝试了很多东西都没有成功: layout_width="100dp"//强制 KO
我正在尝试使用@ValidateWithMethod 来验证属性。我有两个非常不同的自定义验证。我想将它们放在不同的方法中,以便我可以获得不同的消息。但是,放置两个单独的 @ValidateWithM
我正在为一个学校项目创建一个程序,用户可以使用控制以下尺寸和颜色的按钮创建一个几何形状(应该看起来像一匹马):一个椭圆形、一个圆形、两个矩形和一个字符串(作为图的标题)。为了保存该图,我想要一个包含所
我有一个 UICollectionView,可以显示圆形、椭圆形、矩形等形状。因此,当我单击 Cell 时,我需要在 UIView 上绘制相同的形状,然后我需要移动并调整通过单击 Cell 绘制的 V
上图是我正在尝试创建的,但在处理椭圆形时遇到了一些困难。解释: 菜单栏是一个带有轻微线性渐变(深灰色到透明浅灰色)的 div 公司 Logo 图像具有透明背景,位于菜单栏的“顶部” 椭圆形切口需要与
我是 Android Studio 的新手,目前我正在尝试以编程方式创建随机颜色、笔划宽度和大小的椭圆形(不是实心,只是笔划): long randomSeedm = System.c
开始之前的相关信息:我已经搜索了 stackoverflow,并发现了类似的标题问题,但我不认为它们是我的重复项,因为它们有一个关键的区别,它们似乎有包含引用的对象给自己,造成圈子。我没有那个。 {
我是 OpenCV 的新手,需要了解 OpenCV 检测不同形状(圆形、正方形、矩形、三角形、椭圆形)的 iPhone 摄像头图像的方法。 所以,有人可以指导我正确的方向(引用/文章/任何东西),哪些
我正在尝试在java中编写一个20个板堆栈,使用按键功能堆叠一个新板,并使用鼠标单击功能使各个板一一消失到0。我不明白为什么我的函数不会'他们不会按照我的命令去做工作,请帮忙。 // Declare
我是一名优秀的程序员,十分优秀!