Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

MeshCollisionTraversalNodeRSS: definition of 2 member functions missing #460

Open
SpaceIm opened this issue Apr 6, 2020 · 4 comments
Open
Assignees

Comments

@SpaceIm
Copy link
Contributor

SpaceIm commented Apr 6, 2020

In include/fcl/narrowphase/detail/traversal/collision/mesh_collision_traversal_node.h, the template class MeshCollisionTraversalNodeRSS declares several member functions.

Two of them don't have definitions in corresponding inl.h:
bool BVTesting(int b1, int b2, const Transform3<S>& tf) const
void leafTesting(int b1, int b2, const Transform3<S>& tf) const

@SeanCurtis-TRI SeanCurtis-TRI self-assigned this Apr 6, 2020
@SeanCurtis-TRI
Copy link
Contributor

I can't say I'm surprised. We've encountered that for (#421 resolved by #439). There are apparently multiple corners of FCL with out-dated/untested artifacts. Since we've only really focused on the slice of FCL that affects us the most, we have no idea how many more are lurking.

So, thanks for catching this one out. We'll add it to the queue.

@SpaceIm
Copy link
Contributor Author

SpaceIm commented Apr 6, 2020

Those are the only 2 members functions without definitions Visual Studio reported during compilation.

There is also something, slightly different, for which Visual Studio reports a warning: it says that there is no definition for size_t fcl::detail::morton_functor<double,fcl::uint32>::bits(void) while compiling broadphase_dynamic_AABB_tree.cpp and broadphase_dynamic_AABB_tree_array.cpp.
Actually, there is a definition for this member function (in morton-inl.h). I suspect something not totally clean about how specialization of morton_functor is done, but I don't know what.

@jmirabel
Copy link

jmirabel commented Apr 6, 2020

The reason it was left unimplemented may be that RSS are most useful for distance queries. For collision queries, OBB are better and if you need both collision and distance queries, then use OBBRSS.

@SteB0
Copy link

SteB0 commented Nov 4, 2021

Hi, I got a similar warning at compilation. Have you already fixed your problem?

fcl-master\src\broadphase\broadphase_dynamic_AABB_tree_array.cpp(47): warning C4506: Keine Definition für Inlinefunktion "size_t fcl::detail::morton_functor<double,fcl::uint32>::bits(void)"

tried with Visual Studio 2017 professional

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants