摘要:        
这次教程中,我们将在第03课的基础上,教大家如何旋转三角形和四边形。我们将让三角形沿y轴旋转,四边形沿x轴旋转,最终我们能得到一个三角形和四边形自动旋转的场景。 程序运行时效果如下: 下面进入教程: 首先打开myglwidget.h文件,我们需要增加两个变量来控制这两个对象的旋转。这两个变量加在类的    
阅读全文
 
        
            posted @ 2020-11-27 14:49
一杯清酒邀明月
阅读(779)
推荐(0)
        
            
        
        
摘要:        
这次教程中,我们将在第02课的基础上,教大家如何使用颜色。我们将一起理解两种着色模式(光滑着色与平面着色),并运用这两种模式分别给第02课的三角形和正方形着色。我们将使用平面着色给四边形着色,即给三角形涂上一种固定的颜色;使用平滑着色给三角形着色,将三角形的三个顶点的不同颜色混合在一起,创建漂亮的色    
阅读全文
 
        
            posted @ 2020-11-27 14:37
一杯清酒邀明月
阅读(537)
推荐(0)
        
            
        
        
摘要:        
这次教程中,我们将添加一个三角形和一个四边形。或许你认为这很简单,但要知道任何复杂的绘图都是从简单开始的,或者说任何复杂的模型都是可以分解成简单的图形的。所以,我们还是从简单的图形开始吧。 读完这一次教程,你还会学到如何在空间放置模型以及了解OpenGL中坐标变化。 程序运行时效果如下: 下面进入教    
阅读全文
 
        
            posted @ 2020-11-27 14:35
一杯清酒邀明月
阅读(648)
推荐(0)
        
            
        
        
摘要:        
在这个教程里,我们将在Qt Creator环境中创建OpenGL对象,它将显示一个空的OpenGL窗口,可以在窗口和全屏模式下切换,按ESC退出,它将是我们后面应用程序的基础框架。 Qt中写OpenGL与在VC上还是有不少差别的,对Qt机制不熟悉的朋友,请先大致了解下Qt的机制,再往下看教程。 程序    
阅读全文
 
        
            posted @ 2020-11-27 14:29
一杯清酒邀明月
阅读(1197)
推荐(0)
        
 
		
    
        
        
摘要:        
当从外界读入STL等三维模型时,其会按照它内部的坐标位置进行显示。因此它的位置和大小是确定的。但是在实际应用中,有可能需要人为地对这个模型在空间中进行旋转、平移或缩放等操作。VTK中有许多和旋转、平移相关的函数,下面一一进行测试。 RotateX、RotateY、RotateZ(绕自身坐标轴旋转)     
阅读全文
 
        
            posted @ 2020-11-26 16:35
一杯清酒邀明月
阅读(3527)
推荐(0)
        
            
        
        
        
            posted @ 2020-11-26 16:32
一杯清酒邀明月
阅读(762)
推荐(0)
        
            
        
        
摘要:        
先看下面的模型,这是一个Cow的三维模型, 在使用中,你是否会有下面的操作? 1.将Cow移动到某个位置——平移 2.转动到Cow背面——旋转 3.改变它大小——缩放 等等 可能你会说,这还不简单,通过操作相机就好了。然而并不是这样,操作相机,只使得相机的空间位置发生了变化,对三维物体并没有改变,要    
阅读全文
 
        
            posted @ 2020-11-26 16:31
