V2 beta Oct-19-2009 available now

 From:  Michael Gibson
3000.46 In reply to 3000.44 
Hi Petr,

> Does _the properties_ mean also the Style?

Yes, but it's referring to the style of the parent object for that case, which you will not actually see come into effect until you do something like a fillet afterwards.


> E.g. I have two spheres with different styles (blue and red)
> assigned to them. Now I run boolean union command and
> select blue sphere first, then red. The result is a blob with
> different styles of faces while I expected a blue blob.

Actually the combined blue + red blob is the intended result there, unless you have set DisableSubObjectStyles=y in moi.ini .

With DisableSubObjectStyles=n (which is the default), it is intended that faces inherit the same styles as their original inputs, like any piece that comes as a cut off piece from a blue face will have style=blue in the combined object. When this is the case, when you selected the blue sphere first that does not mean that all faces will shift to become blue in the result, it means that just the parent object's style (which you do not directly see on the screen) will be set to blue.

That parent style though can come through when you apply a fillet.

So for example if you select the blue sphere first and then apply a fillet you get this result (newly created fillet face is blue):



If you select the red sphere first and then apply a fillet you will get this result (newly created fillet face is red):




But if you want to get the result that you were expecting where all the faces converted over to have the same style as the first selected one, that is possible by setting:
[Styles]
DisableSubObjectStyles=y


> Also I think that style assignment doesn't work properly with setting:
> [Styles]
> GeneratedObjectsInheritStyle=n

This only comes into play when there are completely brand new entire objects generated from input curves, things like extrude, sweep, etc...

It is not used for situations where pieces of previously existing geometry are directly a part of the result object like with booleans or join for example.


I will take a look at Planar/Cap though, it does not seem to be working as expected but the booleans and join seem to be.


> if you extrude two touching curves with different styles you
> get a polysurface with the same style of faces!

Yeah, I guess that is a bug - the resulting extrusion will only use a style from one of the input objects that make up the result brep, it will use the one that happened to be first in the list of curves to process for that case.

Unfortunately that is probably not going to be a bug that gets fixed because to fix it would mean rewriting the geometry library's extrusion function to maintain a more granular relationship between individual curve segments and the faces that they generate.

In practice it doesn't seem to likely that will be a major issue that is run into that often though.

- Michael