| 31 | }; |
| 32 | |
| 33 | static cpCollisionID |
| 34 | NearestPointQuery(struct PointQueryContext *context, cpShape *shape, cpCollisionID id, void *data) |
| 35 | { |
| 36 | if( |
| 37 | !cpShapeFilterReject(shape->filter, context->filter) |
| 38 | ){ |
| 39 | cpPointQueryInfo info; |
| 40 | cpShapePointQuery(shape, context->point, &info); |
| 41 | |
| 42 | if(info.shape && info.distance < context->maxDistance) context->func(shape, info.point, info.distance, info.gradient, data); |
| 43 | } |
| 44 | |
| 45 | return id; |
| 46 | } |
| 47 | |
| 48 | void |
| 49 | cpSpacePointQuery(cpSpace *space, cpVect point, cpFloat maxDistance, cpShapeFilter filter, cpSpacePointQueryFunc func, void *data) |
nothing calls this directly
no test coverage detected