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

北京市保障性住房建设中心网站容易做的html5的网站

北京市保障性住房建设中心网站,容易做的html5的网站,网站建设微金手指下拉12,做网站的公司市场1.简介 在一些游戏中看见类似解密破案的效果,使用手触摸去擦拭图片上的灰尘,然后显示最终的图片,所以也想试试Qt实现的效果。大家有自己想做的效果,都可以尝试。 以下是效果展示图。 可以控制橡皮擦的大小,进行擦拭…

1.简介

在一些游戏中看见类似解密破案的效果,使用手触摸去擦拭图片上的灰尘,然后显示最终的图片,所以也想试试Qt实现的效果。大家有自己想做的效果,都可以尝试。

以下是效果展示图。

可以控制橡皮擦的大小,进行擦拭。

2.原理

鼠标按住,然后移动,不断的给移动的圆形区域设置像素点的值,显示图片。

源码:

#include "wipewidget.h"
#include "ui_wipewidget.h"
#include <QDebug>WipeWidget::WipeWidget(QWidget *parent) :QWidget(parent),ui(new Ui::WipeWidget)
{ui->setupUi(this);setMouseTracking(true);
}WipeWidget::~WipeWidget()
{delete ui;
}void WipeWidget::setEraserSize(int size)
{m_eraserSize = size;m_point = QPoint(this->width()/2,this->height()/2);update();
}void WipeWidget::paintEvent(QPaintEvent *e)
{Q_UNUSED(e);//画圆圈QPainter painter(this);painter.setRenderHint(QPainter::Antialiasing, true); // 启用抗锯齿painter.drawImage(0,0,m_image);QPen pen;pen.setWidth(2);pen.setColor(Qt::white);painter.setPen(pen);qDebug()<<"";painter.drawEllipse(m_point,m_eraserSize,m_eraserSize);if(m_isMousePressed)setImage(m_point);
}void WipeWidget::mousePressEvent(QMouseEvent *event)
{m_isMousePressed = true;
}void WipeWidget::mouseReleaseEvent(QMouseEvent *event)
{Q_UNUSED(event);m_isMousePressed = false;
}void WipeWidget::mouseMoveEvent(QMouseEvent *event)
{m_point = event->pos();update();
}void WipeWidget::showEvent(QShowEvent *event)
{Q_UNUSED(event);if(m_isInit)return;m_isInit = true;m_srcImage = QImage("./demo.jpeg").scaled(this->width(),this->height());m_image = QImage(m_srcImage.width(),m_srcImage.height(),m_srcImage.format());
}void WipeWidget::setImage(QPoint point)
{int centerX = point.x();int centerY = point.y();if(centerX > m_srcImage.width() ||centerY > m_srcImage.height())return;int radius = m_eraserSize;for (int x = qMax(centerX - radius,0);x < qMin(centerX + radius,m_srcImage.width()); x++){for (int y = qMax(centerY - radius,0);y < qMin(centerY + radius,m_srcImage.height()); y++){if ((x - centerX) * (x - centerX) + (y - centerY) * (y - centerY) <= radius * radius){if(x <= m_srcImage.width() && m_srcImage.height()-y <= m_srcImage.height()){m_image.setPixel(x,y,m_srcImage.pixel(x, y));}}}}
}

3.完整工程

https://download.csdn.net/download/wzz953200463/88906763

4.相关推荐

1.圆形进度条实现

2.麦克风音量大小模拟

3.自定义时钟

4.自定义长条进度条

http://www.yayakq.cn/news/452950/

相关文章:

  • 成都建工网站企业网站优化17
  • 广东省网站建设苏州网站建设搭建
  • 17网站一起做网店代发流程网站的类型及特点
  • 供需平台类网站建设软通动力外包怎么样
  • 合肥婚恋网站建设重庆电商网站建设费用
  • 为什么选择网站来做论文题目选择一个产品做营销方案
  • 绍兴网站建设公司电话中小型网站建设效果
  • f式布局网站杭州网站建设交易
  • 如何用自己的电脑建网站网店装修是什么意思
  • 学校网站建设源码高负载php网站开发
  • 网站建设丶金手指下拉14淅川网站建设
  • 推荐一些可以做笔试题的网站诱导网站怎么做
  • wordpress防木马开鲁seo网站
  • 自建网站教程视频wordpress自定义样式
  • 如何制作网站设计岳阳网站开发网站运营哪家好
  • 网站微信建设运维经验wordpress metro手机主题
  • 如何设置网站服务器电商网站制作方案
  • 建设部资质申报网站要如何自己创建一个网站
  • 代做网站作业企业网站报价方案模板
  • 河北专业网站制作怎么创网站赚钱吗
  • 想学设计没有基础怎么办网站内容优化的重要性
  • 上海网站建设公公司百度小说风云榜今天
  • 北京网站制建设公司电子印章在线制作
  • 南昌网站建设多少钱网络营销网站建设步骤
  • 盐城网站开发上海seo优化外包公司
  • 唐山网站建设方案优化wordpress模板有哪些
  • 武威市住房和建设局网站石家庄新闻记者求助电话
  • 安康市建设规划局网站河南郑州百度网站建设
  • 肥东住房和城乡建设部网站在线商城网站制作
  • 长宁区网站建设网页沧州网站推广优化商集客电话