六、在Qt下通过PCL在VTK9.3.0下显示自己的pcd点云文件

前几天刚整理好VTK8.2.0,发现我们的项目使用的PCL自带的VTK是9.3.0的,脸黑了快
VTK8.2.0可参考该篇博文:五、在Qt下加载QVTKWidget控件(VTK8.2.0),生成Visual Studio项目,显示点云(C++)
没办法,重新搞下VTK9.3.0

区别:VTK8.2.0采用的是拖拽QVTKWidget控件进行相应的操作;
VTK9.3.0把这个控件给取消掉了,但是封装了QVTKOpenGLNativeWidget类,该类是一个自定义控件,继承了OpenGL Widget控件。使用的时候,需要拖拽一个OpenGL Widget控件然后提升为QVTKOpenGLNativeWidget即可;可以看出VTK官网是提倡用户进行自定义控件的~~

一、下载解压VTK9.3.0

我下载的是v9.3.0
在这里插入图片描述
老规矩,VTK-9.3.0-src存放源码,将下载好的源码文件解压到这里
VTK-9.3.0-build用于ALL_BUILD的时候存放路径
VTK-9.3.0-install-release用于INSTALL的时候存放路径
我只需要release不需要debug

在这里插入图片描述

附加其他内容: 既需要release又需要用到debug的操作如下:
多创建一个文件夹VTK-9.3.0-install-debug,CMake的时候build路径选择VTK-9.3.0-install-debug
1,ALL_BUILD Release x64
2,INSTALL Release
运行完之后,将VTK-9.3.0-install-debug内容剪切到VTK-9.3.0-install-release
这算是最终的Release的内容 然后重复操作再次
1,ALL_BUILD Debugx64
2,INSTALL Debug
运行完之后,VTK-9.3.0-install-debug文件夹下的内容就是最终的Debug的内容

二、CMake编译下VTK9.3.0

选好源码文件位置(E:/VTK9.3.0/VTK-9.3.0-src)和build文件位置(E:/VTK9.3.0/VTK-9.3.0-build),直接Configure一下
在这里插入图片描述

1,CMAKE_INSTALL_PREFIX

选择VTK编译之后的库存放的位置,E:/VTK9.3.0/VTK-9.3.0-install-release/
在这里插入图片描述

2,找到所有包含qt的

①VTK下面的全都设置为WANT,且版本设置为5

在这里插入图片描述

②Ungrouped Entries下的Qt路径要确定下是不是自己的Qt路径

我的这里系统默认是的Anaconda下的Qt路径,需要修改一下
在这里插入图片描述

3,再次Configure,不暴红,全是白色的即可进行Generate和Open Project操作

三、Open Project

1,生成 —> 批生成

①选择ALL_BUILD Release x64生成

在这里插入图片描述
时间有点久,生成完之后记得把 **√** 给取消掉哈

②选择INSTALL Release x64生成

在这里插入图片描述
这个比较快

生成完成之后可以看到文件夹下(E:\VTK9.3.0\VTK-9.3.0-install-release)多出来四个文件夹
ps:VTK8.2.0会生成五个文件夹,多一个plugins
在这里插入图片描述

2,配置VTK属性表

新建一个Qt项目,例如:VTK9.3.0
新建一个属性表,例如:vtk930,用于配置VTK
新建一个属性表,例如:pcl_new_vtk,用于配置PCL

①VC++目录

包含目录E:\VTK9.3.0\VTK-9.3.0-install-release\include\vtk-9.3
在这里插入图片描述
库目录E:\VTK9.3.0\VTK-9.3.0-install-release\lib
在这里插入图片描述

②链接器 --> 输入 --> 附加依赖项

也就是文件夹E:\VTK9.3.0\VTK-9.3.0-install-release\lib里面所有lib文件的具体名称

