gbSTL

gbSTL is a viewer for STL (stereolithography) files. It can read both Ascii and Binary STL file types. The user can select the colors used to display the image (including gradient colors), rotate the image (including automated rotation), move the image, and select the level of detail in the image (points/lines/surfaces).

The data in the image file may be viewed, as may the current position image of the points and triangles which make up the image.

For programmers, the STL image generation is available in a DLL which may be used in other applications that need STL imaging. Exported file functions are discussion in a section below.

Download (v1.0, 3.2MB)

To install, just unzip the contents of the distribution file into a folder of its own!

Feature List

gbSTL provides a wide variety of features whic can be accomplished by keyboard or mouse.


Toolbar

The toolbar provides access to all features of gbSTL


Keyboard Shortcuts

The following key combinations are available to the user to access gbSTL features:


Settings

The toolbar Settings button provides the following dropdown menu options:


gbSTL DLL (Programmer Information)

STL image generation is provided by a custom DLL that programmers my freely use in the own applications. The parent application supplies a DC to which the DLL will copy the image on demand. Additionally, the parent application passes about a dozen settings which affect the returned image.

Declarations
The needed Declare statement are found in the "gbSTLDemo.bas" source code file.

Types
Three UDT declaration are required - "PointX", "TriangleX", "STLData". They are found in the "gbSTLDemo.bas" source code file .

Exported Procedures and Arguments
This section discusses each of the exported procedures and their arguments.

stl_Render
This is where settings are passed to the DLL:

stl_ResizeImage

stl_RotateAboutXAxis

stl_RotateAboutYAxis

stl_RotateAboutZAxis

stl_LoadObjectFromFile

stl_LoadBGIimage

stl_ChangeSize

stl_GetDataPointers

stl_ScaleToFit - scales the STL model to fit within the display area
stl_SetPointHighLow - determine maximum dimensions of STL model for resizing
stl_CenterModele - centers the model in the display area
stl_CreateCube - no arguments. creates/displays a cube
stl_CreateSphere - no arguments. creates/displays a sphere
stl_GetPointCount - no arguments. returns number of points in the model
stl_GetTriangleCount - no arguments. returns number of triangles in the model
stl_MoveLeft - no arguments. moves left by MoveDistance (pixels)
stl_MoveRight - no arguments. moves right by MoveDistance (pixels)
stl_MoveUp - no arguments. moves up by MoveDistance (pixels)
stl_MoveDown - no arguments. move down by MoveDistance (pixels)
stl_Reset - resets all position to those read from file (does not reload the file)


Other Comments

Comments and suggestions are welcome!