28 m_isSwapped(isSwapped)
73 if (
getSphereDistance(boxObjWrap, pOnBox, normalOnSurfaceB, penetrationDepth, sphereCenter, radius, maxContactDistance))
106 penetrationDepth = 1.0f;
121 btScalar intersectionDist = fRadius + boxMargin;
122 btScalar contactDist = intersectionDist + maxContactDistance;
123 normal = sphereRelPos - closestPoint;
127 if (dist2 > contactDist * contactDist)
141 distance = normal.
length();
145 pointOnBox = closestPoint + normal * boxMargin;
147 penetrationDepth = distance - intersectionDist;
165 closestPoint.
setX( boxHalfExtent.
getX() );
168 faceDist = boxHalfExtent.
getX() + sphereRelPos.
getX();
169 if (faceDist < minDist)
172 closestPoint = sphereRelPos;
173 closestPoint.
setX( -boxHalfExtent.
getX() );
177 faceDist = boxHalfExtent.
getY() - sphereRelPos.
getY();
178 if (faceDist < minDist)
181 closestPoint = sphereRelPos;
182 closestPoint.
setY( boxHalfExtent.
getY() );
186 faceDist = boxHalfExtent.
getY() + sphereRelPos.
getY();
187 if (faceDist < minDist)
190 closestPoint = sphereRelPos;
191 closestPoint.
setY( -boxHalfExtent.
getY() );
195 faceDist = boxHalfExtent.
getZ() - sphereRelPos.
getZ();
196 if (faceDist < minDist)
199 closestPoint = sphereRelPos;
200 closestPoint.
setZ( boxHalfExtent.
getZ() );
204 faceDist = boxHalfExtent.
getZ() + sphereRelPos.
getZ();
205 if (faceDist < minDist)
208 closestPoint = sphereRelPos;
209 closestPoint.
setZ( -boxHalfExtent.
getZ() );