在这里插入图片描述
敲黑板!!!小技巧:
打开cmd
输入命令:
E:
cd E:\VTK9.3.0\VTK-9.3.0-install-release\lib
DIR *.lib*/b>YY.txt // 语句的意思是将此路径下的所后缀是.lib*的文件(*.lib**为通配符,最后一个也有一个*哈),以名称(/b)的形式写入到YY.txt
在这里插入图片描述
YY.txt里面的内容复制到附加依赖项即可
在这里插入图片描述

vtkcgns-9.3.lib
vtkChartsCore-9.3.lib
vtkCommonColor-9.3.lib
vtkCommonComputationalGeometry-9.3.lib
vtkCommonCore-9.3.lib
vtkCommonDataModel-9.3.lib
vtkCommonExecutionModel-9.3.lib
vtkCommonMath-9.3.lib
vtkCommonMisc-9.3.lib
vtkCommonSystem-9.3.lib
vtkCommonTransforms-9.3.lib
vtkDICOMParser-9.3.lib
vtkDomainsChemistry-9.3.lib
vtkDomainsChemistryOpenGL2-9.3.lib
vtkdoubleconversion-9.3.lib
vtkexodusII-9.3.lib
vtkexpat-9.3.lib
vtkFiltersAMR-9.3.lib
vtkFiltersCellGrid-9.3.lib
vtkFiltersCore-9.3.lib
vtkFiltersExtraction-9.3.lib
vtkFiltersFlowPaths-9.3.lib
vtkFiltersGeneral-9.3.lib
vtkFiltersGeneric-9.3.lib
vtkFiltersGeometry-9.3.lib
vtkFiltersGeometryPreview-9.3.lib
vtkFiltersHybrid-9.3.lib
vtkFiltersHyperTree-9.3.lib
vtkFiltersImaging-9.3.lib
vtkFiltersModeling-9.3.lib
vtkFiltersParallel-9.3.lib
vtkFiltersParallelImaging-9.3.lib
vtkFiltersPoints-9.3.lib
vtkFiltersProgrammable-9.3.lib
vtkFiltersReduction-9.3.lib
vtkFiltersSelection-9.3.lib
vtkFiltersSMP-9.3.lib
vtkFiltersSources-9.3.lib
vtkFiltersStatistics-9.3.lib
vtkFiltersTensor-9.3.lib
vtkFiltersTexture-9.3.lib
vtkFiltersTopology-9.3.lib
vtkFiltersVerdict-9.3.lib
vtkfmt-9.3.lib
vtkfreetype-9.3.lib
vtkGeovisCore-9.3.lib
vtkgl2ps-9.3.lib
vtkglew-9.3.lib
vtkGUISupportQt-9.3.lib
vtkGUISupportQtQuick-9.3.lib
vtkGUISupportQtSQL-9.3.lib
vtkhdf5-9.3.lib
vtkhdf5_hl-9.3.lib
vtkImagingColor-9.3.lib
vtkImagingCore-9.3.lib
vtkImagingFourier-9.3.lib
vtkImagingGeneral-9.3.lib
vtkImagingHybrid-9.3.lib
vtkImagingMath-9.3.lib
vtkImagingMorphological-9.3.lib
vtkImagingSources-9.3.lib
vtkImagingStatistics-9.3.lib
vtkImagingStencil-9.3.lib
vtkInfovisCore-9.3.lib
vtkInfovisLayout-9.3.lib
vtkInteractionImage-9.3.lib
vtkInteractionStyle-9.3.lib
vtkInteractionWidgets-9.3.lib
vtkIOAMR-9.3.lib
vtkIOAsynchronous-9.3.lib
vtkIOCellGrid-9.3.lib
vtkIOCesium3DTiles-9.3.lib
vtkIOCGNSReader-9.3.lib
vtkIOChemistry-9.3.lib
vtkIOCityGML-9.3.lib
vtkIOCONVERGECFD-9.3.lib
vtkIOCore-9.3.lib
vtkIOEnSight-9.3.lib
vtkIOExodus-9.3.lib
vtkIOExport-9.3.lib
vtkIOExportGL2PS-9.3.lib
vtkIOExportPDF-9.3.lib
vtkIOFLUENTCFF-9.3.lib
vtkIOGeometry-9.3.lib
vtkIOHDF-9.3.lib
vtkIOImage-9.3.lib
vtkIOImport-9.3.lib
vtkIOInfovis-9.3.lib
vtkIOIOSS-9.3.lib
vtkIOLegacy-9.3.lib
vtkIOLSDyna-9.3.lib
vtkIOMINC-9.3.lib
vtkIOMotionFX-9.3.lib
vtkIOMovie-9.3.lib
vtkIONetCDF-9.3.lib
vtkIOOggTheora-9.3.lib
vtkIOParallel-9.3.lib
vtkIOParallelXML-9.3.lib
vtkIOPLY-9.3.lib
vtkIOSegY-9.3.lib
vtkIOSQL-9.3.lib
vtkioss-9.3.lib
vtkIOTecplotTable-9.3.lib
vtkIOVeraOut-9.3.lib
vtkIOVideo-9.3.lib
vtkIOXML-9.3.lib
vtkIOXMLParser-9.3.lib
vtkjpeg-9.3.lib
vtkjsoncpp-9.3.lib
vtkkissfft-9.3.lib
vtklibharu-9.3.lib
vtklibproj-9.3.lib
vtklibxml2-9.3.lib
vtkloguru-9.3.lib
vtklz4-9.3.lib
vtklzma-9.3.lib
vtkmetaio-9.3.lib
vtknetcdf-9.3.lib
vtkogg-9.3.lib
vtkParallelCore-9.3.lib
vtkParallelDIY-9.3.lib
vtkpng-9.3.lib
vtkpugixml-9.3.lib
vtkRenderingAnnotation-9.3.lib
vtkRenderingCellGrid-9.3.lib
vtkRenderingContext2D-9.3.lib
vtkRenderingContextOpenGL2-9.3.lib
vtkRenderingCore-9.3.lib
vtkRenderingFreeType-9.3.lib
vtkRenderingGL2PSOpenGL2-9.3.lib
vtkRenderingHyperTreeGrid-9.3.lib
vtkRenderingImage-9.3.lib
vtkRenderingLabel-9.3.lib
vtkRenderingLICOpenGL2-9.3.lib
vtkRenderingLOD-9.3.lib
vtkRenderingOpenGL2-9.3.lib
vtkRenderingQt-9.3.lib
vtkRenderingSceneGraph-9.3.lib
vtkRenderingUI-9.3.lib
vtkRenderingVolume-9.3.lib
vtkRenderingVolumeOpenGL2-9.3.lib
vtkRenderingVtkJS-9.3.lib
vtksqlite-9.3.lib
vtksys-9.3.lib
vtkTestingRendering-9.3.lib
vtktheora-9.3.lib
vtktiff-9.3.lib
vtkverdict-9.3.lib
vtkViewsContext2D-9.3.lib
vtkViewsCore-9.3.lib
vtkViewsInfovis-9.3.lib
vtkViewsQt-9.3.lib
vtkWrappingTools-9.3.lib
vtkzlib-9.3.lib

