用户工具

站点工具


2020-2021:teams:legal_string:王智彪:新计算几何总结

差别

这里会显示出您选择的修订版和当前版本之间的差别。

到此差别页面的链接

两侧同时换到之前的修订记录 前一修订版
后一修订版
前一修订版
2020-2021:teams:legal_string:王智彪:新计算几何总结 [2021/09/05 15:16]
王智彪
2020-2021:teams:legal_string:王智彪:新计算几何总结 [2021/09/10 21:25] (当前版本)
王智彪
行 17: 行 17:
 反三角函数有值域问题,比如 $acos(1.0000001)$ 会 $re$ 。 反三角函数有值域问题,比如 $acos(1.0000001)$ 会 $re$ 。
  
-有的时候判断两个角相等需要看 $fabs(a1-a2)<​eps||fabs(a1-a2)>​2.0*pi-eps$ ,应该是用atan2判断 $180$ 度的时候,两边会相差 $2×pi$ 但其实是一个角。+有的时候判断两个角相等需要看 $fabs(a1-a2)<​eps||fabs(a1-a2)>​2.0*pi-eps$ ,应该是用 ​$atan2判断 $180$ 度的时候,两边会相差 $2×pi$ 但其实是一个角。
  
 ===== 2.关于 $atan2$ =====  ===== 2.关于 $atan2$ ===== 
行 23: 行 23:
  ​$atan2(0,​0)=0,​atan2(1,​0)=pi/​2,​atan2(-1,​0)=-pi/​2,​atan2(0,​1)=0,​atan2(0,​-1)=pi$  ​$atan2(0,​0)=0,​atan2(1,​0)=pi/​2,​atan2(-1,​0)=-pi/​2,​atan2(0,​1)=0,​atan2(0,​-1)=pi$
  
-所以新学了个处理 $atan2$ 函数的手法: $double tmp=atan2(a1);​ if(sgn(tmp)<​0) tmp+=2*pi;$ ,这样得到的角就是 $[0,2×pi)$ 的了。+所以新学了个处理 $atan2$ 函数的手法: $doubletmp=atan2(a1);​if(sgn(tmp)<​0)tmp+=2*pi;$ ,这样得到的角就是 $[0,2×pi)$ 的了。
  
 ===== 3.关于叉积,总记不住 ===== ===== 3.关于叉积,总记不住 =====
行 41: 行 41:
 也有 $r={\frac {S} {P}}={\sqrt {{\frac {(P-a)(P-b)(P-c)} {P}}}}$ ,又因为 ${\frac r {P-a}}=tan({\frac A 2})$ ,全换了就有 $r=Ptan({\frac A 2})tan({\frac B 2})tan({\frac C 2})$ 也有 $r={\frac {S} {P}}={\sqrt {{\frac {(P-a)(P-b)(P-c)} {P}}}}$ ,又因为 ${\frac r {P-a}}=tan({\frac A 2})$ ,全换了就有 $r=Ptan({\frac A 2})tan({\frac B 2})tan({\frac C 2})$
  
 +已知三角形三点坐标求三角形内切圆圆心:设 $AB=c,​AC=b,​BC=a,​A(x_{1},​y_{1},​z_{1}),​B(x_{2},​y_{2},​z_{2}),​C(x_{3},​y_{3},​z_{3})$ ,则内切圆圆心为 $({\frac {(ax_{1}+bx_{2}+cx_{3})} {(a+b+c)}},​{\frac {ay_{1}+by_{2}+cy_{3}} {(a+b+c)}},​{\frac {(az_{1}+bz_{2}+cz_{3})} {(a+b+c)}})$
  
 +
 +
 +===== 5.关于四边形 =====
 +
 +圆内接四边形的海伦公式:半周长为 $P$ ,四边形的四边长为 $a,b,c,d$ ,则四边形的面积为 ${\sqrt {(P-a)(P-b)(P-c)(P-d)}}$
 +
 +托勒密定理:圆内接四边形对边乘积和等于对角线乘积。(大概是过一个点做边使得两对三角形相似,然后两个式子加起来就好了)
 +
 +对于任意四边形:我们设四条边长为 $a,b,c,d$ ,对角线长度为 $d_{1},​d_{2}$ ,对角线中点的连线长度为 $M$ 。则有 $a^{2}+b^{2}+c^{2}+d^{2}=d_{1}^{2}+d_{2}^{2}+4M^{2}$ ,在一个三角形中做一条边的中线,然后有两条夹边的平方和等于二倍中线平方加底边平方的一半,然后反复套这个公式就好了。具体可以看这个链接: $http://​m.1010jiajiao.com/​czsx/​shiti_id_416535c6bf26c87adf869805564d02b3$ 。
 +
 +弓形面积:设半径为 $r$ ,角为 $A$ ,则这个弓形的面积为 ${\frac {r^{2}(A-sinA)} {2}}$
 +
 +
 +
 +===== 6.关于圆 =====
 +
 +已知四面体的四个点坐标求四面体内切圆圆心: ${\frac {(S_{abc}x_{4}+S_{abd}x_{3}+S_{acd}x_{2}+S_{bcd}x_{1})} {S_{sum}}}$ ,其余维坐标以此类推。
 +
 +
 +
 +===== 7.棱台 =====
 +
 +棱台体积: ${\frac {(S_{1}+S_{2}+{\sqrt {S_{1}S_{2}}})h} {3}}$ ,其中, $S_{1},​S_{2}$ 表示上下底边, $h$ 表示棱台的高。
 +
 +===== 8.圆锥 =====
 +
 +已知圆锥表面积 $S$ ,求最大体积 $V$ ,二次函数搞一下,得到结果为 ${\frac {S} {12}}{\sqrt {\frac {2S} {\pi}}}$
 +
 +===== 9.圆台 =====
 +
 +圆台的体积: ${\frac {{\pi}(r_{1}^{2}+r_{2}^{2}+r_{1}r_{2})h} {3}}$
 +
 +===== 10.球冠 =====
 +
 +球冠的表面积:设球冠的高为 $H$ ,球的半径为 $R$ ,则球冠的表面积为 $2{\pi}RH$ 。
 +
 +球冠的体积:参数同上,体积为 ${\frac {{\pi}H^{2}(3R-H)} {3}}$ 。
 +
 +===== 11.球扇形 =====
 +
 +当已知球半径和球冠部分的高时,参数同上,两部分加起来全约掉了,最后结果为 ${\frac {2{\pi}R^{2}H} {3}}$ 。表面积同理相加暴算即可,球冠部分搞定剩下就是底面圆周长乘总半径再对半就好了。
 +
 +===== 12.球面距离 =====
 +
 +给两个点的坐标,都在球面上,算出两个点的最短距离。算出两个点的夹角,然后走这个圆上的圆弧就行了。
2020-2021/teams/legal_string/王智彪/新计算几何总结.1630826166.txt.gz · 最后更改: 2021/09/05 15:16 由 王智彪