gpt4 book ai didi

ios - 如何在 iOS 中给定中心点和角度画线?

转载 作者:可可西里 更新时间:2023-11-01 03:29:39 28 4
gpt4 key购买 nike

这是一个 iOS 问题,因为我目前无法进行坐标几何。给定一个 CGPoint 作为直线将通过的点和一个以弧度表示的角度。如何绘制一条延伸到屏幕边界的线(无限线)?

我正在使用 Quartz2d 来执行此操作,用于创建线条的 API 仅限于两个点作为输入。那么如何将一个点和角度转换为 iOS 设备边界上的两个点呢?

最佳答案

这从简单的三角函数开始。您需要计算第二个点的 x 和 y 坐标。以 0,0 为原点并将一条直线向右延伸的线视为 0 度,并逆时针方向(对某些人来说是逆时针方向),您可以:

double angle = ... // angle in radians
double newX = cos(angle);
double newY = sin(angle);

假设半径为 1。每次乘以所需的半径。选择一个比屏幕大的数字,例如 iPhone 为 480 或 iPad 为 1024(假设您需要点而不是像素)。

然后将原点相加得到最终点。

假设您有CGPoint startdouble angle 和一个长度,您的最终点是:

double endX = cos(angle) * length + start.x;
double endY = sin(angle) * length + start.y;
CGPoint end = CGPointMake(endX, endY);

如果终点不在屏幕上就OK。

关于ios - 如何在 iOS 中给定中心点和角度画线?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15420861/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com