Преобразование формы с использованием Quartz (iOS)

Я должен запрограммировать инструмент рисования, который должен отображать фигуры на плоскости. Эти фигуры могут быть либо произвольными формами, как elipse, либо кубом, или некоторым изображением, которое будет нарисовано на плоскости.

Мне нужно сделать это, используя маркерные точки, расположенные вокруг этих фигур, чтобы их можно было преобразовать, перемещая маркеры. Например, если предположить, что у меня есть четыре маркера, расположенных сверху, снизу, слева и справа, я должен иметь возможность растягивать фигуру горизонтально, перемещая левый и правый маркеры.

Я не могу использовать геометрические свойства формы (например, изменение радиуса эллипса, например), так как я должен иметь возможность делать это на произвольных фигурах (например, изображения).

У меня нет большого опыта в алгоритмах манипулирования изображениями, может ли кто-нибудь дать мне несколько подсказок о том, с чего начать? В конечном итоге лучше всего сделать это хорошо или даже хороший алгоритм для этого?

Я разрабатываю платформу iOS.

2 Solutions collect form web for “Преобразование формы с использованием Quartz (iOS)”

Вы взглянули на Руководство по программированию 2D кварца в Центре разработчиков Apple ?

Вот как вы нарисовки на UIImage

UIGraphicsBeginImageContext(CGSizeMake(width, height)); // do your drawing operations UIImage *image = UIGraphicsGetImageFromCurrentImageContext(); UIGraphicsEndImageContext(); 

Вот как вы можете масштабировать это изображение

 UIGraphicsBeginImageContext(CGSizeMake(scaledWidth, scaledHeight)); [image drawInRect:CGRectMake(0,0, scaledWidth, scaledHeight)]; UIImage *scaledImage = UIGraphicsGetImageFromCurrentImageContext(); UIGraphicsEndImageContext(); 

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

Если вам нужен CGContextRef для рисования, вы можете использовать это

 CGContextRef context = [[NSGraphicsContext currentContext] graphicsPort]; 
Interesting Posts
PhoneC: Разработка iOS проста с помощью XCode, Swift3, UITableView, cocatouch, давайте создадим приложения для iPhone, iPad и Macbook.