At first glance, Geomview appears to be a neat piece of 3-D software—a toy. In reality, an hour's study of the program and the documentation will convince you that it is an extremely powerful visualization tool with virtually unlimited applications. With the mouse, you can easily rotate, scale, translate, and change the lighting of the objects. You can even “fly” through the scene using a built-in “flight simulator”.
These tools alone are enough to make Geomview worth loading onto your machine, but there is more. Incorporated into Geomview is a Graphical Command Language (GCL) which you can use to manipulate the 3-D objects in more ways than with the mouse alone. Additionally, you can pipe GCL commands into Geomview from other programs, allowing use of the package as a powerful interactive display for your own code.
Geomview was created at the University of Minnesota Geometry Center and was designed to serve as both a general purpose viewer and a visualization tool for mathematics research. Thus, the package also comes with the capability to display representations of 3-D objects as well as the ability to display objects in spherical and hyperbolic spaces. The package also includes code which allows you to use Geomview as the default 3-D viewer for Mathematica.
This article demonstrates how to create and animate objects in Geomview and tells you how to obtain a copy for yourself.
Geomview comes packed with loads of sample images in the Geomview/data directory. Getting started is as easy as typing geomview followed by the path and name of one of the image files. For example, Figure 1 shows the file
as well as the two other widgets that will appear on the screen when you first start Geomview. If you are running Geomview on a slower machine, you may notice that manipulating the somewhat complex scene of Figure 1 may be a little grueling. You may therefore want to start out with something a little simpler, like:
or the trefoil knot
which are shown in Figure 2.
Performing rotations, translations, and engaging the flight simulator are all pretty straight forward. For example, to rotate a scene displayed by the camera widget, just press the rotate button on the tools widget, and drag the mouse in the camera widget while holding down the left mouse button. The scene will rotate about an axis parallel to the camera window. If you let go of the left mouse button, the graphic will continue to spin with a speed proportional to the speed of the mouse when you released the button. (This option can be turned off in the motion menu by toggling to the inertia option if you desire a static view of the scene.) Translating and zooming are just as easy.
Rotating the scene may be a little awkward when you first start using Geomview; however, with a little practice, you will quickly get the hang of manipulating objects. It helps if you imagine that the objects displayed by the camera are contained in a giant imaginary sphere. The mouse is then a “gripper” which will latch onto the sphere when the left mouse button is clicked. Moving the mouse with the gripper engaged will cause the sphere to rotate about an axis parallel to the camera plane. To get another view of the scene, you can rotate about an axis perpendicular to the camera plane by using the middle mouse button to activate the middle gripper instead of the left one. The same applies for translations. To translate along an axis perpendicular to the screen, you use the center mouse button.
You can activate Geomview's flight simulator by pressing the fly button in the tools menu, then dragging the mouse from the bottom of the camera widget to the top while holding down the middle mouse button. Again, the speed of your flight will depend on how fast you move the mouse. You can steer through the scene by dragging the mouse on the camera widget and clicking on the left or middle mouse buttons. If you want to stop the motion and take a serious look at something, you can press the halt button, located on the tools widget.
Browsing through the inspect menu on the Geomview widget, you will see a sample of the many attributes of the scene that can be selected and changed. Geomview does not limit you to just changing the color of the surfaces or the edges of the objects. It also allows you to control the color, the placement, and the intensity of the lights which illuminate the scene. There are a myriad other useful options which are fairly well described in the manual contained in the Geomview/doc directory.
|Speed Up Your Web Site with Varnish||Jun 19, 2013|
|Non-Linux FOSS: libnotify, OS X Style||Jun 18, 2013|
|Containers—Not Virtual Machines—Are the Future Cloud||Jun 17, 2013|
|Lock-Free Multi-Producer Multi-Consumer Queue on Ring Buffer||Jun 12, 2013|
|Weechat, Irssi's Little Brother||Jun 11, 2013|
|One Tail Just Isn't Enough||Jun 07, 2013|
- Speed Up Your Web Site with Varnish
- Containers—Not Virtual Machines—Are the Future Cloud
- Non-Linux FOSS: libnotify, OS X Style
- Lock-Free Multi-Producer Multi-Consumer Queue on Ring Buffer
- Linux Systems Administrator
- Senior Perl Developer
- Technical Support Rep
- UX Designer
- Android's Limits
- Weechat, Irssi's Little Brother
Free Webinar: Hadoop
How to Build an Optimal Hadoop Cluster to Store and Maintain Unlimited Amounts of Data Using Microservers
Realizing the promise of Apache® Hadoop® requires the effective deployment of compute, memory, storage and networking to achieve optimal results. With its flexibility and multitude of options, it is easy to over or under provision the server infrastructure, resulting in poor performance and high TCO. Join us for an in depth, technical discussion with industry experts from leading Hadoop and server companies who will provide insights into the key considerations for designing and deploying an optimal Hadoop cluster.
Some of key questions to be discussed are:
- What is the “typical” Hadoop cluster and what should be installed on the different machine types?
- Why should you consider the typical workload patterns when making your hardware decisions?
- Are all microservers created equal for Hadoop deployments?
- How do I plan for expansion if I require more compute, memory, storage or networking?