Better Solids and (hopefully) better fill

(The request is at the end! / fill with material)
SketchUp Solids can be somewhat buggy. I would like SketchUp to treat watertight shapes with more respect before calling them Solids
The program would benefit from doing so in more than one way.

Solids need to follow certain rules (watertight, etc.)
What is failing is the rule to have all faces in correct orientation.
Basically there are only two types of solids: without or with voids:
(the ones with holes through still have one surface: see rock and brick below)


What it comes down to is that all back faces should be oriented towards the material inside.


(Maybe) only loops from section planes with solids should have the option to be filled.

Or if other loops , say in basic geometry, can have ā€˜fillā€™, then there should be an additional option for solids: to give them a material. This is my request. The material could then be applied to fill section cuts.

If a solid has material assigned to it there would be the option to use that material by ticking it in the ā€˜Entity Infoā€™ (otherwise it uses the basic color fill):
Entity%20Info

With the extra rule of face orientation volumes are calculated correctly. Otherwise thereā€™s only confusion, leading to mistakes further on.

p.s. ā€˜Solidā€™ tools work better with faces oriented correctly. In some cases with mixed front and back faces applying the tools on two groups or components leave holes (not watertight) in the result while with the same shapes correct skins lead to correct results.

9 Likes

Not sure I have completely followed what you are asking for but it seems to be two things. One is effectively to have something like the Solid Inspector extension built into SU to guard against incorrect face orientation. The other is to have a simple inbuilt system for texturing a cut plane (a bit like having Skalp built in). If that is correct, it certainly has my support.

+1

To satisfy everyone, even newbies, face orientation could perhaps be ignored for solids with merely one surface.

Another approach would be for solid tools to internally normalize mesh orientation (without affecting the physical geometry) to generate correct results regardless of face orientation.

For advanced users itā€™s quite basic to correct the geometry, but it would fit into the SketchUp way to just make it work also for bad geometry lower the learning curve for new users.

1 Like

I rarely use Solid Inspector and donā€™t even know if such a function is part of it. But yes, that is what Iā€™m asking: correct face orientation. This should be built in, not filtered out by a plugin.

Why?
Well, SketchUp is capable of filtering geometry to see if they are solids, to return (for instance) their volumes. But that can lead to incorrect sums.

If the ā€œcorrect face orientationā€ rule is built in, then sums of volumes will be correct.
SketchUp seems to be heading to be a BIM application. Treat Solids correctly and give users the extra option to assign a material (not its texture on the surface!) to it, That would help in developing SketchUp towards using this material for section cut fills. This may look like what Skalp is doing. I donā€™t use Skalp though. So yes, your second guess may also be right.
True Solids should have material, either applied by the user or default if not (yet) applied.

p.s. In November I had a short conversation with one of the developers of Skalp (at 3D BaseCamp Benelux) and mentioned that I felt SketchUp should only fill loops from section planes with solids. From what I understood, they agreed.

4 Likes

Solid Inspector definitely does find reversed faces as well as other things that prevent an object conforming to the definition of a solid.

Begging the question a bit, for SU to refer to solids does tend to mislead people into thinking it is a solid modeller instead of merely a surface modeller.

By "loopsā€™ I presume you mean lines to join up to form a surface (or potential surface in the case of a section cut).

I used to ignore surface orientation when I was less experienced. I never quite understood how SU decided what was right or wrong and it didnā€™t seem to matter much for what I needed. Even now, I find it odd that when you draw a rectangle in the XY plane, SU assumes the top surface is the back face. Maybe that is because when you extrude it, you would normally do so in a positive direction. But if you extrude it in a negative direction (ie. downwards), SU seems to know that you have created external surfaces and so changes the original reverse top face to white. Logical in some ways but not others.

2 Likes

13 posts were split to a new topic: The phrase ā€œSolidā€

Loops from section planes are coplanar They have nothing to do with edges. They represent intersections between section plane and faces. If a loop is formed by intersecting a solid, then you would see material in real life. Same should apply to SketchUpā€™s Solids.
This opposed to getting (coplanar!) loops when intersecting raw geometry with a section plane. This means nothing and also leads to mistakes in section fill.
section planes.skp (213.4 KB)

What Iā€™m ā€œaiming forā€ is to see SketchUp getting developed as a surface modeler that is (with section planes!) is acting as a solid modeler. Geared towards BIM.

Note that I mentioned one should have the ability to assign material to a Solid.
By that I meant that one should have the ability to assign material to the component that represents the solid.

3 Likes

I think itā€™s quite good the way SketchUp handles new faces on the ground plane: back face up. You extrude the face up to where you expect the material to be. Now hide the top face and see if the orientation of the original face has changed. It still has the back face to where the material is supposed to be. No surprises here.

