5.0

5.0 | 1 rating Rate this file 24 Downloads (last 30 days) File Size: 22.34 KB File ID: #7107

qrot3d -- Quaternion Rotation

by Steven Michael

 

10 Mar 2005 (Updated 25 Sep 2007)

A written-in-C compiled MATLAB function to do fast quaternion rotation on large 3D data sets.

| Watch this File

File Information
Description

This package performs a quaternion rotation on a 3-D data set.

The code is written in C, which I have found produces a very significant (> 10X) speedup over a .m file version, allowing for rotation of large 3-D data set in a short amount of time.

"qrot3d" operates on single or double precision data and can take as an input either a quaternion or a rotation vector and angle.

usage:

rotdata = qrot3d(data,quaternion)
or
rotdata = qrot3d(data,omega,theta)

data must be a (Nx3) matrix. "qrot3d" works with both single and double precision.

MATLAB release MATLAB 7.0.1 (R14SP1)
Other requirements You will need to compile it on your own with a C compiler if you don't have linux or windows.
Tags for This File  
Everyone's Tags
Tags I've Applied
Add New Tags Please login to tag files.
Comments and Ratings (2)
07 Mar 2008 rafa sanchez

hola

03 Feb 2012 Tim

Nice, simple, fast.

Please login to add a comment or rating.
Updates
02 May 2005

Fix a typo that corrupted quaternion rotation for double precision data

25 Sep 2007

Update to use new mwSize variable for dimensions (will now run on 2006/2007 versions of MATLAB). Include binaries for windows 32 bit, linux 32& & 64 bit.

Tag Activity for this File
Tag Applied By Date/Time
geometric transformation Steven Michael 22 Oct 2008 07:43:02
image registration Steven Michael 22 Oct 2008 07:43:02
quaternion rotate 3d Steven Michael 22 Oct 2008 07:43:02
quaternion rotate 3d Patricia 01 Mar 2011 11:55:51

Contact us at files@mathworks.com