Example #1
0
 def data(self, data):
     self.geometry = Geometry.from_data(data['geometry'])
     self.origin = Origin.from_data(
         data['origin']) if data['origin'] else None
     self.name = data['name']
     self.attr = _attr_from_data(data['attr'])
     self.init_transformation = Transformation.from_data(
         data['init_transformation']
     ) if data['init_transformation'] else None
     self.current_transformation = Transformation.from_data(
         data['current_transformation']
     ) if data['current_transformation'] else None
Example #2
0
 def data(self, data):
     self.attributes.update(data['attributes'] or {})
     self.key = data['key']
     self.frame.data = data['frame']
     self.shape.data = data['shape']
     self.features = [(Shape.from_data(shape), operation) for shape, operation in data['features']]
     self.transformations = deque([Transformation.from_data(T) for T in data['transformations']])
Example #3
0
def _publish_tf_static_xform(xform=None):
    """Start a docker service advertising  a TF2 static transformation.

    Parameters
    ----------
    xform : :obj:`list` of :obj:`list` of :obj:`float`, optional
        Transformation matrix. Defaults to a zero-matrix.
    """
    if xform:
        xform = Transformation.from_data(xform)
        log.debug("Loading matrix from run_data.")
    else:
        xform = Transformation()
        log.debug("Publishing zero matrix")

    publish_static_transform(xform, scale_factor=1000)  # mm to m scale factor