iCAx开思网

标题: 如何用stack命令实现两个矩阵的合并? [打印本页]

作者: liuchangliang3    时间: 2008-8-23 09:49
标题: 如何用stack命令实现两个矩阵的合并?
大侠:
大家都知道,stack矩阵/数组函数,stack(m1,m2)是将具有相同列数的矩阵m1和m2合并,返回一个新矩阵,可是小弟在编程的时候,一直不知道如何正确应用这一功能。我的问题是这样的:
! 我先设置一个变量ccc!
! ccc
var cre var=ccc integer_value=1
while cond=(eval(DB_EXISTS(".model.Cam_Matrix_"//ccc)))
var mod var=ccc integer_value=(eval(ccc+1))
end

! 再构造一个1行3列(1x3)矩阵!

! Full Matrix !
data_element create matrix full&
matrix_name=(eval(".model.Cam_Matrix_"//ccc))&
comments=""&
row_count=1&
column_count=3&
values=1,1,0&
input_order=by_row units=length

! 然后修改刚才构造的矩阵名字!

entity modify entity = (eval(".model.Cam_Matrix_"//ccc)) &
new =(eval(".model.Cam_Matrix_"//ccc+1//""))

! 再构造一个新的用来被合并到以上矩阵的新矩阵!

data_element create matrix full&
matrix_name=(eval(".model.Cam_Matrix_"//ccc+2//""))&
comments=""&
row_count=1&
column_count=3&
values=2,2,0&
input_order=by_row units=length

! 新建矩阵,其元素数值等于以上两个同列数矩阵合并得到的结果!

data_element create matrix full&
matrix_name=(eval(".model.Cam_Matrix_"//ccc))&
comments=""&
row_count=2&
column_count=3&
values=(stack((".model.Cam_Matrix_"//ccc+1//""),&(".model.Cam_Matrix_"//ccc+2//"")))&
input_order=by_row units=length


编程结束,然后运行的时候有这样的警告:
ERROR:   ---------------------------------------------------------------------
ERROR:   Error detected on line number 40, character 85 of the macro '.MACRO_1'.
ERROR:    Invalid operator (expected &&)
ERROR:      (stack((".model.Cam_Matrix_"//ccc+1//""),<<&(>>".model.Cam_Matrix_"//ccc+2//"")))
ERROR:   The command was not executed.
ERROR:   &> values=(stack((".model.Cam_Matrix_"//ccc+1//""),&(".model.Cam_Matrix_"//ccc+2//"")))&
ERROR:   ---------------------------------------------------------------------


请教大侠我这样做的错误在哪里?难道stack得到的不可以给矩阵赋值么?
作者: liuchangliang3    时间: 2008-8-23 09:57
标题: 补充:
不好意思,刚才的警告复制不对,应该是这样的:
ERROR:   The number of rows (2) times the number of columns (3)
does not equal the number of values (2).
作者: liuchangliang3    时间: 2008-8-23 11:36
请求高手指点啊~~~~
作者: bluediamond99    时间: 2017-2-27 16:53
您好!请问您9年前的矩阵合并问题解决没有?谢谢!
作者: notebb    时间: 2017-3-5 22:22
路过看看,谢谢楼主分享




欢迎光临 iCAx开思网 (https://www.icax.org/) Powered by Discuz! X3.3