Tutorials that start and end with existing objects?

I will never use grasshopper as a primary design tool for 99% of the work I do. Even as a way of exploring the design space it doesn’t make sense for me to use. Take almost any plastic product (a housing for electronics for example)…it doesn’t lend itself to design via grasshopper. That’s what CAD is for.

I can see how this makes sense for jewelry, but for designing the housing for an electronic drill or the handlebar cover posted earlier in this thread, that’s not something that I/we want to use grasshopper for. It’s a specific shape that’s better served by actually modelling it.

Grasshopper makes more sense (for me) as a way to apply pattern and shape to existing geometry. And working with polysurfaces from existing geometry is the struggle I/we have. It feels like there’s all this potential in grasshopper that I can’t make use of because my geometry is mostly made of polysurfaces.

99% of all grasshopper tutorials are working with a single trimmed surface. 10 000 facade tutorials but never anything that involves polysurface geometry which is likely what @kalamazandy is likely looking for.

1 Like

Well depends on the project. If you need a solution that you can reach on your own, there is no need for GH. But if you need a lot of solutions, or optimize it based on input data, or allow the client to customize it, or offer it on demand, ie, a procedural design, you need GH.

Adding to what Ftzuk said, yes. We develop product for someone else, so we do it in that software. Generally the client requests which software, and even specifies the version…because that’s the version they have/use.
We have an engineering team for creating the parts for production. The design team is used for overall design intent, CMF, working with the engineers to come up with New design intent based on physical limitations, etc. We will never develop a product using GH. BUT, GH could be used for patterning.

The interest I have is using grasshopper in a workflow of:
I have a Rhino model. Now something needs a pattern on it.
Send that part to Grasshopper
create pattern
Send that part back to rhino.

That’s pretty much it. And those Always involve polysurfaces.

1 Like

I understand. I did some industrial design projects in the past, also applying patterns in polysurfaces. Fortunately, I was able to either use meshes as base surface or convert the polysurface into a single surface. It’s not a simple problem and I don’t know how to do it in Rhino, which command should I use? I’m interested in investigating this to see if I can implement my own version in the future.

I don’t use grasshopper for that kind of scenario, but I do apply a lot of patterns to surfaces and polysurfaces. One solution is to create a single surface that is close to your polysurface and flow your pattern onto it, then pull to the polysurface or something (I’m sure you’ve thought of that.) Another solution, sometimes, is using Pascal’s ProjectObjects script. That will apply an object onto a surface or polysurface right where you want it (but it’s not ‘wrapping’, just projecting.)

Hi there, this topic is exactly i am struggling with too. Looked for lots of possible sutions however the only thing that worked for me was quadremeshing the surface and use each quadremeshed cell as a sort of grid. Next issue is to find a way to map the geometry in a controlled way. :sweat_smile: Please look at my previous message

I think your best bet is to ask each individual question that you have, in its own thread. The reason is that if you ask too many questions in one post that it quickly gets out of control and your audience of potential helpers will go beyond their attention span and lose interest.

This thread is a good example, I made it about part way through your third post and am just feeling this is taking up too much of my time, I like to help, but not if it will take me too much time just to get to the part where I can start helping.

What I do is start the project, then when I get stuck, copy out the components that I’m having trouble with and put them into a far simpler GH definition and post it here with only one or two questions. This is a favor to those trying to help you, and also to yourself as you’ll be more likely to take their valuable time to help you.

For example, you could have either searched for how to bake, or how to import starting geometry, and if not finding the answer, just ask the simple question on here.

“How do I bake out in GH?” A: Easy, right click the component you want to bake then select bake.
“How do I bring into GH existing geometry to work from?” Easy, bring it into Rhino by importing, opening, or drag and drop a step, stl, or similar file, and then use the brep container component in GH to bring it into your GH definition for reference.

Much simpler way to get answers rather than writing a chapter of a novel in each post, containing a ton of extraneous thoughts most of which are working against, not for, wonderful volunteers taking their valuable time to help you.

2 Likes

There’s some good workflows of course, but if you let me share my learning journey: when I started learning and watching a LOT of tutorials, everybody told me that “there’s no right way, just a ‘way’”. You can create a point from rhino to gh with the point param component or construct point component. Which one is right? The one with solve better your problem.

Further ahead, you’ll learn how to optimize your workflow to share with your colleagues, or make it more “lighter” to process that it’s what we call a “good practice”. But there’s aint no “correct” way

I know that the topic moved for a more practical problem you are having, but If I could give you one advice to help you learn more and better is start doing your own stuff.

Tutorials are great but, you won’t learn what’s happening or how you can do something if you keep following other people tutorials. It’s their solution, their workflow, their logic. But, in the beggining is a great tool for learning. So my advice is: do the tutorial, but change some the geometry aspects to make “more you”, by your own. When you find yourself struggling to create something that represents you (philosofical this one), a custom made pattern for example, then you’ll start learning. Worked for me, It may work for you.

Is something that even @DavidRutten said “Start solving your problems. If you keep following other people tutorial, then you have 2 problems to solve: your problem, and the other person problem” (something like that)

