news 2026/8/1 9:16:42

为什么sin(A+B)=sin(A)cos(B)+cos(A)sin(B)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
为什么sin(A+B)=sin(A)cos(B)+cos(A)sin(B)

这是一个非常好的问题!很多同学在推导到这一步时,都会产生类似的直觉混淆。

我们之所以用sin⁡(B)\sin(B)sin(B)而不是cos⁡(B)\cos(B)cos(B),可以从以下两个角度来理解:

角度一:利用通用的三角形面积公式(最直观)

在任意三角形中,有一个非常经典的面积公式:
面积=12×边1×边2×sin⁡(两边的夹角)\text{面积} = \frac{1}{2} \times \text{边}_1 \times \text{边}_2 \times \sin(\text{两边的夹角})面积=21×1×2×sin(两边的夹角)
请注意,这个通用公式中使用的一定是正弦sin⁡\sinsin,而不是余弦cos⁡\coscos

在直角三角形△PDR\triangle PDRPDR中:

  • 我们已知两边为PDPDPDPRPRPR
  • 这两边的夹角正好是BBB(即∠RPD\angle RPDRPD)。
  • 直接套用上述公式,面积就是:
    S△PDR=12⋅PD⋅PR⋅sin⁡(B)S_{\triangle PDR} = \frac{1}{2} \cdot PD \cdot PR \cdot \sin(B)SPDR=21PDPRsin(B)

角度二:利用传统的“底×\times×÷\div÷2”来推导

如果我们不用上面的夹角面积公式,而是用最基础的12×底×高\frac{1}{2} \times \text{底} \times \text{高}21××,同样可以证明为什么是sin⁡(B)\sin(B)sin(B)

  1. 确定底和高
    在直角三角形△PDR\triangle PDRPDR中,我们将PDPDPD看作高,那么对应的底边就是RDRDRD
    面积=12⋅RD⋅PD\text{面积} = \frac{1}{2} \cdot RD \cdot PD面积=21RDPD

  2. 用三角函数表示底边RDRDRD
    在直角三角形△PDR\triangle PDRPDR中,角BBB对边RDRDRD,斜边是PRPRPR
    根据正弦的定义:
    sin⁡(B)=对边斜边=RDPR\sin(B) = \frac{\text{对边}}{\text{斜边}} = \frac{RD}{PR}sin(B)=斜边对边=PRRD
    由此可以得出,底边:
    RD=PR⋅sin⁡(B)RD = PR \cdot \sin(B)RD=PRsin(B)

  3. 代入面积公式
    RD=PR⋅sin⁡(B)RD = PR \cdot \sin(B)RD=PRsin(B)代入到12⋅RD⋅PD\frac{1}{2} \cdot RD \cdot PD21RDPD中,就得到了:
    面积=12⋅(PR⋅sin⁡B)⋅PD=12PD⋅PR⋅sin⁡(B)\text{面积} = \frac{1}{2} \cdot (PR \cdot \sin B) \cdot PD = \frac{1}{2} PD \cdot PR \cdot \sin(B)面积=21(PRsinB)PD=21PDPRsin(B)


为什么您会直觉觉得应该是cos⁡(B)\cos(B)cos(B)

您的直觉其实非常敏锐,因为在同一个三角形中,PDPDPD确实和cos⁡(B)\cos(B)cos(B)有关
由于PDPDPD是角BBB的邻边,所以确实有:
PD=PR⋅cos⁡(B)PD = PR \cdot \cos(B)PD=PRcos(B)

如果我们把PD=PRcos⁡(B)PD = PR \cos(B)PD=PRcos(B)RD=PRsin⁡(B)RD = PR \sin(B)RD=PRsin(B)同时代入面积公式,三角形的面积也可以写成:
面积=12⋅RD⋅PD=12(PRsin⁡B)(PRcos⁡B)=12PR2sin⁡(B)cos⁡(B)\text{面积} = \frac{1}{2} \cdot RD \cdot PD = \frac{1}{2} (PR \sin B)(PR \cos B) = \frac{1}{2} PR^2 \sin(B)\cos(B)面积=21RDPD=21(PRsinB)(PRcosB)=21PR2sin(B)cos(B)

那为什么我们在证明中不这么写呢?
因为我们的目的是要把左边三角形的角AAA和右边三角形的角BBB结合起来

  • 我们故意保留了PDPDPD没动,而是用左边三角形的关系,把PDPDPD替换成了与角AAA相关的式子:PD=PQcos⁡(A)PD = PQ \cos(A)PD=PQcos(A)
  • 同时,我们把RDRDRD替换成了与角BBB相关的式子:RD=PRsin⁡(B)RD = PR \sin(B)RD=PRsin(B)

把这两者结合,才巧妙地凑出了含有AAA又含有BBB的项:
面积=12⋅PD⋅RD=12(PQcos⁡A)⋅(PRsin⁡B)=12bccos⁡(A)sin⁡(B)\text{面积} = \frac{1}{2} \cdot PD \cdot RD = \frac{1}{2} (PQ \cos A) \cdot (PR \sin B) = \frac{1}{2} b c \cos(A)\sin(B)面积=21PDRD=21(PQcosA)(PRsinB)=21bccos(A)sin(B)

这就是为什么公式里会出现sin⁡(B)\sin(B)sin(B)配合cos⁡(A)\cos(A)cos(A)的原因。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/8/1 9:16:05

AI项目管理如何避免“只会问答”?建立可执行工作流的5个步骤

很多团队已经把AI接入项目管理,但实际使用仍停留在“帮我总结进度”“分析一下风险”。回答看起来很完整,项目里的任务、负责人和状态却没有任何变化。要让AI真正参与项目推进,需要把一次对话拆成可执行、可检查、可写回的工作流程。本文给出…

作者头像 李华
网站建设 2026/8/1 9:07:58

Unity游戏架构设计:从模块化到性能优化的10个关键技术实践

1. 项目概述:为什么Unity开源项目是架构学习的金矿 最近几年,Unity生态里涌现出大量高质量的开源游戏项目,从简单的2D平台跳跃到复杂的3D RPG,应有尽有。对于很多开发者,尤其是刚入行不久的朋友,看这些项目…

作者头像 李华
网站建设 2026/8/1 9:02:45

开关电源四大保护电路设计:过热、过流、过压与软启动实战指南

1. 项目概述:为什么开关电源保护电路是设计的“生命线”干了十几年电源设计,从消费电子到工业设备都摸过一遍,我越来越觉得,一个开关电源的性能指标再漂亮,如果保护电路没做好,那基本就等于在悬崖边上跳舞。…

作者头像 李华
网站建设 2026/8/1 9:02:03

STM32串口死机元凶:溢出错误(ORE)的硬件原理与软件解决方案

1. 项目概述:一个被忽视的“小”问题在嵌入式开发,尤其是基于STM32这类MCU的项目中,串口(UART/USART)几乎是使用频率最高的外设之一。它承担着调试信息输出、与上位机通信、模块数据交互等核心任务。很多开发者&#x…

作者头像 李华
网站建设 2026/8/1 8:54:07

Unity ES3序列化自定义类的核心问题与实战解决方案

1. 项目概述:Unity ES3保存类问题的深度剖析在Unity项目开发中,数据持久化是绕不开的核心环节。无论是存档读档、配置管理,还是运行时状态记录,一个稳定可靠的序列化方案都至关重要。Easy Save 3(简称ES3)作…

作者头像 李华