在 iOS 中处理点矩阵的最佳方法

发布于 2024-11-17 20:04:57 字数 181 浏览 1 评论 0原文

我需要在 iPhone 应用程序中处理点矩阵,以便能够在点之间绘制线条。这里的dots是CGPoint的集合。处理这种矩阵的最佳方法是什么?我想以这样的方式创建数组/矩阵,以便我可以访问给定点的所有邻居。经过大量谷歌搜索后,我发现 Accelerate.framework 也可以处理此类内容,但它似乎非常复杂。 对此有什么想法吗? 谢谢 阿尼特姆

I need to handle a matrix of dots in an iphone application to be able to draw lines between the dots. Here dots are a collection of CGPoint. What is the best way of dealing with such kind of matrix? I would like to create the array/matrix in such a way that I can access all the neighbours of a given point. After a lot of googling I found Accelerate.framework that is also handleing such kind of stuff but it seems to be much complex.
Any idea on this?
Thanks
Arnieterm

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

我的鱼塘能养鲲 2024-11-24 20:04:57

矩阵类应该相对容易制作。如果矩阵的大小是恒定的,则可以轻松使用 ac 数组。使用一些简单的数学,您可以在恒定时间内访问矩阵中的任何元素。

c 列 r 行的元素: x = 矩阵[ r * NUM_COLUMNS + c ];

索引 i 处元素上方的元素:matrix[ i - NUM_COLUMNS ];
索引 i 处元素下方的元素:matrix[ i + NUM_COLUMNS ];
索引 i 处元素右侧的元素:matrix[ i + 1 ];
索引 i 处元素左侧的元素:matrix[ i - 1 ];

根据您想要在边缘执行的操作,如果您想环绕矩阵,您可能必须使用一些 if 语句或可能的模运算符。

A matrix class should be relatively easy to make. If the size of the matrix is constant, you can easily use a c array. Using some simple math you can access any element in the matrix in constant time.

element at column c and row r: x = matrix[ r * NUM_COLUMNS + c ];

element above element at index i: matrix[ i - NUM_COLUMNS ];
element below element at index i: matrix[ i + NUM_COLUMNS ];
element to the right of element at index i: matrix[ i + 1 ];
element to the left of element at index i: matrix[ i - 1 ];

depending on what you want to do at the edges you may have to use some if statement or possibly modulus operators if you want to wrap around the matrix.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文