You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何利用已知公式推导两点间垂直平分线并实现Python绘制?

如何推导线段垂直平分线的直线方程(y=ax+b形式)

别担心,高中数学知识点遗忘太正常了,咱们一步步拆解问题就清晰了!线段的垂直平分线有两个核心特性:必须经过线段的中点,并且与原线段垂直(斜率互为负倒数,特殊情况除外),结合你已经掌握的公式,我们可以按以下步骤推导:


步骤1:确定线段的中点坐标

你已经知道这个公式啦,直接代入计算即可:

  • 中点的x坐标:midX = (x1 + x2) / 2
  • 中点的y坐标:midY = (y1 + y2) / 2
    这个中点是垂直平分线上的一个定点,后面会用到它来确定直线方程。

步骤2:计算垂直平分线的斜率a

原线段的斜率你已经能算出:slope = (y2 - y1)/(x2 - x1),而垂直的两条直线(非特殊情况)斜率互为负倒数,所以:

  • 当原线段既不是水平也不是垂直的时候:a = -1 / slope
  • 特殊情况要单独处理:
    • 如果原线段是水平的(y1 = y2,即slope = 0),垂直平分线是垂直于x轴的直线,方程为 x = midX(无法写成y=ax+b的形式)
    • 如果原线段是垂直的(x1 = x2,此时slope不存在),垂直平分线是水平的直线,方程为 y = midY(这其实是y=ax+b中a=0的特殊情况)

步骤3:代入中点求截距b

当垂直平分线可以写成y=ax+b的形式时(即非垂直于x轴的情况),我们把中点(midX, midY)代入直线方程,因为中点在这条线上,所以等式成立:
midY = a * midX + b
整理一下就能解出b:
b = midY - a * midX


举个实际例子验证

假设P1=(1, 2),P2=(3, 6):

  1. 计算中点:midX=(1+3)/2=2,midY=(2+6)/2=4
  2. 原线段斜率:slope=(6-2)/(3-1)=2,所以垂直平分线斜率a=-1/2
  3. 求截距b:b=4 - (-1/2)*2 = 4 +1=5
    最终垂直平分线方程就是:y = (-1/2)x +5

内容的提问来源于stack exchange,提问作者Jessica Chambers

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.26 10:39:56