我正在开发一种具有RADAR功能的应用程序,就像lovOO应用程序一样.我没有在CoreLocation和其他基于位置的框架上工作的经验.

如果你能建议我该如何实现,这将是非常感谢的.
我应该使用什么框架,以及如何最初进行.

虽然在这方面已经存在同样的问题,但我的问题与Radar View like LOVOO相同,但对我而言并不用,所以我再问一次.

到目前为止,我已经尝试了自己,我有积分和长的积分值,我计算了中心点(我的位置)和其他点之间的角度和距离

- (float)angletoCoordinate:(CLLocationCoordinate2D)second {

//myCurrentLocation is origin

//second is point

float lat1 = degreesToradians(myCurrentLocation.coordinate.latitude);
float lon1 = degreesToradians(myCurrentLocation.coordinate.longitude);

float lat2 = degreesToradians(second.latitude);
float lon2 = degreesToradians(second.longitude);

float dLon = lon2 - lon1;

float y = sin(dLon) * cos(lat2);
float x = cos(lat1) * sin(lat2) - sin(lat1) * cos(lat2) * cos(dLon);
float radiansbearing = atan2(y,x);
if(radiansbearing < 0.0)
{
    radiansbearing += 2*M_PI;
}

return radiansbearing;
}


-(float)calculateXPointWithLoc:(ARGeoLocation *)loc andDelta:(float)delta{
float angle = radiansTodegrees(delta);
float dpx = (([myCurrentLocation distanceFromLocation:loc.geoLocation])/1000);

if(0<=angle<=90)
    return viewRadar.center.x + sin(angle)*dpx ;
else if(90<angle<=180)
    return viewRadar.center.x + cos(angle-90)*dpx  ;
else if(180<angle<=270)
    return viewRadar.center.x - cos(270-angle)*dpx ;
else if(270<angle<360)
    return viewRadar.center.x - sin(360-angle)*dpx ;

return 0;
}

-(float)calculateYPointWithLoc:(ARGeoLocation *)loc andDelta:(float)delta{
float angle = radiansTodegrees(delta);

float dpx = (([myCurrentLocation distanceFromLocation:loc.geoLocation])/1000);



if(0<=angle<=90)
    return viewRadar.center.y - cos(angle)*dpx ;
else if(90<angle<=180)
    return viewRadar.center.y + sin(angle-90)*dpx ;
else if(180<angle<=270)
    return viewRadar.center.y + sin(270-angle)*dpx ;
else if(270<angle<360)
    return viewRadar.center.y - cos(360-angle)*dpx ;

return 0;
}

接着

int i = 0;
    for(ARGeoLocation *loc in coordinates){

    deltaAz = [self angletoCoordinate:loc.geoLocation.coordinate];
    x = [self calculateXPointWithLoc:loc andDelta:deltaAz];
    y = [self calculateYPointWithLoc:loc andDelta:deltaAz];

    [[plots objectAtIndex:i] setFrame:CGRectMake(x,y,DIAMETER_PLOT,DIAMETER_PLOT)];
    i++;
    }

我不确定x和y是否正确,如果它们是正确的,那么如何更改这些值与滑块值的更改.

解决方法

我认为这里的关键字是Geofencing.

如果您的设备进入或离开某个区域,则地理围栏是自动触发操作.对于您的情况,您的操作是显示进入雷达区域的用户的配置文件.

基本上,您需要计算一个圆形区域(给定一个半径),并显示您所在区域内的所有其他点.

我曾经发现这个教程可以教你如何做:
http://www.raywenderlich.com/95014/geofencing-ios-swift

我希望它有帮助!

ios – 雷达喜欢LOVOO应用程序与滑块的更多相关文章

  1. iOS绘图圈

    我想在我的iOS应用中创建下面的圈子.我知道如何制作圆圈,但我不完全确定如何获得圆弧上的点数.它必须是代码而不是图像.下面是我目前的代码.更新到答案解决方法如果(x,y)是中心而r是大圆的半径,则第i个外圆的中心将是:在0开始cita并为下一个圆增加PI/4弧度工作实施编辑:添加实现并重命名变量.

  2. ios – 检查互联网连接是否可用于swift

    目前,当我的应用程序尝试在没有互联网连接的情况下对用户的位置进行地理位置分配我有点新的快速和ios编程–我的道歉.解决方法不是一个完整的网络检查库,但我发现了this简单的方法来检查网络可用性.我设法把它翻译成Swift,并在这里是最终的代码.它适用于3G和WiFi连接.我也将其上传到我的Github一个工作的例子.如果您正在寻找一种简单的方法来检查纯粹在Swift中的网络可用性,您可以使用它.

  3. ios – 雷达视图像LOVOO

    嗨,我正在开发基于位置的iOS应用程序.其中有一个功能可以在雷达视图中查找用户的朋友.我从后端得到了经纬度的朋友.现在我尝试了许多事情,在雷达视图中显示出来客户端需要的功能就像应用程序LOVOO我该怎么做?

  4. ios – 检查Internet连接可用性?

    在开始与我的iPhone应用程序中的服务通信之前,我只需要检查互联网连接的可用性.我使用Swift1.2和Xcode6作为我的开发环境….我的问题是,我对于iOS开发是相当新鲜的,不太确定使用这个逻辑来完成它是多么好可靠.该课程中的大部分内容完全不清楚,但是我做的小测试工作很好!

  5. 新课来了!小波说雨燕 Swift实战季之2 - 间谍雷达Plus

    本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请发送邮件至dio@foxmail.com举报,一经查实,本站将立刻删除。

  6. 实现脉冲雷达以及动态增减元素Swift

    最终效果:这效果是从MOV文件转成GIF的,而且CSDN不支持大于2M的图片上传,优酷地址创建基本动画这效果是从MOV文件转成GIF的,而且CSDN不支持大于2M的图片上传,优酷地址创建一个SingleViewApplication工程,再创建一个Swift文件,我创建的叫“PulsingRadarView”,目前结构为:在ViewController里面持有一个Optional的PulsingR

  7. Swift带振动效果的UITextField

    代码中有注释,就直接上代码了函数调用效果图回调函数打印

  8. swift基础判断网络连接

    没网没有网的时候回弹出警告框

  9. 与Swift 2中的防火墙指针

    我正在尝试检查用户是否具有互联网连接,部分过程涉及使用UnsafePointer调用。与Swift2.x中的防火墙指针一起使用的正确方法是什么?

  10. Android实现雷达View效果的示例代码

    这篇文章主要介绍了Android实现雷达View效果,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下

