neobobkrause
Posts: 15
Joined: Fri May 30, 2014 6:37 pm

Unbundling Vase Mode

Tue Aug 30, 2016 6:36 pm

I like Vase Mode. And yet, I find it to be quite restrictive. I'd request that the various settings that constitute Vase Mode today be broken out into individually addressable process settings. The following is a list of the various settings that I've identified as being affected by Vase Mode. There may be others. But I'd request these changes in process configuration settings and setting up of multi-process jobs...

- I want S3D to always honor the Perimeter Shell Count. An XY plane will bisect vertical protrusion of a manifold mesh twice. So even a protrusion having a thickness of just twice Extrusion Width will be 2 shells thick. (Yet shapes thinner than the thickness of 2 shells aren't currently rendered. Grr!) Vase Mode always generates just 1 shell. I think it does so because it only follows the exterior mesh of the geometry. Vase Mode does this even when the imported mesh isn't manifold. It completely ignores anything beyond the exterior.

- The Slicing Behavior section of the Advanced tab should have a third option for how to handle non-manifold segments. This third option would configure S3D to not special-case non-manifold segments. When this option is chosen, non-manifold segments should be rendered with the specified number of top, bottom and perimeter shells -- and obviously no infill. I believe that this should actually be the default option.

- S3D should honor the non-layered nature that is currently only possible in vase mode, but also do so when printing a non-manifold segment with only 1 shell.

- S3D should allow the generation of jobs that contain multiple processes even when 1 or more of the processes are Vase Mode. The restriction necessary for Vase Mode processes to coexist in jobs like this is simply that a Vase Mode process be the only process that adds gcode in a Vase Mode's vertical volume. For example, a non-vase process may be defined to print a base in the lower layers of a job. A vase process may then start above the base geometry. Finally, the job may end with a third process that prints a lid or a rim just above the space where the vase process stops. Another interesting example might be a job that consists of multiple Vase Mode processes but that use different extruders -- thus enabling the printing of multi-color and multi-material vases.

- Bob

dorsai3d
Posts: 237
Joined: Mon Jan 11, 2016 9:01 am

Re: Unbundling Vase Mode

Wed Aug 31, 2016 9:38 am

If your model is non-manifold, fix it. That's the way you get predictable behavior; don't use broken models.

Now, vase mode is supposed to only make one perimeter, since that's the only way you can really print in a continuous spiral. How exactly do you propose printing multiple perimeters as a continuous spiral? You're going to have to have distinct layers if you have transitions between perimeters.

neobobkrause
Posts: 15
Joined: Fri May 30, 2014 6:37 pm

Re: Unbundling Vase Mode

Wed Aug 31, 2016 10:22 am

I might also add that an "unbundled" set of advanced Vase Mode features like those I've laid out would each be unique capabilities unavailable in all other FDM slicers.

- Bob

neobobkrause
Posts: 15
Joined: Fri May 30, 2014 6:37 pm

Re: Unbundling Vase Mode

Wed Aug 31, 2016 10:39 am

@dorsai3d: Might I suggest that it's worth looking beyond the requirement that every mesh be manifold.

* Non-manifold surfaces can communicate valuable information to the slicer. Specifically, non-manifold surfaces have surface are but no volume. So an intelligent slicer knows not to infill.

* There needs to be a way to instruct the slicer to print a certain number of shells in area of a shape but none in others. For example, suppose you've designed a vibration dampening element, but for optimal results you need the wall of this dampener to consist of a circular pattern of 18 slits of flexible material only 1 shell thick. There's currently no way to configure S3D to generate the gcode for that element as part of a larger, in all other ways traditional job. I would even suggest that the real appeal of Vase Mode isn't as much the seamless funnel printing strategy as it is that Vase Mode is currently the only way to get S3D to print a vase-like gemetry that's only 1 shell thick.

I see a number valuable - irreplaceable -- uses for non-manifold surfaces as slicer inputs.

- Bob

dorsai3d
Posts: 237
Joined: Mon Jan 11, 2016 9:01 am

Re: Unbundling Vase Mode

Thu Sep 01, 2016 12:51 pm

Sounds to me like a better solution would be to make it so that the software handles thin walls properly, rather than trying to come up with way to integrate ugly hacks (surface-only models) into the main workflow. You would then model and print the actual feature you want, including wall thickness.

neobobkrause
Posts: 15
Joined: Fri May 30, 2014 6:37 pm

Re: Unbundling Vase Mode

Thu Sep 01, 2016 4:29 pm

@dorsai3d: I'd again challenge your personal distaste for non-manifold surfaces. You call them 'ugly hacks.' But are you aware that S3D already supports them in a number of ways? I suspect you aren't aware of this support because it isn't evident to those who never import non-manifolds. Vases are just one common example of a shape that's inherently non-manifold. Are you equally offended by today's Vase Mode? The only difference between manifold and non-manifold shapes is that closed shapes can be infilled. Perhaps it's the case that the design tools that you're familiar with don't support surfaces as first-class object types.

You suggest that S3D should improve it's support for 'thin walls.' I think S3D handles the walls of manifold shapes properly today -- thin or otherwise. Polygons in a mesh have a 'normal vector.' That is, they face in a particular direction that defines which side is inside and which is outside. Slicers basically have 2 jobs: A) generate gcode for the outward face of a mesh, and B) infill the inside of a volume. In order to have volume, manifold shapes must include a mesh with a normal facing in a particular direction -- and another mesh facing in the opposite direction. If either are missing then the shape isn't manifold.

Would you suggest that the slicer print one of the faces but not the other? Now that would be an ugly hack.

- Bob

User avatar
dkightley
Posts: 2302
Joined: Tue Mar 10, 2015 4:09 pm

Re: Unbundling Vase Mode

Thu Sep 01, 2016 7:50 pm

I have no opinion as to the subject of this thread......but should the following statement in you last post refer to walls in general, and not in the context of the subject of the thread, then I, and probably many others, totally disagree with you.:
I think S3D handles the walls of manifold shapes properly today -- thin or otherwise.
Thin walls are NOT handled in the way most users want!
Doug Kightley
Volunteer at the National Tramway Museum http://www.tramway.co.uk
Railway modeller and webmaster at http://www.talkingtgauge.net

neobobkrause
Posts: 15
Joined: Fri May 30, 2014 6:37 pm

Re: Unbundling Vase Mode

Thu Sep 01, 2016 10:04 pm

@dknightley: I'm probably not the right guy to say with any authority whether S3D handles thin walls properly. I know that I'm frustrated that it's not currently possible to produce walls that are only 1 shell thick -- except by using Vase Mode. As I've built up my experience with Vase Mode jobs, I can see that they're treating all shapes processed in that mode as non-manifold. It's based on this experience that I'm making my proposal about unbundling the set of features that consistitute Vase Mode so that they're accessible and understandable settings available for use in any slicing job.

Back at you: Is there anything in what I've proposed that runs counter to what you would like to see,

Thanks,

- Bob

mroek
Posts: 148
Joined: Mon Oct 26, 2015 1:47 pm

Re: Unbundling Vase Mode

Fri Sep 02, 2016 6:37 am

neobobkrause wrote: I know that I'm frustrated that it's not currently possible to produce walls that are only 1 shell thick -- except by using Vase Mode.
But this is not true. If you set perimeters to 1 shell, you get exactly 1 shell. Without using vase mode. But it might require you to use solids, and not surfaces...

Here's the standard 20 mm box sliced with no infill and 1 perimeter:
box1peri.png

dorsai3d
Posts: 237
Joined: Mon Jan 11, 2016 9:01 am

Re: Unbundling Vase Mode

Fri Sep 02, 2016 10:25 am

neobobkrause wrote:@dorsai3d: I'd again challenge your personal distaste for non-manifold surfaces. You call them 'ugly hacks.' But are you aware that S3D already supports them in a number of ways? I suspect you aren't aware of this support because it isn't evident to those who never import non-manifolds. Vases are just one common example of a shape that's inherently non-manifold. Are you equally offended by today's Vase Mode? The only difference between manifold and non-manifold shapes is that closed shapes can be infilled. Perhaps it's the case that the design tools that you're familiar with don't support surfaces as first-class object types.
I'd appreciate it if you didn't assume that I don't know about the subject - I've been working with 3D modeling and CAD software for more than 10 years, and have a pretty solid understanding of how models (real surfaces, tessellated surfaces, and solids) work.
neobobkrause wrote:I can see that they're treating all shapes processed in that mode as non-manifold.
Uh...no... They're treating them as single perimeter, 0 infill solids that you can spiralize the perimeters on. In cases where you can't spiralize the perimeters, like when the model has multiple islands, the software switches back to standard layers.

I'm of the opinion (and I'm pretty sure I'm not the only one) that you should model what you want to get. You can make a manifold model of a vase, and that should print well. The thing is that a model that you want to print should have volume, since what you're printing has volume. Surface entities have no volume, but if you add a thickness to it, you can get exactly what you want.

The problem is that currently in Simplify3D, if you have a thin wall (lets define this as less than two extrusion widths), there's two ways it gets handled, both of which I think are unsatisfactory.
1) The wall is thinner than one extrusion width and does not get printed at all
2) The wall is thicker than one extrusion width (this includes by 0.01mm) but thinner than two extrusion widths. This wall gets two full width extrusions overlapping one another, resulting in messy overextrusion
neobobkrause wrote:Polygons in a mesh have a 'normal vector.' That is, they face in a particular direction that defines which side is inside and which is outside. Slicers basically have 2 jobs: A) generate gcode for the outward face of a mesh, and B) infill the inside of a volume. In order to have volume, manifold shapes must include a mesh with a normal facing in a particular direction -- and another mesh facing in the opposite direction. If either are missing then the shape isn't manifold.
You're thinking too much like graphics and not enough like solids. STL is a terrible file format because it allows you to define all sorts of invalid geometry, and slicing engines have to support non-manifold geometry because of certain limitations of the format, and the fact that when slicing, it's hard to distinguish between a surface that's only there as a simple surface, and one that's part of a solid body.

The goal when printing is to create a solid object that (as closely as practical) follows the solid object described by the computer model, not to create perimeters for every face described by the horrifyingly outdated file format that we're stuck with for legacy reasons. So the faces of the model define the volume, and the slicer should be able to work out how to fill that volume appropriately, including measures like single perimeters.
neobobkrause wrote:Would you suggest that the slicer print one of the faces but not the other? Now that would be an ugly hack.
A single line that is the thickness of the wall would inherently print both faces of that wall (technically all 4), so your snide last comment isn't very valid anyways...

We both want the same end goal, but you're describing a method of getting there truly is a hack - using zero volume objects to trick the slicer into generating a prescribed volume (*) that it isn't able to create properly otherwise.

(*) A poorly prescribed volume, as well, since instead of describing your wall thickness in the model (the supposed specification of the end part you want!) you're relying on the extrusion width that you've selected in your slicing profile to define the wall thickness. If you want a 0.4mm wall, don't you think you should be able to model a 0.4mm wall and get that regardless of whether you're printing with a 0.35mm nozzle or a 0.1mm laser (or one of the million other methods to make a computer model real)?

Return to “Feature Requests”