I frequently had the problem that downloaded STL files needed some minor editing in order to be printable on my 3D printer. Most of the time it was just a simple move to the center of the build platform or a resize.
In addition to that, I already wrote OpenGL code to visualize STL and GCode files a couple of months ago for another larger project.
Finally I had sometimes the problem that I downloaded a ASCII encoded STL file and wanted to open the file in my 3D/CAD application. Since this application can only read binary STL files I needed an easy way to convert ASCII STL to binary STL.
So I wrote Pleasant3D, a small utility which solves these problems and uses the above mentioned visualization code to display STL and GCode files:
What's new in version 2.6.1:
Fixed a stupid crash in the SliceNDiceDocument (Experimental Slicer/G-Code Generator)
What's new in version 2.6:
Fixed the Quicklook plugins on Mavericks (finally!)
Support for milling gcode
New virtual 3d printer and mill devices in the machine setting
Switched OpenGL code to VBOs (much better performance and more modern approach)
Several bugfixes and feature enhancements
What's new in version 2.3.1:
Integrated a lot of changes from Cyril Chapellier's hackable-devices/Pleasant3D fork.
Thanks to Cyril Chapellier, Lawrence Johnston and Maryla!
Refactor the GCode parser to support a wider array of GCode generators, in particular Slic3r
Add statistics to gCode View
Support for dual extrusions
Several more fixes and enhancements
This version implements better error checking in the Quicklook plugins and falls back to displaying the standard document icon if the Quicklook generation fails. That way quicklockd doesn't crash anymore in case of problems.
The experimental slice & dice window is now only available if the "Enable experimental slicer/G-Code generator support" is enabled in the application's preferences. It's off by default. Pleasant3D works as a pure STL/Gcode viewer/inspector application in this case (like it was before the introduction of the slicer tool in version 2.0).
To Whom It May Concern: Pleasant3D's memory management was changed from deprecated GarbageCollection to "Automatic Reference Counting" (ARC)
What's new in version 2.0.2:
Fixed a crash in STL Quicklook plugin (GitHub Issue #7, #6, #5).
Thanks to Ilya Kulakov!
What's new in version 2.0.1:
Fixed some issues with the STL and Gcode Quicklook plugins on Lion/Mountain Lion.
Fixed a nasty bug in the STL editor which caused wrong positioning of STL objects in some cases.
Fixed some remaining issues with the 64-bit version: Pleasant3D runs now as 64-bit application (if supported by the computer).
Automatic check for updates (Sparkle).
Some minor UI changes.
Cleaned up the code (now ready to implement more features. :)
What's new in version 1.1:
Pleasant3D now includes QuickLook plugins for STL and GCode files!
Zooming of STL and GCode previews:
Use the scroll wheel on your mouse to zoom in/out. Optionally, hold the command key and drag the mouse horizontally. Pan the view by holding the Option key and dragging with the mouse. Since there's no rotating in the GCode 2D view, you don't need to hold the Option key to pan there.
New "Rotate" section in STL documents. You can now rotate objects by arbitrary angles.
Additional "Factor" field in the "Dimension" section. This might be helpful when resizing multiple files.
Keyboard shortcuts for changing the current layer in GCode documents. Press the up arrow key to increase, or the down arrow key to decrease the current layer. Press Option-up arrow to jump to the last layer or Option-down arrow to jump to the first layer.
The last known state for "Autorotate", "Show Arrows", "Alpha" etc. are now saved in the preferences.
Here's a 5 minute video, showing off the new features in Pleasant3D v1.1:
You can watch a short screencast of Pleasant3D (v1.0) here: