[Python] Trouver des coordonnées sous deux angles et une distance

Aperçu

Dans un objet qui a une relation parent-enfant Il peut être utilisé lorsque l'objet enfant se déplace lorsque l'objet parent pivote.

Code de référence

Environnement d'exécution: Motionbuilder 2015

J'ai fait un processus pour dessiner une sphère avec Null en Mo. Le traitement principal est uniquement le contenu de getPosition ().

# -*- coding: utf-8 -*-

from pyfbsdk import *
import math

#Méthode pour trouver des coordonnées à partir de deux angles et d'une distance
def getPosition(_angle1, _angle2, _radius):
    x = _radius * math.sin(math.radians(_angle1)) * math.cos(math.radians(_angle2));
    y = _radius * math.sin(math.radians(_angle1)) * math.sin(math.radians(_angle2));
    z = _radius * math.cos(math.radians(_angle1));
    return FBVector3d(x, y, z);

#Si vous changez ceci pour le logiciel du logiciel que vous souhaitez utiliser, il dessinera une sphère.
## angle1,Vous pouvez également dessiner un demi-cercle en ajustant la valeur qui entre dans angle2
##Notez que l'exécution de l'étape du troisième argument de range avec 1 (ou non spécifié) est lourde.
parentPos = FBVector3d(50, 50, 50)
for angle1 in range(0, 360, 3):
    for angle2 in range(0, 180, 3):
        mdlNull = FBModelNull("Null_{0}_{1}".format(str(angle1), str(angle2)))
        mdlNull.Show = True
        mdlNull.Scaling = FBVector3d(1, 1, 1)
        mdlNull.Translation = parentPos + getPosition(angle1, angle2, 100.0)

Lorsque vous l'exécutez, vous obtiendrez quelque chose comme ça. (Cela a fait le pas de range () en 1!)

球体.png

Recommended Posts

[Python] Trouver des coordonnées sous deux angles et une distance
geometry> 2017-03-31: Trouver la distance entre deux latitudes et longitudes> Utiliser la formule Haversine | 2019-01-08 Méthode Vincenty
Python, rendement, retour et parfois rendement de
Lire et utiliser des fichiers Python à partir de Python
Trouvez la distance d'édition (distance de Levenshtein) avec python
À propos de Python, à partir et à l'importation, comme
Trouvez la distance (en tenant compte de la rondeur de la terre) de la latitude et de la longitude.
Trouvez tous les chemins entre deux points à partir d'une matrice adjacente avec python
De Python à l'utilisation de MeCab (et CaboCha)
Portage et modification du solveur de doublets de python2 vers python3.
Rechercher et vérifier la matrice inverse en Python
Python --Lisez les données d'un fichier de données numériques et recherchez la ligne de régression multiple.
Trouvez la position dans l'image d'origine à partir des coordonnées après conversion affine (Python + OpenCV)
Firebase: utilisez Cloud Firestore et Cloud Storage depuis Python
Étude à partir de Python Lecture et écriture de fichiers Hour9
[Python] Comment lire les données de CIFAR-10 et CIFAR-100
Charger et exécuter la commande depuis yml avec python
Lier PHP et Python à partir de zéro sur Laravel
Explication de la distance d'édition et de l'implémentation en Python
sql à sql
MeCab de Python
Contrôler d'autres programmes depuis Python (communication entre Python ⇔ exe)
[Python débutant] Extrayez la préfecture et la ville de l'adresse (3 lignes).
Trouvez la partie 575 de Wikipedia en Python
Trouvez la matrice Hermite et ses valeurs uniques en Python
Recevoir des e-mails de Gmail et étiqueter avec Python3
Récupérer des fichiers depuis Linux en utilisant paramiko et scp [Python]
[Python] Extraire uniquement les nombres des listes et des chaînes de caractères
[Python] Démarrez un fichier de commandes à partir de Python et passez des variables.
Python --Lisez des données à partir d'un fichier de données numériques pour trouver des matrices, des valeurs propres et des vecteurs propres distribués co-distribués