Blender Italia forums Coding Script, addon e temi integrazione Blender-Matlab Re:integrazione Blender-Matlab

cocci
Membro
  • Blenderista
  • Post sul Forum 11
@cocci
#208518

Arieccomi qui…

Con un pò di fatica (mi ci è voluto un pò per entrare nell'ottica dei logic bricks) sono riuscito a fare quello che volevo. Ossia:

– ho creato un Sensor di tipo always

– ho collegato questo sensore ad un Controllers di tipo Payton in cui vado ad eseguire questo script:

Code:
import bge
def main():
cont = bge.logic.getCurrentController()
owner = cont.owner
# leggo dal file
file_componenti = open(“matlab.txt”,”r”)
i=file_componenti.readline() #legge una riga di file
while (i):
#separa i dati e li converte in float
LocRot=list(map(float,i.split()))
# Settaggio posizioni
x0 = LocRot[0] #Posizione x
y0 = LocRot[1] #Posizione y
z0 = LocRot[2] #Posizione z
# Si settano gli angoli di Eulero
rho0=LocRot[3] #controllare se gli assi calcolati sono coincidenti
pitch0=LocRot[4]
yaw0=LocRot[5]
#Leggo la successiva riga del file
i=file_componenti.readline()
# Sposto e ruoto l'oggetto nave
owner.localPosition.x = x0
owner.localPosition.y = y0
owner.localPosition.z = z0
owner.applyRotation([rho0,pitch0,yaw0])
main()

Ora vorrei fare un'altra cosa.

Ho aggiunto nel Blender un altro oggetto nave (nave1 e nave2) ed ho inserito nel file matlab.txt altre sei componenti (3 per gli spostamenti e 3 per le rotazioni per la nave2), per cui per ogni riga di matlab.txt ho le posizioni e le rotazioni delle 2 navi.

C'è un modo per richiamare ad esempio localPosition.x della nave2 nello stesso script (quello che ho inserito sopra) che fa riferimento al controller che gestisce nave1?

Spero di essere stato chiaro