Qt之图形(转换)】的更多相关文章

QT 基本图形绘制 1.告诉绘制引擎一些东西 QPainter::Antialiasing 在可能的情况下,反锯齿       QPainter::TextAntialiasing 在可能的情况下,文字反锯齿       QPainter::SmoothPixmapTransform   采用平滑的Pixmap变换算法 2.绘制函数         3.风格   1)画刷风格   2)画笔风格 3)画笔连接点风格 4)顶端风格 4.绘图前的准备 1  如果要在绘图设备(一般为窗口部件)上绘图,只…
简述 QTransform类指定坐标系的2D转换,可以指定平移.缩放.扭曲(剪切).旋转或投影坐标系.绘制图形时,通常会使用. QTransform与QMatrix的不同之处在于,它是一个真正的3x3矩阵,允许视角转换,QTransform的 toAffine()方法允许将QTransform转换到QMatrix.如果视角转换已在矩阵指定,则转换将导致数据丢失. 简述 常用接口 正常 效果 源码 平移 效果 源码 旋转 效果 源码 缩放 效果 源码 扭曲 效果 源码 常用接口 函数 描述 tra…
简述 图形视图(Graphics View)提供了一个平台,用于大量自定义2D图元的管理与交互,并提供了一个视图部件(view widget)来显示可以缩放和旋转的图元. 框架包括一个事件传播架构,支持场景(Scene)中的图元(Item)进行精确的双精度交互功能.图元可以处理键盘事件.鼠标按下.移动.释放和双击事件,同时也能跟踪鼠标移动. 图形视图使用一个BSP(Binary Space Partitioning - 二叉空间分割)树,以提供对图形元素的快速查找,正因为如此,它可以使超大的场景…
简述 QPainterPath 类(绘图路径)提供了一个容器,用于绘图操作,可以创建和重用图形形状. 绘图路径是由许多图形化的构建块组成的对象,例如:矩形.椭圆.直线和曲线.构建块可以加入在封闭的子路径中,例如:矩形或椭圆.封闭的路径的起点和终点是一致的,或者他们可以作为未封闭的子路径独立存在,如:直线和曲线. QPainterPath 可以被填充.描绘轮廓.裁剪.要为一个指定的绘图路径生成可填充的轮廓,可以使用 QPainterPathStroker 类.与正常绘图相比,QPainterPat…
简述 前面我们讲解了Qt图形的基本绘制,其中包括: 绘制文本.直线.直线.矩形.弧线.椭圆.多边形.图片,以及其它一些高级用法,比如:渐变.转换等. 本节我们来详细讲解文字的绘制.主要通过QPainter的darwText()函数来实现,里面包含多个重载函数,其中,可以通过QRect来指定绘制的区域,也可以通过QPoint来指定绘制的起始点. QFont类可以辅助设置文本的大小.粗细.字符间距等,然后使用setFont()来设置. QFontInfo类用来获取字体的信息,可以通过fontInfo…
3DSlicer, a free open source software for visualization and medical image computing AcetoneISO:镜像文件挂载软件 Adobe Photoshop Album, an image organizing application Arora:一款跨平台的开源网页浏览器 Autodesk MotionBuilder, professional 3D character animation software Au…
3DSlicer, a free open source software for visualization and medical image computing AcetoneISO:镜像文件挂载软件 Adobe Photoshop Album, an image organizing application Arora:一款跨平台的开源网页浏览器 Autodesk MotionBuilder, professional 3D character animation software Au…
QImage cvMat2QImage(const cv::Mat& mat) { // 8-bits unsigned, NO. OF CHANNELS = 1 if(mat.type() == CV_8UC1) { QImage image(mat.cols, mat.rows, QImage::Format_Indexed8); // Set the color table (used to translate colour indexes to qRgb values) image.se…
简述 使用QPainter绘制图形或者图像时,在重叠区域使用组合模式(Composition_mode).在绘图设备上通过组合模式使用QImage时,必须使用Format_ARGB32_Premultiplied和Format_ARGB32格式之一. 简述 效果 源码 更多参考 效果 源码 ... painter.drawImage(0, 0, destinationImage); painter.setCompositionMode(QPainter::CompositionMode_Dest…
简述 关于简笔画的介绍很多,有动物.水果.蔬菜.交通工具等,通常会对绘制一步步进行拆分.组合.然后绘制为我们想要的结果. 下面来介绍另外的一个种类:昆虫类-卡通蚂蚁. 简述 绘制 效果 源码 绘制 效果 具体的效果如下所示,我们可以再进行更好的完善. 源码 主要分为以下三部: 绘制屁股 绘制肚子 绘制头部 注意:绘制的时候,由于各个部分的颜色不同,而且坐标不好定位,所以我们采用的图形覆盖的方式. void MainWindow::paintEvent(QPaintEvent *) { QPain…
简述 综合前面对二维绘图的介绍,想必我们对一些基本绘图有了深入的了解,下面我们来实现一些漂亮的图形绘制. 简述 圆形 效果 源码 弧形 效果 源码 文本 效果 源码 旋转 效果 源码 圆形 经常地,我们会在网上看到一些列的抽奖活动,里面就有圆盘抽奖,是不是有点手痒了O(∩_∩)O~ 效果 源码 void MainWindow::paintEvent(QPaintEvent *) { QPainter painter(this); painter.setRenderHint(QPainter::A…
简述 Qt中提供了强大的2D绘图系统,可以使用相同的API在屏幕和绘图设备上进行绘制,它主要基于QPainter.QPaintDevice和QPaintEngine这三个类. QPainter用来执行绘图操作,其提供的API在GUI或QImage.QOpenGLPaintDevice.QWidget和QPaintDevice显示图形(线.形状.渐变等).文本和图像. QPaintDevice不直接绘制物理显示画面,而利用逻辑界面的中间媒介.例如,绘制矩形图形时,为了将对象绘制到QWidget.Q…
Qt QTranslator 实现多语言转换(转载)   1.在*.pro文件里面添加TRANSLATIONS += English.tsChinese.ts根据自己想要添加多少种语言和什么语言视情况添加. 2.a.通过qt ui设计师添加的文字 首先记得选上这个按钮b.通过代码添加的文字,需要将需要转换的文字使用QObject::tr(“…”) 进行标记,否则程序中并不能对其进行识别. 3.生成ts 文件 4.修改ts文件 经过第三步后,会在文件目录下生成*.ts文件,用qt的Linguist…
11.各种数据类型的相互转换char * 与 const char *的转换char *ch1="hello11";const char *ch2="hello22";ch2 = ch1;//不报错,但有警告ch1 = (char *)ch2; char 转换为 QString其实方法有很多中,我用的是:char a='b';QString str;str=QString(a); QString 转换为 char方法也用很多中QString str="ab…
1. 创建一个继承于QWidget的类,重载一个叫paintEvent的函数, 2. 在paintEvent函数中调用Qpainter类,此类是一个重量级类,在paintEvent函数尽量只创建一次 3. 如描画柱状图:在paintEvent函数中 QPainter painter(this); QPen pen; pen.setColor(Qt::blue); pen.setWidthF(); painter.setPen(pen); painter.drawRect(posx, posy,…
QDateTime localDate = QDateTime::fromString("2018-12-11 10:40:00", "yyyy-MM-dd hh:mm:ss");//输入的时间 QDateTime utcDate = localDate.toTimeZone(zone);//拿到的是0时区的当前时间 QDateTime currentTime = QDateTime::currentDateTime();//当前时区的当前时间 QDateTime…
from PyQt5.QtWidgets import (QApplication, QWidget, QTableWidget,QPushButton, QVBoxLayout, QTableWidgetItem) from PyQt5.QtGui import QPixmap, QPainter, QImage, QTextDocument from PyQt5.QtPrintSupport import QPrinter, QPrintDialog, QPrintPreviewDialog…
简述 Summer is coming-我们呢,为大家准备了丰盛的佳果-西瓜,清爽解渴,甘味多汁. 一笔一划学简笔画,分分钟让你掌握一门新技能,下面我们来绘制一个"盛夏之王"-西瓜,赶快一起来试试吧. 简述 简笔画 绘制 效果 源码 简笔画 我们先简单看看西瓜的基本组成,一步步进行拆分.组合. 绘制 效果 具体的效果如下所示,我们可以再进行更好的完善. 源码 主要分为以下三部: 绘制外圆(绿色部分) 绘制内圆(红色部分) 绘制椭圆(西瓜子) 注意:绘制西瓜子的时候,由于西瓜子随机分布在…
简述 QGradient可以和QBrush组合使用,来指定渐变填充. Qt目前支持三种类型的渐变填充: QLinearGradient:显示从起点到终点的渐变. QRadialGradient:以圆心为中心显示渐变. QConicalGradient:围绕一个中心点显示渐变. 一个渐变类型可以使用type()函数来检索,类型中的每一个都是QGradient的子类. 简述 渐变类型 QLinearGradient 效果 源码 QRadialGradient 效果 源码 QConicalGradie…
  源码 ... painter.drawImage(0, 0, destinationImage); painter.setCompositionMode(QPainter::CompositionMode_DestinationOver); painter.drawImage(0, 0, sourceImage); ... 通过函数setCompositionMode()的参数传递QPainter::CompositionMode_DestinationOver常量值,目标(Destinat…
代码大致是下面这样的.是8bit的灰度图,不是16bit. QString img_path = "C:\\Users\\Yajun Dou\\Desktop\\test.bmp"; QImage buff(img_path); QImage image; uchar* pImageData1 = NULL,*pImageData2 = NULL; pImageData1 = buff.bits(); image = buff.convertToFormat(QImage::Forma…
这个问题很恶心!网上说的原因是因为安装了多了版本的VS.在高版本的2010和2012上都会有问题,解决方法是使用visual studio 2008安装目录下的一个文件替代vs2010安装目录下的文件. VS2008文件路径: "D:\Microsoft\Microsoft Visual Studio 9.0\VC\bin\cvtres.exe" VS2010文件路径: "D:\Microsoft\Microsoft Visual Studio 10.0\VC\bin\cvt…
(1) QString QString::number ( long n, int base = 10 ) [static] examle: long a = 48; QString s = QString::number(a, 10); // s == "48" QString t = QString::number(a, 16).toUpper(); // t == "30" (2) long a = 48; QString s = QString("…
串口.TCP.UDP传输中文字符时,先将字符串转内码.客户端接收到数据后,将内码转为字符串就OK了 QByteArray CommonFunction::strToInterCode(constQString &str)//字符串转内码 { QString strName = str.toLocal8Bit(); QByteArray code; code.append (strName); while(code.count()<8) { code.append (QByteArray::f…
前话   Qt的图形视图框架,最核心的三个类为:QGraphicsScene.QGraphicsItem与QGraphicsView.   基于图形框架的高级白板软件Demo QGraphicsScene 描述   QGraphicsScene类提供了一个用于管理大量二维图形项的面.  该类用作QGraphicsItems的容器.它与QGraphicsView一起用于在二维面上可视化图形项,例如线条.矩形.文本,甚至自定义项.QGraphicsScene是图形视图框架的一部分.  QGraphi…
用Qt的图形视图框架(Graphics View Framework)做了一个拼图游戏DEMO,演示了: QGraphicsView.QGraphicsScene.QGraphicsItem的基本用法 drag && drop 自定义QGraphicsItem 先来看看效果吧: 现在,来看下代码了. 项目说明 如上图所示,项目名称为qPuzzle,三个源文件,main.cpp是入口,imageitem.h和imageitem.cpp实现了: PuzzleImageItem,就是界面左上侧那…
t使用Unicode来表示字符串.但是通常需要访问一些非Unicode格式的字符串,例如打开一个GBK编码的中文文本文件,甚至一些非Unicode编码的日文,俄文等. Qt提供了QTextCodec类用于不同编码格式之间的转换.关于Qt字符串格式转换以及QTextCodec的使用方式,网上有很多资料.其中大多数看起来很复杂,甚至根本无法完成转换工作,或者是基于较低的Qt版本编写.因此,有必要对使用QTextCodec完成字符串格式转换进行简要说明,本文中代码基于Qt5.1编写. 其实,在Qt帮助…
转载自 网易博客:sun的博客 http://zhouyang340.blog.163.com/blog/static/3024095920126710504178/ 2D绘图 Qt4中的2D绘图部分称为Arthur绘图系统.它由3个类支撑整个框架,QPainter,QPainterDevice和QPainterEngine.QPainter用来执行具体的绘图相关操作如画点,画线,填充,变换,alpha通道等.QPainterDevice是QPainter用来绘图的绘图设备,Qt中有几种预定义的…
QT学习第一天  坚持住!! 一 Qt概述 1.Qt发展历史 (1)1991年诞生(Haavard Nord/Eirik Chambe-Eng), (2)1994年创立Troll Tech(奇趣科技) (3)2005年QT4.0 (4)2008年被Nokia收购 (5)2009年源代码开源 (6)2012年Nokia将全部QT业务和知识产权卖给Digia公司 (7)2013年QT5.0 QT5.1 QT5.2 (8)2014年Digia公司成立 The Qt Company子公司 2.Qt5.4…
简介 "我们来自Qt分享&&交流,我们来自Qt Quick分享&&交流",不管你是笑了,还是笑了,反正我们是认真的.我们就是要找寻一种Hold不住的状态,来开始每一天的点滴分享,我们是一个有激情,有态度的部队. 但是我们还是我们,我们只是多了一份责任.古语有云:"不积跬步无以至千里,不积小流无以成江海",所以每一个伟大事务的产生都不是一蹴而就的.现在我们要立足眼下,把第一站放在地球,"<Qt 实战一二三>&quo…