十、PyQtgraph使用QtDesigner提升3D图形界面

这篇具有很好参考价值的文章主要介绍了十、PyQtgraph使用QtDesigner提升3D图形界面。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

PyQtGraph是一个基于PyQt的图形绘制库,它提供了丰富的2D和3D图形绘制功能。您可以使用Qt Designer来创建图形界面,然后在PyQtGraph中使用它们。

下面是一个示例,演示了如何在Qt Designer中创建一个图形界面,然后在PyQtGraph中使用它:

  1. 创建图形界面

在Qt Designer中创建一个图形界面:创建一个窗口,并在窗口中添加一个按钮和一个图形视图。选择OpenGL Widget。

十、PyQtgraph使用QtDesigner提升3D图形界面
  1. 保存ui

将界面保存为.ui文件:在Qt Designer中,选择“文件”>“保存”,并选择.ui文件作为文件类型。

十、PyQtgraph使用QtDesigner提升3D图形界面
  1. 提升显示控件
  1. 下面开始提升OpenGLWidget显示控件,选中我创建的QOpenGLWidget,右键,选择“提升为”

十、PyQtgraph使用QtDesigner提升3D图形界面
  1. 然后进入Promoted界面,设置需要提升到的类名GLViewWidget,头文件直接选择pyqtgraph.opengl,单击add添加这个提升选项。

十、PyQtgraph使用QtDesigner提升3D图形界面
  1. 选中Global include,最后单击Promote进行提升操作

十、PyQtgraph使用QtDesigner提升3D图形界面
  1. 提升完成后的界面是这样子的:

十、PyQtgraph使用QtDesigner提升3D图形界面
  1. 创建一个python工程

配置好pyuic5,创建main.py。将ui后缀,生成py代码,我的ui名称是disp_test.ui->disp_test.py。

十、PyQtgraph使用QtDesigner提升3D图形界面
  1. Pyuic代码

以下是disp_test.py的自动生成的代码。

# -*- coding: utf-8 -*-

# Form implementation generated from reading ui file 'disp_test.ui'
#
# Created by: PyQt5 UI code generator 5.15.7
#
# WARNING: Any manual changes made to this file will be lost when pyuic5 is
# run again.  Do not edit this file unless you know what you are doing.


from PyQt5 import QtCore, QtGui, QtWidgets


class Ui_Form(object):
    def setupUi(self, Form):
        Form.setObjectName("Form")
        Form.resize(1087, 739)
        self.pushButton = QtWidgets.QPushButton(Form)
        self.pushButton.setGeometry(QtCore.QRect(440, 690, 93, 28))
        self.pushButton.setObjectName("pushButton")
        self.openGLWidget = GLViewWidget(Form)
        self.openGLWidget.setGeometry(QtCore.QRect(110, 50, 881, 541))
        self.openGLWidget.setObjectName("openGLWidget")

        self.retranslateUi(Form)
        QtCore.QMetaObject.connectSlotsByName(Form)

    def retranslateUi(self, Form):
        _translate = QtCore.QCoreApplication.translate
        Form.setWindowTitle(_translate("Form", "Form"))
        self.pushButton.setText(_translate("Form", "PushButton"))
from pyqtgraph.opengl import GLViewWidget
  1. 代码

main.py的代码如下

import sys
import pyqtgraph as pg
import pyqtgraph.opengl as gl
from PyQt5 import QtWidgets
from disp_test import Ui_Form  # 加载绘制的UI界面
app = QtWidgets.QApplication(sys.argv)


class Create_point_cloud(QtWidgets.QWidget, Ui_Form):  # 系统主界面
    def __init__(self):
        super(Create_point_cloud, self).__init__()
        self.com = None
        self.com_ser = None
        self.setupUi(self)
        self.sp = None
        self.tr = None
        self.initFunction()

    def initFunction(self):
        self.openGLWidget.opts['distance'] = 2000  # 初始视角高度
        self.openGLWidget.setWindowTitle('GLScatterPlotItem')  # 定义窗口标题
        gl_axis = gl.GLAxisItem()  # 添加xyz坐标轴
        gl_axis.glOptions = 'opaque'
        gl_axis.setSize(1000, 1000, 1000)
        self.openGLWidget.addItem(gl_axis)


if __name__ == '__main__':
    print("程序开始")
    point_cloud_ui = Create_point_cloud()
    point_cloud_ui.show()
    sys.exit(app.exec_())
  1. 运行结果

可以显示3D控件了,可以看见轴坐标了。

十、PyQtgraph使用QtDesigner提升3D图形界面

原工程已经上传到资源,请移步下载:

https://download.csdn.net/download/weixin_39888010/87433207文章来源地址https://www.toymoban.com/news/detail-477614.html

到了这里,关于十、PyQtgraph使用QtDesigner提升3D图形界面的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包