在这里插入图片描述

3,配置PCL属性表

①VC++目录

包含目录:
E:\Program Files\PCL 1.14.0\bin
E:\Program Files\PCL 1.14.0\3rdParty\Boost\include\boost-1_84
E:\Program Files\PCL 1.14.0\3rdParty\Eigen3\include\eigen3
E:\Program Files\PCL 1.14.0\3rdParty\OpenNI2\Include
E:\Program Files\PCL 1.14.0\3rdParty\FLANN\include
E:\Program Files\PCL 1.14.0\3rdParty\Qhull\include
E:\Program Files\PCL 1.14.0\include\pcl-1.14
发现没,没有配置PCL自带的VTK,这点要注意哈,因为之前的VTK配置过了,这里不适应PCL自带的VTK了
在这里插入图片描述
库目录
E:\Program Files\PCL 1.14.0\3rdParty\OpenNI2\Lib
E:\Program Files\PCL 1.14.0\3rdParty\Qhull\lib
E:\Program Files\PCL 1.14.0\3rdParty\FLANN\lib
E:\Program Files\PCL 1.14.0\3rdParty\Boost\lib
E:\Program Files\PCL 1.14.0\lib
发现了吧,也没有配置PCL自带的VTK!
在这里插入图片描述

②链接器 --> 输入 --> 附加依赖项

