2

接触する点をCPTXYPlotSpace点に変換したいのですが、実際の座標とのオフセットがあることがわかりました。境界からx軸の計算された部分が見つかりました。x&y軸の値にポイントをマッピングしたい。

私の英語は貧弱です....私はどこが間違っているのか知りたいですか?教えてください 。

これがコードです。

-(BOOL)plotSpace:(CPTPlotSpace *)space shouldHandlePointingDeviceDownEvent:(id)event atPoint:(CGPoint)point
{    NSDecimal plotPoint[2]; 
    CPTXYPlotSpace *plotSpace = (CPTXYPlotSpace *)graph.defaultPlotSpace;
    [plotSpace plotPoint:plotPoint forPlotAreaViewPoint:point]; 


   //HERE HAVE SOME OFFSET. I FIND ,it Calculated part of the x-axis from the border
    NSLog(@"touch plotPoint = %d, %f", 
    [[NSDecimalNumber decimalNumberWithDecimal:plotPoint[CPTCoordinateX]] intValue],
    [[NSDecimalNumber decimalNumberWithDecimal:plotPoint[CPTCoordinateY]] doubleValue]);
    return YES;
}
4

1 に答える 1

4

最初に点をプロット エリアの座標系に変換します。

CGPoint plotAreaPoint = [graph convertPoint:point toLayer:graph.plotAreaFrame.plotArea];
[plotSpace plotPoint:plotPoint forPlotAreaViewPoint:plotAreaPoint]; 
于 2012-04-27T23:07:49.480 に答える