Tutorials that start and end with existing objects?

It seems like every example and tutorial series I’m find does some things, but they are more about teaching you the nodes of grasshopper than practical application. If I can’t get a quick path to practical application then I’ll never get the time to actually learn how I might use it in my every day work.
The examples I’ve seen never seem to show you how to export? It’s always doing these really complicated, and admittedly cool, things, but that’s it. All I can do is look at it. And it took Forever to follow along.

Where’s the tutorial for, use an already existing object in your scene and make an array. Then make an array where it’s only visible if it’s inside another object. Then allow those objects to go outside that other object by a certain volume. Then add randomness to the position and rotation of each instance in the array. Then lets boolean it all.

So start super simple, but the simple thing you did is useful right away, and is useful for each step after that.
But in each one, show how to Bake it. I followed one, and was like…“oh cool. Now what.” And at the time, I wasn’t able to find how to actually use what I made.

I’d love to give grasshopper another go, but does anyone know of some tutorials that take that direction? I would hope that every step that I learn would be something I could actually use. If I don’t use it, I’ll forget it.

3 Likes

Tutorials can be helpful for specific tasks, but it sounds like you could use a stronger foundation in Grasshopper.

Have you read AAD by Arturo Tedeschi? Or the Grasshopper Primer from ModeLAB? The resources on Grasshopper3d?

Yes, it is understandable, but it sounds like you are looking for a workshop or a small course, rather than a simple tutorial. Tutorials are usually about explaining the recipe, not where to get the ingredients or how to eat the dish. Workshops, or courses, are usually focused on a project, starting from scratch and ending with the making of a final product, which sometimes ends with the printing of the final model or other application.

Anyway, if what you want is to learn the applicability of GH, what you have to look for are real projects made with GH, which is where the real know-how/experience is, that is not usually in tutorials, and less in those free. However, it is a fair claim.

Think Parametric have project-specific tutorials that might be relevant (scroll down a bit):

Thanks everyone. 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.
What I mean by that, is often we are given a design with fairly large constraints already. The overall shape is mostly defined. We can’t change the mounting points to the part that we are changing to make a product look more aesthetically pleasing, so we want to explore what we can do with the A-surfacing.
I wanted to see what could be accomplished here with patterning, but immediately got frustrated as most tutorials either started from grasshopper, making Everything parametrically without referencing anything in a scene, or skipping the part that showed how to actually get geometry into grasshopper.

I found a few things that taught me enough to get that far, and I can bake a result at the end. I’m not sure if that’s a good workflow or not, but I don’t see many people talking about workflow. But I am already getting grasshopper to crash often enough, I don’t think I’d be working in a “working” rhino file anyway. I’d probably just export the part I’m looking at, maybe block instance reference other parts if needed, and have that as a separate file.

Trying to do much with already existing geometry with multiple trimmed surfaces joined together to create a solid doesn’t seem to be the easiest place to start, and that’s about all we get unless we design something from scratch ourselves. I’m not finding much in terms of examples for how to treat things like that.


That’s a good, but very simple, example. We might be given something like that. But lets say it’s split into to "parts because the two halves are to be a 2-shot mold, and the surfaces that are there might be split into multiple surfaces joined together. That seems to make grasshopper complicated, as I haven’t found anything that gives a good idea of how to deal with that outside of just remodeling it so that it’s a single surface, or using SubDiv maybe.

Is there anything in Grasshopper to join surfaces together and define them as a single entity, while keeping their shape? So, somewhat like that handlebar grip, if I have a scallopped shape, like the subtle cuttout on a mac keyboard with a sharp edge, but then a large soft radius, I don’t see a way to pattern something across surfaces like that. In that particular example you could just project them straight down, sure, but if that was also a curved object then what, you bend your curves and use a pull command? And that would get the curves to the object, but then I wouldn’t see how you could do much more than basic extrudes in there.

I’m kind of in the same boat of wanting to incorporate Grasshopper into a product design workflow. My issue is we do CAD elsewhere, and I guess even if I did it in in Rhino…the surfaces I’d like to apply a pattern or detail onto are often polysurfaces which don’t seem to play well in Grasshopper at all. At a basic level I can’t do something like equally subdivide a polysurface with points or something like that.

Yeah I can try rebuild that section of the part in Rhino as a single surface but that gets a bit clunky. I’m still trying to figure out a workflow for that. It’s fine for a simple object where I can extract a single surface and apply Grasshopper, but for polysurface geometry I haven’t figured out a clean workflow yet.

Here’s my original thread:
https://discourse.mcneel.com/t/creating-patterns-on-polysurfaces/107203/12

Ugh, well that’s frustrating. The guy in the video mentions you can do it, just with a bit more work. Well I’d love to See that work.
I could make some cool patterns, but if I can’t apply them to what I need to then there’s not even any point in me learning this any further.
Add in some trim holes to that also and you’re Really hosed.

A technique I thought of would be to do it like you would with polygons and unwrapping UVs. If you took the surfaces that you need and you flatten it like the pelt of an animal. You could then use the boundaries as a trim object for a single flat surface. Then bend it all back up together by telling the command to reverse, but use your new geometry as the polySurface.
The problem of course is that Rhino doesn’t have such a command. You basically need a squishPolySurf command.

The only engineers I’ve seen do it end up just recreating the part of a model which would get a pattern applied so that it consists of a single surface. Yeah, that means it’s going to change slightly.

Another method might be to use Rhino 7 (I don’t have that yet) and use the new quad mesh command to generate even guad mesh over the polysurface, which you would then use as a subdivision surface. If it’s got holes though, you’d probably need to edit the UV’s and then use the UVs for the pattern mapping. I don’t know grasshopper very well at all, but I assume you can use UV’s as an input.

Anyway, until there are some more reasonable ways to deal with data handed to you, grasshopper doesn’t fit all that well into the product design for development workflow.

If you need to know how to carry out something specific, open another post and reserve this one for your initial theme.

I don’t know about learning resources because I’ve been at this for almost 10 years… but it’s almost 10 years applying it to jewelry, which is within the product design in my opinion. And yes, it fits very well, but it has its scope, which is automation and optimization, exploration of design spaces (the set of solutions of a procedural model) and development of tools, but it is not a software that you are going to use without Rhino, because they are not separate things either, almost all GH functionality encapsulates Rhino functionality. Using GH is using Rhino, but procedurally.

I don’t know if it fits your needs, but I do know that it fits, at least in theory (there may be a lack of specific tools) in product design. With GH you can create a parametric product configurator online thanks to ShapeDiver, you can optimize model costs, you can produce infinite variations of a product, you can iterate on the creation of your design like no other software, you can automate recurring processes by creating your own tools easily and without code… and I’m sure I’m missing something relevant to mention but I think this way you get an idea if GH interests you or not.

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