随笔分类 - Qt图形学
摘要:原文:Bezier曲线、B样条和NURBS的基本概念 下面是一个有四个控制点的Bezier曲线: 可以通过改变一个控制点的位置来改变曲线的形状,比如将上图曲线中左边第二个控制点往上移,就可以得到下面的曲线: 可以看到,这种曲线生成方式比较直观和灵活,我只需要放置控制点,然后调整控制点的位置来得到想要
阅读全文
摘要:这是我在做多边形圆角功能时需要用到贝塞尔曲线实现,所以学了一下。 本博客参考资源链接: http://www.srcmini.com/43305.html https://blog.csdn.net/u013935238/article/details/50012737 https://blog.c
阅读全文
摘要:原文链接:https://blog.csdn.net/fengkeyleaf/article/details/117692135 如果看过上一节的直线交点,那么这里求直线和圆的交点思路是非常相似的: 1、用直线到圆心的距离和半径相比,判断是否和圆有交点;2、求出圆心在直线上面的投影点(project
阅读全文
摘要:转发:https://blog.csdn.net/yanmy2012/article/details/8111600 已知空间三点的坐标为(x1,y1,z1),(x2,y2,z2),(x3,y3,z3),求这三个点所确定的空间圆的圆心坐标和半径。 分析可得约束条件:1、三点共面2、三点到空间圆心坐标
阅读全文
摘要:因为坐标系转换实现需要求系数矩阵,所以这里只介绍n*n维矩阵求逆矩阵的方法 单位矩阵E定义: 1 0 0 ... 0 0 1 0 ... 0 0 0 1 ... 0 0 0 0 ... 1 对角线上都是1,其他位置全是0 矩阵相乘: n*n维矩阵A和B相乘(我们用Aij表示A矩阵第i行第j列的值)
阅读全文
摘要:一、判断一个点是否在凸多边形内 根据向量叉乘的右手定则: 右手除姆指外的四指合并,姆指与其他四指垂直,四指由A向量的方向握向B向量的方向,这时姆指的指向就是A,B向量向量积的方向。就是说,AB向量积的方向垂直于AB向量确定的平面。如下图所示: 根据右手定则判断点是否在凸多边形内原理(原文链接:htt
阅读全文
摘要:抛物线的标准方程有四种形式,参数p的几何意义,是焦点到准线的距离,掌握不同形式方程的几何性质(如下表):其中P(x0,y0)为抛物线上任一点 抛物线性质:抛物线上的点到焦点的距离等于点到准线的距离,焦点到准线的距离就是p 上图内容来源于百度文库:https://wenku.baidu.com/vie
阅读全文
摘要:二维:a向量(x1,y1),b向量(x2,y2) 三维:a向量(x1,y1,z1),b向量(x2,y2,z2) 1、判断点位于直线右侧、左侧、落在直线上 x1*y1-x2*y1>0,C在直线AB左侧 x1*y1-x2*y1=0,C在直线AB上 x1*y1-x2*y1<0,C在直线AB右侧 2、判断直
阅读全文
摘要:Voronoi图是通过Delaunay三角网得到的,所以我们先来介绍一下Delaunay三角网的两个重要的性质: Delaunay三角网是由一个一个的三角形构成的,其中三角形中的每一个顶点都是Voronoi点集中的点。 1、空外接圆性质:在由点集S构成的Delaunay三角网中,每个三角形的外接圆均
阅读全文
摘要:我开始以为是this指针出错了,但是我把所有用this指针的地方注释了,还错 最后发现这个不是this指针的问题,这个问题是你的程序出现异常就会引起。我的原因是我使用QAxObject操作EXCEL,但是那个第几列,那个列值我没有初始化所以导致了错误
阅读全文
摘要:1、创建菜单里可以通过menuBar方法,这个方法好像是QWiget的方法 QMenuBar *mBar = menuBar(); 2、添加菜单 QMenu * menu = mBar->addMenu("文件"); 3、添加菜单项 QAction * action = menu->addActio
阅读全文
摘要:1、首先给Qt添加axcontainer模块,添加步骤如下: 2、添加头文件 #include<QAxObject> 3、对EXCEL的操作,下面代码来源于 https://blog.csdn.net/A18373279153/article/details/78557209 bool adminF
阅读全文
摘要:1、获取文件路径对话框 file_name = QFileDialog::getOpenFileName(self,"open file dialog","C:\Users\Administrator\Desktop","Txt files(*.txt)") ##"open file Dialog
阅读全文
摘要:方式1、 可以使用Qt组件的自定义信号,你也可以自己定义信号。这种方式信号函数的参数会传给你的槽函数的参数 方式2、QSignalMapper 原文链接:https://blog.csdn.net/cuteqt/article/details/4306900 简单的理解,可以把SignalMappe
阅读全文
摘要:QFrame penColorFrame = new QFrame; penColorFrame->setFrameStyle(QFrame::Panel | QFrame::Sunken);//Panel - QFrame画一个平板使内容看起来凸起或者凹陷, //QFrame::Sunken -
阅读全文
摘要:tr函数是用来后面需要把tr函数里面的文字翻译成其他语言而用到的函数(国际化需要,更多可去看:https://www.cnblogs.com/lsgxeva/p/7814072.html) QString出现乱码使用下面函数解决: QTextCodec::setCodecForCStrings(QT
阅读全文
摘要:1、Q_UNUSED() 的作用 Q_UNUSED() 没有实质性的作用,用来避免编译器警告 int testFunc(int a, int b, int c) { int e; return a+b+c; } //编译器会有警告 e未使用; //于是 int testFunc(int a, int
阅读全文
摘要:一、BringWindowToTop 首先介绍两个概念 1、什么是顶级窗口 顶级窗口通常是一个没有父窗体或者父窗体是桌面的窗口,通常也把应用程序的主窗体叫做“顶级窗口”(注意和置顶窗口区别) 顶级和置顶不是一码事,窗口的Z序或者topmost都是窗体样式的设置,顶级窗体应该就是父窗体句柄为0的窗体,
阅读全文