Cocos2d iphone KKInput PanningiPhone倾斜时给出错误值的手势

Cocos2d iphone KKInput PanningiPhone倾斜时给出错误值的手势,cocos2d-iphone,kobold2d,Cocos2d Iphone,Kobold2d,我正在使用kobold2d的KKInput,使用平移手势识别器进行拖放操作。当iphone平放在桌子上时,它工作得很好,但如果我将手机朝我倾斜,翻译似乎完全错误,不再正常工作,事实上,我认为我的iphone好像是颠倒的 我做错什么了吗 示例代码: if([input gesturePanBegan]) { for( CCSprite* item in self.View.children ) { bool result = [inp

我正在使用kobold2d的KKInput,使用平移手势识别器进行拖放操作。当iphone平放在桌子上时,它工作得很好,但如果我将手机朝我倾斜,翻译似乎完全错误,不再正常工作,事实上,我认为我的iphone好像是颠倒的

我做错什么了吗

示例代码:

if([input gesturePanBegan])
    {
        for( CCSprite* item in self.View.children )
        {
            bool result = [input isAnyTouchOnNode:item touchPhase: KKTouchPhaseAny];
            if (result)
            {
                itemPanning = item;
                originalPostion = item.position;

            }
        }
        CCLOG(@"%f y translation %f x translation", input.gesturePanTranslation.y , input.gesturePanTranslation.x);
        if(itemPanning != NULL)
        {
            [itemPanning setPosition:ccp(input.gesturePanTranslation.x + originalPostion.x, originalPostion.y)];
            if(input.gesturePanTranslation.x > 70)
            {
                [View Select: [itemPanning tag]];

                SelectAttackCommand * command = [SelectAttackCommand new];
                command.SelectedAttack = [itemPanning tag];

                itemPanning = NULL;

                NOTIFY(command);
            }
        }
    }
    else if(![input gesturePanBegan] && itemPanning != NULL)
    {
        itemPanning = NULL;
        [View Open];
    }

这是一个答案,但可能不是最好的答案。在KKINPUTSISTER中,在HandlePanesture下,平移值的计算如下:

手势翻译=[panRecognizer TranslationView:glView]; 手势翻译=[自我转换相对点:手势翻译]

这里的第二个调用根据设备的方向转换一个值。在某些情况下,这可能是好的,但在我的情况下,它是不需要的,所以我把它注释掉了,现在我的翻译值总是正确的,无论我如何倾斜IPhone


不过,我可能在这里遗漏了一些东西,所以我现在还不想将此标记为答案。

这是一个答案,但可能不是最好的答案。在KKINPUTSISTER中,在HandlePanesture下,平移值的计算如下:

手势翻译=[panRecognizer TranslationView:glView]; 手势翻译=[自我转换相对点:手势翻译]

这里的第二个调用根据设备的方向转换一个值。在某些情况下,这可能是好的,但在我的情况下,它是不需要的,所以我把它注释掉了,现在我的翻译值总是正确的,无论我如何倾斜IPhone


不过,我可能在这里遗漏了一些东西,所以我现在还不想把它作为答案。

我已经注释掉了手势翻译--=[self-converterrelativepointtogl:gesturepantransation];--它仍然不能解决我同样的问题。。。哈?倾斜的手机还是会破坏你的平移?是的。我想这可能是我如何根据pan对对象进行更改的问题。请参阅:如果您想提供帮助,我已经注释掉了手势翻译--=[self-convertRelativePointToGL:gesturePanTranslation];--它仍然不能解决我同样的问题。。。哈?倾斜的手机还是会破坏你的平移?是的。我想这可能是我如何根据pan对对象进行更改的问题。看:如果你想帮忙的话。