触摸Scenekit iOS中的线条

时间:2015-07-07 07:35:07

标签: ios xcode 3d scenekit

我在场景套件中创建了一行。我无法触及线路。它未被发现。 但盒子,胶囊正在检测。我该怎么触摸这条线?

我使用SCNGeometryElement

创建了一行

由于

2 个答案:

答案 0 :(得分:0)

没有办法击中由线条构成的几何图形。您可以做的可能是在同一位置的场景中具有相同拓扑的普通对象(例如,使其成为子节点)。然后隐藏它,并在执行hitTest时传递选项SCNHitTestIgnoreHiddenNodesKey = NO。触摸隐藏节点时,选择由线组成的相应版本。

答案 1 :(得分:0)

你的线是一点宽吗?也许一个像素,甚至?你的手指约为44 points wide。用户不会可靠地瞄准那么小的东西。 (如果他们可以完全瞄准它 - 我不确定线的宽度与击中测试有关。)

您正在使用hit testing将触摸映射到场景元素,对吧?您可以将option设置为使用边界框命中测试而不是几何命中测试,甚至可以设置set the bounding box以获得非零音量,以便命中测试可以达到它。

当然,如果你这样做,你还需要定位你的节点,使其边界框跟在这条线上。 (否则,对角线的轴对齐边界框非常大,包括很多不在线附近的空间。This question讨论的技术......虽然在那时,你可能只是做其他的东西在那个问题中,你的线条有可见的音量,而不仅仅是可测试音量。