Гладкая запись на iPad

В настоящее время я работаю над проектом iPad, где мне нужна функциональность, позволяющая пользователю писать на листе бумаги стилусом.

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

Проблема, с которой я сталкиваюсь, заключается в том, что метод, который я использую, не дает гладких кривых. Приложение для бамбуковой бумаги предлагает идеальные линии. Вот код, который у меня есть до сих пор:

- (void)drawRect:(CGRect)rect
{
    CGContextRef context = UIGraphicsGetCurrentContext();
    UIGraphicsBeginImageContext(self.frame.size);

    // draw accumulated lines
    if ([self.lines count] > 0) {
        for (Line *tempLine in self.lines){
            CGContextSetAlpha(context, tempLine.opacity);
            CGContextSetStrokeColorWithColor(context, tempLine.lineColor.CGColor);
            CGContextSetLineWidth(context, tempLine.lineWidth);
            CGContextSetLineCap(context, kCGLineCapRound);
            CGContextSetLineJoin(context, kCGLineJoinRound);
            CGContextAddPath(context, tempLine.linePath);
            CGContextStrokePath(context);

            }
    }

    //draw current line
    CGContextSetAlpha(context, self.currentLine.opacity);


    CGContextSetStrokeColorWithColor(context, self.currentLine.lineColor.CGColor);
    CGContextSetLineWidth(context, self.currentLine.lineWidth);
    CGContextSetLineCap(context, kCGLineCapRound);
    CGContextSetLineJoin(context, kCGLineJoinRound);
    CGContextBeginPath(context);
    CGContextAddPath(context, self.currentLine.linePath);
    CGContextStrokePath(context);


    UIGraphicsEndImageContext();


}

- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {
    UITouch *touch = [touches anyObject];
    CGPoint cPoint = [touch locationInView:self];

    CGPathMoveToPoint(self.currentLine.linePath, NULL, cPoint.x, cPoint.y);

    [self setNeedsDisplay];
}

- (void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event {
    UITouch *touch = [touches anyObject];   
    CGPoint currentPoint = [touch locationInView:self];

    CGPathAddLineToPoint(self.currentLine.linePath, NULL, currentPoint.x, currentPoint.y);

    [self setNeedsDisplay];
}

- (void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event {  
    UITouch *touch = [touches anyObject];
    CGPoint cPoint = [touch locationInView:self];
    CGPathAddLineToPoint(self.currentLine.linePath, NULL, cPoint.x, cPoint.y);

    [self setNeedsDisplay];
    [self.lines addObject:self.currentLine];
    Line *nextLine = [[Line alloc] initWithOptions:self.currentLine.lineWidth color:self.currentLine.lineColor opacity:self.currentLine.opacity];
    self.currentLine = nextLine;
    [nextLine release];
}

Вот изображения, которые дают понять, с какой проблемой я сталкиваюсь. Это изображение, которое генерируется при записи с кодом, представленным выше:

enter image description here

Это изображение, если я пишу то же самое в бумажном приложении Mamboo:

enter image description here

Есть ли у кого-нибудь идея, как получить хорошее письмо, как в приложении mamboo?

-121--1633268-

Как бы выглядел минимальный пример для карты choropleth в системе Mathematica? Как выглядел бы минимальный пример для карты choropleth в системе Mathematica? Я могу читать в ESRI Shapefile с помощью Import, но не знаю, как работать с импортированным результатом.

Как бы выглядел минимальный пример для choropleth карты в системе Mathematica?

Я могу прочитать в ESRI Shapefile с помощью Import , но не знаю, как работать с импортированным результатом.

6
задан Mr.Wizard 19 October 2011 в 13:46
поделиться