Fix bug in collision calculations
Signed-off-by: v meazza <vivian.meazza@lineone.net>
This commit is contained in:
parent
e91b5a8804
commit
d974954b5a
1 changed files with 15 additions and 15 deletions
|
@ -395,8 +395,8 @@ const FGAIBase *
|
||||||
FGAIManager::calcCollision(double alt, double lat, double lon, double fuse_range)
|
FGAIManager::calcCollision(double alt, double lat, double lon, double fuse_range)
|
||||||
{
|
{
|
||||||
// we specify tgt extent (ft) according to the AIObject type
|
// we specify tgt extent (ft) according to the AIObject type
|
||||||
double tgt_ht[] = {0, 50 ,100, 250, 0, 100, 0, 0, 50, 50, 50};
|
double tgt_ht[] = {0, 50, 100, 250, 0, 100, 0, 0, 50, 50, 20, 50};
|
||||||
double tgt_length[] = {0, 100, 200, 750, 0, 50, 0, 0, 200, 100, 100};
|
double tgt_length[] = {0, 100, 200, 750, 0, 50, 0, 0, 200, 100, 40, 100};
|
||||||
ai_list_iterator ai_list_itr = ai_list.begin();
|
ai_list_iterator ai_list_itr = ai_list.begin();
|
||||||
ai_list_iterator end = ai_list.end();
|
ai_list_iterator end = ai_list.end();
|
||||||
|
|
||||||
|
@ -407,11 +407,11 @@ FGAIManager::calcCollision(double alt, double lat, double lon, double fuse_range
|
||||||
|
|
||||||
if (fabs(tgt_alt - alt) > tgt_ht[type] || type == FGAIBase::otBallistic
|
if (fabs(tgt_alt - alt) > tgt_ht[type] || type == FGAIBase::otBallistic
|
||||||
|| type == FGAIBase::otStorm || type == FGAIBase::otThermal ) {
|
|| type == FGAIBase::otStorm || type == FGAIBase::otThermal ) {
|
||||||
SG_LOG(SG_GENERAL, SG_DEBUG, "AIManager: skipping "
|
//SG_LOG(SG_GENERAL, SG_DEBUG, "AIManager: skipping "
|
||||||
<< fabs(tgt_alt - alt)
|
// << fabs(tgt_alt - alt)
|
||||||
<< " "
|
// << " "
|
||||||
<< type
|
// << type
|
||||||
);
|
// );
|
||||||
++ai_list_itr;
|
++ai_list_itr;
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
@ -422,14 +422,14 @@ FGAIManager::calcCollision(double alt, double lat, double lon, double fuse_range
|
||||||
|
|
||||||
double range = calcRange(lat, lon, tgt_lat, tgt_lon);
|
double range = calcRange(lat, lon, tgt_lat, tgt_lon);
|
||||||
|
|
||||||
SG_LOG(SG_GENERAL, SG_DEBUG, "AIManager: AI list size "
|
//SG_LOG(SG_GENERAL, SG_DEBUG, "AIManager: AI list size "
|
||||||
<< ai_list.size()
|
// << ai_list.size()
|
||||||
<< " type " << type
|
// << " type " << type
|
||||||
<< " ID " << id
|
// << " ID " << id
|
||||||
<< " range " << range
|
// << " range " << range
|
||||||
//<< " bearing " << bearing
|
// //<< " bearing " << bearing
|
||||||
<< " alt " << tgt_alt
|
// << " alt " << tgt_alt
|
||||||
);
|
// );
|
||||||
|
|
||||||
tgt_length[type] += fuse_range;
|
tgt_length[type] += fuse_range;
|
||||||
|
|
||||||
|
|
Loading…
Add table
Reference in a new issue