Main Page
Related Pages
Modules
Namespaces
Classes
Files
File List
File Members
externals
Box2D
Box2D
Dynamics
b2WorldCallbacks.cpp
Go to the documentation of this file.
1
/*
2
* Copyright (c) 2006-2009 Erin Catto http://www.box2d.org
3
*
4
* This software is provided 'as-is', without any express or implied
5
* warranty. In no event will the authors be held liable for any damages
6
* arising from the use of this software.
7
* Permission is granted to anyone to use this software for any purpose,
8
* including commercial applications, and to alter it and redistribute it
9
* freely, subject to the following restrictions:
10
* 1. The origin of this software must not be misrepresented; you must not
11
* claim that you wrote the original software. If you use this software
12
* in a product, an acknowledgment in the product documentation would be
13
* appreciated but is not required.
14
* 2. Altered source versions must be plainly marked as such, and must not be
15
* misrepresented as being the original software.
16
* 3. This notice may not be removed or altered from any source distribution.
17
*/
18
19
#include <
Box2D/Dynamics/b2WorldCallbacks.h
>
20
#include <
Box2D/Dynamics/b2Fixture.h
>
21
22
// Return true if contact calculations should be performed between these two shapes.
23
// If you implement your own collision filter you may want to build from this implementation.
24
bool
b2ContactFilter::ShouldCollide
(
b2Fixture
* fixtureA,
b2Fixture
* fixtureB)
25
{
26
const
b2Filter
& filterA = fixtureA->
GetFilterData
();
27
const
b2Filter
& filterB = fixtureB->
GetFilterData
();
28
29
if
(filterA.
groupIndex
== filterB.
groupIndex
&& filterA.
groupIndex
!= 0)
30
{
31
return
filterA.
groupIndex
> 0;
32
}
33
34
bool
collide = (filterA.
maskBits
& filterB.
categoryBits
) != 0 && (filterA.
categoryBits
& filterB.
maskBits
) != 0;
35
return
collide;
36
}
b2Fixture::GetFilterData
const b2Filter & GetFilterData() const
Get the contact filtering data.
Definition:
b2Fixture.h:258
b2Fixture
Definition:
b2Fixture.h:107
b2Fixture.h
b2ContactFilter::ShouldCollide
virtual bool ShouldCollide(b2Fixture *fixtureA, b2Fixture *fixtureB)
Definition:
b2WorldCallbacks.cpp:24
b2Filter
This holds contact filtering data.
Definition:
b2Fixture.h:32
b2WorldCallbacks.h
b2Filter::groupIndex
int16 groupIndex
Definition:
b2Fixture.h:51
b2Filter::categoryBits
uint16 categoryBits
The collision category bits. Normally you would just set one bit.
Definition:
b2Fixture.h:42
b2Filter::maskBits
uint16 maskBits
Definition:
b2Fixture.h:46
mvsim
Author(s):
autogenerated on Fri May 7 2021 03:05:51