def mouseMoveEvent(self, event: QtGui.QMouseEvent): if event.buttons() == QtCore.Qt.LeftButton: diff = QtGui.QVector2D(event.localPos()) - self.m_mousePos self.m_mousePos = QtGui.QVector2D(event.localPos()) angle = diff.length() / 2.0 axis = QtGui.QVector3D(diff.y(), diff.x(), 0.0) self.m_viewRotation = QtGui.QQuaternion.fromAxisAndAngle( axis, angle) * self.m_viewRotation self.update() event.accept()
def mouseMoveEvent(self, event: QtGui.QMouseEvent): if event.buttons( ) == QtCore.Qt.RightButton and self.editState == PlyEditEnum.DRAW_PLANE: self.geoEngine.planeFromVector( self.camera.getRayGridIntersecton( QtGui.QVector2D(event.localPos()))) if event.buttons() == QtCore.Qt.LeftButton: self.camera.rotate(self.camera.mousePos, QtGui.QVector2D(event.localPos())) self.camera.mousePos = QtGui.QVector2D(event.localPos()) if event.buttons( ) == QtCore.Qt.RightButton and self.camera.isPanEnabled: self.camera.pan(self.camera.mousePos, QtGui.QVector2D(event.localPos())) self.update()
def __cloneMouseEvent(self, e: QMouseEvent): event_type = e.type() local_pos = e.localPos() button = e.button() buttons = e.buttons() modifiers = e.modifiers() clone = QMouseEvent(event_type, local_pos, button, buttons, modifiers) clone.ignore() return clone
def mouseReleaseEvent(self, event: QMouseEvent): if self.if_paint_mouse: # fixme 鼠标只能由左上画到右下,且没有判断 end_pos = event.localPos().toTuple() self.mouse_press_rect = (*self.mouse_press_rect[:2], end_pos[0] - self.mouse_press_rect[0], end_pos[1] - self.mouse_press_rect[1]) self.needed_paint_rect_list = [(self.mouse_press_rect, 'blue')] self.after_tracking_signal.emit() self.repaint()
def mousePressEvent(self, event: QtGui.QMouseEvent): pos = QtCore.QRect() pos.setX(int(event.localPos().x())) pos.setY(int(event.localPos().y())) pos.setHeight(100) pos.setWidth(400) id = self._next_id("Text Box") item = PageItem(id, pos) self._add_item(item) event.accept()
def mousePressEvent(self, event: QtGui.QMouseEvent): self.makeCurrent() self.camera.mousePos = QtGui.QVector2D(event.localPos()) if event.buttons( ) == QtCore.Qt.RightButton and self.editState == PlyEditEnum.DRAW_PLANE: click_pos = self.camera.getRayGridIntersecton(self.camera.mousePos) self.geoEngine.startPoint = click_pos self.geoEngine.movePoint = click_pos self.geoEngine.setObject(TMPPlane()) self.geoEngine.setScaleByScalar(0.0) self.geoEngine.setTranslationByVector(click_pos) self.draw_list.append(self.geoEngine.currentObject) self.update()
def mouseMoveEvent(self, ev: QMouseEvent): end_pos = ev.localPos().toTuple() step_x, step_y = [ end - start for end, start in zip(end_pos, self.start_pos) ] scale_num = self.mouse_value * self.cur_pos_rect[2] / self.max_rect[0] new_x = self.cur_pos_rect[0] - step_x * scale_num new_y = self.cur_pos_rect[1] - step_y * scale_num if new_x > 0: self.cur_pos_rect[0] = min(new_x, self.max_rect[0] - self.cur_pos_rect[2]) else: self.cur_pos_rect[0] = max(new_x, 0) if new_y > 0: self.cur_pos_rect[1] = min(new_y, self.max_rect[1] - self.cur_pos_rect[3]) else: self.cur_pos_rect[1] = max(new_y, 0) if self.last_frame is not None: self.set_image(self.last_frame)
def mousePressEvent(self, event: QMouseEvent): if self.if_paint_mouse: self.mouse_press_rect = event.localPos().toTuple()
def mousePressEvent(self, ev: QMouseEvent): self.start_pos = ev.localPos().toTuple()
def mousePressEvent(self, event: QtGui.QMouseEvent): if event.buttons() == QtCore.Qt.LeftButton: self.m_mousePos = QtGui.QVector2D(event.localPos())