C++ 矩形图像旋转后的宽高计算方法

矩形图像旋转后的宽高计算涉及到图像处理和矩阵运算。

以下是一个简单的C++示例,展示如何计算一个矩形图像旋转后的宽度和高度:

cpp 复制代码
#include <iostream>  
#include <cmath>  
  
using namespace std;  
  
int main() {  
    double width = 5.0;  // 原始宽度  
    double height = 3.0;  // 原始高度  
    double angle = 45.0;  // 旋转角度(以度为单位)  
  
    // 将旋转角度从度转换为弧度  
    angle = angle * M_PI / 180.0;  
  
    // 计算旋转后的宽度和高度  
    double rotated_width = height * fabs(sin(angle)) + width * fabs(cos(angle));  
    double rotated_height = height * fabs(cos(angle)) + width * fabs(sin(angle));  
  
    cout << "Rotated Width: " << rotated_width << endl;  
    cout << "Rotated Height: " << rotated_height << endl;  
  
    return 0;  
}

其中M_PI 的定义可以参照

https://blog.csdn.net/wangnaisheng/article/details/132896399

相关推荐
feiyangqingyun9 分钟前
Qt/C++编写GB28181服务/前后端分离/定义一套交互协议/视频点播/录像回放和控制/警情通知
c++·qt·交互
m0_7482480219 分钟前
C++与C#布尔类型深度解析:从语言设计到跨平台互操作
c++·stm32·c#
虾米Life1 小时前
基于微服务脚手架的视频点播系统 (仿B站) [客户端] -1
c++·qt·微服务·架构
落羽的落羽1 小时前
【C++】现代C++的新特性constexpr,及其在C++14、C++17、C++20中的进化
linux·c++·人工智能·学习·机器学习·c++20·c++40周年
CAU界编程小白2 小时前
数据结构系列之十大排序算法
数据结构·c++·算法·排序算法
头发还没掉光光2 小时前
Linux网络初始及网络通信基本原理
linux·运维·开发语言·网络·c++
m0_748248023 小时前
揭开 C++ vector 底层面纱:从三指针模型到手写完整实现
开发语言·c++·算法
海盗猫鸥3 小时前
「C++」string类(2)常用接口
开发语言·c++
序属秋秋秋3 小时前
《Linux系统编程之开发工具》【实战:倒计时 + 进度条】
linux·运维·服务器·c语言·c++·ubuntu·系统编程
程序员龙一12 小时前
C++之static_cast关键字
开发语言·c++·static_cast