Я работаю над приложением для камеры на базе iOS, в котором я должен захватить первую точку, а затем мне нужно нарисовать линию до текущей точки фокусировки до первой захваченной точки! !! MagicPlan работает таким образом. Пожалуйста, смотрите изображение:Сделать положение фигуры зафиксировано на предварительном просмотре камеры iOS
Я попытался зафиксировать точку для первой точки с использованием значений акселерометра и наклоненный угол устройства. Но пока не повезло. И как бы я нарисовал линию ко второй точке с первой точки?
Это код, который я пытался до сих пор:
if (self.motionManager.deviceMotionAvailable)
{
[self.motionManager startDeviceMotionUpdatesToQueue:[NSOperationQueue currentQueue]
withHandler: ^(CMDeviceMotion *motion, NSError *error) {
CATransform3D transform;
transform = CATransform3DMakeRotation(motion.attitude.pitch, 1, 0, 0);
transform = CATransform3DRotate(transform,motion.attitude.roll, 0, 1, 0);
transform = CATransform3DRotate(transform,motion.attitude.yaw, 0, 0, 1);
self.viewObject.layer.transform = transform;
}];
}
if (self.motionManager.deviceMotionActive)
{
/**
* Pulling gravity values from deviceMotion sensor
*/
CGFloat x = [self convertRadianToDegree:self.motionManager.deviceMotion.gravity.x];
CGFloat y = [self convertRadianToDegree:self.motionManager.deviceMotion.gravity.y];
CGFloat z = [self convertRadianToDegree:self.motionManager.deviceMotion.gravity.z];
CGFloat r = sqrtf(x*x + y*y + z*z);
/**
* Calculating device forward/backward title angle in degrees
*/
CGFloat tiltForwardBackward = acosf(z/r) * 180.0f/M_PI - 90.0f;
[self.lblTilForwardBackward setText:[@(tiltForwardBackward) stringValue]];
}
Пожалуйста, предложить какие-либо идеи. Любая помощь будет оценена. Благодарю.
Возможно, вы можете уточнить свой вопрос. Я не могу следить за тем, что вы пытаетесь сделать. Похоже, вы хотите нарисовать линию между двумя точками? Это показывает, как это сделать. http://stackoverflow.com/questions/6905941/objective-c-draw-line-on-top-of-uiimage-or-uiimageview – LawfulEvil
@LawfulEvil, если вы видите изображение, это приложение MagicPlan, которое просит пользователя захватить изображение в одной точке, а затем, когда пользователь перемещает устройство, квадраты рисуются автоматически. см. его в действии здесь: https://youtu.be/0X-kmUhPC4Q?t=14 –