Annotation Grasshopper Styles Tutorial

Comparison between the Grasshopper annotation on the left and the VisualARQ annotation on the right.

This tutorial will create a parametric Annotation style from a Grasshopper definition.

The 3 main steps to follow are the same as in any other Grasshopper style:

  1. Grasshopper definition setup
  2. Create the VisualARQ annotation style
  3. Insert and edit an annotation Grasshopper style


1. Grasshopper definition setup

Prerequisites to consider when creating a Grasshopper definition for an Annotation Grasshopper style:

  • Annotation objects in VisualARQ are created from an insert point and a plane. This insert point in the Grasshopper definition is measured from the document origin of coordinates (0,0,0) and by default it corresponds to the XY Plane.
  • If the insert point as input parameter is defined as a plane, the resulting object will be able to be placed in any plane in the model space. Otherwise, it will be always placed on the XY Plane.

Download the Grasshopper file used in this tutorial here.

Type Grasshopper in the Rhino Command line to launch Grasshopper.

The Grasshopper definition requires some Input parameters to define the features of the new object, and Output parameters to define the geometrical components of the final object. Some output parameters can be used to retrieve information from the object created.

  • Input parameters: Define the features of the resulting style. These are the different parameters we can find in this definition:
    • Plane: Specifies the base point (and plane) for the annotation.
    • Hatch Pattern: Specifies the hatch pattern for the annotation.
    • Number Slider (floating point): There are 4 of them and are used for the various dimensions of the annotation.
    • Number Slider (integer): Specifies the amount of decimal places.
  • Output parameters: These are the components that will be read by VisualARQ once we create the style. VisualARQ only recognizes the output parameters that are ending components with their output nodes unconnected. In this example, we find the following output parameters:
    • Geometrical outputs: these are the ones that will be read as the different parts of the annotation object.
      • Text Param
      • Geometry Param
      • Hatch Param
    • Output parameters:  these are used to retrieve information from the object created. In this example we can find the following output parameter:
      • Number Param: it is used to retrieve the elevation of the final annotation object.

It is important to name these components in Grasshopper to identify them easily when creating the new style:

The Grasshopper definition that generates the annotation object.

2. Create the VisualARQ Annotation style

The Grasshopper style will be created and managed from the Annotation Styles dialog.

2.1 Create the new style

Annotation Styles dialog
  1. Assuming the Grasshopper definition (.gh file) is already done, open the column styles dialog: _vaAnnotationStyles command.
  2. Click on the New… button and select the Grasshopper annotation style option.

The Grasshopper Style wizard will appear. This wizard will guide you through the steps to define the annotation Grasshopper style parameters. The left side of the wizard will show a preview of the object style generated as soon as the required information is completed.

2.2 Open the Grasshopper definition

Grasshopper style wizard: open the Grasshopper definition

Click on the Browse button to select the .gh file or choose one of the recent files from the drop-down list.

2.3 Configuration

Grasshopper style wizard: Configuration

Set the Annotation Grasshopper style global values:

  • Style name: set the desired name.
  • Definition units: in this case, it has been prepared in meters.
  • Insert Plane (Linked properties):  the base point to place the annotation. Any input Plane or Point parameter created in the GH definition will be available here.
    • If no point or plane input is chosen (“None” option), the origin of the GH definition will be used instead. However, the elevation value will not be linked with the annotation’s location.
    • If there was a point input in the GH file (instead of a plane), and it was chosen here, the annotation would take the elevation of the point’s plane as a reference, but its orientation would be constrained to that point’s plane in the Grasshopper definition.
    • If the plane input is chosen, the annotation will be placed oriented to the current construction plane of the viewport where the object is inserted. This is the recommended option in this example

2.4 Geometry

Grasshopper style wizard: Geometry

Specify which of the output geometry components (Params) to import into VisualARQ. The identifiers of these geometry components are taken from the names of the geometrical output components in the Grasshopper definition and can be modified only once the style has been created.

You can choose the representation where each component is going to be used:

  • Model: the object representation in 3D.
  • Plan: the object representation in plan view. Only visible in top views when the Cut Plane of the level where the object is placed is enabled and intersects the object.
  • Preview *: the object representation while the object is being inserted (or moved afterward). This way, you can have a preview of the final object before ending the command.

*Note: It is highly recommended to use the Preview representation only for the necessary geometry to be displayed while inserting the object in the model. The fewer components checked for the preview, the faster will be the insertion or edition of these objects in the model, especially when they are made with complex Grasshopper definitions. Beware to leave at least one component with this representation checked.

In this case there are three geometrical outputs which we want to show in the three different representations: model, plan and preview. That means that the Plan representation will be taken from the horizontal section of the 3D object according to the level’s cut plane height.

2.5 Parameters

Grasshopper style wizard: Parameters setup

This step shows the settings available for the list of input and output parameters defined in Grasshopper. The filter by option lets you view the parameters located inside named groups in the Grasshopper definition. There are two kinds of parameters:

  • Input parameters: these parameters define the annotation style.
  • Output parameters: these parameters retrieve information from the object created.

The settings are different for each of them:

  • Input parameters:
    • Name: it is the identifier of the parameter and can be modified if desired in this step.
    • Editable by (you can change this value for several parameters by selecting them while holding the Ctrl key.):
      • Definition: the parameter will be hidden and it will keep the value from the Grasshopper definition.
      • Style: the parameter can be edited only by style and the changes will apply to all objects in the model with that style.
      • Object: allows to set a different value for that parameter for each column in the model that has the same style. In case no value is provided “By object” the one defined by style will be used.
    • Default (value): shows the default value (the ones specified in the Grasshopper definition) for the input parameters and lets you set different default values.
    • Type: shows the different types of values available for each kind of parameter. In this case, all have been automatically set to their corresponding type. Almost all of them are floating point values of type Length, but there is also one of type Integer and one of type Text.
  • Output parameters:
    • Name: it is the identifier of the parameter and can be modified if desired in this step.
    • Visibility: choose the option “Object” to display this parameter in the VisualARQ dialogs, or “None” to hide it.
    • Type: shows the type of value which has previously been defined in Grasshopper for this parameter.

3. Insert and edit the annotation Grasshopper Style

3.1 Edit the annotation style

Annotation Grasshopper style parameters in the Annotation style dialog.

Once the Grasshopper style wizard is completed, the new style will appear in the annotation styles list with its corresponding subcomponents (Symbol, Text and Hatch). To edit the style again, right-click on the style name to open the context menu and select Edit. This operation will open the Grasshopper style wizard again.

The input parameters will be available under the “Parameters” tab and will appear grouped as in the Grasshopper definition. In case the name of the group matches an existing category they will appear in the same category.

3.2 Insert the Grasshopper style

Once the annotation style has been created, you can insert an instance in the document and change the values of its parameters from the VisualARQ annotation icon located under the Properties panel, as it works with any other VisualARQ object. Only those input parameters that were set as editable “By Object” in step 2.5 will be visible. You will see the output parameters in this part of the Properties panel as well.

Annotation parameters in the annotation Object Properties panel