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

如何在局域网上做网站广州最新疫情情况

如何在局域网上做网站,广州最新疫情情况,ip达1万的网站怎么做,做门票的网站✨博客主页何曾参静谧的博客📌文章专栏「QT」QT5程序设计📚全部专栏「VS」Visual Studio「C/C」C/C程序设计「UG/NX」BlockUI集合「Win」Windows程序设计「DSA」数据结构与算法「UG/NX」NX二次开发「QT」QT5程序设计「File」数据文件格式「PK」Parasolid…

在这里插入图片描述

✨博客主页
何曾参静谧的博客
📌文章专栏
「QT」QT5程序设计
📚全部专栏
「VS」Visual Studio「C/C++」C/C++程序设计「UG/NX」BlockUI集合
「Win」Windows程序设计「DSA」数据结构与算法「UG/NX」NX二次开发
「QT」QT5程序设计「File」数据文件格式「PK」Parasolid函数说明
「Math」探秘数学世界

目录

  • Qt中的QVector2D类详解
    • 一、类的引言
    • 二、使用范围
    • 三、类的头文件
    • 四、类的构造介绍
    • 五、共有函数介绍
    • 六、Static函数介绍
    • 七、运算符重载
    • 八、详细代码举例
      • 示例1:创建和初始化QVector2D对象
      • 示例2:向量运算
      • 示例3:旋转和长度计算

Qt中的QVector2D类详解

一、类的引言

QVector2D是Qt框架中的一个二维向量类,它封装了两个浮点数(通常是float类型),用于表示二维空间中的点或向量。QVector2D类提供了丰富的成员函数和运算符重载,使得在二维图形处理、游戏开发、物理模拟等领域中,对点和向量的操作变得更加简单和直观。
官方帮助文档:https://doc.qt.io/qt-5/qvector2d.html

二、使用范围

QVector2D类广泛应用于需要二维向量运算的场景中。例如,在图形学中,它可以用于表示二维空间中的顶点坐标,进行平移、旋转、缩放等变换;在游戏开发中,它可以用于计算角色的移动速度、方向、碰撞检测等;在物理模拟中,它可以用于表示力、加速度、速度等物理量。

三、类的头文件

要使用QVector2D类,首先需要包含其头文件:

#include <QVector2D>

四、类的构造介绍

QVector2D类提供了多种构造函数,允许以不同的方式初始化向量。

  • 默认构造函数QVector2D(),创建一个默认的二维向量,其x和y分量都初始化为0。
  • 参数化构造函数QVector2D(float xpos, float ypos),通过指定的x和y坐标来构造一个向量。
  • 从QPointF构造QVector2D(const QPointF &point),从一个QPointF对象构造一个向量。
  • 从QPoint构造QVector2D(const QPoint &point),从一个QPoint对象构造一个向量。

五、共有函数介绍

QVector2D类提供了许多成员函数,用于获取和设置向量的分量、计算向量的长度、进行向量运算等。

  • 获取分量float x() constfloat y() const分别返回向量的x和y分量。
  • 设置分量void setX(float x)void setY(float y)分别设置向量的x和y分量。
  • 计算长度float length() const返回向量的长度(模)。
  • 单位化QVector2D normalized() const返回单位化后的向量(即长度为1的向量)。
  • 判断是否为空向量bool isNull() const判断向量是否为空向量(即x和y分量都为0)。
  • 旋转QVector2D rotate(qreal angle) const返回绕原点旋转指定角度后的向量。

六、Static函数介绍

QVector2D类还提供了一些静态成员函数,用于进行向量运算和比较。

  • 点乘static float dotProduct(const QVector2D &v1, const QVector2D &v2)计算两个向量的点乘结果。
  • 叉乘(注意:二维向量的叉乘结果是一个标量,不是向量):虽然QVector2D本身没有直接提供二维叉乘的静态函数,但可以通过计算两个向量的行列式来得到叉乘的结果(即两个向量构成的平行四边形的面积)。不过,Qt中通常使用QVector3D来进行三维向量的叉乘运算。

七、运算符重载

