Ho voluto tradurre in Python un Rhinoscript
Ma ottengo questo messaggio di errore e non capisco quale sia il problema.
Message: list is not callable Traceback:
_ line 13, in Adagia, “I:\lavori\a_esempi\divano\adagia.py”_
_ line 18, in , "I:\lavori\a_esempi\divano\adagia.py_
=========================================
import rhinoscriptsyntax as rs
def Adagia():
surface_id = rs.GetObject(“Seleziona superice su cui adaggiare”, rs.filter.surface)
if surface_id is None : return
strObjects = rs.GetObjects("Seleziona Oggetti da adaggiare su superfice")
if strObjects is None: return
rs.EnableRedraw (False)
Hai ancora l’occhio da VBS …
L’indice delle array o liste che dir si voglia deve essere tra parentesi quadre.
Ciao !
P.S.
per formattare meglio gli script puoi inserirli tra due linee:
quella iniziale con 3 ‘backticks’, uno spazio e poi ‘python’
quella finale solo i 3 ‘backticks’
Questo e’ il risultato
import rhinoscriptsyntax as rs
def Adagia():
surface_id = rs.GetObject("Seleziona superice su cui adaggiare", rs.filter.surface)
if surface_id is None : return
strObjects = rs.GetObjects("Seleziona Oggetti da adaggiare su superfice"
if strObjects is None: return
rs.EnableRedraw (False)
for sObject in strObjects :
arrBox = rs.BoundingBox(sObject)
arrPoints = [arrBox[0],arrBox[1],arrBox[2],arrBox[3]]
arrTargets = rs.ProjectPointToSurface(arrPoints, surface_id, [0, 0, -1])
rs.OrientObject(sObject, arrPoints, arrTargets)
rs.EnableRedraw (True)
Adagia()
Hmmmm … oggi Discourse e’ in fase ‘Disgrace’ … incasina anche questa formattatura … va beh
Ogni linguaggio ha i suoi Array …ma come al solito quelli della MIcrosoft sono diversi dagli altri.
In effetti Php Javascript usano le parentesi quadre per gli indici …non ci avevo pensato.