东莞网站推广教程,扬中经济,昆明网站推广咨询平台,可以做淘宝推广的网站吗《pyqtopen3d》open3d可视化界面集成到qt中 一、效果显示二、代码三、资源下载 一、效果显示 二、代码
参考链接
main.py
import sys
import open3d as o3d
from PyQt5.QtWidgets import QApplication, QMainWindow, QWidget
from PyQt5.QtGui import QWindow
from PyQt5.Qt… 《pyqtopen3d》open3d可视化界面集成到qt中 一、效果显示二、代码三、资源下载 一、效果显示 二、代码
参考链接
main.py
import sys
import open3d as o3d
from PyQt5.QtWidgets import QApplication, QMainWindow, QWidget
from PyQt5.QtGui import QWindow
from PyQt5.QtCore import QTimer
import win32gui
import MainWindowclass MainWindows(QMainWindow):def __init__(self, parentNone):super(MainWindows, self).__init__(parent)self.ui MainWindow.Ui_MainWindow()self.ui.setupUi(self)self.vis o3d.visualization.Visualizer()self.vis.create_window(visibleFalse) # visibleFalse窗口不显示避免启动时一闪而过self.winid win32gui.FindWindow(GLFW30, None)self.sub_window QWindow.fromWinId(self.winid)self.displayer QWidget.createWindowContainer(self.sub_window)self.ui.gridLayout.addWidget(self.displayer)self.clock QTimer(self)self.clock.timeout.connect(self.draw_update)self.clock.start(20)self.draw_test()def draw_test(self):pcd o3d.io.read_point_cloud(output1.ply) # 点云路径self.vis.add_geometry(pcd)self.vis.update_geometry(pcd)def draw_update(self):self.vis.poll_events()self.vis.update_renderer()def __del__(self):# self.clock.stop() #这一行其实并不需要self.vis.destroy_window()if __name__ __main__:app QApplication(sys.argv)window MainWindows()window.show()sys.exit(app.exec_())mainWindow.py
# -*- coding: utf-8 -*-# Form implementation generated from reading ui file MainWindow.ui
#
# Created by: PyQt5 UI code generator 5.15.9
#
# 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, QtWidgetsclass Ui_MainWindow(object):def setupUi(self, MainWindow):MainWindow.setObjectName(MainWindow)MainWindow.resize(800, 600)self.centralwidget QtWidgets.QWidget(MainWindow)self.centralwidget.setObjectName(centralwidget)self.gridLayout_2 QtWidgets.QGridLayout(self.centralwidget)self.gridLayout_2.setObjectName(gridLayout_2)self.gridLayout QtWidgets.QGridLayout()self.gridLayout.setObjectName(gridLayout)self.gridLayout_2.addLayout(self.gridLayout, 0, 0, 1, 1)MainWindow.setCentralWidget(self.centralwidget)self.menubar QtWidgets.QMenuBar(MainWindow)self.menubar.setGeometry(QtCore.QRect(0, 0, 800, 22))self.menubar.setObjectName(menubar)MainWindow.setMenuBar(self.menubar)self.statusbar QtWidgets.QStatusBar(MainWindow)self.statusbar.setObjectName(statusbar)MainWindow.setStatusBar(self.statusbar)self.retranslateUi(MainWindow)QtCore.QMetaObject.connectSlotsByName(MainWindow)def retranslateUi(self, MainWindow):_translate QtCore.QCoreApplication.translateMainWindow.setWindowTitle(_translate(MainWindow, MainWindow))
ui文件在下载链接中
三、资源下载
下载链接