非常によくレンダリングして動作するコアグラフィックを使用して、古典的な折れ線グラフを生成しています。 「layer.zPosition」コアグラフィックスを使用したリボングラフ(チャート)
-(void)drawRect:(CGRect)rect {
float colorChange = (0.1 * [self tag]);
theFillColor = [UIColor colorWithRed:(colorChange) green:(colorChange*0.50) blue:colorChange alpha:0.75f].CGColor;
CGContextRef c = UIGraphicsGetCurrentContext();
CGFloat white[4] = {1.0f, 1.0f, 1.0f, 1.0f};
CGContextSetFillColorWithColor(c, theFillColor);
CGContextSetStrokeColor(c, white);
CGContextSetLineWidth(c, 2.0f);
CGContextBeginPath(c);
//
CGContextMoveToPoint(c, 0.0f, 200-[[array objectAtIndex:0] floatValue]);
CGContextAddLineToPoint(c, 0.0f, 200-[[array objectAtIndex:0] floatValue]);
//
distancePerPoint = (rect.size.width/[array count]);
float lastPointX = 750.0;
for (int i = 0 ; i < [array count] ; i++)
{
CGContextAddLineToPoint(c, (i*distancePerPoint), 200-[[array objectAtIndex:i] floatValue]);
lastPointX = (i*distancePerPoint);
}
//
CGContextAddLineToPoint(c, lastPointX, 200.0);
CGContextAddLineToPoint(c, 0, 200);
CGContextClosePath(c);
//
//CGContextFillPath(c);
CGContextDrawPath(c, kCGPathFillStroke);
//CGContextDrawPath(c, kCGPathStroke);
}
(上記のコードは次のような結果を生成している)を使用して、次々と積み重ね複数の行があります(私は私が使用していたコードを投稿することができ
は、必要に応じて、私はそれを行う方法が CATransform3D rotationAndPerspectiveTransform = CATransform3DIdentityによって包括的にであれば3D効果;)
質問: はどのように私はTRANすることができます私の折れ線グラフに深さを持たせる? Iは、後に、私は(上述したように)変換、回転と展望を使用して表現したい(従って、それらにリボンを作る)線(S)のグラフに「深さ」を持ちたい
ありがとうございます、あなたと同じものがあればもう少し長く開いてください。私はそれの周りに他の方法があるかもしれないと感じている。 - それでも、ありがとう、 – chewy