Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

Changeset 4585 in orxonox.OLD for orxonox/trunk/src/lib/collision_detection


Ignore:
Timestamp:
Jun 10, 2005, 4:05:04 AM (20 years ago)
Author:
patrick
Message:

orxonox/trunk: fixed the axis length bug

File:
1 edited

Legend:

Unmodified
Added
Removed
  • orxonox/trunk/src/lib/collision_detection/obb_tree_node.cc

    r4581 r4585  
    220220  ax[2].r = *box->center; ax[2].a = *box->axis[2];
    221221
    222   for(int i = 0; i < 3; ++i)
     222  Plane p0(*box->axis[0], *box->center);
     223  Plane p1(*box->axis[1], *box->center);
     224  Plane p2(*box->axis[2], *box->center);
     225 
     226
     227
     228  halfLength[0] = 0.0f;
     229  for(int j = 0; j < length; ++j)
    223230  {
    224     for(int j = 0; j < length; ++j)
    225     {
    226       tmpLength = ax[i].distancePoint(vertices[j]);
    227       if( tmpLength > halfLength[i])
    228         halfLength[i] = tmpLength;
    229     }
     231    tmpLength = p0.distancePoint(vertices[j]);
     232    if( tmpLength > halfLength[0])
     233      halfLength[0] = tmpLength;
    230234  }
     235
     236
     237  halfLength[1] = 0.0f;
     238  for(int j = 0; j < length; ++j)
     239  {
     240    tmpLength = p1.distancePoint(vertices[j]);
     241    if( tmpLength > halfLength[1])
     242      halfLength[1] = tmpLength;
     243  }
     244
     245  halfLength[2] = 0.0f;
     246  for(int j = 0; j < length; ++j)
     247  {
     248    tmpLength = p2.distancePoint(vertices[j]);
     249    if( tmpLength > halfLength[2])
     250      halfLength[2] = tmpLength;
     251  }
     252
     253
     254
     255   
     256//   for(int i = 0; i < 3; ++i)
     257//   {
     258//     halfLength[i] = 0.0f;
     259//     for(int j = 0; j < length; ++j)
     260//     {
     261//       tmpLength = ax[i].distancePoint(vertices[j]);
     262//       if( tmpLength > halfLength[i])
     263//         halfLength[i] = tmpLength;
     264//     }
     265//   }
    231266
    232267  box->halfLength = halfLength;
Note: See TracChangeset for help on using the changeset viewer.