Posted on Leave a comment

Creating Content for 3d Printing

Software for designing 3d objects

We are often asked what software we use to create 3d models for printing.  The answer depends on the type of project.   This potted guide explains some of the software we use in the production of our 3d models.

The basic workflow for any 3d printing or CNC project is

  1. create a digital 3d model.
  2. break this down into commands the machine can understand.
  3. send the commands to the machine.   

In this article, we are mainly concerned with the first step, creating the digital 3d model.

The right tool for the job

If the model is driven by dimensions, say it has to have a specific pattern of holes, or a specific size,  we use CAD (Computer Aided Design) software.  

Some projects involve more organic shapes, or a highly detailed surface.  For these, we use mesh modelling tools. 

Repairing issues with mesh files is a specialist job for mesh analysis and repair tools.  

Sometimes, mainly for CNC and laser cutting,  we just need the outline, or a path to follow with an engraving or cutting tool.  For these we need drawing software that can create paths or vectors. 

CAD (Computer Aided Design)

CAD software is all about dimensions.  If you know that something has to be a certain thickness, with specifically sized holes in exact locations, these can be created in CAD software in a matter of seconds.   In CAD software, if the dimensions change later in the design process,  you can quickly find the parameter, and change it.   The software will apply the change and update all the downstream characteristics that depend on that parameter.   So,  if you placed a feature in the center of an object, but later change its width or length,  your feature is still in the center.

This ability to drive the design by defining and updating parameters is known as parametric modelling, and it is very powerful.  Especially when working in an iterative design process where changes are frequent.

CAD Drawing Example

CAD File Formats

CAD software has been widely used for decades.  Over the years, several industry standard file formats have emerged. It is usually straightforward to import and export files between different CAD packages using these formats.  IGES and the newer STEP format are the most common.  These file formats preserve all the dimensional data in the design.  

For 3d printing however,  files need to be exported in a mesh format. The most common format is  STL (Simple Tesselation Language).  The STL format describes the surface shape like a digital lump of clay.  STL files contain no information about units, colour or materials.  While you can still take measurements,  the STL format does not contain any of the parameter information from the CAD version.  Converting to STL format creates a series of triangles for the surface.  A flat plane can be described using a few of these triangles. A sphere may use thousands.  If you zoom in on a curved surface in an STL file, it will be made up of many small flat surfaces.  If the resolution of the surface is not high enough, these will show in your final print.    

While editing CAD designs by updating parameters is fast and easy,  making changes once it has been converted into STL format is difficult and time consuming. 

At Celtic3d, we use Autodesk Fusion 360 for design work on a daily basis, and occasionally SketchUp which is popular among some of our architectural clients.

Mesh Modelling

When working with organic shapes, say a landscape or a figurine,  it is more important to have precise control over the overall shape and form rather than just be driven by dimensions.   More like digital sculpting than engineering design.     It may also be necessary to make changes to an existing STL file where the original CAD version is not available.   In these cases, you need to use software that allows direct editing of the surface mesh.

Mesh software breaks down into two main categories,  analysis and fixing of issues with the mesh, and authoring tools to create your own mesh from scratch.

What's a Mesh?

A mesh comprises of a series of vertices (points in space), connected by edges (connecting two vertices) and faces (enclosed by three or more edges).   While the STL file format works with triangles,  Faces with four edges (quads) are easier to work with when editing.   It is also possible to work with faces with more than four edges (polygons). 

For 3d printing,  the mesh needs to have thickness and volume, fully enclosing a space without any holes.    A mesh that successfully encloses a volume is known as watertight or “manifold” and is essential for 3d printing.  If 3d printing software comes across holes in the mesh, or a face that does not enclose a volume,  it will either fail or have unpredicted results when trying to print.

Default Blender Cube
The default Blender Cube. A mesh comprising 8 vertices, 12 edges and 6 faces.

Fixing Issues

Getting the mesh right is critical to a successful 3d print.  This applies equally to files that have been exported in STL format from CAD software and to files that have been created from scratch in mesh modelling software. It also applies to 3d models that might have come from another source – like a 3d scan.  

Scanning software creates thousands of reference points from an object, known as a point cloud.  Many scanning packages can convert these point clouds into a mesh.  Essentially this involves treating the points as vertices and joining them together with edges and faces.  The resulting mesh often needs clean-up to fix holes in the model where the software found insufficient points to join together.

At Celtic3d we use several industrial strength tools to analyse and fix mesh issues prior to 3d printing. 

MeshLab (http://www.meshlab.net) is available as Open Source under GPL licence and is an invaluable tool to find and fixing issues with your 3d model file.  It has features to automatically find and fill holes as well as fix the most common mesh issues.

Creating Your Own 3d Models

While exporting from CAD, downloading STL files from the web or scanning objects are all viable ways to get your 3d model file.  Often 3d modelling from scratch is the best option.  Our go-to software for creating 3d models from scratch is Blender.   It is not just a great tool for digital sculpting and mesh modelling.  It is also a full-featured 3d authoring environment. Blender covers everything from CGI (Computer Generated Images), animation, video editing, physics simulations, materials, textures and lighting.

It has superb 3d modelling capabilities and has an included 3d printing add-in (enabled via User Preferences) to export files in STL format.  Like any software of this breadth of capability, you will need to invest some time to get to grips with it.  However, the payback is enormous.  Health warning:  if you get the bug, it can take over your life.   But, you will be joining a massive online community of artists who have created a large library of tutorials and resources to get you started. 

Blender is Open Source, available at blender.org and is a free download.  We encourage you to make a contribution if you find it useful.    

Celtic3d is a member of the Blender Professional Network.

Quick Tips

Creating a guide to using Blender for 3d print projects is beyond the scope of this article.  For those of you who have already dipped a toe in the water, some quick tips for using Blender specifically for creating 3d printable models.

  1. Sort out your scale from the outset.  The STL file format does not include any information about units,  however most software assumes 1 unit = 1 mm in the real world.  Blender, by default, uses it’s own unit scale when exporting STL files.  The easiest way to handle this is to adopt a convention where 1 Blender unit = 1 mm.
  2. Pay attention to real-world sizes and thicknesses.  It is easy to get sucked into spending hours on details that turn out to be too small to see in the 3d print.
  3. Use non-destructive modifiers.  A quick way to ensure that all your wall thicknesses are 3d printable is to model using planes and add a “solidify” modifier to make them a defined thickness.    (Remember to “Apply Scale” when modelling and turn on the “Apply Modifiers” option in the 3d Print utility.)

Vector Art

Although strictly not relevant to 3d printing,  we frequently combine 3d printed parts with 2d CNC machined components in the same model.  CNC machines and laser cutters need a defined path to follow.   These paths, or vectors, are created in 2d drawing software.  We use Adobe Illustrator for this purpose,  mainly because we can also then use Illustrator for other graphics work.   

There are Open Source vector drawing tools available but unfortunately their functionality generally lags behind Autodesk’s.

Closing

Preparing and creating files for 3d printing involves a whole toolbox of software.  Fortunately, much of what you need is readily available and often free to download and try.  Choosing the right tool depends on the type of job in-hand.  We have hopefully given you some pointers.   If you found this article useful, please link and share.

Posted on Leave a comment

You already have everything you need to 3d print.

3D Builder with Clan Crest loaded

Got Windows 10 and a network connection?

3D Builder

3D printing just got a whole lot easier.  Windows 10 comes with 3D Builder pre-installed, therefore everyone with Windows 10 can open, view and edit 3D model files right on your desktop.   This brings 3D printing within reach of everyone and we encourage you to give it a try. Continue reading You already have everything you need to 3d print.

Posted on Leave a comment

Cloud Computing: Develop the skills to automate

3d city scene created in Blender

Cloud Computing: Develop the skills to automate

For several years, I have been experimenting with 3d modelling.  This has been as a pastime alongside my “day job” of managing IT services in a large company.   These started off as distinct and separate activities,  but recently have been on a converging path.

I am an evangelist for cloud computing. I am also enthusiastic about is possible with a bit of applied know-how.   In the beginning, much of the motivation behind Celtic3d was to put my money where my mouth is and prove-out some of the theoretical advantages of cloud by learning and experiencing the practicalities for myself.

Read More

Posted on Leave a comment

Site setup using WordPress on AWS hosting

System Overview

Low cost, scalable self-hosting on AWS.    

In evaluating our options for hosting Celtic3d, we wanted something that would start off relatively low cost, but could be scaled up without having to completely re-building the site later and we had a rough idea of the sort of environment we wanted down the road.   

Read More