GPSを使用するAndroidアプリに取り組んでいます。「新しい位置」(ポイントC)が線分ABから離れすぎている場合に、GPS位置データを破棄する方法があるかどうかを知りたいです。ウィキペディアにあるポイントツーラインセグメントの数式を使用しています。
これまでのところ、緯度と経度の座標を使用しようとすると、私が持っているコードはNaNを返します。
private void verifyGPSLocation(Location start, Location end, Location current){
final double errorValue = 0.0000216;
double normalLength = Math.hypot(end.getLatitude() - start.getLatitude(), end.getLongitude() - start.getLongitude());
double ret = Math.abs(((current.getLatitude() - start.getLatitude()) * (end.getLongitude() - start.getLongitude()) - (end.getLatitude() - start.getLatitude()))/normalLength );
Log.e("Coooooord", normalLength+"--"+ret);
}
これは私の最初の投稿ですので、これを正しく行っていないか、十分な情報を持っていない場合はお知らせください。あなたの助けをありがとう、私はこのサイトが大好きです!