计算缩放多边形的比例,得到给定的多边形面积
compute ratio of scaling polygon to get given area of polygon
我有一组多边形的点。我可以得到它的面积。
例如,我有多边形。面积((=1500;
现在,我需要做一个多边形,给出面积1350,如何缩放它的比例值。我试着通过边界框比例来缩放它。但它不起作用。我试着这样做。但答案不正确。
获取长方体的多边形(最小点和最大点(的边界长方体。
float OldArea = 1500.0f;
float newArea = 1350.0f;
Vec2 Min_Point = polygon.Min();
Vec2 Max_Point = polygon.Max();
float SizeX = Min_Point.SizeX(Max_Point);// it give Length of X of Bounding Box (x2-x1)
float SizeY = Min_Point.SizeY(Max_Point);//it give Length of Y of Bounding Box (y2-y1)
float ratio = SizeX/SizeY;
float aa = sqrt(NewArea/ ratio); // get first Length
float bb = NewArea/aa; // ge4t second length
float Scale_Ratio = (bb/SizeY ); // get scale ratio // but this is not correct.
请有人帮帮我。提前感谢。
Scale_Ratio=Math.sqrt(newArea/oldArea(
这是因为比例将应用于面积两次——一次是在乘以宽度时,一次是乘以高度时,所以缩放面积的比例是应用于每个维度的比例的平方。
相关文章:
- UE4-如何在给定4个屏幕坐标的情况下缩放纹理或材质
- 计算缩放多边形的比例,得到给定的多边形面积
- QwtPlot具有相等的轴和自动缩放
- 如何在directx/c++中进行平移/缩放操作
- 在Qt中实现无限可缩放的画布
- 是否可以为 QPixmap 派生类嵌入缩放方法?
- 形状对象的旋转和缩放不正确C++
- 如何在 OpenSceneGraph 中缩放/旋转/移动资产
- 如何在OpenGL(GLFW,很高兴)中进行2D缩放?
- 改变或缩放两个正态分布以具有特定的相关系数
- SDL2 调整窗口大小后如何缩放鼠标坐标?
- 如何在OpenGL中正确旋转和缩放对象?
- 仅当类型为 std::complex 时,才进行缩放
- 将 VS Code 用于跨平台可缩放C++项目
- 根据帧速率缩放/缩小数字
- 在 c++ 中缩放浮点值
- 如何防止 DirectX C++程序的拉伸/缩放
- 使用提升几何缓冲区缩放多边形时的冗余折点
- 为什么我不能使用 Sphere 来缩放字形?
- 我在QChartView中找不到缩放图形的鼠标滚轮滚动事件