- 博客(221)
- 收藏
- 关注
原创 vtk中的所有mapper类型
vtkDataSetMapper 是一个通用的数据渲染器,它依赖于内部的vtkPolyDataMapper,如果输入数据类型不是vtkPolyData类型,内部会进行额外的转换,有一定的效率影响。建议数据是什么类型就用什么类型的Mapper,这样效率更高。
2026-06-11 14:14:36
214
原创 VTK9.2和QT6编译
最后点击generate即可生成vs解决方案文件,在输出目录中点击VTK.sln即可打开。设置完成后,继续点击configure,出现报错信息,这是因为没有配置QT6的路径。VTK下载地址:https://vtk.org/files/release/如果没有VTK_QT_VERSION配置,可以添加一个,设置QT版本为6。继续点击configure,成功!
2026-05-27 17:33:17
51
原创 VTK变形图
vtkWarpVector 可实现向量变量的变形,能让模型按照每个点上自带的方向和大小进行变形新坐标 = 原坐标 + 缩放系数 × 矢量场。
2026-05-12 13:17:33
43
原创 VTK等值面
只接受 vtkPolyData 类型的输入,为 vtkPolyData 的多边形(三角面、四边形、多边形)特性优化,内部做了批量顶点/面片缓存、渲染指令合并等加速,渲染同量级多边形时比通用 vtkDataSetMapper 快 30% 以上,vtkContourFilter的输出数据类型是vtkPolyData,所以在等值面提取时,通常使用vtkPolyDataMapper。vtkContourFilter:用于生成等值线面的过滤器,3D数据生成等值面,2D数据生成等值线。
2026-05-09 14:05:47
53
原创 VTK切割图
vtkPlane:表示一个无限的平面,要由一个法向量和一个通过该平面的点来定义。vtkCutter:使用指定的vtkPlane对数据进行切割。
2026-04-29 13:28:06
40
原创 vtkInteractorStyle
可以自定义交互继承自vtkInteractorStyleTrackballCamera即可,重写想要改变的事件。vtkInteractorStyle 是一个基类,它负责处理用户的交互响应,例如鼠标键盘事件。
2026-04-27 16:20:22
33
原创 vtkCamera
SetViewUp(0,0,1):这是一个指向 Z 轴正方向的单位向量(X=0, Y=0, Z=1)vtkCamera用于控制视图不同的显示效果,比如旋转视图、缩放以及透视效果。
2026-04-27 15:48:22
125
原创 初识VTK中的类
QVTKOpenGLNativeWidget:用于在QT中嵌入显示VTK文件的widget。vtkDataSetMapper:将 vtkDataSet 类型的数据映射到图形对象。vtkGenericOpenGLRenderWindow:VTK 渲染窗口。vtkDataSet:数据集,读取的vtk文件数据存放在这里。vtkActor:表示场景中对象。vtkRenderer:渲染器。
2026-04-27 14:21:18
77
原创 visual studio调试qml文件
勾选"Enable QML debugging and profiling"项目属性 → Qt Project Settings。1.在main.cpp中添加。
2026-04-24 09:34:40
220
原创 QT国际化翻译
QT中常用的国际化方式,在代码中使用tr包裹所需要翻译的字符串,使用lupdate更新翻译文件,在Linguist中编辑所需要翻译的文字即可。使用QT_TRANSLATE_NOOP标记的字符串可以被lupdate识别。动态翻译:如果所需要翻译的文本是动态加载的,就需要进行动态翻译。3.Linguist编辑发布qm文件。可以将text转换为翻译的文本。1.代码中加载翻译文件。
2026-03-13 15:46:02
74
原创 =和{}赋值区别
在C++11中,变量和类都可以用{}进行初始化。和=最重要的区别是可以防止窄化转换。将一个小数赋值给int会编译报错。而=会把小数转换为整型。
2026-01-26 22:13:22
74
原创 keil5和arm编译器安装
keil5和arm编译器下载地址:通过网盘分享的文件:keil5和arm链接: https://pan.baidu.com/s/1dGbjkjS0jHepZ6stT6SThg?pwd=m597 提取码: m597。
2025-09-16 15:14:29
1585
原创 乌班图下安装Qt
首先下载qt在线安装工具:https://download.qt.io/official_releases/online_installers/在乌班图中运行该run文件即可,类似windows上的安装流程。
2025-08-28 14:37:11
560
原创 :-1: error: dependent ‘..\..\..\..\..\..\Software\QT\5.15.2\msvc2019\include\QtCore\qglobal.h‘ does
当在QT中使用vs编译器进行编译时,有时会报错: error: dependent ‘…\Software\QT\5.15.2\msvc2019\include\QtCore\qglobal.h’ does not exist.
2025-08-15 16:35:17
292
原创 QGrphicsScen画布网格和QGrphicsItem对齐到网格
重写QGrphicsItem得itemChange方法即可实现对齐吸附到网格线,类似于ppt中得效果。
2025-05-22 14:34:04
462
原创 QWidget无边框设置
上面使用垂直布局包含QGraphicsView 时,QGraphicsView会和四周有间距。当使用布局时,默认布局和QWidget之间有空隙。注意:下面代码只能去除标题栏。可以通过qss设置窗体边框。可设置内部控件之间的间距。上面代码即可消除间距。
2025-04-29 11:16:32
422
原创 QGraphicsItem的shape和boundingRect方法
QPainterPathStroker可用于改变QPainterPath的外观,尤其是用来控制路径的描边(stroke)宽度、形状和其他属性。通过QPainterPathStroker和shape方法可以使QGraphicsItem更容易被选中。shape控制QGraphicsItem的形状,点击该shape即可选中QGraphicsItem。boundingRect为纯虚函数,必须重写,shape为虚函数。boundingRect控制QGraphicsItem的边界。
2025-04-21 16:59:15
368
原创 QT5.15.2加载pdf为QGraphicsScene的背景
必须要安装QT源码,可以看到编译器lib目录已经有pdf相关的lib文件,d是debug1.找到源码目录:D:\soft\QT\5.15.2\Src\qtwebengine\include复制这两个文件夹到编译器的包含目录中:D:\soft\QT\5.15.2\msvc2019_64\include。
2025-03-17 20:45:27
521
原创 QxOrm生成json
注意运行时要把QxOrmd.dll和exe放在同一目录。将QxOrm中上面三个目录拷贝到新建的Qt项目中。lib目录中会生成dll和lib文件。pro文件添加使用QxOrm第三方库。下载Qxorm-1.5版本。
2025-02-13 21:17:40
403
原创 拖动锚点旋转QGraphicsItem
AnchorGraphicsItem 即为锚点,可将它放置在QGraphicsItem中心的水平位置,QGraphicsItem为AnchorGraphicsItem 的父类,拖动AnchorGraphicsItem 即可旋转QGraphicsItem。
2025-02-08 17:38:03
282
原创 使用QGraphicsProxyWidget将widget绘制在QGraphicsView中
需要注意的是,在使用QGraphicsProxyWidget时,如果调用MyGraphicsItem 的paint方法无法显示QTableWidget时,需要显示调用QGraphicsProxyWidget的paint方法才能显示,或者直接调用widget的render方法来进行绘制。上面是一个例子,使用QGraphicsProxyWidget将QTableWidget绘制在QGraphicsView中。该表格可以拖动行宽和列高并且不显示滚动条,自动调整大小,也可以右键增加行或者列。
2025-01-09 21:59:23
408
原创 QPainter,QPen,QBrush详解
QPainter的构造函数传入的对象为QPaintDevice,意为在哪个设备上绘制,当前widget即为绘制对象。Qt::BrushStyle::Dense7Pattern控制画刷样式为一系列小圆点,有各种样式都可以设置。对于普通widget,可以重写paintEvent事件来进行绘制。给QPainter设置QPen和QBrush对象即可进行绘制。QBrush:画刷,控制图形的填充颜色样式。QPen:画笔,控制图形的边框轮廓。QPainter:画家。
2025-01-06 21:27:58
459
原创 QT三点绘制圆弧
第一种是使用QPaintPath绘制,moveTo方法移动到起点。求算三点构成三角形的外接圆的圆心和半径。第二种是使用drawArc绘制。
2025-01-02 09:37:25
518
原创 QGraphicsView,QGraphicsScene,QGraphicsItem坐标和事件
QGraphicsScene中的坐标为绝对坐标,重写mousePressEvent方法,可以通过QGraphicsSceneMouseEvent的scenePos方法获取鼠标点击的场景坐标。
2024-12-31 22:03:10
568
原创 undefined reference to `vtable for错误
根本原因是在使用 Q_OBJECT 宏时,Qt 的元对象系统会生成一些额外的代码(例如信号、槽和动态属性的支持)。每当使用 Q_OBJECT 宏时,Qt 的 Meta-Object Compiler (MOC) 需要自动生成一个 .moc 文件,在我这个错误中,我发现没有生成moc文件,后面发现是我没有在pro文件中加入自己写的类文件,在使用Q_OBJECT宏的类中,一定要分开写头文件和cpp文件,并且加入到pro文件中,不然编译会报错。
2024-12-25 23:29:11
377
原创 QT安装5.15之后的版本和安装后添加其他漏装模块
安装完成之后,如果发现某个模块漏装了,可以在安装目录下MaintenanceTool.exe工具添加子模块安装,不需要卸载重装。注意5.15版本需要勾选Archive筛选才可以看到。
2024-12-25 22:15:15
432
原创 pyqt和pycharm环境搭建
python安装:python3.9.13 64位(记得勾选Path环境变量)pycharm安装:community免费版安装PyQt5和PyQt5-tool。
2024-12-23 22:15:04
1168
原创 多态中虚函数调用问题
原因是父类对象尚未创建完成,因此虚函数机制(即虚表的分派)并没有完全生效。虚函数的分派机制依赖于对象的完整类型,而在构造函数阶段,C++ 认为对象的类型是父类类型。在多态中,一般通过虚函数表会调用子类重写的虚函数,然而,有一种情况调用的还是父类的虚函数,就是在父类的构造函数中调用的是父类的虚函数,无论子类是否重写。
2024-12-21 15:54:31
272
原创 QListWidget中的svg拖放到QGraphicsView中显示
要触发dropEvent方法必须先触发dragEnterEvent和dragMoveEvent方法。dragEnterEvent控制是否可以拖进去。dropEvent控制鼠标拖动放下事件。主要是涉及到以下三个方法。
2024-12-17 17:14:08
328
1
原创 使用QGraphicsItem来加载svg实现移动放大缩小
继承QGraphicsView 重写滚轮事件可以实现视图缩放。使用下面的方法可以实现QGraphicsItem的拖动功能。
2024-12-11 14:15:27
646
原创 (二)Mat类
创建一个行数为3,列数为2,图像元素是8位无符号整型,且有3个通道,图像所有像素值被初始化为(0,0,255)opencv中默认的颜色顺序为BGR。使用cout输出上述m变量:通过构造函数来创建Mat对象的方式有很多,可自行查看源代码。
2024-09-29 10:14:25
613
原创 (一)vs2022+opencv4.10环境配置
运行项目时需要将opencv_world4100d.dll和exe文件放在同一个目录,否则链接时会报找不到dll错误。在该网站下载最新的windwos环境配置文件,双击exe解压即可获取需要使用的dll和lib。库名后缀带d的为debug模式,反之为release模式。成功加载出图片即可表示环境配置成功。
2024-09-26 09:38:07
618
原创 (十六)视图变换 正交投影 透视投影
include <glad/glad.h>//glad必须在glfw头文件之前包含//GLM//4×4单位矩阵//lookat:生成一个viewMatrix//eye:当前摄像机所在的位置//center:当前摄像机看向的那个点//up:穹顶向量//参数为盒体上下左右远近//颜色//索引0, 1, 2,//uv坐标//2 VBO创建//3 EBO创建//4 VAO创建vao = 0;
2024-07-09 21:02:55
521
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