2012-01-04 4 views
1

Je cherche à faire une analyse de pièces complexes au sein de Seimens NX. Je cherche à mettre en œuvre la méthode du double calibre pour mesurer un modèle afin de trouver le minimum de boîte possible (à des fins d'usinage). J'ai tout mon code de mesure en place, mais je suis complètement déconcerté par l'idée d'une construction qui peut générer de manière aléatoire des vecteurs normalisés 3x3 pour les utiliser comme systèmes de coordonnées. La pièce est mesurée par rapport à ce système de coordonnées, de sorte que chaque système de coordonnées donne une "enveloppe de pièce minimale" unique. Une fois analysée, la plus petite enveloppe est sélectionnée et affichée.Générer aléatoirement une matrice orthogonale 3x3

this is the type of vector I am talking about: 
1 0 0 
0 1 0 
0 0 1 

numbers can be any value between -1 and 1, with decimals not only being accepted but pretty much required. 

et non, ce n'est pas mes devoirs. Plus d'une poursuite individuelle dans mon temps libre au travail.

Répondre

2

Si vous appliquez une matrice de rotation à une matrice déjà orthogonale, le résultat doit également être orthogonal.

Vous pouvez donc redéfinir votre problème en appliquant une matrice de rotation aléatoire à la matrice d'identité. Peut-être faire une matrice de rotation aléatoire pour chaque axe (x, y, z) et ensuite appliquer les matrices elles-mêmes dans un ordre aléatoire?

+0

Cela pourrait effectivement être un pas dans la bonne direction. J'ai accès au système de coordonnées absolu de la pièce elle-même, donc une transformation est complètement acceptable. Je crois qu'il y a déjà des méthodes disponibles pour ça. J'ai passé beaucoup de temps à verser sur la façon de faire cela, j'ai négligé la réponse la plus évidente. Merci! –

Questions connexes