代码之家  ›  专栏  ›  技术社区  ›  Prashant Tukadiya

如何从抽头位置得到准确的节点点

  •  0
  • Prashant Tukadiya  · 技术社区  · 6 年前

    我在sceneview上有以下代码

     let location = gesture.location(in: self.sceneView)
     let hitTestScene = self.sceneView.hitTest(location, options:nil)
     if let first = hitTestScene.first  {
    
      }
    

    我可以从 first

    我想要的是假设我有一个很高的墙节点,它是SCNPlane或SCNBox。

    现在,如果用户点击特定的位置,比如说在节点的一半。我想在那个节点上。 所以问题是 sceneView.hitTest 我可以得到点击的节点,但我想在节点的位置。就像是在什么地方。

    所以我可以测量从原点到点击位置的高度

    任何建议都将不胜感激

    1 回复  |  直到 6 年前
        1
  •  0
  •   Prashant Tukadiya    6 年前

    好吧,我找到了解决办法。

    我们可以通过 SCNHitTestResult 局部坐标 财产

            let location =  self.centerImage.center
            let hitTestScene = self.sceneView.hitTest(location, options:nil)
            if let first = hitTestScene.first  {
               print("localCoordinates in tapped ndoe is" first.localCoordinates ) 
            }
    

    希望对某人有帮助