一杯清酒邀明月
阅读(7723)
推荐(1)
        
            
        
        
摘要:        
5.1 3D坐标轴(vtkCubeAxesActor) 5.1.1 对象接口说明 SetXAxisLabelVisibility(vtkTypeBool) SetYAxisLabelVisibility(vtkTypeBool) SetZAxisLabelVisibility(vtkTypeBool    
阅读全文
 
        
            posted @ 2020-11-26 14:36
一杯清酒邀明月
阅读(5919)
推荐(0)
        
 
		
    
        
        
摘要:        
vtk颜色映射之颜色插值 两张效果图:,第一张是没有设置插值。第二张是设置了。在这里插入图片描述 处理方式: 1.设置颜色的分块 1 vtkSmartPointer hueLut = vtkLookupTable::SafeDownCast( datamap->GetLookupTable());     
阅读全文
 
        
            posted @ 2020-11-24 15:51
一杯清酒邀明月
阅读(1253)
推荐(1)
        
            
        
        
摘要:        
1 #include <vtkActor.h> 2 #include <vtkFloatArray.h> 3 #include <vtkLookupTable.h> 4 #include <vtkPointData.h> 5 #include <vtkPolyData.h> 6 #include <    
阅读全文
 
        
            posted @ 2020-11-24 15:46
一杯清酒邀明月
阅读(1711)
推荐(1)
        
            
        
        
摘要:        
1. vtkSmartPointer<vtkRenderWindow> renderWindow = ui.qvtkWidget->GetRenderWindow();//vtkSmartPointer<vtkRenderWindow>::New(); 2. 1 QWidget* widget; 2    
阅读全文
 
        
            posted @ 2020-11-24 15:21
一杯清酒邀明月
阅读(1953)
推荐(0)
        
            
        
        
摘要:        
vtkRenderWindowInteractor用于获取渲染窗口上发生的鼠标,键盘,事件事件。该类提供了独立于平台的与渲染窗口进行交互的机制,包括picking 和帧速率控制。当vtkRenderWindowInteractor(事实上是他的一个子类)观察到平台的某个事件发生时,他就通过Invok    
阅读全文
 
        
            posted @ 2020-11-24 15:20
一杯清酒邀明月
阅读(2688)
推荐(0)
        
 
		
    
        
        
摘要:        
1.生成dll 然后选择创建共享库: 创建好后,修改pro文件,改为下面两句(这样就可以创建界面了): 然后修改sharedlib.h: #ifndef SHAREDLIB_H #define SHAREDLIB_H #include <QtCore/qglobal.h> #if defined(S    
阅读全文
 
        
            posted @ 2020-11-23 17:05
一杯清酒邀明月
阅读(2576)
推荐(0)
        
            
        
        
摘要:        
1、将界面做成dll 修改pro文件 1 DEFINES += WIDGETDLL_LIBRARY 2 TEMPLATE = lib 修改头文件 1 #if defined(WIDGETDLL_LIBRARY) 2 # define WIDGETDLLSHARED_EXPORT Q_DECL_EXP    
阅读全文
 
        
            posted @ 2020-11-23 15:31
一杯清酒邀明月
阅读(831)
推荐(0)
        
            
        
        
摘要:        
1.修改配置文件 1 #TEMPLATE = app 2 3 DEFINES += CUSTOMMESSAGEBOX_LIBRARY 4 TEMPLATE = lib 2.在导出类的头文件上加如下代码 1 #if defined(CUSTOMMESSAGEBOX_LIBRARY) 2 # defin    
阅读全文
 
        
            posted @ 2020-11-23 15:27
一杯清酒邀明月
阅读(1499)
推荐(0)
        
            
        
        
摘要:        
最近手头的一个项目需要做一个QT界面,并且封装成DLL,然后再动态调用DLL给出的接口函数,使封装在DLL内部的QT界面跑起来,在网上查了很多资料,今天终于成功了,经验不敢独享,因为CSDN给了我很多帮助,将心得写在这里供大家参考。 PS:本文中谈的是用QT封装一个包含界面的DLL,然后在其他任何地    
阅读全文
 
        
            posted @ 2020-11-23 14:54
一杯清酒邀明月
阅读(1041)
推荐(0)
        
            
        
        
摘要:        
如果同时安装了PyQt4和PyQt5(自己编译或者安装预编译版本),在运行某个PyQt4或者PyQt5的Python脚本时,很有可能出现以下的错误提示: RuntimeError: the sip module implements API vX.X but the PyQt5.QtCore mod    
阅读全文
 
        
            posted @ 2020-11-23 09:20
一杯清酒邀明月
阅读(870)
推荐(0)
        
            
        
        
摘要:        
问题描述: 在anaconda的虚拟环境里, 1 import matplotlib.pyplot as plt 2 plt.figure() 运行报错如下: 1 relocation error: 2 /home/watson/anaconda3/lib/libQt5XcbQpa.so.5: 3     
阅读全文
 
        
            posted @ 2020-11-23 09:17
一杯清酒邀明月
阅读(3530)
推荐(0)
        
 
		
    
        
        
摘要:        
一、DLL的生成1.1首先创建一个lib工程,如下图所示: 1.2创建完成后,生成一个带dll.h的头文件和一个dll_global.h头文件。双击打开带dll.h的头文件,如下图所示:1.3在dll.h头文件的public中,加入如下代码:int add(int a,int b);如下图所示:1.    
阅读全文
 
        
            posted @ 2020-11-20 11:29
一杯清酒邀明月
阅读(3584)
推荐(0)
        
            
        
        
摘要:        
在讲解.h .lib .dll的关系时,回顾一下C/C++从源文件到.exe的过程: 上图可以帮助我们理解C/C++的构建过程,当你有了一些开发经验之后,你会遇到.lib .dll两种文件,很容易把人绕晕,结合上图,总结一下为什么要使用.lib和.dll,以及他们的区别. 实际上,假如我们引用了在其    
阅读全文
 
        
            posted @ 2020-11-20 10:54
一杯清酒邀明月
阅读(538)
推荐(0)