Skip to content
Snippets Groups Projects
Commit 082b7f78 authored by Nicolas Mansard's avatar Nicolas Mansard
Browse files

Minor modifs in the meta tasks.

parent e496b99c
No related branches found
No related tags found
No related merge requests found
......@@ -21,20 +21,20 @@ class MetaTaskDyn6d(MetaTask6d):
def __init__(self,*args):
MetaTask6d.__init__(self,*args)
self.opPointModif = OpPointModifier('opmodif'+self.name)
plug(self.dyn.signal(self.opPoint),self.opPointModif.signal('positionIN'))
plug(self.dyn.signal('J'+self.opPoint),self.opPointModif.signal('jacobianIN'))
self.opPointModif.activ = False
# self.opPointModif = OpPointModifier('opmodif'+self.name)
# plug(self.dyn.signal(self.opPoint),self.opPointModif.signal('positionIN'))
# plug(self.dyn.signal('J'+self.opPoint),self.opPointModif.signal('jacobianIN'))
# self.opPointModif.activ = False
@property
def opmodif(self):
if not self.opPointModif.activ: return False
else: return self.opPointModif.getTransformation()
# @property
# def opmodif(self):
# if not self.opPointModif.activ: return False
# else: return self.opPointModif.getTransformation()
@opmodif.setter
def opmodif(self,m):
if not self.opPointModif.activ:
plug(self.opPointModif.signal('position'),self.feature.position )
plug(self.opPointModif.signal('jacobian'),self.feature.Jq)
self.opPointModif.activ = True
self.opPointModif.setTransformation(m)
# @opmodif.setter
# def opmodif(self,m):
# if not self.opPointModif.activ:
# plug(self.opPointModif.signal('position'),self.feature.position )
# plug(self.opPointModif.signal('jacobian'),self.feature.Jq)
# self.opPointModif.activ = True
# self.opPointModif.setTransformation(m)
......@@ -8,7 +8,10 @@ from numpy import matrix, identity, zeros, eye
def setGain(gain,val):
if val!=None:
if isinstance(val,int) or len(val)==1: gain.setConstant(val)
if isinstance(val,int) or isinstance(val,float):
gain.setConstant(val)
if len(val)==1:
gain.setConstant(val[0])
elif len(val)==3: gain.set( val[0],val[1],val[2])
elif len(val)==4: gain.setByPoint( val[0],val[1],val[2],val[3])
......@@ -22,7 +25,7 @@ def goto6d(task,position,gain=None):
task.featureDes.position.value = matrixToTuple(M)
task.task.resetJacobianDerivative()
def gotoNd(task,position,selec,gain=None):
def gotoNd(task,position,selec,gain=None,resetJacobian=True):
M=eye(4)
if isinstance(position,matrix): position = vectorToTuple(position)
if( len(position)==3 ): M[0:3,3] = position
......@@ -30,7 +33,7 @@ def gotoNd(task,position,selec,gain=None):
if isinstance(selec,str): task.feature.selec.value = selec
else: task.feature.selec.value = toFlags(selec)
task.featureDes.position.value = matrixToTuple(M)
task.task.resetJacobianDerivative()
if resetJacobian: task.task.resetJacobianDerivative()
setGain(task.gain,gain)
def addContactFromMetaTask(sot,contact,task=None):
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment