中点坐标计算器
输入两个端点坐标即可按中点公式求线段中点:支持平面 (x, y) 与空间 (x, y, z),中点、坐标差和反求端点保持精确表示,线段长度按所选小数位近似显示。
平面用两点 (x, y),空间用三维 (x, y, z)。坐标可为负数或小数。
中点坐标恒为精确值,此项只影响两端点间线段长度(可能为无理数)的小数位。
由中点公式 M = ((x₁+x₂)/2, (y₁+y₂)/2) 得中点 (4, 6)。中点坐标为两端点坐标的平均值,恒为精确值。两端点间线段长度 d ≈ 5.656854(无理数,已四舍五入到所选小数位)。
怎么用
- 选择要算什么:默认「已知两端点求中点」:填两个端点坐标,直接求线段中点。若你已知中点和其中一个端点、要反求另一个端点,切换到「已知中点和一端点求另一端点」。
- 选择维度(平面或空间):平面上的点用 (x, y) 坐标,选「平面」;空间中的点用 (x, y, z) 三维坐标,选「空间」。中点公式在两种情形下形式一致,空间只是多算一个 z 分量。
- 填入坐标:求中点时,在「端点 P₁」「端点 P₂」下分别填两点坐标;反求端点时,在「中点 M」下填中点坐标、在「已知端点 P₁」下填已知那一端。坐标可以是负数或小数,两端点先后顺序不影响中点。
- 读结果:工具立即给出中点坐标,并附坐标差 Δx、Δy(、Δz) 与两端点间的线段长度;反求端点时给出另一端点 P₂ = 2M − P₁ 的精确坐标。求中点时可在「小数位数」处调整线段长度(可能为无理数)的近似位数;若极小非零距离被四舍五入为 ≈0,可结合坐标差和更高小数位判断。
核心要点
中点坐标计算器先给结论:把两个端点的每个坐标相加再除以 2, 就能得到线段正中间的点。
- 平面:
M = ((x₁+x₂)/2, (y₁+y₂)/2); 如(2,4)与(6,8)的中点为(4, 6)。 - 空间:
M = ((x₁+x₂)/2, (y₁+y₂)/2, (z₁+z₂)/2);三维多算一个 z 分量。 - 反求端点:已知中点 M 与一端点 P₁,由
P₂ = 2M − P₁求另一端点。 - 精确与近似分开看:中点、坐标差与反求端点按十进制精确展示; 线段长度可能是无理数,才按所选小数位近似。
- 边界提醒:极小非零距离如果被四舍五入到显示位数, 可能显示为
≈0;可提高小数位或查看坐标差判断是否重合。 - 坐标输入:支持负数、小数和三维坐标,全部在浏览器本地完成。
原理与公式
中点公式用于求坐标系中一条线段的中点——到两端点距离相等、 把线段一分为二的那个点。做法是把两端点的坐标逐分量取平均:
平面(二维)
两端点 P₁(x₁, y₁)、P₂(x₂, y₂):
M = ((x₁ + x₂) / 2, (y₁ + y₂) / 2)
空间(三维)
两端点 P₁(x₁, y₁, z₁)、P₂(x₂, y₂, z₂):
M = ((x₁ + x₂) / 2, (y₁ + y₂) / 2, (z₁ + z₂) / 2)
为什么是取平均值
从 P₁ 沿线段走到 P₂,横坐标的总位移是 Δx = x₂ − x₁;走到正中间时横坐标只增加了一半,即 x₁ + Δx/2 = (x₁ + x₂)/2,正是两端横坐标的平均值。纵坐标(及 z)同理。 所以中点各坐标都是对应端点坐标的算术平均。
反求端点
由 M = (P₁ + P₂) / 2 两边乘 2 移项,得 P₂ = 2M − P₁,逐坐标为 x₂ = 2·mₓ − x₁、y₂ = 2·m_y − y₁(空间再加 z₂ = 2·m_z − z₁)。已知中点与一端点即可求出另一端点。
算例
平面·整数:P₁(2,4)、P₂(6,8),M = ((2+6)/2, (4+8)/2) = (4, 6)。
平面·半整数:P₁(1,1)、P₂(2,4),M = (1.5, 2.5)(坐标之和为奇数,中点为精确的半整数)。
空间:P₁(0,0,0)、P₂(2,3,6),M = (1, 1.5, 3)。
反求端点:中点 M(4,6)、已知端点 P₁(2,4),P₂ = (2×4−2, 2×6−4) = (6, 8)。
顺带得到的量
- 坐标差:
Δx = x₂−x₁、Δy = y₂−y₁(空间再加Δz),带符号,随端点顺序变号。 - 线段长度(距离):
d = √(Δx² + Δy²(+ Δz²));能开尽给精确值,开不尽按所选小数位近似。
精度:本工具用十进制精确运算(decimal.js)代入公式, 中点坐标、坐标差与反求端点在任意大小、任意位数下均为精确值(运算精度按输入自动调高,不产生浮点误差、也不截断有效数字);只有两端点间 线段长度可能是无理数,才四舍五入到所选小数位(默认 6 位,最多 20 位)。
常见问题
- 中点公式是什么?怎么求线段的中点坐标?
- 平面上两点 P₁(x₁, y₁)、P₂(x₂, y₂) 所连线段的中点为 M = ((x₁+x₂)/2, (y₁+y₂)/2);空间中两点 P₁(x₁, y₁, z₁)、P₂(x₂, y₂, z₂) 的中点为 M = ((x₁+x₂)/2, (y₁+y₂)/2, (z₁+z₂)/2)。也就是把两点的 x 坐标取平均、y 坐标取平均(空间再把 z 取平均),得到的点就在两端点正中间。例如 P₁(2,4)、P₂(6,8),中点 M = ((2+6)/2, (4+8)/2) = (4, 6)。本工具用高精度十进制运算代入公式,中点坐标为精确值。
- 中点公式为什么是取两端点坐标的平均值?
- 中点是线段上到两端点距离相等的那个点,几何上正好把线段一分为二。在坐标系里,从 P₁ 走到 P₂,x 方向的位移是 x₂−x₁;走到一半时 x 增加了 (x₂−x₁)/2,于是中点的横坐标为 x₁ + (x₂−x₁)/2 = (x₁+x₂)/2,正是两端点横坐标的平均值。y、z 方向同理。所以「取平均」不是巧合,而是「走到线段一半」的直接结果。
- 已知中点和一个端点,怎么反求另一个端点?
- 把工具切换到「已知中点和一端点求另一端点」。因为 M 是 P₁、P₂ 的平均,即 M = (P₁ + P₂) / 2,两边乘 2 再移项得 P₂ = 2M − P₁,逐坐标就是 x₂ = 2·mₓ − x₁、y₂ = 2·m_y − y₁(空间再加 z₂ = 2·m_z − z₁)。例如中点 M(4,6)、已知端点 P₁(2,4),则另一端点 P₂ = (2×4−2, 2×6−4) = (6, 8)。结果为精确值。
- 交换两个端点的顺序,中点会变吗?
- 不会。中点公式里两端点坐标是相加后取平均的,加法满足交换律,(x₁+x₂)/2 与 (x₂+x₁)/2 完全相等,所以谁当 P₁、谁当 P₂ 都得到同一个中点。需要注意的是,坐标差 Δx = x₂−x₁ 的符号会随顺序改变(本工具按「P₂ 减 P₁」给出带符号的差),若你还要用它求方向或斜率,端点顺序就有意义了;但中点本身与顺序无关。
- 坐标可以是负数或小数吗?中点会不会出现小数?
- 都可以。x、y、z 坐标允许为负数或小数,工具用十进制精确运算,负号会正常参与平均,不会产生 JS 浮点误差(如 (0.1+0.3)/2 精确得 0.2 而非 0.2000…4);中点坐标按输入有效数字保留,不受线段长度小数位设置影响。中点坐标是否为整数取决于两端点之和的奇偶:当两坐标之和为奇数时,中点该坐标会是「.5」结尾的半整数,例如 P₁(1,1)、P₂(2,4) 的中点为 (1.5, 2.5),这是精确值,不是四舍五入。
- 三维空间里的中点怎么算?
- 在「维度」处选「空间 (x, y, z)」,为每个点各填 3 个坐标即可。空间中点公式只是在平面公式上多加一个 z 分量:M = ((x₁+x₂)/2, (y₁+y₂)/2, (z₁+z₂)/2)。例如 P₁(0,0,0)、P₂(2,3,6) 的中点为 (1, 1.5, 3)。三条坐标各自独立取平均,互不影响。
- 中点、坐标差和线段长度有什么区别?为什么距离有时带 ≈?
- 中点是一个「点」——线段正中间的坐标;坐标差 Δx、Δy(、Δz) 是从 P₁ 到 P₂ 的带符号位移;线段长度(距离)是一个「数」——两端点间的直线距离,用距离公式 d = √(Δx² + Δy²(+ Δz²)) 求。距离开不尽时会按所选小数位显示近似值,前面带 ≈;如果坐标差非零但距离低于当前显示精度,也可能显示 ≈0,这表示小于当前近似位数,不等于数学上两点重合。需要精确距离和最简根式时,可用本站的「距离公式计算器」。
- 中点公式在实际中有什么用?
- 凡是「求两点正中间位置」的场景都能用:解析几何里求线段中点、三角形的中线与重心、平行四边形对角线交点、圆的直径端点求圆心;地图/平面图上求两个位置的中间点(把地图当坐标系);工程制图中定位对称中心;图形程序里求两个顶点连线的中点作参考点。反过来,已知中心和一端求对称点,也用本工具的「反求端点」模式(P₂ = 2M − P₁)。