特定の座標で地球を回転させるにはどうすればよいですか? URLから特定の座標に地球を回転させたい。なんとかできましたが、アプリを閉じたときだけです。バックグラウンドにあるときは、私が与えている座標に関係なく、南極近くの場所に移動するだけです。
コードは次のとおりです。
- (void)moveToLocation
{
WhirlyGlobe::GeoCoord startCoord;
// If the app wasn started from URL
if ([[GlobalValues sharedGlobalValues] enteredFromURL])
{
float lat = [[GlobalValues sharedGlobalValues] sharedLat];
float lon = [[GlobalValues sharedGlobalValues] sharedLon];
// Set the shared location
startCoord = WhirlyGlobe::GeoCoord::CoordFromDegrees(lon, lat);
// Calculate the rotation and make it
Eigen::Quaternionf startLoc = [self.theView makeRotationToGeoCoord:startCoord keepNorthUp:YES];
self.theView.delegate = [[[AnimateViewRotation alloc] initWithView:self.theView rot:startLoc howLong:5.0] autorelease];
}
}
また、どうすればズームできますか?アプリがURLから起動すると、回転+ズームが実行されますが、バックグラウンドにあるときはズームされません。