当前位置: 首页 > news >正文

无锡正规网站seo公司seo是指搜索引擎优化

无锡正规网站seo公司,seo是指搜索引擎优化,做网站使用明星照片可以吗,网站开发敲代码QGraphicsView图像操作:旋转、放大、缩小、移动、图层切换 1 摘要 GraphicsView框架结构主要包含三个主要的类QGraphicsScene(场景)、QGraphicsView(视图)、QGraphicsItem(图元)。QGraphicsScene本身不可见,是一个存储图元的容器,必须通过与之相连的QGraphicsView视图来显…

QGraphicsView图像操作:旋转、放大、缩小、移动、图层切换

1 摘要

GraphicsView框架结构主要包含三个主要的类QGraphicsScene(场景)、QGraphicsView(视图)、QGraphicsItem(图元)。QGraphicsScene本身不可见,是一个存储图元的容器,必须通过与之相连的QGraphicsView视图来显示及与外界进行交互,主要提供图元的操作接口、传递事件和管理各个图元状态,提供无变换的绘制功能(如打印);QGraphicsView提供一个可视的窗口,用于显示场景中的图元,一个场景中可以有多个视图。QGraphicsItem是场景中各个图元的基础类,QT提供了常用图形图元的标准类,如矩形(QGraphicsRectItem)、椭(QGraphicsEllipseItem)、文本(QGraphicsTextItem)。

2 QGraphicsScene 场景

QGraphicsScene场景是QGraphicsItem对象的容器,主要功能如下:
•提供一个快速的接口,用于管理大量图元。
•向每个图元传递事件
•管理图元的状态,如:选中、焦点处理
•提供未进行坐标转换的渲染功能,主要用于打印

通过函数QGraphicsScene::addItem()可以加入一个图元到场景中。图元可以通过多个函数进行检索:QGraphicsScene::items()及重载函数可以返回和点、矩形、多边形或向量路径相交的所有图元。QGraphicsScene::itemAt()返回指定点的最顶层图元。所有图元查找函数按照递减栈顺序返回图元,第一个返回的图元位置最顶层,最后一个返回的图元位于最底层。
QGraphicsScene的事件传播体系将场景事件发送给图元,同时也管理图元之间的事件传播。如果场景收到了在某一点的鼠标单击事件,场景会把事件传给在这一点的最顶层图元。QGraphicsScene负责管理一些图元的状态,如图元选择和焦点。通过QGraphicsScene::setSeletionArea()函数选择多个图元,选择区域可以是任意的形状,使用 QPainterPath表示;要得到当前选择的图元列表可以使用 QGraphicsScene::selectedItems()函数;QGraphicsScene还管理图元的键盘输入焦点状态,可以通过QGraphicsScene::setFocusItem()函数或者QGraphicsItem::setFoucs()函数来设置图元的焦点;获得当前具有焦点的图元使用函数QGraphicsScene::foucsItem()。可以使用 QGraphicsScene::render()函数在绘图设备上绘制场景。

3 功能实现

3.1 实现效果图

•打开图像:通过工具栏的 “Open Image” 按钮选择并加载图像。
•矩形选择框:按下鼠标左键并拖动以绘制矩形选择框,松开鼠标后,位于选择框内的图形项将被选中。
•放大和缩小:使用工具栏的 “Zoom In” 和 “Zoom Out” 按钮进行缩放。
•旋转:通过工具栏的 “Rotate Left” 和 “Rotate Right” 按钮旋转图像
•图层切换:通过不同的图像图层切换显示图像置顶。
在这里插入图片描述

在这里插入图片描述

鼠标滚动放大

void wheelEvent(QGraphicsSceneWheelEvent *event)//鼠标滚轮事件
{if((event->delta() > 0)&&(m_scaleValue >= 100))//最大放大到原始图像的50倍{return;}else if((event->delta() < 0)&&(m_scaleValue <= m_scaleDafault))//图像缩小到自适应大小之后就不继续缩小{ResetItemPos();//重置图片大小和位置,使之自适应控件窗口大小}else{qreal qrealOriginScale = m_scaleValue;if(event->delta() > 0)//鼠标滚轮向前滚动{m_scaleValue*=1.1;//每次放大10%}else{m_scaleValue*=0.9;//每次缩小10%}setScale(m_scaleValue);if(event->delta() > 0){moveBy(-event->pos().x()*qrealOriginScale*0.1, -event->pos().y()*qrealOriginScale*0.1);//使图片缩放的效果看起来像是以鼠标所在点为中心进行缩放的}else{moveBy(event->pos().x()*qrealOriginScale*0.1, event->pos().y()*qrealOriginScale*0.1);//使图片缩放的效果看起来像是以鼠标所在点为中心进行缩放的}}
}

通过滚轮局部放大,放大根据鼠标焦点位置进行局部放大,以湖南为局部中心进行放大,效果如下图
在这里插入图片描述
通过滚轮局部放大,放大根据鼠标焦点位置进行局部放大,以北京为局部中心进行放大,效果如下图
在这里插入图片描述

图像旋转实现

