Objective c 计算两个位置之间的秒(或毫秒)
目前我的功能如下:Objective c 计算两个位置之间的秒(或毫秒),objective-c,math,time,location,Objective C,Math,Time,Location,目前我的功能如下: #define kKILOMETER 1000 #define kSeconds_To_Milliseconds 1000 #define kHOUR 60 #define kMINUTE 60 #define kLongDistance_3KM 3 - (long)calculateTimeToMilliSecondsWithDistance:(double)distance andSpeed:(floa
#define kKILOMETER 1000
#define kSeconds_To_Milliseconds 1000
#define kHOUR 60
#define kMINUTE 60
#define kLongDistance_3KM 3
- (long)calculateTimeToMilliSecondsWithDistance:(double)distance andSpeed:(float)theSpeed
{
// Distance arrive in meters
double kmDistance = distance/kKILOMETER;
long time =
(long)(((kmDistance - kLongDistance_3KM)/[self.ref integerForKey:@"MAX_SPEED"])*kHOUR*kMINUTE*kSeconds_To_Milliseconds);
NSLog(@"calculateTimeToMilliSeconds -> sleep to (sec): %li, maxSpeed: %li",
time/1000, (long)[self.ref integerForKey:@"MAX_SPEED"]);
[self startSendSleepTime:time];
return time;
}
我的“最大速度”值是指200 km/h。
我得到的是错误的值。
我想用我的距离减去3公里,以200公里/小时的速度计算时间,但不知怎么搞砸了。
而且,在几秒钟内得到它会更好,因为我应该删除kSeconds\u到\u毫秒,对吗
我不知道是什么把我搞砸了
编辑1:
例如:
2014-03-19 18:12:39.624 Cellular Radar[3338:60b] Distance to car: 4713, Trap Radius: 900
2014-03-19 18:12:39.673 Cellular Radar[3338:60b] calculateTimeToMilliSeconds -> sleep to (sec): 2055, maxSpeed: 3
2014-03-19 18:12:39.684 Cellular Radar[3338:60b] Sleep for (2055.000000 seconds | 34.250000 minutes | 0.570833 hours)
你能发布你期望的和你实际得到的吗?考虑到输入距离=4713,结果似乎很好。你注意到最高速度是3吗?(你在问题中说是200)你说得对,这意味着如果距离是4713-3000(1713),速度是200,那么时间将是1713/200=8.565,对吗?是的。关于单位(即秒/分钟/小时),这完全取决于您如何处理这些值。只要你保持一致,你的结果就应该是正确的