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

已知点间距与直线L梯度,使用Python求解A、B、C、D四点坐标

使用Python求解矩形顶点A、B、C、D坐标

已知条件

  • 各点间的线段长度
  • 过中心的直线L的梯度:该直线平行于线段AD、BC,且与线段AB、CD正交
  • 问题示意图:
    问题示意图

参考实现代码

import numpy as np

# 已知直线L的梯度
l_gradient = 0.17
l_angle = np.arctan(l_gradient)

# 定义线段长度
ad_distance =  1
ab_distance =  2

# 线段AB、DC的梯度与y轴截距,与直线L正交
ab_gradient = dc_gradient = -1 / l_gradient 
dc_intercept = (ad_distance / 2) / np.sin(l_angle) # 由直角三角形公式反推
ab_intercept = - dc_intercept

# 线段AD、BC的梯度与y轴截距,与直线L平行
ad_gradient = bc_gradient = l_gradient 
ad_intercept = (ab_distance / 2) / np.cos(l_angle) # 由直角三角形公式反推
bc_intercept = - ad_intercept

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.26 15:42:03