也就是你安装的PCL所在文件夹E:\Program Files\PCL 1.14.0\lib里面所有lib文件的具体名称
在这里插入图片描述

配置VTK属性表中有所介绍,这里就不再赘述了,

在这里插入图片描述
在这里插入图片描述

vtkcgns-9.3.lib
vtkChartsCore-9.3.lib
vtkCommonColor-9.3.lib
vtkCommonComputationalGeometry-9.3.lib
vtkCommonCore-9.3.lib
vtkCommonDataModel-9.3.lib
vtkCommonExecutionModel-9.3.lib
vtkCommonMath-9.3.lib
vtkCommonMisc-9.3.lib
vtkCommonSystem-9.3.lib
vtkCommonTransforms-9.3.lib
vtkDICOMParser-9.3.lib
vtkDomainsChemistry-9.3.lib
vtkDomainsChemistryOpenGL2-9.3.lib
vtkdoubleconversion-9.3.lib
vtkexodusII-9.3.lib
vtkexpat-9.3.lib
vtkFiltersAMR-9.3.lib
vtkFiltersCellGrid-9.3.lib
vtkFiltersCore-9.3.lib
vtkFiltersExtraction-9.3.lib
vtkFiltersFlowPaths-9.3.lib
vtkFiltersGeneral-9.3.lib
vtkFiltersGeneric-9.3.lib
vtkFiltersGeometry-9.3.lib
vtkFiltersGeometryPreview-9.3.lib
vtkFiltersHybrid-9.3.lib
vtkFiltersHyperTree-9.3.lib
vtkFiltersImaging-9.3.lib
vtkFiltersModeling-9.3.lib
vtkFiltersParallel-9.3.lib
vtkFiltersParallelImaging-9.3.lib
vtkFiltersPoints-9.3.lib
vtkFiltersProgrammable-9.3.lib
vtkFiltersReduction-9.3.lib
vtkFiltersSelection-9.3.lib
vtkFiltersSMP-9.3.lib
vtkFiltersSources-9.3.lib
vtkFiltersStatistics-9.3.lib
vtkFiltersTensor-9.3.lib
vtkFiltersTexture-9.3.lib
vtkFiltersTopology-9.3.lib
vtkFiltersVerdict-9.3.lib
vtkfmt-9.3.lib
vtkfreetype-9.3.lib
vtkGeovisCore-9.3.lib
vtkgl2ps-9.3.lib
vtkglew-9.3.lib
vtkGUISupportQt-9.3.lib
vtkGUISupportQtQuick-9.3.lib
vtkGUISupportQtSQL-9.3.lib
vtkhdf5-9.3.lib
vtkhdf5_hl-9.3.lib
vtkImagingColor-9.3.lib
vtkImagingCore-9.3.lib
vtkImagingFourier-9.3.lib
vtkImagingGeneral-9.3.lib
vtkImagingHybrid-9.3.lib
vtkImagingMath-9.3.lib
vtkImagingMorphological-9.3.lib
vtkImagingSources-9.3.lib
vtkImagingStatistics-9.3.lib
vtkImagingStencil-9.3.lib
vtkInfovisCore-9.3.lib
vtkInfovisLayout-9.3.lib
vtkInteractionImage-9.3.lib
vtkInteractionStyle-9.3.lib
vtkInteractionWidgets-9.3.lib
vtkIOAMR-9.3.lib
vtkIOAsynchronous-9.3.lib
vtkIOCellGrid-9.3.lib
vtkIOCesium3DTiles-9.3.lib
vtkIOCGNSReader-9.3.lib
vtkIOChemistry-9.3.lib
vtkIOCityGML-9.3.lib
vtkIOCONVERGECFD-9.3.lib
vtkIOCore-9.3.lib
vtkIOEnSight-9.3.lib
vtkIOExodus-9.3.lib
vtkIOExport-9.3.lib
vtkIOExportGL2PS-9.3.lib
vtkIOExportPDF-9.3.lib
vtkIOFLUENTCFF-9.3.lib
vtkIOGeometry-9.3.lib
vtkIOHDF-9.3.lib
vtkIOImage-9.3.lib
vtkIOImport-9.3.lib
vtkIOInfovis-9.3.lib
vtkIOIOSS-9.3.lib
vtkIOLegacy-9.3.lib
vtkIOLSDyna-9.3.lib
vtkIOMINC-9.3.lib
vtkIOMotionFX-9.3.lib
vtkIOMovie-9.3.lib
vtkIONetCDF-9.3.lib
vtkIOOggTheora-9.3.lib
vtkIOParallel-9.3.lib
vtkIOParallelXML-9.3.lib
vtkIOPLY-9.3.lib
vtkIOSegY-9.3.lib
vtkIOSQL-9.3.lib
vtkioss-9.3.lib
vtkIOTecplotTable-9.3.lib
vtkIOVeraOut-9.3.lib
vtkIOVideo-9.3.lib
vtkIOXML-9.3.lib
vtkIOXMLParser-9.3.lib
vtkjpeg-9.3.lib
vtkjsoncpp-9.3.lib
vtkkissfft-9.3.lib
vtklibharu-9.3.lib
vtklibproj-9.3.lib
vtklibxml2-9.3.lib
vtkloguru-9.3.lib
vtklz4-9.3.lib
vtklzma-9.3.lib
vtkmetaio-9.3.lib
vtknetcdf-9.3.lib
vtkogg-9.3.lib
vtkParallelCore-9.3.lib
vtkParallelDIY-9.3.lib
vtkpng-9.3.lib
vtkpugixml-9.3.lib
vtkRenderingAnnotation-9.3.lib
vtkRenderingCellGrid-9.3.lib
vtkRenderingContext2D-9.3.lib
vtkRenderingContextOpenGL2-9.3.lib
vtkRenderingCore-9.3.lib
vtkRenderingFreeType-9.3.lib
vtkRenderingGL2PSOpenGL2-9.3.lib
vtkRenderingHyperTreeGrid-9.3.lib
vtkRenderingImage-9.3.lib
vtkRenderingLabel-9.3.lib
vtkRenderingLICOpenGL2-9.3.lib
vtkRenderingLOD-9.3.lib
vtkRenderingOpenGL2-9.3.lib
vtkRenderingQt-9.3.lib
vtkRenderingSceneGraph-9.3.lib
vtkRenderingUI-9.3.lib
vtkRenderingVolume-9.3.lib
vtkRenderingVolumeOpenGL2-9.3.lib
vtkRenderingVtkJS-9.3.lib
vtksqlite-9.3.lib
vtksys-9.3.lib
vtkTestingRendering-9.3.lib
vtktheora-9.3.lib
vtktiff-9.3.lib
vtkverdict-9.3.lib
vtkViewsContext2D-9.3.lib
vtkViewsCore-9.3.lib
vtkViewsInfovis-9.3.lib
vtkViewsQt-9.3.lib
vtkWrappingTools-9.3.lib
vtkzlib-9.3.lib

