//vision坐标 转 uikit坐标 vison 坐标 原点左下角 0 - 1, uikit坐标 原点 左上角 屏幕
/// 转换 rect
/// - Parameters:
/// - oldRect: vision 坐标系 rect
/// - imageSize: uikit image的 size
+ (CGRect)convertRect:(CGRect)oldRect imageSize:(CGSize)imageSize
{
CGFloat w = oldRect.size.width * imageSize.width;
CGFloat h = oldRect.size.height * imageSize.height;
CGFloat x = oldRect.origin.x * imageSize.width;
CGFloat y = imageSize.height - (oldRect.origin.y * imageSize.height) - h;
return CGRectMake(x, y, w, h);
}
/// 转换 size
/// - Parameters:
/// - oldSize: vision 坐标系 size
/// - imageSize: uikit image的 size
+ (CGSize)convertSize:(CGSize)oldSize imageSize:(CGSize)imageSize
{
CGFloat w = oldSize.width * imageSize.width;
CGFloat h = oldSize.height * imageSize.height;
return CGSizeMake(w, h);
}
/// 转换 point
/// - Parameters:
/// - oldPoint: vision 坐标系 point
/// - oldRect: vision 坐标系 rect
/// - imageSize: uikit image的 size
+ (CGPoint)convertPoint:(CGPoint)oldPoint oldRect:(CGRect)oldRect imageSize:(CGSize)imageSize
{
CGRect rect = [self convertRect:oldRect imageSize:imageSize];
CGFloat x = oldPoint.x * rect.size.width + rect.origin.x;
CGFloat y = imageSize.height - oldRect.origin.y * imageSize.height - rect.size.height * oldPoint.y;
return CGPointMake(x, y);
}
iOS Vision 坐标 和 UIKit 坐标转换
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
推荐阅读更多精彩内容
- 在实际开发过程中,由于各种地图坐标之间的偏差,混用导致结果不正确,但如果搞清楚他们采用何种坐标,问题就迎刃而解了;...
- 一、坐标简介目前国内主流坐标系类型主要有三种:WGS84、GCJ02、BD09;1.WGS84:为一种大地坐标系,...
- 在实际开发过程中,由于各种地图坐标之间的偏差,混用导致结果不正确,但如果搞清楚他们采用何种坐标,问题就迎刃而解了;...
- 前言 本来不想做笔记记录,后来想想坐标系转换这块单独还是要写一下,方便初步理解YYText整体构建过程。 正文 C...