I started to put together a set of demos that I have build to illustrate concepts covered in the courses I have though or am teaching. My intent is to grow this collection. Should you find these demos useful or have suggestions on how they can be improved, I would love to hear about it.
2D Transformations and N-gons
This demo uses a Matlab GUI to allow user to play around with 2D transformations (translation, rotation, uniform scaling, non-uniform scaling, x- and y-skew). The demo also allows user to compose up to three 2D transformation in an arbitrary order. This can be used to illustrate how one can rotate an object about an arbitrary point by composing three elementary transformations; or alternatively to illustrate if and how the different transforms commute. The GUI also allows user to switch among a few simple 2D geometric objects, to better illustrate the effects, including an N-sided equiangular polygon and N-pointed star.
Download Matlab Code and Win32 Executable
© Copyright 2008, Leonid Sigal
All Rights Reserved Permission to use, copy, modify, and distribute this software and its documentation for any non-commercial purpose is hereby granted without fee, provided that the above copyright notice appear in all copies and that both that copyright notice and this permission notice appear in supporting documentation, and that the name of the author not be used in advertising or publicity pertaining to distribution of the software without specific, written prior permission. THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR ANY PARTICULAR PURPOSE. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
Surface of Revolution
This demo uses Matlab GUI to illustrate a polygonal approximation to the 3D surface of revolution. User is allowed to specify an arbitrary set of knot points (with a mouse) for a 2D spline in X-Y plane. The spline is then sampled and the points are rotated around the Y-axis to produce a 3D surface of revolution. Controls allow user to vary the density of points sampled on the spline and the density of angles along the revolution; hence producing approximations at different resolution. A smooth and faceted rendering options are available for visualization.
Download Matlab Code and Win32 Executable
© Copyright 2008, Leonid Sigal
All Rights Reserved Permission to use, copy, modify, and distribute this software and its documentation for any non-commercial purpose is hereby granted without fee, provided that the above copyright notice appear in all copies and that both that copyright notice and this permission notice appear in supporting documentation, and that the name of the author not be used in advertising or publicity pertaining to distribution of the software without specific, written prior permission. THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR ANY PARTICULAR PURPOSE. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.