Я сталкиваюсь с типичной проблемой при вращении объекта.Описание приведено ниже
Я взял два CGPoint, скажем, point1 и point2
point1 = (50,50)
point2 = (150, 50)
эта точка нарисует горизонтальную линию.
Теперь я рисую прямоугольник с этой точкой на нем.Ширина равна 100, а высота равна 10. Угол равен 0.
см. Снимок экрана

работает отлично
Теперь я изменил точку, скажем
point1 = (50,50)
point2 = (50,150)
эта точка нарисует вертикальную линию.
Для прямоугольника Угол равен 90.
С этой точкой прямоугольник рисуется неправильно
см. Снимок экрана

Мой код для рисования прямоугольника:
CGPoint mid = CGPointMake((point1.x+point2.x)/2, (point1.y+point2.y)/2)
CGPoint UL = CGPointMake(mid.x + ( Width / 2 ) * cos (A) - ( Height / 2 ) * sin (A) , mid.y + ( Height / 2 ) * cos (A) + ( Width / 2 ) * sin (A));
CGContextMoveToPoint(context, UL.x,routeView.frame.size.height - UL.y);
CGPoint UR = CGPointMake(mid.x - ( Width / 2 ) * cos (A) - ( Height / 2 ) * sin (A) , mid.y + ( Height / 2 ) * cos (A) - ( Width / 2 ) * sin (A));
CGContextAddLineToPoint(context, UR.x,routeView.frame.size.height - UR.y);
CGPoint BR = CGPointMake(mid.x - ( Width / 2 ) * cos (A) + ( Height / 2 ) * sin (A) , mid.y - ( Height / 2 ) * cos (A) - ( Width / 2 ) * sin (A));
CGContextAddLineToPoint(context, BR.x,routeView.frame.size.height - BR.y);
CGPoint BL = CGPointMake(mid.x + ( Width / 2 ) * cos (A) + ( Height / 2 ) * sin (A) , mid.y - ( Height / 2 ) * cos (A) + ( Width / 2 ) * sin (A));
CGContextAddLineToPoint(context, BL.x,routeView.frame.size.height - BL.y);
CGContextAddLineToPoint(context, UL.x,routeView.frame.size.height - UL.y);
CGContextStrokePath(context);
Здесь A - это угол, и он не является статическим, середина - это средняя точка точки1 и точки2
для получения дополнительной ссылки см. Это
Я что-то упустил?Пожалуйста, помогите мне, если у вас есть идеи .......
Спасибо,