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
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']])
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