Je me demandais s'il y avait un moyen, en utilisant la bibliothèque standard, de trouver une intersection de deux vecteurs de points 3D. Le point 3D est un glm :: vec3 avec x, y et z. x, y et z sont des flottants.La meilleure façon de trouver l'intersection deux std :: vecteurs de points 3D
Je sais que nous pouvons utiliser un std :: set_intersection sur des tableaux 1D.
Juste pour être clair, j'ai 2 vecteurs:
std::vector<Point> v1;
std::vector<Point> v2;
où le point est:
struct Point {
glm::vec3 m_position;
glm::vec2 m_texCoord;
glm::vec3 m_normal;
Point() {}
Point(glm::vec3& pos, glm::vec2& tex, glm::vec3& norm) {
m_position = pos;
m_normal = norm;
m_texCoord = tex;
}
Point(glm::vec3& pos, glm::vec3& norm) {
m_position = pos;
m_normal = norm;
}
Point(glm::vec3& pos) {
m_position = pos;
}
};
Je voudrais trouver une intersection de v1 et v2 par Point.m_position.
Nous vous remercions de votre aide.
Pouvez-vous définir l'intersection, si vous voulez dire l'intersection théorique standard? Si oui, pouvez-vous définir les ensembles qui sont l'opérande à croiser? Aussi le point est un tableau de points, eux-mêmes tableaux? –