在这里插入图片描述

4,配置系统环境变量

VTK:E:\VTK9.3.0\VTK-9.3.0-install-release\bin
PCL:E:\Program Files\PCL 1.14.0
在这里插入图片描述
在这里插入图片描述

四、QVTKOpenGLNativeWidget控件

拖拽一个openGLWidget控件
我的是QMainWindow,这里就添加一个菜单项进行打开pcd文件
在这里插入图片描述
右击openGLWidget控件,选择提升为
在这里插入图片描述
提升为QVTKOpenGLNativeWidget控件
基类名称:QOpenGLWidget
提升的类名称:QVTKOpenGLNativeWidget
头文件:qvtkopenglnativewidget.h
在这里插入图片描述
我们也可以在E:\VTK9.3.0\VTK-9.3.0-install-release\include\vtk-9.3下也找到这个头文件
在这里插入图片描述

最终控件的效果如下
在这里插入图片描述

五、通过PCL在QVTKOpenGLNativeWidget中显示PCD文件

我的测试项目结构如下
在这里插入图片描述

1,main.cpp

压根没动,默认即可

#include "VTK930.h"
#include <QtWidgets/QApplication>

int main(int argc, char *argv[])
{
    QApplication a(argc, argv);
    VTK930 w;
    w.show();
    return a.exec();
}