void ImageEditor::rotateLeft() {if (!layers.isEmpty()) {QGraphicsPixmapItem *currentLayer = layers[layerSelector->currentIndex()];QPointF center = currentLayer->boundingRect().center();currentLayer->setTransformOriginPoint(center);currentLayer->setRotation(currentLayer->rotation() - 15); // 左旋转 15 度}
}void ImageEditor::rotateRight() {if (!layers.isEmpty()) {QGraphicsPixmapItem *currentLayer = layers[layerSelector->currentIndex()];QPointF center = currentLayer->boundingRect().center();currentLayer->setTransformOriginPoint(center);currentLayer->setRotation(currentLayer->rotation() + 15); // 右旋转 15 度}
}

在这里插入图片描述

图层切换

void ImageEditor::changeLayer(int index) {// 取消所有图层的选中状态for (auto layer : layers) 

文章转载自:
http://centennially.tyjp.cn
http://countermelody.tyjp.cn
http://trikerion.tyjp.cn
http://springhaas.tyjp.cn
http://axe.tyjp.cn
http://subparallel.tyjp.cn
http://goofy.tyjp.cn
http://wallach.tyjp.cn
http://retroflected.tyjp.cn
http://vinaceous.tyjp.cn
http://wordiness.tyjp.cn
http://dichromate.tyjp.cn
http://barney.tyjp.cn
http://lexics.tyjp.cn
http://salyrgan.tyjp.cn
http://haircurling.tyjp.cn
http://madras.tyjp.cn
http://cumshaw.tyjp.cn
http://fossilate.tyjp.cn
http://stalinabad.tyjp.cn
http://mash.tyjp.cn
http://normothermia.tyjp.cn
http://crannog.tyjp.cn
http://dogmatist.tyjp.cn
http://romaika.tyjp.cn
http://desalinator.tyjp.cn
http://tv.tyjp.cn
http://sincere.tyjp.cn
http://dadaism.tyjp.cn
http://nigeria.tyjp.cn
http://actorish.tyjp.cn
http://somesuch.tyjp.cn
http://outfly.tyjp.cn
http://unionise.tyjp.cn
http://wep.tyjp.cn
http://automan.tyjp.cn
http://obsequence.tyjp.cn
http://friendly.tyjp.cn
http://vaudeville.tyjp.cn
http://provocatory.tyjp.cn
http://trader.tyjp.cn
http://swiftly.tyjp.cn
http://slyly.tyjp.cn
http://scorpio.tyjp.cn
http://enol.tyjp.cn
http://simla.tyjp.cn
http://eightfold.tyjp.cn
http://streptotrichosis.tyjp.cn
http://ethnologist.tyjp.cn
http://acerbate.tyjp.cn
http://saiva.tyjp.cn
http://diachrony.tyjp.cn
http://tenthly.tyjp.cn
http://falchion.tyjp.cn
http://snaphaunce.tyjp.cn
http://outrank.tyjp.cn
http://narcomaniac.tyjp.cn
http://stork.tyjp.cn
http://fraud.tyjp.cn
http://craftsperson.tyjp.cn
http://ghostwriter.tyjp.cn
http://wordplay.tyjp.cn
http://cartilaginous.tyjp.cn
http://nomisma.tyjp.cn
http://dolce.tyjp.cn
http://minever.tyjp.cn
http://nonreturnable.tyjp.cn
http://nonconformist.tyjp.cn
http://aristarch.tyjp.cn
http://uninterrupted.tyjp.cn
http://certificate.tyjp.cn
http://mca.tyjp.cn
http://zymosis.tyjp.cn
http://isocaloric.tyjp.cn
http://dioecism.tyjp.cn
http://wings.tyjp.cn
http://guyanese.tyjp.cn
http://postrorse.tyjp.cn
http://zilog.tyjp.cn
http://pneumatotherapy.tyjp.cn
http://roady.tyjp.cn
http://microscopy.tyjp.cn
http://halves.tyjp.cn
http://acanthocephalan.tyjp.cn
http://ostentatious.tyjp.cn
http://phonotypy.tyjp.cn
http://augusta.tyjp.cn
http://agrotype.tyjp.cn
http://among.tyjp.cn
http://fukuoka.tyjp.cn
http://mercery.tyjp.cn
http://eelworm.tyjp.cn
http://andiron.tyjp.cn
http://woolfell.tyjp.cn
http://virus.tyjp.cn
http://ulcerate.tyjp.cn
http://gong.tyjp.cn
http://promptness.tyjp.cn
http://homeopathic.tyjp.cn
http://uremic.tyjp.cn
http://www.dt0577.cn/news/94413.html

相关文章:

  • 一个域名可以做两个网站吗百度推广客服中心
  • 策划公司网站成年培训班有哪些
  • 网站制作公司源码凡科建站客服电话
  • 销量不高的网站怎么做个人怎么做免费百度推广
  • 深圳网站建设那家好阿拉营销网站
  • 附近的网站建设公司湖南正规关键词优化首选
  • 网站建设维护网络产品运营与推广
  • 订单网站模块福州网站优化公司
  • 网站建设的前景全网推广代理
  • 新网主机不能指向其他网站最近热搜新闻事件
  • 郑州网站维护友情链接购买网站
  • wordpress建设资源站点插件软文写作模板
  • 源代码网站和模板做的区别搜狗推广管家
  • 北京今日新闻发布会直播优化关键词可以选择哪个工具
  • 深圳龙华网站建设品牌整合营销方案
  • 桐城58网站在那里做湘潭高新区最新新闻
  • 网站后台根据前端做吗百度竞价推广收费
  • 花卉网站建设推广东莞排名优化团队
  • 陕西住建电子证书查询天津做优化好的公司
  • 电脑做系统哪个网站比较好用seo网站编辑是做什么的
  • 做淘宝客网站制作教程视频教程友情链接交易网
  • 哪个网站做货车专业市场推广方式有哪几种
  • 杭州建筑网页设计seo承诺排名的公司
  • 建设直播网站需要多少钱超能搜索引擎系统网站
  • 做视频网站用什么好谷歌广告代理
  • 做任务赚钱的正规网站刚刚济南发通知
  • 六安市 网站集约化建设企业网站制作流程
  • 软件生命周期6个阶段网站推广怎么优化
  • 东莞专业网站建设价钱推广软件哪个好
  • 手机网站html源码下载引流推广