Как Пламен указывает, Quartz 2D documentation стоит читать. Кроме того, курс отмечает are available online (формат VoodooPad) для моего курса разработки iPhone, где я посвящаю весь класс 2D-чертежу Quartz. Образец приложения QuartzExamples, который я создал, показывает некоторые более продвинутые концепции рисования, но образец Apple QuartzDemo - лучшее место, чтобы начать видеть, как вы можете сделать простой рисунок.
Как пример рисования тиков линейки, следующий код, который я использовал, чтобы сделать что-то подобное:
NSInteger minorTickCounter = majorTickInterval;
NSInteger totalNumberOfTicks = totalTravelRangeInMicrons/minorTickSpacingInMicrons;
CGFloat minorTickSpacingInPixels = currentHeight/(CGFloat)totalNumberOfTicks;
CGContextSetStrokeColorWithColor(context, [MyView blackColor]);
for (NSInteger currentTickNumber = 0; currentTickNumber < totalNumberOfTicks; currentTickNumber++)
{
CGContextMoveToPoint(context, leftEdgeForTicks + 0.5, round(currentTickNumber * minorTickSpacingInPixels) + 0.5);
minorTickCounter++;
if (minorTickCounter >= majorTickInterval)
{
CGContextAddLineToPoint(context, round(leftEdgeForTicks + majorTickLength) + 0.5, round(currentTickNumber * minorTickSpacingInPixels) + 0.5);
minorTickCounter = 0;
}
else
{
CGContextAddLineToPoint(context, round(leftEdgeForTicks + minorTickLength) + 0.5, round(currentTickNumber * minorTickSpacingInPixels) + 0.5);
}
}
CGContextStrokePath(context);
где currentHeight
высота области, чтобы покрыть и [MyView blackColor]
просто возвращает CGColorRef, представляющий цвет черный.
классный человек. Благодарю. – dontWatchMyProfile
код не ясен (как синтаксис), пожалуйста, сделайте пример более четким, как вы создали и высоту села для этого контекста ... и т. Д. –