Rhino 8 Feature: Annotations and Hatches in GH1

New Annotation and Hatch Components for GH1

Have you ever needed to add dimensions, leaders, or text entities to your model to clarify an issue or enhance your documentation workflow? Moreover, have you ever needed greater control over the hatches you use in your models and/or drawings to really make them pop?

Grasshopper 1 – in the Rhino 8 WIP – now has many new components which let you control annotations and hatches with ease.


With the inclusion of so many new components, it is difficult to describe each one individually. Instead, I felt it would be best to include some annotated examples which show how these new features work.

Feel free to download these examples and give them a try. As usual, please post questions or comments if you need further clarification.

Once you get the hang of how these components work; you too will be able to create dynamic, eye-popping, and fully annotated models like this one. Try them out today!


Great stuff, especially for AEC!


This is some really amazing stuff!
A major improvement over Rhino 7 Grasshopper and its functions for annotation and hatches (or lack of).

When I get the time, I’ll test it and write some feedback here.

1 Like

Another thing that could improve AEC workflows in GH could be some components for custom table creation. It would make creating schedule tables via GH much easier, without the need to use 3rd parties or additional scripting, that is not so trivial :slight_smile:


Andy, can you post the GH def for the video? I am having a challenging time with the Center Mark Component, since in Rhino we have three posibilites, 1) None, 2) Mark and 3) Mark and Lines…

@RhinoFabStudio Unfortunately, no. It’s rather big and would likely just be confusing for people. Instead, let’s look at the problem you’re trying to solve. So, it sounds like you want to have control over the Centermark Type. This is handled in the Annotation Style that you use for your annotation to control how it looks… More specifically, these settings are stored in the Annotation Dimension Settings component.

This component has input parameters which let you specify the size and type of centermark that you want to use. But, now that you’ve set the Dimension Style Settings, you now have to somehow assign those to the Centermark that you make with the Centermark component. So, you have two options:

  1. Per instance overrides. With this method, you are basically assigning some settings to the annotation object itself. Any settings you applied here will override any style settings that you might apply globally using the Assign Style component. However, for simplicity sake, we decided it would be best to sorta hide these settings by default. All annotation components have additional input/output parameters which can be unhidden to be able set the per instance style settings for that object. To get these to show up, right-click on the Centermark component and select “Show All Parameters”. You should see an additional Dimension Settings input parameter show up. If you connect the Dimension Settings component shown above to this input, you will then apply these settings to that annotation instance.

  2. Set the Annotation Style globally. You can assign any valid Annotation Style to any annotation object (ie. linear dimension, leader, centermark, etc.) by using the Assign Annotation Style component. This component accepts any annotation object and any annotation style. Remember, that if you set the style on an individual instance, those settings will override the style set using the Assign Annotation Style component.

AssignStyles.gh (16.7 KB)

PS. A little tip. That component on the left of the image above is the Dimension Settings component. It takes up quite a bit of screen real estate just to access two input parameters. A nice trick on these components is to right-click on the middle of them and select “Hide unconnected parameters”. This will make the component much smaller and only show you the parameters that you are currently using.