Some thoughts on a NURBS to Poly workflow with MoI

 From:  Michael Gibson
3196.27 In reply to 3196.26 
Hi Keris,

quote:
Yes, such a shape would be impossible to output in this way. And I'd just not try to force it.

The problem is that you're going to easily end up with similar situations as that once you combine just a few more pieces together or have even a moderately complex object instead of a very simple one.

Even the example I posted was pretty simple...

quote:
It's really a specialized thing for when and where I think I can cheat the system.

Yes, well that's the problem that it is such a specialized thing that you are asking about, it would only apply to certain kinds of models, and for a special purpose target... That's a lot of specializations.

It can be detrimental to the wider body of normal users to have an important interface that they need to use to be clogged up with a whole bunch of controls that only apply to very specialized circumstances.

Every control that is added to the UI makes it more complex to use, and changing the behavior so that other situations will not work as well (like not having adaptive subdivision at all for example) is also detrimental for cases like I posted previously.

So when weighing things, it is hard to justify making an attempt to jury rig the mechanism with bailing wire, duct tape, and chewing gum to try and make it do something that it was not intended for.... I mean that could be possible if there were not detrimental side effects but there are.

quote:
According to the letter of what I wrote, yes. But that actually wasn't my intention when writing it; I should have qualified that to mean "vetexes that only have two edges connected to them that are on the interior of a surface and not on the edge." Like a vertex just jutting up in the middle of a surface but not actually having it connected enough to keep the polygons from being shaped oddly.

You're probably going to have to post an example (if you had one previously in this thread, it's just too long for me to sort through sorry!) to explain more about what this means then.

You shouldn't normally have something that has only 2 edges connected to it internal to a surface and not at an edge. It can happen at an edge because edges can be curved differently from the surface they are on, like in the previous post I showed a plane that had a wiggly trim on it - that's the kind of situation where you can get further subdivision along an edge only which is I think the only place where you get only 2 edges connected to a vertex.

When internal subdivision happens you should get at least 3 edges going out from it, like this:



I guess the other kind of subdivision that you mentioned previously is when holes are split - but I don't know how to avoid that because most polygon formats do not support polygons with holes internal to them. It would be cool if it could analyze the holes with artificial intelligence and determine the absolute best pattern for splitting it, but it is difficult to program human intelligence and judgment into computer code.


quote:
but I've made the settings such a coarse outliner case that it breaks what would have been an edge into just a lonely vertex. Really, it's more my fault for abusing the system in such a way.

But are you sure that these are not happening at an edge though?

If it actually was internal to the surface and not along an edge then that could possibly be something I could actually improve...

If you have an example image of this particular case, please post it so I can understand it better.

If it is happening at an edge, maybe I could still do something about it by trying to avoid edge refinement by some amount in the case of a coarse angle being used.


Re: Toggle off adaptive refinement - I've thought some about doing that, but it also opens up some difficulty... Like I mentioned previously there are actually 2 choices - should it extend refinement throughout a surface so that the whole surface becomes more finely subdivided? Or should it avoid refinement in which case small details like that little bump in the middle of a broad flat surface may be eliminated? Also avoiding refinement would have a major side effect of kind of partially disabling all the other parameter values. For example generally there is a starting base mesh which is then refined adaptively to ensure that all places on it match the tolerances that you asked for. Without the refinement your result will not fully match the tolerance values that you specified. It is rather difficult to portray this kind of semi-disabling of the tolerance values in the UI.

- Michael
Attachments: