Я разрабатываю программу, которая идентифицирует прямоугольник в изображении и рисует путь на границе этого идентифицированного прямоугольника. Теперь я хочу переместить этот путь в случае, если он не находится в точном положении. Для примера посмотрите на этуПеретаскивание прямоугольника с использованием UIBezierPath IOS/Swift
изображения В случаях, как это мне нужно перетащить углы пути и изменить его, как она вписывается в прямоугольник.
Чтобы нарисовать путь, я использовал CAShapeLayer и UIBezierPath. Вот код, который я использовал для рисования пути.
// imgView is the UIImageView which contains the image with the rectangle
let line: CAShapeLayer = CAShapeLayer();
line.frame = imgView.bounds;
let linePath: UIBezierPath = UIBezierPath();
linePath.moveToPoint(CGPointMake(x1, y1);
linePath.addLineToPoint(CGPointMake(x2, y2);
linePath.addLineToPoint(CGPointMake(x3, y3);
linePath.addLineToPoint(CGPointMake(x4, y4);
linePath.addLineToPoint(CGPointMake(x1, y1);
linePath.closePath();
line.lineWidth = 5.0;
line.path = linePath.CGPath;
line.fillColor = UIColor.clearColor().CGColor;
line.strokeColor = UIColor.blueColor().CGColor;
imgView.layer.addSublayer(line);
Дело в том, что я пытался добавить жест UIBezierPath. Но я ничего подобного не заметил. Не удалось найти что-либо по этому поводу. Так может кто-то, пожалуйста, дайте мне знать, как получить мою работу. Любая помощь будет высоко оценен.
Спасибо за предложение Duncan. Я это попробую. btw Еще раз спасибо за быстрый ответ и жаль, что опоздал, чтобы ответить на ваш ответ. ура – GMHSJ