随机推荐

  1. iOS实现拖拽View跟随手指浮动效果

    这篇文章主要为大家详细介绍了iOS实现拖拽View跟随手指浮动,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

  2. iOS – genstrings:无法连接到输出目录en.lproj

    使用我桌面上的项目文件夹,我启动终端输入:cd然后将我的项目文件夹拖到终端,它给了我路径.然后我将这行代码粘贴到终端中找.-name*.m|xargsgenstrings-oen.lproj我在终端中收到此错误消息:genstrings:无法连接到输出目录en.lproj它多次打印这行,然后说我的项目是一个目录的路径?没有.strings文件.对我做错了什么的想法?

  3. iOS 7 UIButtonBarItem图像没有色调

    如何确保按钮图标采用全局色调?解决方法只是想将其转换为根注释,以便为“回答”复选标记提供更好的上下文,并提供更好的格式.我能想出这个!

  4. ios – 在自定义相机层的AVFoundation中自动对焦和自动曝光

    为AVFoundation定制图层相机创建精确的自动对焦和曝光的最佳方法是什么?

  5. ios – Xcode找不到Alamofire,错误:没有这样的模块’Alamofire’

    我正在尝试按照github(https://github.com/Alamofire/Alamofire#cocoapods)指令将Alamofire包含在我的Swift项目中.我创建了一个新项目,导航到项目目录并运行此命令sudogeminstallcocoapods.然后我面临以下错误:搜索后我设法通过运行此命令安装cocoapodssudogeminstall-n/usr/local/bin

  6. ios – 在没有iPhone6s或更新的情况下测试ARKit

    我在决定下载Xcode9之前.我想玩新的框架–ARKit.我知道要用ARKit运行app我需要一个带有A9芯片或更新版本的设备.不幸的是我有一个较旧的.我的问题是已经下载了新Xcode的人.在我的情况下有可能运行ARKit应用程序吗?那个或其他任何模拟器?任何想法或我将不得不购买新设备?解决方法任何iOS11设备都可以使用ARKit,但是具有高质量AR体验的全球跟踪功能需要使用A9或更高版本处理器的设备.使用iOS11测试版更新您的设备是必要的.

  7. 将iOS应用移植到Android

    我们制作了一个具有2000个目标c类的退出大型iOS应用程序.我想知道有一个最佳实践指南将其移植到Android?此外,由于我们的应用程序大量使用UINavigation和UIView控制器,我想知道在Android上有类似的模型和实现.谢谢到目前为止,guenter解决方法老实说,我认为你正在计划的只是制作难以维护的糟糕代码.我意识到这听起来像很多工作,但从长远来看它会更容易,我只是将应用程序的概念“移植”到android并从头开始编写.

  8. ios – 在Swift中覆盖Objective C类方法

    我是Swift的初学者,我正在尝试在Swift项目中使用JSONModel.我想从JSONModel覆盖方法keyMapper,但我没有找到如何覆盖模型类中的Objective-C类方法.该方法的签名是:我怎样才能做到这一点?解决方法您可以像覆盖实例方法一样执行此操作,但使用class关键字除外:

  9. ios – 在WKWebView中获取链接URL

    我想在WKWebView中获取tapped链接的url.链接采用自定义格式,可触发应用中的某些操作.例如HTTP://我的网站/帮助#深层链接对讲.我这样使用KVO:这在第一次点击链接时效果很好.但是,如果我连续两次点击相同的链接,它将不报告链接点击.是否有解决方法来解决这个问题,以便我可以检测每个点击并获取链接?任何关于这个的指针都会很棒!解决方法像这样更改addobserver在observeValue函数中,您可以获得两个值

  10. ios – 在Swift的UIView中找到UILabel

    我正在尝试在我的UIViewControllers的超级视图中找到我的UILabels.这是我的代码:这是在Objective-C中推荐的方式,但是在Swift中我只得到UIViews和CALayer.我肯定在提供给这个方法的视图中有UILabel.我错过了什么?我的UIViewController中的调用:解决方法使用函数式编程概念可以更轻松地实现这一目标.

返回
顶部