The detail that I saw was that in your first GIF at the end of the video the objects that had been pre-selected and trimmed are left un-selected at the end of the process.
In your second video that the objects that had been pre-selected and trimmed are left selected at the end of the process.
The fact that the objects all remain selected when Trim ends is an important detail because the next step typically would be to hit the join button.
Apparently, Helvetosaur had no problem understanding what I said although he left out the part where I said the mutual trimming and joining was more reliable than a boolean. Part of being reliable is that with the trim and join method you can be confident you haven’t introduced out of tolerance edges to the model. Some users think that is important some don’t.
Well he could have done that, but apparently he chose not to. One advantage of doing it this way is you don’t need to worry about which way the surface Normals are pointing just click on the parts you want to delete and when your done with that join what’s left.
That’s because I’ve been reading your posts for more than 20 years now…
And I agree with most of what you say, I don’t see why McNeel doesn’t implement some of these improvements for fillets and the like - if for no other reason than to remove the subject from the list of frequently recurring discussions.
That being said, I’m not one who does the kind of work you do, and for what I do (admittedly less and less these days) I have also been using Rhino’s Boolean operations also for 20 years or more. I cannot characterize them as “evil demons to be avoided at all costs”, they work fine for me in most of my applications and when they don’t, I know how to diagnose and fix the problem. I imagine other people’s experiences are similar.
I do agree that many people are unfortunately not interested enough on how they really work behind the scenes and as such don’t know what to do to avoid failures or how to react when they do happen. I can’t help that, I always just hope that through the failures and reporting here that people learn other tools/ways to do things that can avoid or fix failures when they occur.
I would hope not. This should not be turned into a religious discussion.
Its not that people aren’t interested. Its that people have been trained to be ignorant.
If on day one of Rhino training one of the first modeling exercises was how to trim and join two intersecting polysurfaces, then on day two when they are taught how to do the same thing with a boolean, the student would say ‘I have no problem understanding what is going on behind the scenes. I learned how to do all that myself yesterday’
Well, I don’t agree with that and not all the fault can be put on the trainers/teachers. There is a tendency in the learners as well to want everything to be a one click (actually one finger swipe) operation. I can’t help that.
I don’t teach that on day one because there’s a lot of other stuff to learn first IMO. But I do teach exactly that when we get to that point.
Regardless of your reasoning, it misrepresented how the process of mutual trimming and joining of those 5 surfaces is supposed to work. The process is designed so that the objects can be joined with a single click of the mouse after the trim command ends.
Again regardless of your reasoning for what you did, that second video correctly shows how the process is designed to work.
I think Kelvin’s GIF was an excellent example of how the mutual trimming and joining of five surfaces works. It would make an excellent teaching tool for new Rhino users.
I suspect if a teacher taught the students how to select all the 5 surfaces and trim off the 4 ends of the cylinders and then trim the large surface just as shown in the video and then they would hit the join button and the exercise would be concluded.
A competent teacher could teach the students that mutual trim and join method on those five surfaces in a fraction of the time that it would take to do it as a boolean. The students would immediately see both how the process works plus how much faster trimming and joining can be.
A problem that people who are addicted to booleans don’t realize is how much time they waste setting things up so that their beloved boolean will work. Maybe some of those cylinders have their normals pointing inward and some of them have their normals facing outward and who knows which way the normals are facing on the curvy surface. Due to the steps you have to go through in order to make the boolean work in this situation means that the students will be wondering why they have to go through that long drawn out process when they have already been shown a much simpler process.
But instead of showing students the many situations where there are real advantages to using the trim and join method, the teacher who is addicted to booleans blames the the students who have never been shown their true options on the students being lazy.
Yep, that’s easy enough when you have only four cylinders and one surface. What happens when you have 100 cylinders and say an upper and a lower boundary surface to trim them to? There’s going to be an awful lot of clicking going on there - sure, various Window/Crossing/Fence/SelBrush methods can help to try to get rid of all those surface parts you don’t want to keep before joining, but there I think a properly applied Boolean operation will be faster.
I use BooleanSplit most often because then it doesn’t matter which way normals are facing, it keeps all parts. Plus, the entire output is selected at the end of the command, so I Ctrl-deselect (window, crossing, brush, etc.) the parts I want to keep and hit the delete button. But that’s just my hacky wacky way of dealing with the copious amount of objects that one often finds in my line of work.
I know what happens when some the cylinders have normals that are pointing out and some pointing in. The boolean operations don’t produce the desired result and one has to spend time dealing with that.
But all of your diversions you are bringing up is just a way of not dealing with the point under discussion which was why do students not understand the inner workings of a boolean.
You claimed it was the students fault and I claim that it is not their fault they don’t understand and its not there fault that they don’t know about alternative methods. You have provided ample evidence in support of my claims.
If the students were first presented with the exercise of trimming and joining the 5 surfaces as shown in Kelvin’s video it would take the students very little time for them to learn how to do that.
But then as a second lesson the students should be taught to select all 5 surfaces and run the intersect command on all 5 surfaces and then use the intersections (which are at that point already selected) to trim the parts of the 5 surfaces, and then join them. This would show them what’s going on behind the scenes for the trim and join operation they had just learned.
Then when the students are introduced to booleans on those same 5 surfaces on which they learned to trim and join and they get unexpected results from boolean operations that is an opportunity to explain that because the boolean operations don’t have user input to tell them what parts to keep and which to cut away the software uses the surface normals to determine which parts to keep and which to discard. At that point the students have been taught fairly complete accounting of how booleans work behind the scenes.
I don’t know what evidence I provided… And I’m not blaming anyone.
You’re trying to lay the entire “blame” on the “teachers”. That’s like saying that if a student fails an exercise, it’s entirely the teacher’s fault. That’s a fairly biased view of the event, and having been involved with teaching and academics for a good part of my working life, I take issue with that.
Of course, it could have been the teachers fault for not presenting the material adequately, or maybe even not at all. But also the student’s fault for not listening. Or even, having listened, not having completely understood. Or, having understood when it was presented, not having practiced enough to remember how to use it on the exam. Or maybe it was just that the dog ate their homework…
The point is that it’s not black-and-white like you paint it. Both students and teachers can range from focused to distracted, from detail-oriented to overview-only. Everybody’s teaching and learning experience is different. That’s why blame-calling is a mistake IMO. There is no one way to either teach or learn Rhino.
By the way, while we’re on the subject of teachers/teaching… How many people here actually took a training program or a class in Rhino? I certainly didn’t. Given that we’re of more or less the same “Rhino generation”, I’m pretty sure @jim that you didn’t either - not sure if there even were any courses offered at that time. We learned by doing, observing, researching and asking questions.
These days, there is a lot more stuff available out there - although sadly in-person classes are becoming a rare thing, there is a huge amount of online stuff ranging from real-time “virtual in person training” to youtube videos to watch on your own. Like in-person teaching however, the same situation applies - online stuff can range from terrible to fabulous. That’s just the nature of the beast.
I bet there is not a single student you have ever taught that after watching the GIF that Kelvin made and given those 5 surfaces could not run the Trim command and get the same result as seen in the video.
Kelvin’s GIF should also include trimming those five surfaces with the curve produced by running the Intersect command on those 5 surfaces. The video is supposed to be illustrating how the Trim command works. Showing how Rhino uses the Intersect curve behind the scenes would complete the demonstration of how Trim works on intersecting surfaces.
You just keep piling on the evidence that its not the students fault. If a student who has never seen or heard of a lemon is lectured on the properties of a lemon, its unlikely the student will get much from that. But if a student is given a lemon and a knife to cut into it, it is almost certain that the student will be able to describe a lemon adequately.
Yes, students often don’t listen, but every good teacher knows that learning is best achieved by doing not by listening.
So the student who is now been introduced to the process of trimming and joining by doing it, and has learned how it works, has the foundation and is ready to move to booleans.
Here is what the Rhino help says about booleans: Use Boolean operations to shortcut trimming and joining operations.
Its easy to prove that statement is not true. Take the five surfaces in Kelvin’s video. Does anybody believe those trimming and joining operations could be done faster with a boolean?
Probably the fastest way to achieve the same result with a boolean would be to run the cap command on the four cylinders and then extrude the wavy surface into a solid and then do a boolean difference and then extract the 4 caps on the cylinders and then delete them. At that point you would have the equivalent result as the trimming and joining operations shown in the video.
How is that a shortcut? People have been misled into believing they will get the job done faster if they use booleans. What Rhino users are rarely told is that often one has to go through all sorts of time consuming machinations to get to the point where they can execute the boolean and then when the boolean fails to work they spend a lot of time trying to rearrange things do that the boolean again. None of that extra time spent is figured into the claim that the boolean is a shortcut.
Booleans are an alternative method to trimming and joining operations. You can’t say which is faster until you have given both methods a fair shot to get to the dame result. And often when taken, the boolean path will turn out to be more time consuming, and often its not just a little more time consuming - its a lot more time consuming.
We also learned from the Rhino Help. In 25 years the Help has supplied nothing on the process of trimming and joining surfaces to make polysurfaces and solids, other than to say booleans are a shortcut for those operations. McNeel and McNeel’s resellers and educators promote booleans and then act as if its not their fault users have erroneous beliefs on the subject.