2,VTK930.h

#pragma once

#include "ui_VTK930.h"

#include <pcl/io/pcd_io.h>
#include <pcl/visualization/pcl_visualizer.h>
#include <vtkGenericOpenGLRenderWindow.h>


class VTK930 : public QMainWindow {
  Q_OBJECT

 public:
  VTK930(QWidget *parent = nullptr);
  ~VTK930();

 private:
  Ui::VTK930Class ui;

  pcl::PointCloud<pcl::PointXYZ>::Ptr cloud;
  boost::shared_ptr<pcl::visualization::PCLVisualizer> view;

  void initialVtkWidget();

 private slots:
  void onOpen();
};

3,VTK930.cpp

#include "VTK930.h"
#include <QFileDialog>

VTK930::VTK930(QWidget *parent) : QMainWindow(parent) {
  ui.setupUi(this);

  initialVtkWidget();

  connect(ui.actionOpen, SIGNAL(triggered()), this, SLOT(onOpen()));
}

VTK930::~VTK930() {}

void VTK930::onOpen() {

  pcl::PointCloud<pcl::PointXYZ>::Ptr cloud(
      new pcl::PointCloud<pcl::PointXYZ>());  
  QString fileName = QFileDialog::getOpenFileName(this, "Open PointCloud", ".",
                                                  "Open PCD files(*.pcd)");
  if (fileName == "") return;
  pcl::io::loadPCDFile(fileName.toStdString(), *cloud);
  view->addPointCloud(cloud, "cloud");
  view->resetCamera(); 
  view->spin();
  ui.openGLWidget->update();
}

void VTK930::initialVtkWidget() {
  vtkSmartPointer<vtkRenderer> renderer = vtkSmartPointer<vtkRenderer>::New();
  vtkSmartPointer<vtkGenericOpenGLRenderWindow> renderWindow =
      vtkSmartPointer<vtkGenericOpenGLRenderWindow>::New();
  renderWindow->AddRenderer(renderer);
  view.reset(new pcl::visualization::PCLVisualizer(renderer, renderWindow,
                                                   "viewer", false));
  view->setupInteractor(ui.openGLWidget->interactor(),
                        ui.openGLWidget->renderWindow());
  ui.openGLWidget->setRenderWindow(view->getRenderWindow());
}

六、运行效果展示

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

七、其他

经过这几天的学习,发现了很多问题,网上出现QTWidget控件的大都是VTK8.2.0版本之前的,而且VTK9.3.0与之前的版本确实有很大的差异,还得去花功夫认真研究学习

E:\VTK9.3.0\VTK-9.3.0-install-release\include\vtk-9.3下的QVTKOpenGLWindow.h
这个头文件就跟之前控件(QVTKWidget)所含有的函数方法有很多差异的地方,需要多研究学习,加油吧!!!
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/730126.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

02 Shell 编程之条件语句

目录 2.1 条件测试语句 2.1.1 文件测试 2.1.2 整数值比较 2.1.3 字符串比较 2.1.4 逻辑测试 2.2 if 条件语句 2.2.1 if 语句的结构 1. 单分支if 语句 2. 双分支if 语句 3. 多分支if 语句 2.2.2 if 语句应用示例 1. 单分支if 语句应用 2. 双分支if 语句应用 3. 多分支if 语句应…

