Take the 2-minute tour ×
Mathematica Stack Exchange is a question and answer site for users of Mathematica. It's 100% free, no registration required.

This question already has an answer here:

question1:

(code 1 something wrong, Why? and how to overcome this to achieve the next code's effect)

Inner[RotationTransform,{Pi/4,Pi/4,Pi/4},{{0,0,1},{1,0,0},{0,0,1}},Composition]

(code2 it's ok, but seems type too much characters)

Inner[RotationTransform,{Pi/4,Pi/4,Pi/4},{xx,yy,zz},Composition]/.
                                           Thread[Rule[{xx,yy,zz},{{0,0,1},{1,0,0},{0,0,1}}]]

Any other codes or tips are welcome.

share|improve this question

marked as duplicate by Mr.Wizard Jun 5 '13 at 5:59

This question has been asked before and already has an answer. If those answers do not fully address your question, please ask a new question.

1  
Use Composition @@ MapThread[RotationTransform, {{Pi/4, Pi/4, Pi/4}, {{0, 0, 1}, {1, 0, 0}, {0, 0, 1}}}] instead. –  J. M. May 4 '13 at 1:53
1  
@J. M. ok, I found this is more simpler in my original code'style. Inner[RotationTransform,{Pi/4,Pi/4,Pi/4},Hold/@{{0,0,1},{1,0,0},{0,0,1}},Composi‌​tion]//Release –  HyperGroups May 4 '13 at 2:04
1  
ReleaseHold[] is what the cool kids use nowadays. –  J. M. May 4 '13 at 2:07

1 Answer 1

up vote 8 down vote accepted

you can just add Unevaluated to prevent Inner from seeing inside:

Inner[RotationTransform, {Pi/4, Pi/4, Pi/4}, 
 Unevaluated /@ {{0, 0, 1}, {1, 0, 0}, {0, 0, 1}}, Composition]
share|improve this answer

Not the answer you're looking for? Browse other questions tagged or ask your own question.