SwiftUI Swift 内功之如何在 Swift 中进行自动三角函数计算

news/2025/5/31 16:18:05

没有人喜欢数学,这是事实。那么我们能做些什么来完全消除它从我们的生活中呢?不,这不是机器人。也许有一天我也会写这些。谁知道!但就目前而言,您将不得不解决函数和公式。

准备好离开过去的计算器了吗?让我们看看如何为我们的项目简化三角函数。

原则

对于那些对三角学不太熟悉的人,让我引用另一个教程中的自己,就像一个绝对以自我为中心的书呆子(尽管实际上这只是懒惰):

基本上,在直角三角形中,您可以计算三角形边的长度,前提是您至少:

  • 一个角度的度数(在我们的例子中,我用黄色突出显示的那个),
  • 和大小三边之一(在我们的例子中,蓝色虚线)。
    从图中可以看出,这个逻辑可以应用到我们中间按钮周围的一个不可见的圆圈中,通过用图中的公式计算 x 和 y 值来定义三个按钮(绿色)的位置。

image.png

这个理论对于任何涉及圆圈的架构都是有用的。例如,在那个教程中,我正在解释如何以圆心为起点确定图片中绿点的位置,以便我可以将它们作为三个UIButtons 位置的中心。

三角学告诉我们:

  • sin θ = 对边 / 斜边
  • cos θ = 相邻 / 斜边
  • tan θ = 对边/相邻边

如果你看上面的图片,“θ”是黄色的角度,“x”是相邻的边&

文章来源:https://swiftui.blog.csdn.net/article/details/125651297
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:https://dhexx.cn/news/show-43315.html

相关文章

8.13. XML Type

8.13. XML Type8.13.XML类型The xml data type can be used to store XML data. Its advantage over storing XML data in a text field is that it checks the input values for well-formedness, and there are support functions to perform type-safe operations on it; se…

CocoaPods安装和使用教程

CocoaPods安装和使用教程 这篇文章

李洪强iOS开发之【零基础学习iOS开发】【02-C语言】08-基本运算

计算机的基本能力就是计算,所以一门程序设计语言的计算能力是非常重要的。C语言之所以无所不能,是因为它不仅有丰富的数据类型,还有强大的计算能力。C语言一共有34种运算符,包括了常见的加减乘除运算。这讲就对C语言中的运算符做一…

8.13.1. Creating XML Values

8.13.1. Creating XML Values 8.13.1.创建XML值 To produce a value of type xml from character data, use the function xmlparse: 使用函数xmlparse从字符数据创建xml类型的值: XMLPARSE ( { DOCUMENT | CONTENT } value) Examples: 示例: XMLPA…

优秀工程师-UIResponder

在iOS中UIResponder类是专门用来响应用户的操作处理各种事件的,包括触摸事件(Touch Events)、运动事件(Motion Events)、远程控制事件(Remote Control Events,如插入耳机调节音量触发的事件)。我们知道UIApplication、UIView、UIViewController这几个类是直接继承自…

SwiftUI Swift 内功之 Swift 中使用不透明类型的 5 个技巧

如果您是 Swift 新手,您可能不熟悉不透明类型的概念。简单地说,不透明类型是一种不能从其定义模块外部子类化或初始化的类型。换句话说,这是一种从代码的其他部分隐藏实现细节的方法。 虽然 opaque 类型可用于多种用途,但它们特别适合创建易于使用且难以误用的 API。在这篇…

李洪强iOS开发拓展篇—UIDynamic(重力行为+碰撞检测)

iOS开发拓展篇—UIDynamic(重力行为碰撞检测) 一、重力行为 说明:给定重力方向、加速度,让物体朝着重力方向掉落 1.方法 (1)UIGravityBehavior的初始化 - (instancetype)initWithItems:(NSArray *)items; item参数 :里…

SwiftUI 教程之如何在 2 秒内实现自动滚动功能

使用 SwiftUI 进行开发令人惊讶。它确实使得只需几行代码就可以实现一些很酷的功能。今天,我们来实现自动滚动。当您创建聊天应用程序时,此技术特别有用。我将尽可能简要地解释它。 准备你的 UI struct AutoScrollList: View {var body: some View {VStack {Button("S…

优秀工程师-UIImagePickerController

UIImagePickerController是iOS系统提供的和系统的相册和相机交互的一个类,可以用来获取相册的照片,也可以调用系统的相机拍摄照片或者视频。该类的继承结构是:UIImagePickerController-->UINavigationController-->UIViewController-->UIResponder-->NSObject官方文…

8.13.2. Encoding Handling

8.13.2. Encoding Handling 8.13.2.编码处理 Care must be taken when dealing with multiple character encodings on the client, server, and in the XML data passed through them. When using the text mode to pass queries to the server and query results to the cl…