作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试对 SceneKit SCNMatrix4
进行安全编码,使其符合 NSSecureCoding
,类似于以下内容:
if let transform = aDecoder.decodeObject(of: SCNMatrix4.self, forKey: DATA_KEY_TRANSFORM) {
self.transform = transform
}
但这会引发编译错误:
Cannot convert value of type 'SCNMatrix4.Type' to expected argument type '[AnyClass]?' (aka 'Optional>')
显然 SCNMatrix4
不是一个对象,这也是它不起作用的原因,但我肯定不需要遍历 16 个 Float
SCNMatrix4
中的 s 并使用以下代码对每个进行编码:
aDecoder.decodeFloat(forKey: "someKey")
肯定不是吗?
对此进行安全编码的正确方法是什么?
最佳答案
我建议一种方法如下,与 swiftShot 示例中的相同:
SCNMatrix4 = SCNMatrix.init(float4x4)
float4x4 <= self.column[0] = float4
self.column[1] = float4
self.column[2] = float4
self.column[3] = float4
float4 <= with_4_Float.
关于ios - Swift iOS SceneKit 如何使用 NSSecureCoding 对 SCNMatrix4 进行安全编码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53102833/
simd structures 和 SCNMatrix4 没有很好地记录它们的列。我们可以从这些列中获取哪些信息以及哪些顺序? 我知道我们可以获得位置、旋转、方向和比例,但关联的是哪一列? 最佳答案
我是一名优秀的程序员,十分优秀!