I'm a newb and don't know much about 3D printers. In visual basic I can create vector data of 3d objects,that can be loaded into a binary or text file. Can files like this be used with a 3d printer?

### Example:

This is a very simplified example of how the code generates 3d vector data.

`ju jv jw determine the size and dimensions of the object ru, rv, rw are the vector lenghts `

The incrementors used to increase the size of the object to the max ju jv jw vaules:

`ru=ru+1 rv=rv+1 rw=rw+1 `

'the angles can also be incremented to for curves and spirials'

the angles of the vectors

`angle u =0 angle v =45 angle w = 90 `

### Simplified code:

`For k1 = 0 To Ju ru=ru+1 xu = (ru * Sin(angle u)) yu = (ru * Cos(angle u)) For k2 = 0 To Jv rv=rv+1 xv = (rv * Sin(angle v)) yv = (rv * Cos(angle v)) For k3 = 0 To Jw rw=rw+1 xw = (rw * Sin(angle w)) yw = (rw * Cos(angle w)) Output xu, yu, xv, yv, xw, yw ..to file in the order produced on this line Next k3 : next k2: next k1 `

Can a 3d printer read this output as is and use it to make a 3d object?

## 1 Answer

Not directly. The most common types of 3D printers build objects in layers. They "draw" a layer, then "draw" another layer slightly above it, repeating until they've "drawn" the entire model. Preparing your model for this is called "slicing", since you are "slicing" your model into these layers. Slicing is a complex process and it's a lot of work to "roll your own" software for it, and there are several good, free applications to do it for you out there already.

What you probably *can* do easily is output your data in STL format to be read by the slicing software. STL (either ASCII or binary) is a dead simple format that contains the triangles that comprise your model. So simple, in fact, that the Wikipedia article tells you just about all you need to know.

**To get triangles from squares:**

`A--B Here is a "square" with vertices ABCD. A--B A--B A | | Splitting it from A to C produces two |\ | -> \ | |\ | | triangles, ABC and CDA. This can be | \| -> \| | \ D--C done as part of the output by simply D--C C D--C writing two triangles for every square in the input. `