How to insert two matrices into a matrix?

I would like to insert my matrices: R, R' and t,t' into an identity 4x4 matrix.
Then I would like to multiple them and as a result store from the final 4x4 matrix just the R^(3x3) and t^(3x1) matrices.
Thank you in advance for your help!

 Akzeptierte Antwort

KSSV
KSSV am 22 Nov. 2016
Bearbeitet: KSSV am 22 Nov. 2016

0 Stimmen

I = eye(4) ;
R = rand(3) ;
t = rand(3,1) ;
I(1:3,1:3) = R ;
I(1:3,4) = t ;
or
I = eye(4) ;
R = rand(3) ;
t = rand(3,1) ;
I(1:3,1:4) = [R t]

Weitere Antworten (1)

Guillaume
Guillaume am 22 Nov. 2016

0 Stimmen

The first concatenation is simply:
[Rprime, tprime; 0 0 0 1]
The second:
[R, t; 0 0 0 1]
and so on.

2 Kommentare

Nora Hora
Nora Hora am 22 Nov. 2016
Thank you! And how would you save out the vector and the matrix from the result?
You're talking about Rhat and that, then:
p = [Rprime, tprime; 0 0 0 1] * [R, t; 0 0 0 1];
Rhat = p(1:3, 1:3);
that = p(1:3, 4);

Melden Sie sich an, um zu kommentieren.

Kategorien

Gefragt:

am 22 Nov. 2016

Kommentiert:

am 22 Nov. 2016

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by