def on_mousedrag(self, move_id, mouseinfo, callback): """dragging objects around - now free movement based on view, dragging different axis etc in the manipulator to be added.""" #print "mousedrag:", move_id, mouseinfo if self.windowActive: width, height = r.getScreenSize() normalized_width = 1 / width normalized_height = 1 / height mouse_abs_x = normalized_width * mouseinfo.x mouse_abs_y = normalized_height * mouseinfo.y movedx = mouse_abs_x - self.prev_mouse_abs_x movedy = mouse_abs_y - self.prev_mouse_abs_y if self.left_button_down: if self.selection_rect_startpos is not None: # and self.active is None: rectx, recty, rectwidth, rectheight = self.selectionRectDimensions( mouseinfo) self.selection_rect.setGeometry(rectx, recty, rectwidth, rectheight) self.selection_rect.show() #XXX change? #r.logInfo("The selection rect was at: (" +str(rectx) + ", " +str(recty) + ") and size was: (" +str(rectwidth) +", "+str(rectheight)+")") rect = self.selection_rect.rect #0,0 - x, y rect.translate(mouseinfo.x, mouseinfo.y) #print rect.left(), rect.top(), rect.right(), rect.bottom() rend = r.getQRenderer() hits = rend.FrustumQuery(rect) #the wish #hits = r.frustumQuery(rect.left(), rect.top(), rect.right(), rect.bottom()) #current workaround print hits else: if self.duplicateDragStart: for ent in self.sels: self.worldstream.SendObjectDuplicatePacket( ent.id, ent.prim.UpdateFlags, 0, 0, 0) #nasty hardcoded offset self.duplicateDragStart = False ent = self.active #print "on_mousemove + hold:", mouseinfo if ent is not None and self.sel_activated and self.canmove: self.dragging = True self.manipulator.manipulate(self.sels, movedx, movedy) self.prev_mouse_abs_x = mouse_abs_x self.prev_mouse_abs_y = mouse_abs_y self.window.update_guivals(ent)
def on_mousedrag(self, move_id, mouseinfo, callback): """dragging objects around - now free movement based on view, dragging different axis etc in the manipulator to be added.""" #print "mousedrag:", move_id, mouseinfo if self.windowActive: width, height = r.getScreenSize() normalized_width = 1/width normalized_height = 1/height mouse_abs_x = normalized_width * mouseinfo.x mouse_abs_y = normalized_height * mouseinfo.y movedx = mouse_abs_x - self.prev_mouse_abs_x movedy = mouse_abs_y - self.prev_mouse_abs_y if self.left_button_down: if self.selection_rect_startpos is not None:# and self.active is None: rectx, recty, rectwidth, rectheight = self.selectionRectDimensions(mouseinfo) self.selection_rect.setGeometry(rectx, recty, rectwidth, rectheight) self.selection_rect.show() #XXX change? #r.logInfo("The selection rect was at: (" +str(rectx) + ", " +str(recty) + ") and size was: (" +str(rectwidth) +", "+str(rectheight)+")") rect = self.selection_rect.rect #0,0 - x, y rect.translate(mouseinfo.x, mouseinfo.y) #print rect.left(), rect.top(), rect.right(), rect.bottom() rend = r.getQRenderer() hits = rend.FrustumQuery(rect) #the wish #hits = r.frustumQuery(rect.left(), rect.top(), rect.right(), rect.bottom()) #current workaround print hits else: if self.duplicateDragStart: for ent in self.sels: self.worldstream.SendObjectDuplicatePacket(ent.id, ent.prim.UpdateFlags, 0, 0, 0) #nasty hardcoded offset self.duplicateDragStart = False ent = self.active #print "on_mousemove + hold:", mouseinfo if ent is not None and self.sel_activated and self.canmove: self.dragging = True self.manipulator.manipulate(self.sels, movedx, movedy) self.prev_mouse_abs_x = mouse_abs_x self.prev_mouse_abs_y = mouse_abs_y self.window.update_guivals(ent)
print ret print ret.map, ret.about(), ret.uuid, ret.list() l = ret.list() print dir(l) print l.count(2) for i in l: print i #print qm, dir(qm) #~ print r.c.widget, r.c.proxywidget #~ pe = r.getPropertyEditor() #~ #print pe, pe.setObject, pe.show #~ pe.setObject(r.c.proxywidget) #~ pe.show() if 0: #QRenderer rend = r.getQRenderer() print rend if 0: worldstream = r.getServerConnection() print "send drop bomb:", worldstream.SendGenericMessage( "DropBomb", ["here", "soon", "BIG"]) if 0: print r.c, dir(r.c) print r.c.widget print dir(r.c.proxywidget) r.c.proxywidget.hide() if 0: #qprim #qprim = r.getQPrim(1680221423)
print ret print ret.map, ret.about(), ret.uuid, ret.list() l = ret.list() print dir(l) print l.count(2) for i in l: print i #print qm, dir(qm) #~ print r.c.widget, r.c.proxywidget #~ pe = r.getPropertyEditor() #~ #print pe, pe.setObject, pe.show #~ pe.setObject(r.c.proxywidget) #~ pe.show() if 0: #QRenderer rend = r.getQRenderer() print rend if 0: worldstream = r.getServerConnection() print "send drop bomb:", worldstream.SendGenericMessage("DropBomb", ["here", "soon", "BIG"]) if 0: print r.c, dir(r.c) print r.c.widget print dir(r.c.proxywidget) r.c.proxywidget.hide() if 0: #qprim #qprim = r.getQPrim(1680221423) e = r.getEntity(1680221423)