Plan 9 from Bell Labs’s /usr/web/sources/contrib/fernan/nhc98/tests/nofib/real/hidden/Rotate.lhs

Copyright © 2021 Plan 9 Foundation.
Distributed under the MIT License.
Download the Plan 9 distribution.


> module Rotate (rotate) where
> import Numbers
> import Vectors
> import Matrices

> rotate	:: Vector -> Vector -> Vector
> rotate v w	| v==0			= w
>		| normv==vec [0,0,1]	= w
>		| normv==vec [0,0,-1]	= -w
>		| otherwise		= mat [p,q,r] `mulm` w
>		  where normv = norm(v)
>			p = norm(q*r)
>			q = norm(vec [0,0,1]*r)
>			r = normv

Bell Labs OSI certified Powered by Plan 9

(Return to Plan 9 Home Page)

Copyright © 2021 Plan 9 Foundation. All Rights Reserved.
Comments to webmaster@9p.io.