algorithm - 有没有办法得到一个点的坐标?
解决方案
获取 P1 和 P2 之间的差,交换 x/y 分量,将它们除以差的绝对值,然后分别从 P1 中加/减。Python 中的示例:
>>> P = namedtuple("P", "x y")
>>> p1 = P(3, 4)
>>> p2 = P(5, 3)
>>> dx = p2.x - p1.x
>>> dy = p2.y - p1.y
>>> a = (dx**2 + dy**2)**.5
>>> P(p1.x + dy/a, p1.y - dx/a)
P(x=2.552786404500042, y=3.1055728090000843)
>>> P(p1.x - dy/a, p1.y + dx/a)
P(x=3.447213595499958, y=4.894427190999916)
推荐阅读
- android - 在每个卡片视图中都有一个微调器 - recyclerview 中的卡片视图
- schema - Orientdb maximum number of classes
- bash - Bash - 创建一个带有通配符元素的数组以进行匹配
- avasset - Failed to initialize an AVAssetExportSession (iPhone XS, XR, XMax)
- google-cloud-platform - What is easiest way to deploy using docker-compose.yml on GCP in 2018?
- haskell - 尝试在 Haskell 中构建树
- android - 为什么查询参数不使用 Retrofit2 android 编码
- hyperledger-composer - 如何在本地使用超级账本网卡
- php - 从 gmail 复制客户端数据并提交表单时 PHP 抛出 403 禁止错误
- php - 在 Drupal8 自定义块中使用自定义树枝模板