XSIforum.com

creacion de parametros

0 Usuarios y 1 Visitante están viendo este tema.

creacion de parametros
« en: 15 Septiembre 2010, 14:26:14 »
Hola a todos

Estoy trabajando con los limites de rotación de un objeto.

puedo activarlo : oObj.Kinematics.Local.Rotxminactive.Value = True

pero a la hora de definir dicho limite me encuentro que ese parametro rotxminlimit no está definido en oObj.Kinematics.Local  (lo he visto en el SDK Explorer)

si lo creo a mano desde el PPG, softi me crea el parametro pero no me muestra en el script editor como lo ha hecho.

he estado intentando varias cosas: AddParameter, Parameter, etc sin obtener el resultado esperado

Si me podeis echar una mano os agradecería enormemente.

Saludos





Re: creacion de parametros
« Respuesta #1 en: 15 Septiembre 2010, 15:34:57 »
Mientras te asegures que el límite está activo puedes usar el parámetro normalmente, no hace falta que crees nada...

Código: (Python) [Seleccionar]
Xsi = Application
Sel = Xsi.Selection

def SetRotLimit(oObj=None, minLimit=0, maxLimit=0, axis="XYZ"):
    if not oObj: return False
    for a in axis.lower():
        if not oObj.Kinematics.Local.Parameters("rot%sminactive"%a).Value:
            oObj.Kinematics.Local.Parameters("rot%sminactive"%a).Value = True
        oObj.Kinematics.Local.Parameters("rot%sminlimit"%a).Value = minLimit

        if not oObj.Kinematics.Local.Parameters("rot%smaxactive"%a).Value:
            oObj.Kinematics.Local.Parameters("rot%smaxactive"%a).Value = True
        oObj.Kinematics.Local.Parameters("rot%smaxlimit"%a).Value = maxLimit
    return True

SetRotLimit(Sel(0), -90, 180)

Re: creacion de parametros
« Respuesta #2 en: 15 Septiembre 2010, 15:38:34 »
oObj.Kinematics.Local.rotxminlimit.Value = 0

me daba error!  por eso me rompia la cabeza

pero bueno, mil gracias Cesar por la ayuda.... además de crack eres invalorable como soporte tecnico.

Re: creacion de parametros
« Respuesta #3 en: 15 Septiembre 2010, 16:16:10 »
oObj.Kinematics.Local.Parameters("rotxmaxlimit").Value = 0

me sigue dando error.

Cita de: Error

# ERROR : Traceback (most recent call last):
#   File "<Script Block >", line 253, in <module>
#     oFKdownBoneCtrl.Kinematics.Local.Parameters("rotxmaxlimit").Value = 0
# AttributeError: 'NoneType' object has no attribute 'Value'
#  - [line 253]


Re: creacion de parametros
« Respuesta #4 en: 15 Septiembre 2010, 17:48:06 »
El límite tiene que estar activo para que el parámetro exista, mira el script de ejemplo que te dejé en la respuesta anterior ;)

Re: creacion de parametros
« Respuesta #5 en: 15 Septiembre 2010, 17:51:27 »
Si, si... mi limite está activo.

Cita de: Python

oFKdownBoneCtrl.Kinematics.Local.Rotxminactive.Value = True
oFKdownBoneCtrl.Kinematics.Local.Rotxminactive.Value = True
oFKdownBoneCtrl.Kinematics.Local.Parameters("rotxmaxlimit").Value = 0
oFKdownBoneCtrl.Kinematics.Local.Parameters("rotxminlimit").Value = 0


me da el error que te comentaba anteriormente

Re: creacion de parametros
« Respuesta #6 en: 15 Septiembre 2010, 18:07:05 »
Si lees cuidadosamente tu propia cita verás que el rotxmaxactive no está activo y por ende el parámetro rotxmaxlimit no existe/no tiene Value.

Re: creacion de parametros
« Respuesta #7 en: 15 Septiembre 2010, 18:15:00 »
joder... merezco que me fusilen con teclas!
perdon por el error.

mil gracias