参考Matlab中3d矩阵的坐标

时间:2012-04-17 17:08:31

标签: matlab matrix 3d coordinate

在Matlab中我试图找到坐标小于某个函数的3d矩阵中的点。 如果这些坐标等于我能写的某些函数:

A(some_function1,some_function2,some_function3)=2;

但是,如果我想做类似的事情呢?

A(<some_function1,<some_function2,<some_function3)=2;

这不起作用 - 那么在不使用“for”循环的情况下找到这些点的另一种方法是什么?不幸的是,对于“for”循环,我的代码需要花费大量时间来计算。谢谢你的帮助!

3 个答案:

答案 0 :(得分:1)

的内容如何
A(  ceil(min(some_function1,size(A,1))),...
    ceil(min(some_function2,size(A,2))),...
    ceil(min(some_function3,size(A,3)))   );

这会将指标限制在每个数组维度的末尾

答案 1 :(得分:1)

您可以使用常规索引来实现此目的:

A(1:floor(some_function1),1:floor(some_function2),1:floor(some_function3)) = 2;

假设您检查/确保floor(some_function*)小于A

的尺寸

答案 2 :(得分:0)

尝试:

A(1:size(A,1)<some_function1, 1:size(A,2)<some_function2, 1:size(A,3)<some_function3) = 2

我希望我能正确地回答你的问题。