iOS - 将点从一个坐标系转换为另一个坐标系
<p><p>我的图标是节点“shelf”的子节点,它是“self”(场景)的子节点。我也有节点“vehicle”的子节点的装饰,它也是“self”的子节点。</p>
<p>当一个图标从货架上拖到车辆上时,图标节点会被移除,并在其位置生成一个装饰节点,该节点是“车辆”而不是“货架”的子节点。这是一个问题:装饰节点生成时,由于“货架”和“车辆”的坐标系不协调,它在场景中跳得很远。</p>
<p>如何将新的装饰节点从它在“货架”节点中的位置转换为它在“车辆”中的新位置,使其不会跳跃?</p>
<p>(如果您需要,我可以发布代码,但它会很长而且很乱。)</p></p>
<br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
<p><p>假设您使用的是 Sprite Kit,您可以使用 SKNode 方法 <code>convertPoint:toNode:</code> 在坐标系之间转换点。</p>
<p>因此,例如,一旦在车辆节点的顶部拖动结束:</p>
<pre><code>CGPoint iconPos = iconNode.position; // this is position on shelf node
iconPos = ;
// ... remove iconNode from shelfNode
// ... make new decorationNode
decorationNode.position = iconPos; // this is now position on vehicle node
// ... add decorationNode to vehicleNode
</code></pre></p>
<p style="font-size: 20px;">关于iOS - 将点从一个坐标系转换为另一个坐标系,我们在Stack Overflow上找到一个类似的问题:
<a href="https://stackoverflow.com/questions/23585975/" rel="noreferrer noopener nofollow" style="color: red;">
https://stackoverflow.com/questions/23585975/
</a>
</p>
页:
[1]