Je cherche à faire pivoter un nuage de points 3D en fonction de l'orientation du sol. J'ai détecté le sol et calculé son vecteur normal. Je veux utiliser ce vecteur normal pour m'assurer que tous les points du sol ont la même valeur y. Puisque le produit scalaire de deux vecteurs normalisés est le cosinus de l'angle entre eux, je normalise d'abord le vecteur normal courant (0.856, 0.958, 2.58) ainsi que le vecteur normal désiré (0.0, 0.958, 0.0). Le produit scalaire = 0,917 et donc l'angle = 70,586, mais étant en 3 dimensions ceci ne semble pas utile. Dois-je effectuer deux rotations? Si oui, y a-t-il des suggestions quant à la meilleure approche?Rotation d'un nuage de points basé sur un vecteur normal
0
A
Répondre
0
Si vous voulez une rotation qui va transformer un vecteur normal A
en un vecteur normal désiré A'
, il y en a un nombre infini. (Avec une telle rotation, vous pouvez l'appliquer et la composer avec des spins autour de A'
pour obtenir beaucoup d'autres rotations qui font la même chose.)
Une approche qui fonctionne bien en 3-D est de calculer vecteur de produit V = A x A'
(qui est normal au plan contenant A
et A'
), puis tourner autour de V
de l'angle entre A
et A'
. (Il est important de tester d'abord que A
et A'
ne coïncident pas déjà.)
Vous trouverez une description de la façon de le faire assez efficacement here.
Questions connexes
- 1. points clustering dans un nuage de points
- 2. est plan 3D vecteur normal lié à sa rotation
- 3. Nuage de balises basé sur l'utilisation pondérée
- 4. nuage de tags basé sur weight/order_id
- 5. Clustering un nuage de points dans R
- 6. Comment créer un nuage de points temporel avec R?
- 7. nuage de points avec son propre ID
- 8. 3D normal/chercher au vecteur d'angles d'Euler
- 9. Légende de nuage de points de Matplotlib
- 10. Collision Normal de deux points
- 11. Rotation de vecteur en utilisant Java 3D
- 12. R - Création d'un nuage de points de trame de données
- 13. vecteur normal du moins plan carrés dérivés
- 14. nuage de points avec des axes égaux
- 15. nuage de points avec erreur std
- 16. nuage de points en utilisant Raphael JS
- 17. AS3: Rotation en vecteur
- 18. Rendre un nuage de points dense en utilisant XNA4.0
- 19. C++ 11 basé sur un vecteur de pointeurs
- 20. Zone couverte par un nuage de points avec R
- 21. Comment créer un nuage de points avec ces données?
- 22. Comment mettre des étiquettes individuelles pour un nuage de points
- 23. Comment préserver l'échelle du nuage de points nuageux?
- 24. Rotation basée sur les points d'extrémité
- 25. Comment superposer une ligne pour un objet lm sur un nuage de points de ggplot2
- 26. Trouver des points sur la ligne dans le nuage de points
- 27. ggplot2: piecharts au lieu de points dans un nuage de points xy
- 28. Créer une échelle de couleurs arc-en-basé sur un vecteur, dans l'ordre de ce vecteur
- 29. Est-ce un comportement normal pour un vecteur std ::?
- 30. Python mayavi: Ajouter des points à un nuage de points 3d
Merci! Je veux bien essayer – RDL