Regarding new faces in the Z=0 plane I think the current behavior is very odd. If you extrude a face the volume has front side out no matter the original face orientation (except for some edge cases when there is connecting geometry). Having faces drawn back side up in the Z=0 plane, and no other plane, is both inconsistent and a bit confusing. To new users the bluish gray side doesnā€™t appear to be a back side, as it is the first side you see. Iā€™d much rather have the front side up.

Could be, I donā€™t know.
SketchUp can handle solids to calculate the volume. It can handle multiple solids to add up or subtract their volumes. The only thing that is wrong with its filter(s) for solids is the rule for front faces to the outside and back faces towards the material. Volume sums would benefit from that. They will always be correct. With this new rule (extra filter(s)) implemented, thereā€™s the option to apply real material to the component that represents the solid. Making SketchUp act like a solid modeler when intersecting the solid with a section plane.
Section fill as it is now is heading in the wrong direction, away from BIM.

Can we please stick with the subject?

2 Likes

We need a way toggle front/back faces, to allow the back face to be equal to the front face (this should be the default behaviour!)

This issue is the cause of a HUGE amount of frustration both from new and experienced who want to calculate areas of materials or merging faces.

Rendering and other advanced import/export is another area where back faces can wreak havoc and ;fixing them is not as simple as ā€œfix facesā€ or orienting.

I donā€™t quite follow. Do you want front and back side to have the same appearance by default?

Do you want face orientation to be made less visible but also think itā€™s very important?

for all intensive purposes, treating front and back faces equally is the default SU behaviour and thatā€™s the core of the issueā€¦

john

I agree with a context click option to force the front and back faces of a plane to have the same material - suggest that the non-visible face material be changed to material of the visible (clicked on) face.

I do NOT agree that this should be the default.

For almost all of the faces I model, the ā€œFrontā€ face represents the outside of a building material and the ā€œBackā€ faces represents the view from inside the material - not the inside of the structure Iā€™m creating. I set my ā€œbackā€ faces to be red in my styles - and itā€™s helpful to let me know instantly if Iā€™ve zoomed into (but not through) a material (stud, floor, sheathing, etc.).

The only time I want the ā€œfrontā€ and ā€œbackā€ faces to have the same material is when Iā€™m modeling something transparent - glass windows - so I can see through it from both directions. And yes, I model my glass as an object with thickness, not as a single plane.

I must point out that the notions of ā€œfrontā€ and ā€œbackā€ sides of a face are intrinsic to the definition of that face, they are not arbitrary designations. The normal vector defining a face points outward from the front side. Many renderers ignore ā€œbackā€ sides regardless of their materials, and 3D printers use the front/back orientation to decide what is the inside vs outside of a solid. Painting both sides of a face with the same material will not avoid these behaviors.

Edit: and the idea of unifying front and back sides is actually off the original request, I think.

( hijacking my thread once again! )
What does this discussion have to do with obtaining Better Solids and better fill by section planes, meaning applying the assigned material (feature request) to the solid component to its intersection loop that the section plane creates?

Please stick to the topic or start your own thread. It is extremely important that ā€œtrue solidsā€ gets resolved for ceveral reasons (read through my posts above).
TIA

1 Like

[quote=ā€œWo3Dan, post:4, topic:62580ā€] If the ā€œcorrect face orientationā€ rule is built in, then sums of volumes will be correct.

SketchUp seems to be heading to be a BIM application. Treat Solids correctly and give users the extra option to assign a material (not its texture on the surface!) to it, That would help in developing SketchUp towards using this material for section cut fills.
[/quote]
@sjdorst, nowhere I mentioned color or texture of faces in my request and other posts in this thread. See my quote above where I specifically excluded texture on the surface as being my focus.
The virtual material that I hope someday will be implemented for SketchUpā€™s solids is a material (haches, color, material texture) that would only become visible when intersecting a section plane with a SketchUp Solid. As if it were a true solid.
The front (and back) face color are an entirely different thing, not part of my request or discussion.
Have a look at image 3 and image 4 in my first post. The Solid Component in ā€˜Entity Infoā€™ has its default color. But the hach (yellow marked) as an extra virtual material, assigned to the component, would be applied to the section cut as seen in image 4.

If a solid is a true solid, the material would be throughout and section made. It could be the same material as the outer skin or it could be a different material, which could be user defined. As of right now I see SketchUp as a great tool, especially for what I use it for, but to me SketchUp does not creat ā€˜trueā€™ solids. It models surfaces and creates a skin that gives an appearance of a solid.

What can we do, or Trimble do to help move us to a definable surface with an interior material, whatever that may be. I would like to be able to define entities that I draw to contain multiple layers at one time, so instead of just drawing layer, by layer, I could be defining an entire wall and all of its components at one time. Archicad does that, AutoCAD does that depending on which version you are using.

Letā€™s do something to help this great tool move forward into the future.

Then have a look at Profile Builder 2