1 Like

You made a great point in the middle. I’ve followed many tuts to get up to speed. EVERY time I experiment with changing various aspects of the definition to see how they change things. This is definitely a powerful way to learn even more than the tutorial itself is teaching.

Many times I incorporate things into a tutorial that I learned from previous tutorials and my own experiments.

1 Like

This is a great one also! I remember watching some of Parametric House tutorials and basically merging 3 videos with different features just to see what I can achieve and learn what’s happening. It is easy to connect the components with wires.

Input → output and then boom something happens. But, why this happened? What I achieved with this component? How he can help me in the future? What happened with my data? and so on…

1 Like

In my experience grasshopper is a transition between flexibility and automation.
If you use grasshopper you got automation and loose flexibility because you connect the stand alone parts together and you have to choose which connection you make .
The tricky thing is to decide what makes more sense because you calculate over time but without knowing how much time is needed for the connection network (grasshopper) there are to many unknown in the calculation.

1 Like

Those are all good suggestions.
From the looks of most all the learning material out there, grasshopper is Heavily focused on architecture. And that’s really cool, but I wanted to explore it a bit in terms of what it could do for product design, but in the Middle of the design workflow.

You can apply anything you learn to anything else. That is the beauty of this software and things like it. I’ve applied facade definitions to jewelry, or generic geometric explorations to products. Once you understand the software well then you will see the only difference really is the scale of the object. A surface is a surface and a mesh is a mesh, doesn’t matter the actual application. In terms of not seeing product specific definitions as much as arch, it is because product design fields are much more restrictive in what they can share. Workflows, manufacturing methods, material applications are usually patented and protected internal to companies. Architecture rarely has these restrictions. Furthermore, usually at the point where design moves into manufacturing it also moves to other (usually much more expensive) softwares specific to the manufactures make methods.

3 Likes

@kalamazandy

The problem with Grasshopper is the fact that it misses basic surface tools. Its extremly difficult to create a pattern in surface representation, when a shape is curved and constraint to certain rules, such as being demoldable, continous and smooth and if everything must be curved/crowned. (Which are quite common constraints in product design) .

Now, usually in architecture you don’t have these limitations, which makes almost anything coming from that direction useless. Because they simply ignore that.

Furthermore, a lot of tutorials and example resources are made by people still being students themselves. The problem with that is obvious.

Furthermore, like @Michael_Pryor said, another problem is that industrial design is usually restricted and confidential. I simply have no chance in showing or sharing any of my professional work here, since it would violate against my previous and current employment contract. Partially I don’t even own the data or tools used anymore.

But you can use Grasshopper very well in Product Design and there are exclusive use cases.

However it takes a while until you can use it in a really useful way. I believe the following list shows what you should definitly learn

At some point you’ll definitly need to…

  • know when and when not to use Grasshopper, the reality is always semi-automated
  • know different ways of mapping surfaces on a freefrom surface and as a bonus you’ll need to this efficently. Learn mapping on Trimmed/Faced surfaces and Breps/Multiple surfaces.
  • understand surface modelling in first place, this is your workflow.
  • understand anything about data management
  • be able to write code and you’ll need to know Rhinocommon (It its required!)
  • understand any of the math involved. As a plus knowing Bezier, Nurbs-Math can really help to create custom surface tools on demand

So the learning curve will definitly be steep! Essentially you can use any tutorials if you watch them differently. What type of problem is being solved, and how can I apply this for my projects?

Since the Grasshopper universe if filled with all these simplistic tutorials, it is very hard to filter out what is useful and what is not.
I think you can skip any tutorials using Meshes, being done by very young people and you should definitly not look for a specific pattern, but rather follow tutorials about how components work.
Get the terminology and search this forum for solutions. And last but not least, just play around as much as possible. Knowing and understanding the tool always helps

1 Like

I’ve been struggling with GH also. Most of the tutorials are more of an exercise in following instructions than learning GH. Programming doesn’t come naturally to me. The best source I have found that actually explains the fundamentals and how to approach a design probem is Gediminas Kirdeikis on YouTube. What I ultimately figured out was that I needed to try and create a really simple project on my own, do some research, and figure out what components I needed to use - sometimes through trial and error. Eventually I realized that the key to being successful in GH is understanding data management (list, trees, indexes, etc) and I’m still trying to get through that. I haven’t found any tutorials that teach the design process. Basically they are just instructional manuals.

1 Like

I agree partly. What I don’t agree with is the losing flexibility part. In some not obvious ways you can still get the flexibility by working with creative workflows.

Workflows such as using stream gates with logic can still open up possibilites. And other ways, such as, I felt limited by the graph mappers a few weeks back, but I stepped back and said hey I can make my own substitute to create more complex mapping curves for scaling loft sections individually. I put a series of points (say 10 or however many) in Rhino within the coords of 0,0 and 1,1, put them in a points container in GH. So then I was able to drag those points manually instead of a graph mapper, and those moves would adjust the scaling of each section.

