b2TimeOfImpact.h
Go to the documentation of this file.
00001 /*
00002 * Copyright (c) 2006-2009 Erin Catto http://www.box2d.org
00003 *
00004 * This software is provided 'as-is', without any express or implied
00005 * warranty.  In no event will the authors be held liable for any damages
00006 * arising from the use of this software.
00007 * Permission is granted to anyone to use this software for any purpose,
00008 * including commercial applications, and to alter it and redistribute it
00009 * freely, subject to the following restrictions:
00010 * 1. The origin of this software must not be misrepresented; you must not
00011 * claim that you wrote the original software. If you use this software
00012 * in a product, an acknowledgment in the product documentation would be
00013 * appreciated but is not required.
00014 * 2. Altered source versions must be plainly marked as such, and must not be
00015 * misrepresented as being the original software.
00016 * 3. This notice may not be removed or altered from any source distribution.
00017 */
00018 
00019 #ifndef B2_TIME_OF_IMPACT_H
00020 #define B2_TIME_OF_IMPACT_H
00021 
00022 #include <Box2D/Common/b2Math.h>
00023 #include <Box2D/Collision/b2Distance.h>
00024 
00026 struct b2TOIInput
00027 {
00028         b2DistanceProxy proxyA;
00029         b2DistanceProxy proxyB;
00030         b2Sweep sweepA;
00031         b2Sweep sweepB;
00032         float32 tMax;           // defines sweep interval [0, tMax]
00033 };
00034 
00035 // Output parameters for b2TimeOfImpact.
00036 struct b2TOIOutput
00037 {
00038         enum State
00039         {
00040                 e_unknown,
00041                 e_failed,
00042                 e_overlapped,
00043                 e_touching,
00044                 e_separated
00045         };
00046 
00047         State state;
00048         float32 t;
00049 };
00050 
00056 void b2TimeOfImpact(b2TOIOutput* output, const b2TOIInput* input);
00057 
00058 #endif


mvsim
Author(s):
autogenerated on Thu Jun 6 2019 22:08:35