public LocalRayResult(CollisionObject collisionObject, LocalShapeInfo localShapeInfo, Vector3 hitNormalLocal, float hitFraction) { _collisionObject = collisionObject; _localShapeInfo = localShapeInfo; _hitNormalLocal = hitNormalLocal; _hitFraction = hitFraction; }
public override float AddSingleResult(LocalRayResult r, bool b) { LocalShapeInfo shapeInfo = new LocalShapeInfo(); shapeInfo.m_shapePart = -1; shapeInfo.m_triangleIndex = m_i; if (r.m_localShapeInfo == null) { r.m_localShapeInfo = shapeInfo; } return m_userCallback.AddSingleResult(r, b); }
public override double addSingleResult( ref LocalConvexResult r, bool b ) { LocalShapeInfo shapeInfo = new LocalShapeInfo(); shapeInfo.m_shapePart = -1; shapeInfo.m_triangleIndex = m_i; if( r.m_localShapeInfo == null ) r.m_localShapeInfo = shapeInfo; btScalar result = m_userCallback.addSingleResult( ref r, b ); m_closestHitFraction = m_userCallback.m_closestHitFraction; return result; }
internal override double reportHit( ref btVector3 hitNormalLocal, ref btVector3 hitPointLocal , double hitFraction, int partId, int triangleIndex ) { LocalShapeInfo shapeInfo = new LocalShapeInfo(); shapeInfo.m_shapePart = partId; shapeInfo.m_triangleIndex = triangleIndex; if( hitFraction <= m_resultCallback.m_closestHitFraction ) { LocalConvexResult convexResult = new LocalConvexResult ( m_collisionObject, shapeInfo, ref hitNormalLocal, ref hitPointLocal, hitFraction ); bool normalInWorldSpace = true; return m_resultCallback.addSingleResult( ref convexResult, normalInWorldSpace ); } return hitFraction; }
internal override double reportHit( ref btVector3 hitNormalLocal, double hitFraction, int partId, int triangleIndex ) { LocalShapeInfo shapeInfo = new LocalShapeInfo(); shapeInfo.m_shapePart = partId; shapeInfo.m_triangleIndex = triangleIndex; btVector3 hitNormalWorld; m_colObjWorldTransform.m_basis.Apply( ref hitNormalLocal, out hitNormalWorld ); LocalRayResult rayResult = new LocalRayResult ( m_collisionObject, shapeInfo, hitNormalWorld, hitFraction ); bool normalInWorldSpace = true; return m_resultCallback.addSingleResult( rayResult, normalInWorldSpace ); }
internal static global::System.Runtime.InteropServices.HandleRef getCPtr(LocalShapeInfo obj) { return((obj == null) ? new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero) : obj.swigCPtr); }
public LocalConvexResult( btCollisionObject hitCollisionObject, LocalShapeInfo localShapeInfo, ref btVector3 hitNormalLocal, ref btVector3 hitPointLocal, double hitFraction ) { m_hitCollisionObject = ( hitCollisionObject ); m_localShapeInfo = ( localShapeInfo ); m_hitNormalLocal = ( hitNormalLocal ); m_hitPointLocal = ( hitPointLocal ); m_hitFraction = ( hitFraction ); }
public LocalRayResult( btCollisionObject collisionObject, LocalShapeInfo localShapeInfo, btVector3 hitNormalLocal, double hitFraction ) { m_collisionObject = ( collisionObject ); m_localShapeInfo = ( localShapeInfo ); m_hitNormalLocal = ( hitNormalLocal ); m_hitFraction = ( hitFraction ); }