精华内容
下载资源
问答
  • 多边形面积计算公式

    千次阅读 2019-04-24 18:40:21
    正n多边形 n,a:边数及其边长 1、内角和度数:(n-2)*PI 2、正中心角:2*PI/n 面积: double solve(int n,double a){ double angle=PI/n; double r=(a/2.0)*sin(angle); double s=n*a/2*cos(angle)/sin(angle)*a/2...

    题目链接

    #include <iostream>
    #include <algorithm>
    #include <map>
    #include <stack>
    #include <queue>
    #include <set>
    #include <vector>
    #include <cstdlib>
    #include <cmath>
    #include <string>
    #include <cstdio>
    #include <cstring>
    #include <assert.h>
    #include <functional>
    #define  lowbit(x) (x&(-x))
    #define  ll long long
    #define  ull unsigned long long
    #define  max(a,b) (a>b?a:b)
    #define  min(a,b) (a>b?b:a)
    #define  PI acos(-1.0)
    #define  fir first
    #define  sec second
    #define  inf 0x3f3f3f3f
    #define  pb push_back
    #define  all(x) (x).begin(),(x).end()
    #define  E 2.7182818284590452353602874713527
    using namespace std;
    
    /**********************************************Head-----Template****************************************/
    const ll mod = 1e9+7;
    ll ksm(ll a,ll b){ll ans=1;a%=mod;assert(b>=0);for(;b;b>>=1){if(b&1) ans=ans*a%mod;a=a*a%mod;}return ans;}
    bool Finish_read;
    template<class T>inline void read(T &x){Finish_read=0;x=0;int f=1;char ch=getchar();while(!isdigit(ch)){if(ch=='-')f=-1;if(ch==EOF)return;ch=getchar();}while(isdigit(ch))x=x*10+ch-'0',ch=getchar();x*=f;Finish_read=1;}
    template<class T>inline void print(T x){if(x/10!=0)print(x/10);putchar(x%10+'0');}
    template<class T>inline void writeln(T x){if(x<0)putchar('-');x=abs(x);print(x);putchar('\n');}
    template<class T>inline void write(T x){if(x<0)putchar('-');x=abs(x);print(x);}
    ll gcd(ll a,ll b){return b==0?a:gcd(b,a%b);}
    ll lcm(ll a,ll b){return a/gcd(a,b)*b;}
    /********************************Head----Template**********************************************/
    
    vector<int>vec;
    
    /*
    正n多边形 n,a:边数及其边长
    1、内角和度数:(n-2)*PI
    2、正中心角:2*PI/n
    面积:	
    double solve(int n,double a){
    	double angle=PI/n;
    	double r=(a/2.0)*sin(angle);
    	double s=n*a/2*cos(angle)/sin(angle)*a/2;
    	return s;
    }
    
    
    */
    int main (){
    	//cout<<ksm(3,4)<<endl;
    	int t;cin>>t;
    	for(int cas=1;cas<=t;cas++){
    		int n;cin>>n;
    		double a,l;cin>>a>>l;
    		int ans=0;
    		double angle=PI/n;
    		double r=(a/2.0)*sin(angle);
    		double s=n*a/2*cos(angle)/sin(angle)*a/2;
    		int cnt=10;
    		while(s>l){
    			a=a*sin((n-2)*PI/(2*n));
    			s=n*a/2*cos(angle)/sin(angle)*a/2;
    			ans++;
    		}
    		cout<<ans<<endl;
    	}
    	return 0;
    }
    

     

    展开全文
  • C# 多边形面积计算公式

    千次阅读 2019-06-26 16:46:48
    C# GMap.Net 计算多边形面积 https://www.cnblogs.com/JiNerd/p/3934372.html C# 多边形面积计算公式 https://www.cnblogs.com/Khan-Sadas/p/10135717.html
    展开全文
  • 经纬度坐标下的球面多边形面积计算公式,这是古人的算法。
  • 任意多边形面积公式多边形计算公式的计算和原点的选取没有关系,通常可以选点(0,0)或者多边形的第一个点(这个时候比较直观了,看起来就是把多边形分成一个个三角形和加起来,读者自己可以画个图)就可以了。...

    设Ω是m边形(如下图),顶点任意多边形面积计算公式 - qhn999 - 码代码的猿猿沿边界正向排列,,坐标依次为

    任意多边形面积计算公式 - qhn999 - 码代码的猿猿

    建立Ω的多边形区域向量图。

    由图知坐标原点与多边形任意相邻的两个顶点构成一个三角形,而三角形的面积可由三个顶点构成的两个平面向量的外积求得。

    任意多边形的面积公式

    任意多边形面积计算公式 - qhn999 - 码代码的猿猿

    多边形计算公式的计算和原点的选取没有关系,通常可以选点(0,0)或者多边形的第一个点(这个时候比较直观了,看起来就是把多边形分成一个个三角形和加起来,读者自己可以画个图)就可以了。


    任意多边形面积计算公式 - qhn999 - 码代码的猿猿
     

    转载于:https://www.cnblogs.com/CKboss/p/3350962.html

    展开全文
  • 对于任意一个多边形,如果已知其各个顶点的坐标 ,那么这个多边形面积为: ,其中 。举个例子(From Wikipedia),比如下图这样一个奇奇怪怪的五边形,其顶点坐标为 根据上述公式,只需要把各点坐标带入上述公式即得...

    c5423cc719b6360f2860ab8d4571c04d.png

    对于任意一个多边形,如果已知其各个顶点的坐标

    ,那么这个多边形的面积为:

    ,

    其中

    举个例子(From Wikipedia),比如下图这样一个奇奇怪怪的五边形,其顶点坐标为

    13d2e4119cd78d6037d1bdf4e589a983.png

    根据上述公式,只需要把各点坐标带入上述公式即得:

    是不是感觉很神奇,也不知道对不对,这个大家也可以把上述面积分解验算一下。

    上述公式就是Shoelace Theorem,鞋带定理?!

    cde674ee440f2d744e2edb332a990049.png

    为什么叫Shoelace Theorem,因为这个公式的运算很像鞋带,我们来看看三个顶点时的公式计算,

    ,就如下图所示:

    81e95d077aca1b2e0c5e0790941d8076.png
    图:三个顶点时的计算公式,from Wikipedia

    对于任意

    边形,我们也可以类型的把坐标依次写下来,然后就可以根据公式算出这个多边形的面积了。不过这里有两点需要
    注意

    (1)对于任意多边形,我们看到的只是各个顶点的坐标,是没有标

    的,所以这里我们只需要
    任意指定一个顶点为
    ,然后按照顺时针或者逆时针进行标号就可以了;

    (2)因为我们是任意指定一个点为

    ,且顺时针或者逆时针都可以,所以有时候按照公式计算出来是为负值。但是
    面积是一个正值,因此我们公式中是有一个绝对值的;

    接下去我们就证明一下Shoelace Theorem,不过在证明之前,我们铺垫一点向量叉乘(cross product)的知识。(如果清楚可以直接看公式证明过程。)

    之前我们有介绍过向量点乘(dot product),

    注:上式左边是向量的点乘符号,右边是数乘符号。

    这里我们在定义一个向量叉乘,

    注,向量叉乘得到的是一个新的向量。

    其中

    是一个单位向量,其方向是垂直
    向量所成平面的法向量方向。这里我们可以根据
    右手来判断,首先用右手四指(除大拇指外)指向
    ,然后弯曲转向
    ,那么大拇指指向的就是
    方向,如下图

    8073fbee919678826d2cd36af043f5fc.png
    图:From Further Pure Mathematics

    如果是

    ,那么方向就跟
    刚好相反。

    那么向量叉乘怎么算呢?

    这里我们就直接给出计算公式了。

    如果

    ,
    ,

    那么,

    如果学过矩阵行列式,我们可以用行列式表示:

    .

    说了这么多的向量叉乘,那么跟面积有什么关系呢?

    我们在《三角形面积公式知多少?》一文中提过一个三角形面积公式:

    比对一下叉乘公式,我们发现

    就是以
    两个向量所构成的平行四边形面积。再除以2,就是以
    构成的三角形面积了。

    接下去我们要用数学归纳法来证明Shoelace Theorem,首先证明三个顶点时定理成立,然后假设

    个顶点定理成立,推导
    边形时成立。

    【1】证明三角形时成立

    已知平面坐标系上三个顶点坐标

    ,我们可以把这三个顶点放到三维空间中,并把点
    移动到原点
    。那么,

    于是,根据向量叉乘的几何意义可知:

    注:
    (1)把二维平面上的三角形放到了三维空间中,面积保持不变;且把点
    移动到了原点,这样计算就方便很多。

    (2)为了接下去证明的方便,我们这里没有加绝对值,因为如果计算出来是负值,只需要改变一下计算顺序就可以了。

    【2】假设

    边形时成立,推导
    边形成立

    已知条件

    边形时成立,
    ,

    其中

    对于顶点为

    边形,可以分为
    边形与一个三角形之和

    ,

    ,

    ,

    于是,

    其中,


    至此,我们就完整的证明了Shoelace Theorem。这个定理在竞赛中还是比较常见的,比如在AMC10/12中,今年2020AMC12A中就有:

    5eed08016165e2abeedf8dde7a38e195.png

    利用这个定理还是很容易计算的,

    45a0a53030316b76f4d6be0b9def082f.png

    不知道大家对于这个定理有什么想法,欢迎交流讨论~

    如果想看三角形与四边形面积计算公式可看下面两篇文章:

    双木止月Tong:【国际数学竞赛】三角形面积公式知多少?​zhuanlan.zhihu.com
    453d721585306e98dc4c0f3618c98366.png
    双木止月Tong:【国际数学竞赛】四边形面积公式知多少?​zhuanlan.zhihu.com
    3f3a65588cca8a67dd0d9289248921bf.png

    想了解更多关于国际数学竞赛及课程的知识,可参阅:

    双木止月Tong:国际数学竞赛及课程​zhuanlan.zhihu.com
    dc6ec3002f56b3731edde7efa929f9fe.png
    展开全文
  • =100),它表示多边形的边数(当然也是顶点数),然后是按照逆时针顺序给出的n个顶点的坐标(x1, y1, x2, y2... xn, yn),为了简化问题,这里的所有坐标都用整数表示。输入数据中所有的整数都在32位整数范围内,n...
  • 参考文章中的介绍方法任意多边形面积计算公式 用代码的形式表达 /** * 根据鞋带定理计算 * @author YiDianDian */ public class Area { public static void main(String[] args) { Point point1 = new Point(3...
  • 已知三角形三点坐标求三角形面积公式 公式: 即S=1/2[(x1y2-x2y1)+(x2y3-x3y2)+(x3y1-x1y3)] 证明过程:此链接 格点三角形求面积或求三角形里格点(整点)个数[皮克定理] 一张方格纸上,上面画着纵横两组平行...
  • 计算任意多边形算法。。希望可以帮助到你。 。
  • 发现一个很有意思且有用的多边形面积计算方式 - 鞋带公式.鞋带公式的表达式为:可以理解为,是把每个顶点向x轴做垂线,每个边和坐标轴构成的梯形面积矢量和,结果就是多边形面积.也可理解为用最大矩形的面积减去各个...
  • 任意多边形面积公式

    千次阅读 2016-09-28 15:25:25
    设Ω是m边形(如下图),顶点沿边界正向...多边形计算公式的计算和原点的选取没有关系,通常可以选点(0,0)或者多边形的第一个点(这个时候比较直观了,看起来就是把多边形分成一个个三角形和加起来,读者自己可以画个
  • 最近业务上有一个需求,给出多边形面积。Google了一下,发现国内论坛给的算法都是你抄我我抄你,也不验证一下是否正确,然后传播到国内各个角落。。。真是无力吐槽了。直接纯英文Google。发现了一个非常快捷的面积...
  • 多边形面积计算

    千次阅读 2020-01-08 16:17:19
    **多边形实体的面积计算** > 难度指数:★★★☆☆ “这个世界会好吗?” 第一次听到这一句,是在一个某已"行为不端"的民谣歌手的作品里听到的。究起源头,是出自于“中国最后一位大儒家”梁漱溟的父亲,...
  • 多边形内角和与多边形面积公式

    千次阅读 2014-11-22 10:38:00
    多边形内角计算公式与半径无关 要已知正多边形边数为N 内角和=180(N-2) 半径为R 圆的内接三角形面积公式:(3倍根号3)除以4再乘以R方 外切三角形面积公式:3倍根号3 R方 外切正方形:4R方 内接...
  • 任意多边形面积计算

    万次阅读 2015-09-11 10:01:03
    之前,应朋友所托,完成个四边形面积计算程序,于是不由自主考虑来个扩展,解决任意多边形面积的计算。  一开始想到了某定点的三角形剖分,但遇到凹凸多边形引发的多种情况,过于复杂,放弃。  后来想到用图形学...
  • 之前尝试过很多的任意多边形截面积计算,都有不同的局限性,直到使用了这个公式后,问题就解决了,感谢原作者的...//任意多边形面积计算 double CLASS_NAME::PolygonAreaCalculation(WeirCoorType *pWeirCoor, WO...
  • 多边形面积公式

    千次阅读 2009-10-06 17:19:00
    ====多边形面积公式正多边形内角计算公式与半径无关 要已知正多边形边数为N 内角和=180(N-2) 半径为R 圆的内接三角形面积公式:(3倍根号3)除以4再乘以R方 外切三角形面积公式:3倍根号3 R方 外切正方形:4R方 内接...
  • 不规则封闭多边形面积计算

    热门讨论 2011-07-21 09:39:01
    简单的不规则封闭多边形面积计算方法。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。
  • 多边形面积公式推导: 使用二维向量求三角形的面积:对于三角形ABC  该题目中,取原点为三角形的一个点。 二维向量的叉乘公式为:  如果A(x1,y1),B(x2,y2),那么S=(x1*y2-x2*y1) / 2   得出多边形的计算公式...
  • 多边形面积

    2017-12-09 15:33:00
    多边形面积 多边形通常分为凸多边形和凹...最常见的多边形面积计算公式 此公式表达式为: S= sqrt( p*(p-a)*(p-b)*(p-c)) 其中p为此三角形的半周长,而a,b,c为三角形三边长 若三角形三点为x1,y...
  • 计算多边形面积

    千次阅读 2019-08-11 02:52:06
    对于规则多边形,矩形、梯形、平行四边形、三角形(根据三边长度,利用公式计算),可以... 先说明三种特殊的几何体类型,可以通过单一多边形面积的加减运算计算面积。 单一多边形的面积的计算原理: 在直角...
  • 题目地址:POJ 1265 ...2.多边形面积公式:按顺序求相邻两个点与原点组成的向量的叉积之和。 3.求边上的格点数:以格子点为顶点的线段,覆盖的点的个数为GCD(dx,dy),其中,dxdy分别为线段横向占的点数和纵向占

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 5,733
精华内容 2,293
关键字:

多边形的面积计算公式