View Full Version : How to prepare XYZ bathy (text) file for 3D printing?

01-08-2013, 09:17 AM
Hi there,

we do multibeam surveys of the ocean floor, resulting in gridded XYZ files. I would like to print some of our areas via 3D printers (online services?).

In order to produce a waterproof 3D file (STL), I need to add walls and bottom to the 3D surface. I managed to import the data into tools like GeoMapper, Meshlab or AccuTrans3D as STL. However, I'm struggling with adding walls & bottom to make it a waterproof "block". Anyone that has a "how to..." workflow is welcome.

Thanks a lot,

01-08-2013, 05:24 PM
I write 3D software including stuff for CNC machines and have done some stuff with terrain DEM files. I don't use STL myself for this purpose but I was wondering could you make the XYZ files using some scripts. For example, lets say your bathymetry data was of 2000x1000 grid for the sake of example. Could you create an XYZ file of a fixed small height of 2000x1000 for the base. Then create the layers from the data so as to make the walls. You have the side heights from row 0, row 999, col 0 and col 1999. Then use the same software to create a base STL object and 4 wall STL objects. Then you just need to merge all of them together. I know MeshLab could do that but I am not so familiar with the other apps.

Also, as a bit of an aside, do you have any of your data as a small swatch or sample of something not particularly relevant for this object but would show the kind of data you have on hand. Maybe a greyscale PNG depthmap file you might upload ? I used to work in sonar as well and have a little knowledge in that area too which may or may not be useful in your case but it depends on the kind of data you have to print.

01-08-2013, 09:28 PM
Thanks for your reply, first of all. I might be able to upload an STL file as an example, have to organize one first. Besides that, I was hoping for a software tip, that minimizes manual 3D edits, since a) I never worked with 3D software and b) the more manual is involved, the less usable is the method for hundreds of objects.

In my simple view on this, I was hoping for a software function, that just traces the border of the terrain mesh, extrudes it down for a given amount of meters (= walls), and closes the base (= bottom), which would result in the water proof block 3D printers require. Anyone knowing anything like this?

STL seems the format of choice in the 3D printer world, along with VRML, that's why I use it...

01-15-2013, 11:46 AM
I've built my own DFF 3D printer and have played with a variety of stl programs.

Openscad can be used to intersect your surface with a cube to generate a printable stl file. It still might have to be run through something like netfabb to cleanup the stl.

Also there are mesh processing libraries for the processing.org software that could create an stl.

http://landprint.com/ is one company that provides a commercial service for land data, I assume that they could also work with your bathemetry.

If the data is a pure X/Y grid with one Z value per X/Y pair, it should be straightforward to write software to turn it into an stl file. PM me if interested.

-Rob A>

Sorry for the brevity, sent using Tapatalk...

01-23-2013, 08:28 AM
Hi Rob,

thanks for your reply. I will test Openscad asap, I'm pretty busy right now, on a survey vessel with limited web access. But anyways. I have Netfabb installed as well, so I will give it a shot.

I do not have any programming background, this might explain my hope for an easy to use solution. Still my gut feeling tells me, this should be a pretty simple task, assuming the surface is water proof already and just needs to be extruded downwards. Tracing the current border XY coords, reading out their Z, adding whatever number to each, that sums up to a target Z, create those polygons an finally close them by a bottom.

I'm a heavy user of ArcGIS (10) and was surprised they don't have a toolbox for this already ("Convert surface raster into block"), at least not within my extensions (3D Analyst and XToolsPro 8). I do have hopes though that, with 3D printing becoming more popular, some genious will script a toolbox that can be added. Maybe it's you?

I've seen Landprint's offer but since I'm normally based in Germany, using a german provider would be easier (and cheaper?) for me.

Thanks again,