chrome浏览器 network 显示感叹号(chrome network thinttling is enabled)

chrome浏览器上network出现一个黄色感叹号&#xff0c;鼠标移上去提示chrome network thinttling is enabled&#xff0c;这是因为开启了节流模式&#xff0c;直接把网络模式改为no throttling&#xff08;有的浏览器为online&#xff09;就可以了。 ##Tips&#xff1a; 1、n…

《图数据库:理论与实践》书籍销售火爆,二次印刷重磅来袭!

好书共享&#xff0c;就在此刻&#xff01; 由创邻科技联合电子工业出版社匠心打磨三年&#xff0c;最终成稿的图数据库书籍《图数据库&#xff1a;理论与实践》发行上线后&#xff0c;获得了广泛好评&#xff0c;各平台销量迅速破千&#xff0c;并荣登京东 “数据库图书榜”热…

【Solr 学习笔记】Solr 源码启动教程

Solr 源码启动教程 本教程记录了如何通过 IDEA 启动并调试 Solr 源码&#xff0c;从 Solr9 开始 Solr 项目已由 ant 方式改成了 gradle 构建方式&#xff0c;本教程将以 Solr 9 为例进行演示&#xff0c;IDE 选择使用 IntelliJ IDEA。 Solr github 地址&#xff1a;https://gi…

牛拜克拉丝的wordpress免费企业模板

wordpress免费企业模板 挺简洁实用的wordpress免费企业模板&#xff0c;黄色模板搭建公司网站。 演示 https://www.wpniu.com/themes/40.html

信创CPU秘史(上):大厂销售的路子有多野?

最近接到一份金融行业粉丝的投稿&#xff0c;内容之奇令人咋舌&#xff0c;尽是些闻所未闻的新知识。无论是内容本身&#xff0c;还是获取内容的渠道&#xff0c;都非常有意思。今年我们把舞台交给老金&#xff0c;一起来听听信创大厂间的那些小秘密。 大家好&#xff0c;我叫老…

React是怎么进行事件处理的

什么是事件&#xff1f; 事件是指一些可以通过脚本响应的页面动作。当用户按下鼠标或者提交一个表单等等时候&#xff0c;事件都会出现。事件处理是一段JavaScript代码&#xff0c;总是与页面中的特定部分以及一定的事件相关联。当与页面特定部分相关联的事件发生时&#xff0c…

文本三剑客其二

文本三剑客其二 sed和awk grep就是查找文本当中的内容&#xff0c;扩展正则表达式。 sed 对文本内容进行增删改查 sed是一种流编辑器&#xff0c;一次处理一行内容。 如果只是展示&#xff0c;会放在缓冲区&#xff08;模式空间&#xff09;&#xff0c;展示结束之后&…

vue3自动导入---组件库elements-ui,vuetify以及scss样式的自动导入

自动导入 我们在使用第三方组件库和css样式文件时&#xff0c;都需要进行引入&#xff0c;可以在单个组件内单独引用&#xff0c;也可以在全局引入或一次引入所有组件&#xff1b;但是&#xff0c;一般情况下我们都不会全部引入&#xff0c;这会是打包的结果变大&#xff0c;而…

idea插件开发之如何获取用户输入的变量名(类变量,局部变量等)

写在前面 比如我们要开发一个变量名称补全功能的插件&#xff0c;此时就需要在用户输入时获取当前的最新输入内容&#xff0c;本文就来看下如何来做。 1&#xff1a;开发 首先我们需要创建一个CompletionContributor的子类&#xff0c;还需要一个CompletionProvider的子类来…

【权威发布】2024年环境科学、旅游与产业经济国际会议(ICESTIE 2024)

