The second idea was to transform everything into slices and then use Image3D.
sliceData = ToExpression[Import["/Users/thiel/Desktop/SliceData.txt"]];
range = {MinMax[#[[All, 1]]], MinMax[#[[All, 2]]]} &@Flatten[sliceData[[All, All, {1, 2}]], 1];
imgs = Table[Image@Graphics[Polygon[sliceData[[k, All, {1, 2}]]], PlotRange -> range], {k, 1, Length[sliceData]}];
This gives slices like these:
Partition[imgs[[1 ;; ;; 10]], 3] // TableForm

Then something like this should work:
Image3D[imgs, "Bit", BoxRatios -> {1, 1, 3}, Background -> White,
ColorFunction -> "Grayscale"]
But it doesn't. So I tried something more like this:
graphics = Table[Graphics3D[Polygon[sliceData[[k, All, {1, 2, 3}]]]], {k, 1, Length[sliceData]}];
Show[graphics]

The thing is that this is not a "real" 3D object but just a bunch of 2D planes in 3D space. This here would "fill the gaps".
Show[Table[
Graphics3D[
Polygon[Riffle[
Append[#, sliceData[[k, 1, -1]] + 1.5] & /@
sliceData[[k, All, {1, 2}]],
Append[#, sliceData[[k, 1, -1]] - 1.5] & /@
sliceData[[k, All, {1, 2}]]]]], {k, 1, Length[sliceData]}]]

Cheers,
Marco