QVector2D类重载了一些运算符,使得向量运算更加直观和方便。

  • 加法QVector2D operator+(const QVector2D &v)返回两个向量相加的结果。
  • 减法QVector2D operator-(const QVector2D &v)返回两个向量相减的结果。
  • 数量乘法QVector2D operator*(float scalar)返回向量与标量相乘的结果。
  • 数量除法QVector2D operator/(float scalar)返回向量与标量相除的结果。
  • 赋值运算符:还重载了相应的赋值运算符(如+=-=*=/=),用于进行向量运算并更新原向量。

八、详细代码举例

以下是一些使用QVector2D类的代码示例,展示了如何创建和初始化QVector2D对象,以及进行各种向量运算。

示例1:创建和初始化QVector2D对象

#include <QVector2D>
#include <iostream>int main() {QVector2D point(3.0f, 4.0f); // 创建一个点QVector2D vector(-1.0f, 2.0f); // 创建一个向量std::cout << "Point: (" << point.x() << ", " << point.y() << ")" << std::endl;std::cout << "Vector: (" << vector.x() << ", " << vector.y() << ")" << std::endl;return 0;
}

示例2:向量运算

#include <QVector2D>
#include <iostream>int main() {QVector2D v1(1.0f, 2.0f);QVector2D v2(3.0f, 4.0f);QVector2D sum = v1 + v2; // 向量加法QVector2D diff = v1 - v2; // 向量减法QVector2D scaled = v1 * 2.0f; // 数量乘法QVector2D normalized = v1.normalized(); // 单位化std::cout << "Sum: (" << sum.x() << ", " << sum.y() << ")" << std::endl;std::cout << "Difference: (" << diff.x() << ", " << diff.y() << ")" << std::endl;std::cout << "Scaled: (" << scaled.x() << ", " << scaled.y() << ")" << std::endl;std::cout << "Normalized: (" << normalized.x() << ", " << normalized.y() << ")" << std::endl;return 0;
}

示例3:旋转和长度计算

#include <QVector2D>
#include <iostream>
#include <cmath> // 用于M_PI常量int main() {QVector2D vector(1.0f, 0.0f); // 创建一个沿x轴的单位向量QVector2D rotated = vector.rotate(M_PI / 2); // 旋转90度(π/2弧度)float length = vector.length(); // 计算向量的长度std::cout << "Rotated vector: (" << rotated.x() << ", " << rotated.y() << ")" << std::endl;std::cout << "Length of original vector: " << length << std::endl;return 0;
}

通过以上示例,我们可以看到QVector2D类在二维向量运算中的强大功能和便捷性。无论是在图形学、游戏开发还是物理模拟等领域,QVector2D类都是一个非常实用的工具。


在这里插入图片描述

http://www.hkea.cn/news/20932/

相关文章:

  • 网站开发职业认知小结开发一个app平台大概需要多少钱?
  • 装修公司全包项目seo搜索引擎实训心得体会
  • 爱站网是干什么的长沙关键词排名首页
  • wordpress 教垜四川seo推广公司
  • 东莞市阳光网青岛seo服务
  • 网站弹窗在中间位置企业培训师
  • 整站下载器 安卓版域名解析查询站长工具
  • 跨境自建站模板seo推广是做什么
  • 网站建设与网页设计报告网络营销师报名入口
  • 生成前端页面的网站东莞网络营销全网推广
  • 网站及单位网站建设情况免费男女打扑克的软件
  • 公司有网站有什么好处网上开店如何推广自己的网店
  • 海口网站建设策划关键词排名优化工具有用吗
  • 请问哪里可以做网站汕头seo
  • 访问国外网站速度慢苏州关键词seo排名
  • 做网站备案照片的要求谷歌seo教程
  • wordpress站点全屏新站如何让百度快速收录
  • wordpress 会议 主题推广排名seo
  • 源码开发网站建设sem与seo的区别
  • 如何查网站的空间防恶意点击软件
  • 单位网站建设收费标准互联网推广引流
  • 网站有中文源码加英文怎么做关键词歌词完整版
  • 建设网站企业银行做网站的平台
  • 如何进行网站建设分析网站推广app软件
  • 做ppt的软件模板下载网站网站服务公司
  • 网站icp备案认证怎么做谷歌网页版入口在线
  • 高安网站建设艺考培训
  • 主流的网站开发技术百度推广后台管理
  • 传奇网站模板免费下载优化网络搜索引擎
  • 提升学历报考什么专业比较好seosem顾问