Don’t be fooled into thinking of limits of the software, or at least if you do think as such, be sure to second guess your conclusion and think of potential workflows that could break down the “limits” that you may be falsely assuming are there.

People used to assume that AutoCAD wasn’t good at complex 3D, but they just didn’t imagine workflows to give far more dynamic results.

And BTW I’m coming from 10+ years of Solidworks more recently, and so I do see that I can’t just point and click to make sketches then extrude them, but I can sketch a curve in Rhino, put it in a curve container in GH, then extrude/sweep/loft that, then go back and adjust the curve all I want, as if it were in a solidworks sketch. Just about the only thing you can’t do is use parametric dimensions, but you can achieve the same results, just the interface isn’t as automatic, so you have to be even more creative than you already have to be with Solidworks, but the end results are far more wide open and flexible.

Becaue you can’t. The design process is something you have to understand yourself, which you only do by putting the actual work into it like you did. Get a real-life example, try to solve it using grasshopper. For that you need an understanding of the mechanics of grasshopper, and for that, “instruction manuals” on how to do specific things are helpful. They let you piece together your own solution from different sources. But the annoying work of trying it out, failing, and trying again is on you to do.

1 Like

Yes, or direct programming. Often real programming is seen as Rocket Science. In reality its much easier to directly code pieces by text, than dealing with the data-management-hell of Grasshopper.

I mean just think of anything in life which is hard to learn. A Youtube tutorial or book always just gives an entry point. Learning how to hold the pen, doesn’t allow to write something good.

Grasshopper made programming accessable, but at the same time it is a tradeoff.
Learning how to morph a pattern on a shape is another thing. I have read that some people claiming they have problems with applying a pattern on difficult or poly-surface shapes. But there are hundrets of solutions to these problem. It also highly depends on the pattern or the shape. It is impossible to list all of them, since there is no general approach.

Furthermore people always expect one-click solution made in 1 hour. When I was doing professional work in Grasshopper, it took me weeks to find perfect solutions to some problems. And it took years to become better. That is just how it is.

3 Likes

Don’t be fooled into thinking of limits of the software, or at least if you do think as such, be sure to second guess your conclusion and think of potential workflows that could break down the “limits” that you may be falsely assuming are there.

Thanks for your response and describing your experience.
Let me answer to your statment above.
I dont think grasshopper is limited in any way and thats in my view the tricky thing because YOU GET ENDLESS OPTION = FLEXIBILITY on the other hand you have to decide WHAT CONNECTION YOU NEED TO MAKE = AUTOMATION.
You establish a system and the more nodes you connect the more automation and especially dependecies you get.
I start coding because its more flexible in establishing a system instead of node based scripting.
Node based scripting is not only for geometry its also for animation rigging shading compositing etc. its in my view only a logic evolution to overcome the limits of a drop down menue because options and tools pop out like muchrooms and they dont fit into a menue bar or drop down.

Anyway i love grasshopper and its the reason why i start coding not only its very visual and not to abstract but also of the community and company which is similar to blender very open highly skilled in knowledge (im not too smart so its only my point of viw and the more i know the more i realise how stupid i am) and they share there knowlwedge.

Well I definitely disagree with saying you can’t teach the design process. Good tutorials don’t edit out mistakes, but include how you fix them. That’s the design process. How many times have you tried to fix someone else’s geometry in Rhino and it’s just missing a simple boundary. And shoot…networkSrf is failing. Zoom in. Hmm, looks like it’s joined. So in a tutorial, they’ll just say to fill it with a network surface, and Maybe try a 1 rail sweep. But when neither of those work, you do things like explode the polysurface, join it again. Try again. No? Double check tolerances. Select bad? Hmm, recreate the neighboring fillets. And bam, you’ve fixed it.
If no one shows things like that, then you never learn how to fix them.

That’s a big problem I see with many tutorials. They often show you the end of what you are making, but don’t tell you Why they are doing something, what it’s for, or generally the direction they are headed. It’s almost like you’re just playing follow the leader until you get to the end and you’ve made the same thing they did.

Anyway, this discussion is great, and clearly I’m not the only person who is/was having troubles finding a place for grasshopper in their workflow. Although, based on some of what I’m hearing, I’m not sure it will ever make it into my workflow. When someone says “Hey, can you make this pattern on this surface” they expect it to not take more than a day or two.
But if you actually organize your nodes and files well, you can likely reuse previously built scripts to accomplish something like that in a day. Often times it’s looking at creating 6 different patterns in 2 different overall shapes.
I have ways of doing that, but in polys. Other processes are getting more parametric also, but won’t be production ready for a few months.

If you really wanted to, you could make something fully parametric. Someone here mentioned you couldn’t, and although that may be true in Practice, it’s not actually true. You could do it, but It’s just not really Worth it. There are more appropriate software for doing things like that.

Hopefully I’ll see some people showing examples of how they used grasshopper in actually released product design. Maybe that will expand my view on how it is used. Otherwise, it looks like I’ll just practice with a few patterns here and there when I have time.