manthanein 发表于 2019-6-28 15:17:00

根据一条折线求正多边形的面积

在正n边形中,给出在正多边形内部连接两个端点的一条折线,这条折线由m条线段组成,给出每条线段的长度以及它们连接时拐的角度,这样总共有m条线段和m-1个角。
给定n,求m的最小值,以及此时的面积表达式。

举一个例子:javascript:;
这时面积可以算出来是84.5

.·.·. 发表于 2019-6-28 20:00:40

提示:算对角线长
提示x2:勾股定理
如果还需要……相似/辅助线平移那个5厘米

manthanein 发表于 2019-6-28 21:15:12

.·.·. 发表于 2019-6-28 20:00
提示:算对角线长
提示x2:勾股定理
如果还需要……相似/辅助线平移那个5厘米

这个我也想到了,似乎可以根据折线每一段的长度和每个转角的角度计算起止点的距离。
这么说来问题就变成已知正多边形中一条连接两点的线,求面积了。

manthanein 发表于 2019-6-29 01:35:28

设折线起点为\((A_0,B_0)\),第\(i\)个拐弯点为\(A_i,B_i\),拐角为\(\theta_i\)(逆时针方向为正),第\(i\)条线段长度为\(L_i\)。
于是:
\(L_i^2=(A_i-A_{i-1})^2+(B_i-B_{i-1})^2\)
将点\((A_{i-1},B_{i-1})\)绕着点\((A_i,B_i)\)旋转\(\theta_i\),得到的点的坐标\((X,Y)\)
\(X=(A_{i-1}-A_i)\cos{\theta_i}-(B_{i-1}-B_i)\sin{\theta_i}+A_i\)
\(Y=(A_{i-1}-A_i)\sin{\theta_i}+(B_{i-1}-B_i)\cos{\theta_i}+B_i\)
于是点\((A_i,B_i)\)、点\((X,Y)\)、点\((A_{i+1},B_{i+1})\)共线。
所以:
\(\D \frac{B_{i+1}-B_i}{A_{i+1}-A_i}=\frac{(A_{i-1}-A_i)\sin{\theta_i}+(B_{i-1}-B_i)\cos{\theta_i}}{(A_{i-1}-A_i)\cos{\theta_i}-(B_{i-1}-B_i)\sin{\theta_i}}\)

\(\D \frac{(B_{i+1}-B_i)^2}{(A_{i+1}-A_i)^2}=\frac{[(A_{i-1}-A_i)\sin{\theta_i}+(B_{i-1}-B_i)\cos{\theta_i}]^2}{[(A_{i-1}-A_i)\cos{\theta_i}-(B_{i-1}-B_i)\sin{\theta_i}]^2}\)

\(\D \frac{L_{i+1}}{A_{i+1}-A_i}=\frac{L_i}{(A_{i-1}-A_i)\cos{\theta_i}-(B_{i-1}-B_i)\sin{\theta_i}}\)

manthanein 发表于 2019-6-29 02:09:43

换一种思路吧,把第一条线段移到水平,第二条线段的水平投影是\(L_2\cos(\pi+\theta_1)=-L_2\cos{\theta_1}\),竖直投影是\(L_2\sin(\pi+\theta_1)=-L_2\sin{\theta_1}\)。
第三条的水平投影是\(L_3\cos(2\pi+\theta_1+\theta_2)\),竖直投影是\(L_3\sin(2\pi+\theta_1+\theta_2)\)
所以总的水平投影和竖直投影可以计算出来,就是不太好化简好像。
不知道有没有化简的办法。

manthanein 发表于 2019-6-29 02:15:31

若k为奇数,\(\D L_{k+1}\cos(k\pi+\sum^{k}_{i=1}\theta_i)=-L_{k+1}\cos\sum^{k}_{i=1}\theta_i\)
若k为偶数,\(\D L_{k+1}\cos(k\pi+\sum^{k}_{i=1}\theta_i)=L_{k+1}\cos\sum^{k}_{i=1}\theta_i\)

manthanein 发表于 2019-6-29 18:28:41

\(\D L_{k+1}\cos(k\pi+\sum^{k}_{i=1}\theta_i)=(-1)^kL_{k+1}\cos\sum^{k}_{i=1}\theta_i\)
\(\D L_{k+1}\sin(k\pi+\sum^{k}_{i=1}\theta_i)=(-1)^kL_{k+1}\sin\sum^{k}_{i=1}\theta_i\)
页: [1]
查看完整版本: 根据一条折线求正多边形的面积