2024年环境科学、旅游与产业经济国际会议 2024 International Conference on Environmental Science, Tourism and Industrial Economics 会议简介 2024年环境科学、旅游与产业经济国际会议旨在汇聚全球该领域的专家学者&#xff0c;共同探讨环境科学与旅游产业的融合发展&…

ArcGIS图斑分区(组)排序—从上到下从左到右

​​ 点击下方全系列课程学习 点击学习—>ArcGIS全系列实战视频教程——9个单一课程组合系列直播回放 ArcGIS图斑分区&#xff08;组&#xff09;从上到下从左到右排序 是之前的内容的升级 GIS技巧100例——12ArcGIS图斑空间排序 关于今天的内容 我们在19年已经和大家分…

vue3 中实现 验证码发送 刷新不变倒计时

今天实现一个倒计时的功能 在平常开发前端的功能的时候 不管是 移动端还是web端 我们都会有注册 登录 中的发送验证码功能 实现绑定以及注册功能。今天我主要分享一下当前的验证码实现原理。 有两种做法(我目前认为以及看到的) ① 做一个简单的倒计时 ② 实时监测倒计时 刷…

食品行业BC一体化运营方案

一、引言 在当前的市场环境下&#xff0c;食品行业面临着日益激烈的竞争和不断变化的消费者需求。传统的经营模式已无法满足现代消费者对高效、便捷和个性化服务的要求。因此&#xff0c;实施BC&#xff08;Business to Consumer&#xff09;一体化运营方案成为必然选择。通过…

顶顶通呼叫中心中间件-替换授权文件使授权文件生效指南

一、登录my.ddrj.com下载授权文件 登录地址&#xff1a;用户-顶顶通授权管理系统 登录之后正式授权然后点击查看把license.json下载下来&#xff0c;然后替换到fs的授权文件路径&#xff0c;默认路径是&#xff1a;/ddt/fs/conf 如果安装路径不一样就需要自己去看看授权文件存…

分流电阻器的原理、特性、参数要点及其与分压电阻的区别详解

分流电阻器是一种低阻值电阻器&#xff0c;设计用于在电路中并联连接&#xff0c;以提供一个低阻抗的旁路或分流路径&#xff0c;从而使得一部分电流可以通过这个路径流动。它的主要功能是测量或限制电流&#xff0c;尤其适用于大电流检测的应用场景。分流电阻通过在其两端产生…

windows下cmd命令行模式中cd变换路径命令无效的解决办法

一&#xff0c;出现的情况 二&#xff0c;解决方法 当出现转换盘的时候打开 cmd 之后可能是无法生效的 &#xff0c;因为在cmd 中转换盘首先需要用到换盘符 。 Solve1 : 先进行换盘 C: c: // 转换到 C盘 D: d: // 转化到 D盘 Solve2 : 直接进行强转 cd /dE:\ACM算法资源\XCP…

如何使用mvnd,随着mvnd的1.0.0发布,Maven构建速度提升了3倍不止。

maven-mvnd-1.0.0-m8-m40-windows-amd64 1、什么是 Mvnd呢 Mvnd 是 Apache Maven Daemon 的简称&#xff0c;是一个通过 GraalVM 构建的本地可执行文件&#xff0c;用于加速 Maven 构建。Mvnd 的设计理念是通过在后台运行一个守护进程来避免每次构建时启动新的 JVM&#xff0c…

【人机交互 复习】第7章 可视化设计

一、窗口界面类型 1.多文档界面 &#xff08;1&#xff09;优点 a.节省系统资源 b.最小的可视集 c.协同工作区 d.多文档同时可视化 &#xff08;2&#xff09;缺点 a.菜单随活动文档窗口状态变化&#xff0c;导致不一致性 b.文档窗口必须在主窗口内部&#xff0c;减弱多文档显…

易支付宝塔一键部署项目 懒人专用包 制作

宝塔一键部署说明 https://www.bt.cn/bbs/thread-33063-1-1.html 1. auto_install.json {"php_ext":"fileinfo","chmod":[],"success_url":"install/?step3&jump1","php_versions":"80","db…