`
stephen830
  • 浏览: 3010947 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

在IOS中根据圆心坐标、半径和角度计算圆弧上的点坐标

 
阅读更多

 

在IOS中根据圆心坐标、半径和角度计算圆弧上的点坐标

 

 

 

/**
 作者:zhoujianqiang
 日期:2015-10-15
 版本: 1.0.0
 --------------------------------------------------------------
 功能说明
 --------------------------------------------------------------
 根据IOS视图中圆组件的中心点(x,y)、半径(r)、圆周上某一点与圆心的角度这3个
 条件来计算出该圆周某一点在IOS中的坐标(x2,y2)。
 
 注意:
 (1)IOS坐标体系与数学坐标体系有差别,因此不能完全采用数学计算公式。
 (2)数学计算公式:
     x2=x+r*cos(角度值*PI/180)
     y2=y+r*sin(角度值*PI/180)
 (3)IOS中计算公式:
     x2=x+r*cos(角度值*PI/180)
     y2=y-r*sin(角度值*PI/180)
 
 --------------------------------------------------------------
 参数说明
 --------------------------------------------------------------
 @param (CGPoint) center
 
 圆圈在IOS视图中的中心坐标,即该圆视图的center属性
 
 @param (CGFloat) angle 
 角度值,是0~360之间的值。
 注意:
 (1)请使用下面坐标图形进行理解。
 (2)角度是逆时针转的,从x轴中心(0,0)往右是0度角(或360度角),往左是180度角,往上是90度角,往下是270度角。
 
        (y)
         ^
         |
         |
         |
         |
 -----------------> (x)
         |(0,0)
         |
         |
         |
 
 @param (CGFloat) radius
 圆周半径
 */
#pragma mark 计算圆圈上点在IOS系统中的坐标
+(CGPoint) calcCircleCoordinateWithCenter:(CGPoint) center  andWithAngle : (CGFloat) angle andWithRadius: (CGFloat) radius{
    CGFloat x2 = radius*cosf(angle*M_PI/180);
    CGFloat y2 = radius*sinf(angle*M_PI/180);
    return CGPointMake(center.x+x2, center.y-y2);
}

 

 

 

分享到:
评论

相关推荐

    iOS 实现简单画圆弧

    总之,在iOS中实现简单画圆弧涉及到对Core Graphics框架的理解和使用,主要包括创建绘图上下文、定义圆弧参数、绘制和填充/描边操作。通过熟练掌握这些步骤,你可以自由地在应用中绘制出各种美观的圆弧图形。

    已知经纬度计算角度

    在IT领域,尤其是在地理信息系统(GIS)或者导航应用中,经常需要处理经纬度坐标来计算两点之间的相对位置或距离。本篇文章将详细讲解如何利用已知的经纬度数据,使用C#编程语言在Visual Studio 2010环境下计算两个...

    IOS中实现环形进度条

    通过CGContextAddArc方法,指定圆心坐标、半径、起始角度和终止角度,即可构建环形路径。注意,角度是基于坐标系的正X轴逆时针旋转的,因此需要根据进度调整终止角度。 4. 进度条颜色:通过设置...

    iOS 绘制基本图形

    6. **绘制圆弧**:`CGContextAddArc()`函数允许你绘制一段圆弧,需要指定圆心坐标、半径、起始角度和结束角度。通过调整角度,你可以绘制出任意部分的圆弧。 7. **颜色和线条样式**:使用`...

    ios-圆周运动.zip

    在iOS中,坐标系统的原点位于屏幕左上角,理解这一点对于正确设置圆心和半径至关重要。 7. **代理和通知**: 开发者可以通过实现`CADisplayLinkDelegate`或使用`NSNotification`来监听动画的进度和结束,从而在...

    ios-同心圆.zip

    - 使用`CGContextAddArc`函数添加圆弧路径,它需要圆心坐标、半径、起始角度和结束角度作为参数。通过改变半径值,可以画出不同大小的圆。 - 最后,调用`CGContextStrokePath`来实际绘制路径。 2. **动画效果** ...

    iOS UIBezierPath绘制饼状图

    这个方法接受圆心坐标、半径、起始角度和结束角度作为参数,起始和结束角度是以弧度表示的,通常需要根据需要转换为弧度。 在绘制饼状图时,我们需要先确定每个扇形的起始和结束角度。假设我们有n个数据项,那么第i...

    [ios]自定义圆形滑动条-ios升级日记1

    我们可以通过调用`addArcWithCenter:radius:startAngle:endAngle:clockwise:`方法来添加一个圆弧路径,这个方法需要圆心坐标、半径、起始角度和结束角度作为参数。为了创建一个完整的圆形,起始角度可以设置为0,...

    iOS新增绘制圆的方法实例代码

    以上就是iOS中使用`UIBezierPath`绘制圆弧的基本步骤,以及如何根据起点、终点和夹角来计算圆心坐标。这个过程涉及到几何学和坐标变换,理解这些概念对于自定义图形绘制是非常重要的。在实际开发中,可以根据需求...

    iOS 抽奖转盘S

    需要指定圆心、半径、起始角度和结束角度。你可以通过调整角度来创建部分圆或完整圆。 4. **绘制文字**: 使用`CGContextSelectFont`、`CGContextSetFontSize`来设置字体和大小,`CGContextSetTextPosition`来定位...

    swift-drawrect实现的圆形进度条

    上述代码中,`center`和`bounds.width / 2`用于获取圆心坐标和半径,`startAngle`和`endAngle`是根据进度计算出来的,`clockwise: false`表示从起点到终点逆时针绘制圆弧。 为了使进度条随着进度的变化而实时更新,...

    ios-FZHDrawCircle.zip

    它利用`CGContextAddArc()`函数添加一个圆弧到当前路径,参数包括圆心坐标、半径、起始角度和结束角度。然后通过`CGContextStrokePath()`描边路径,完成圆形的绘制。如果需要填充颜色,可以使用`CGContextFillPath()...

    绘制UIView

    然后,可以通过`addArc(withCenter:center radius:radius startAngle:startAngle endAngle:endAngle clockwise:clockwise)`方法添加一个圆弧,该方法需要圆心坐标、半径、起始角度和结束角度。 为了实现凹进的效果...

    iOS实现滑动弧形菜单的思路与方法

    通过这个公式,可以根据新的x坐标和圆心坐标来解算出新的y坐标。 在拖动过程中,还需要对按钮进行移动,这涉及到计算偏移量。文章中提到了一个自定义的计算偏移量的方法,这个方法计算的是手势识别器当前点与起始点...

    ios-用CoreGraphs绘图.zip

    在iOS开发中,Core Graphics(通常简称为CoreGraphics或CG)是Apple提供的一套低级图形绘制框架,用于创建2D图形和图像。这个框架在“ios-用CoreGraphs绘图.zip”压缩包中被提及,显然是一个关于如何利用Core ...

    iOS动画案例(1) 类似于qq账号信息里的一个动画效果

    在这个案例中,我们使用了正弦和余弦函数来计算圆弧上各个点的坐标。圆弧的位置取决于圆心和圆心角。在这个例子中,我们假设圆心位于屏幕左上角(0,0),圆心角为60度。通过三角函数,我们可以计算出圆的半径,然后...

    iOS实现带文字的圆形头像效果

    2. **绘制圆形**:使用`CGContextAddArc`方法添加一个圆弧路径到当前路径,参数包括圆心的X和Y坐标、半径以及起始和结束的角度。接着使用`CGContextDrawPath`填充路径,实现无边框的圆形。 3. **计算文字尺寸**:...

    macOS SwiftUI教程之绘制曲线

    它需要圆心坐标、半径、起始角度和结束角度,以及是否顺时针绘制。这个功能在创建带有圆形元素的界面时特别有用,比如表盘、进度条或者导航箭头。 在实践过程中,我们可以通过SwiftUI的`Path`视图结合这些方法来...

    ios-OnePiece(梅里号).zip

    在iOS开发中,Quartz2D是一个强大的2D图形绘制框架,它允许开发者创建复杂的图形、文字和图像。本项目“ios-OnePiece(梅里号).zip”显然是一个利用Quartz2D技术来绘制《海贼王》中的标志性船只——梅里号(也称作...

    绘制简单图形

    在iOS中,`UIBezierPath`类提供了绘制圆弧的功能,通过设置中心、半径、起始角度和结束角度来定义圆弧。在Core Graphics中,`CGContextAddArc`函数可以用来添加一个圆弧到当前路径。 5. **适用版本9.1**:这表明...

Global site tag (gtag.js) - Google Analytics