Используя основной сюжет, как вы можете преобразовать точку касания в пространство графика?

У меня есть очень простой график, на котором я хочу включить касание, у меня работает первая часть:

plotSpace.delegate = сам;

и метод:

-(BOOL)plotSpace:(CPPlotSpace *)space
shouldHandlePointingDeviceDownEvent:(id)event atPoint:(CGPoint)point
{
    NSLog(@"touched at: x: %f y: %f", point.x, point.y);
}

Как преобразовать точку «точка» в пространство графика моего графика?

Я вижу методы, но не знаю, как их использовать, документ, хотя и большой, не описывает их достаточно хорошо :)

Большое спасибо Марк


person Mark    schedule 17.07.2010    source источник


Ответы (1)


Должен признаться, я забыл об этом вопросе, спасибо за ответ, Стив.

Я тоже решил это, вот моя реализация (я расширяю CPXYGraph)

-(BOOL)plotSpace:(CPPlotSpace *)space shouldHandlePointingDeviceDownEvent:(id)event atPoint:(CGPoint)point {

    CPScatterPlot *plot = (CPScatterPlot*)[[self allPlots] objectAtIndex: 0];
    CGPoint pointInPlotArea = [plot convertPoint:point toLayer:plot];

    if ([plot containsPoint:pointInPlotArea]) {
        CPXYPlotSpace *plotSpace = (CPXYPlotSpace*)[self defaultPlotSpace];
        NSDecimal touchDataPoint[2];
        [plotSpace plotPoint:touchDataPoint forPlotAreaViewPoint:pointInPlotArea];
    }
}

Затем touchDataPoint содержит координаты, к которым прикоснулся пользователь.

person Mark    schedule 26.10.2010