FreeX3D Examples

Last update: 21 July 2013


This page gives examples of various settings and viewing options. The pictures are clickable, and the models are available by downloading the relevant links.

STL "Watertight" and "Manifold" Checking

3D printers require models that are printable. FreeX3D can, if the "Check" option is selected (see the STL page).

Here are two examples of a simple box, one with a hole in it, the other with an extra triangle.

Models box-hole.stl and box-manifold.stl are shown below; these models also have facet normal errors, so if run in "Original" mode, (or in other STL viewers) the box may appear unlit.

Image Description
STL 1 Box with a missing facet. The algorithms in FreeX3D find this missing facet, outline it in red, and place a count of edge issues in the Info screen.

The box has been filled, and the inside material has been changed to a dark blue, to help outline the missing facet.

STL 1 Box, with one facet duplicated. The duplication has one vertex pulled out, creating a flap.

The top vertical edge, which is shared with the other faces of the box, is identified as having a Manifold issue, and the other two edges are flagged with having an edge issue.

Best vs. Fast Rendering Setting

Click on the picture for a full-size screen shot from a Google Nexus-7.

Image Description
RFB 1 Yellow SpotLight shining on black square.

Square made of many triangles; lighting when in "Fast" mode is done by interpolating light from Vertex to Vertex - this is the traditional OpenGL way of interpolating light across a triangles' surface.

You can almost see the triangles; indeed, if the triangles were larger, the SpotLight effect can actually disappear, if no Vertices are "hit" by the light.

RFB 2 Yellow SpotLight shining on black square.

Lighting done on a per-Fragment basis, so at each fragment of a triangle, lighting calculations are performed.

The SpotLight is very visible, but the Graphics Processor is doing lots of work.

An interesting side-effect of "Best" is that the black square could be made of 2 triangles, 4 vertices; which would greatly reduce the model size in GPU memory, and the visual result would be the same when in "Best" mode.

Fill Properties

Click on the picture for a full-size screen shot from a Google Nexus-7.

Image Description
FP 1 STL model, as originally rendered, rotated to show original lighting and facets. Backwards facing facets would be rendered in red by default - none seen here.

Model is large, rotating while rendering is "grainy", as the graphics processor is maxed out rendering the "as-supplied" model size.

FP 2 Same STL model, improved STL rendering in FreeX3D.

Curves are visually smooth, and the data is sorted and pruned to best render on your device. Finger movement for rotation, scaling is silky smooth now.

Approximately 50% of the data has been removed, to give it a smooth rendering on this Nexus-7 device. Lighting is also improved, as Normals have been re-calculated to give a nicer image.

FP 3 Enable FillProperties. Default colour is white for the lines. The lines are drawn DIRECTLY on to the shape, in the graphics processor, by FreeX3D code.

This is a tablet view - a Phone view, because of the small screen, will not have the left/right views, but an overlay; the "back" button will take you from the FillProperties screen back to the model screen.

FP 4 Take away the "filled" material, and you are left with only the drawn lines.

This example is rendered with "Best" rendering, because the inside of the shape has to be drawn properly. "Best" rendering slows the screen drawing down a bit; try this example, and switch between "Best" and "Fast" rendering, and look for visual artifacts, and responsiveness.

FP 5 Change the fill pattern to "Square", and change the colour, and you get the image shown here.
FP 6 This is a fullscreen image of this STL file, Hatched with a brick hatching, green colour, with base material removed. The image is a screen dump from a Nexus-7, with top menus hidden, via the setting in FreeX3D.

FreeX3D History

FreeX3D is a value-added version of FreeWRL. STL layering and model manipulation has been overlaid on the FreeWRL X3D engine.

From circa 1999 to April 2010, the FreeWRL project was managed by John A. Stewart.

There is absolutely no warranty, express or implied for this software. For details on the conditions of use, see the FreeWRL distribution.

FreeWRL is Copyright (C) 1998, 1999...2009 Tuomas J. Lukka, John Stewart and others.

The FreeWRL library is free software; you can redistribute it and/or modify it under the terms of the GNU Library General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.

The FreeWRL library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Library General Public License for more details. Logo