Beispiel #1
0
    def addBox(self, box, colour=None):
        if not Visualiser.VISUALISER_ON:
            return
        if isinstance(box, geo.Box):
            if colour == None:
                colour = visual.color.red
            org = geo.transform_point(box.origin, box.transform)
            ext = geo.transform_point(box.extent, box.transform)
            print "Visualiser: box origin=%s, extent=%s" % (str(org), str(ext))
            size = np.abs(ext - org)

            pos = org + 0.5 * size
            print "Visualiser: box position=%s, size=%s" % (str(pos),
                                                            str(size))
            angle, direction, point = tf.rotation_from_matrix(box.transform)
            print "colour,", colour
            if colour == [0, 0, 0]:
                visual.box(pos=pos,
                           size=size,
                           opacity=0.3,
                           material=visual.materials.plastic)
            else:
                visual.box(pos=pos,
                           size=size,
                           color=geo.norm(colour),
                           opacity=0.5)
Beispiel #2
0
    def addBox(self, box, colour=None, opacity=1., material=None):
        if not VISUAL_INSTALLED:
            return
        if isinstance(box, geo.Box):
            if colour == None:
                colour = visual.color.red
            if material is None:
                material = visual.materials.plastic
            org = geo.transform_point(box.origin, box.transform)
            ext = geo.transform_point(box.extent, box.transform)
            print "Visualiser: box origin=%s, extent=%s" % (str(org), str(ext))
            size = np.abs(ext - org)

            pos = org + 0.5 * size
            print "Visualiser: box position=%s, size=%s" % (str(pos),
                                                            str(size))
            angle, direction, point = tf.rotation_from_matrix(box.transform)
            print "colour,", colour
            if np.allclose(np.array(colour), np.array([0, 0, 0])):
                visual.box(pos=pos,
                           size=size,
                           material=material,
                           opacity=opacity)
            else:
                visual.box(pos=pos,
                           size=size,
                           color=colour,
                           materials=material,
                           opacity=opacity)
Beispiel #3
0
 def addBox(self, box, colour=None):
     if not Visualiser.VISUALISER_ON:
         return
     if isinstance(box, geo.Box):
         if colour == None:
             colour = visual.color.red
         org = geo.transform_point(box.origin, box.transform)
         ext = geo.transform_point(box.extent, box.transform)
         print "Visualiser: box origin=%s, extent=%s" % (str(org), str(ext))
         size = np.abs(ext - org)
         
         pos = org + 0.5*size
         print "Visualiser: box position=%s, size=%s" % (str(pos), str(size))
         angle, direction, point = tf.rotation_from_matrix(box.transform)
         print "colour,", colour
         if colour == [0,0,0]:
             visual.box(pos=pos, size=size, opacity=0.3, material=visual.materials.plastic)
         else:
             visual.box(pos=pos, size=size, color=geo.norm(colour), opacity=0.5)
Beispiel #4
0
 def addBox(self, box, colour=None, opacity=1., material=None):
     if not VISUAL_INSTALLED:
         return
     if isinstance(box, geo.Box):
         if colour == None:
             colour = visual.color.red
         if material is None:
             material = visual.materials.plastic
         org = geo.transform_point(box.origin, box.transform)
         ext = geo.transform_point(box.extent, box.transform)
         print "Visualiser: box origin=%s, extent=%s" % (str(org), str(ext))
         size = np.abs(ext - org)
         
         pos = org + 0.5*size
         print "Visualiser: box position=%s, size=%s" % (str(pos), str(size))
         angle, direction, point = tf.rotation_from_matrix(box.transform)
         print "colour,", colour
         if np.allclose(np.array(colour), np.array([0,0,0])):
             visual.box(pos=pos, size=size, material=material, opacity=opacity)
         else:
             visual.box(pos=pos, size=size, color=colour, materials=material, opacity=opacity)
def transform_direction(direction, transform):
    angle, axis, point = tf.rotation_from_matrix(transform)
    rotation_transform = tf.rotation_matrix(angle, axis)
    return np.array(np.dot(rotation_transform, np.matrix(np.concatenate((direction, [1.]))).transpose()).transpose()[0,0:3]).squeeze()