J'ai eu cette erreur en utilisant iOS 11 ARKit (Scenekit - Xcode 9 beta) lorsque j'ai essayé de définir le simdPosition d'un objet virtuel . J'ai besoin de savoir s'il est possible de convertir SCNMatrix4 en matrix_float4x4 en swift. Si oui, comment le convertir.Impossible de convertir la valeur du type 'SCNMatrix4' en type d'argument attendu 'matrix_float4x4' (
3
A
Répondre
7
Avec iOS SDK 11, vous pouvez utiliser initializers pour convertir entre SCNMatrix4
et simd_float4x4
.
import SceneKit
var mat4 = SCNMatrix4()
let f4x4 = simd_float4x4(mat4)
mat4 = SCNMatrix4(f4x4)
0
Vous pouvez utiliser SCNMatrix4ToMat4
:
let matrix = SCNMatrix4() // matrix is SCNMatrix4
let float4x4 = SCNMatrix4ToMat4(matrix) // float4x4 is matrix_float4x4
Et si vous voulez convertir SCNMatrix4
-matrix_float4x4
, utilisez SCNMatrix4FromMat4
:
let matrix1 = SCNMatrix4FromMat4(float4x4) // matrix1 is SCNMatrix4