Block

Toolbar Menu Shortcut

Block
Main
Main1

Edit

Blocks >

Create Block Definition

Command ⌘ + B

The Block command defines a block object from the selected objects and replaces the selected objects with an instance of the block.

Using blocks lets you

Define a block in a model

  1. Select the objects.
  2. Pick a base point for the block.
    This is the point around which the instance will be located, scaled, and rotated when it is inserted.
    A block control point is placed at the base point of the block.
  3. Type a name for the block definition.

Block Definition Properties

Name

The name of the block definition.

See: Naming conventions in Rhino

Description

Optional descriptive information.

Hyperlink

Adds hyperlink information to a block definition. This information can be retrieved with the Hyperlink command.

Description

A description of the URL.

URL

A web address. Click the address to open the page in the default browser.

Define a block by inserting another file into a model

To redefine a block

Note

Block Instances and Layers

The properties of the geometry (curves, surfaces, etc.) that are contained in the block instance are controlled either by the layer properties or object properties of the geometry itself. Block instances that you insert to the model insert onto the current layer and can be moved to any other layer. There is no relationship between the block instance's layer and the geometry contained in the block. For example, the block geometry does not change to match the layer color onto which the block instance is inserted.

When the block contains objects on a specific layer, turning that layer off will turn off only the objects on that layer. However, if the layer the block instance is inserted on is turned off, all of the objects will disappear.

Locking Layers

When you lock a layer, only the layer that contains the insertion point of the block instance is locked. If a block has objects that are on the locked layer, but the block instance insertion point is not on that layer, the object itself is not locked because the controlling factor is the layer of the block insertion point.

Groups

Grouped objects will not maintain their grouped status inside a block.

Properties by parent

This option is only useful for objects in blocks. Think of a block instance as a container that contains objects (block members). A block instance is the parent of its block members. A block instance has its own properties. If By Parent is selected in the properties of a block member, the properties will be controlled by the block instance.

Simple block example:
Nested block example:

By Parent can be selected for Display Color, Linetype, Print Color and Print Width in object properties. For the Render material, select Use Object Parent. Render materials are only visible in Rendered and Raytraced display modes by default.

BlockManager

Toolbar Menu Panel Gear Menu

Block

Edit

Blocks >

Block Manager

Window

Floating Panels >
Show Blocks panel

Blocks

The BlockManager command manages the block definitions in the model.

Steps

Blocks Dialog Box

Block Definition list

Displays a list of block definitions in the model.

See: Naming conventions in Rhino

Block preview

Preview image right-click menu

Wireframe

Sets the view to Wireframe display mode.

Shaded

Sets the view to Shaded display mode.

Rendered

Sets the view to Rendered display mode.

Top

Sets the view to World Top.

Bottom

Sets the view to World Bottom.

Left

Sets the view to World Left.

Right

Sets the view to World Right.

Back

Sets the view to World Back.

Perspective

Sets the view to World Perspective.

Properties

Link Status

Displays the status of block instances linked to external files.

Up to date

The block definition and link file match.

Linked file is older

The linked file is older than the block definition.

Linked file is newer

The linked file is newer than the block definition.

Linked file is different

The linked file and the block definition do not match.

Not linked

The block definition was not created by importing a file.

File not found

The file that was used to create a linked block definition cannot be found.

The missing block location is marked with a text dot object listing the missing block name.

For a description of the process Rhino uses to locate files used by worksessions and linked instance definitions, see Rhino Wiki: File finding.

To resolve the issue

Right-click on the block definition in the list:

  • Select Update block definition to restore the missing block.
  • Select Delete block definition to remove the link.
Instances

Counts the number of instances of the block in the model. Nested instances are included in the count.

Used by

Lists block definitions that contain the selected block as a nested block.

Description

Displays the text information of the block definition.

External

Link File Name

The name of the file that was imported to create the block definition.

External File

For a file inserted as block instance.

Embed

Insert geometry into the current file. This will not update if the external file changes.

Link and embed

Insert geometry into the current file and maintain a link to the external file. Linked geometry can be updated when the external file changes. If the external file cannot be located, the geometry is still defined in the current file.

Link

Maintain only a link to the external file. Linked geometry is updated when the external file changes. If the external file cannot be located, the geometry will not appear in the current file.

Blocks are saved with both absolute and relative paths.

Layer Style

Defines how layer names are organized

Active

Merges layers with the same names.

Reference

Creates a parent layer using the name of the linked file. Layers in the linked file appear as sub-layers under the parent layer.

URL

Adds hyperlink information to a block definition. This information can be retrieved with the Hyperlink command.

URL

Enter a web address.

URL description

A description of the URL.

Gear menu / Right-click context menu

Create block definition from selected geometry

Select objects in the viewport to create a new block definition.

Create block definition from file

Insert a supported model format as a block definition.

Update block definition

Reload the linked block definition when it has been changed.

Replace block definition with contents of file

Select a model to replace the content of the linked block definition.

Unlink block definition from file

Embed the linked block definition.

Select instances of block definition

Select instances of the selected block definition in the viewport.

Export block definition

Save the embedded block definition as a new model file.

Show hidden block definitions

Display the block names beginning with * (asterisk character).

Always update blocks when opening model

Update "Embedded and linked" blocks each time the model is opened.

Prompt before updating blocks when opening model

Prompt before updating "Embedded and linked" blocks each time the model is opened.

When a file opens, the Block Definitions to Update dialog box prompts for action.

Never update blocks when opening model

Never update "Embedded and linked" blocks and do not prompt.

Delete block definition

Delete the selected block definition and all of its instances in the model.

Insert

Insert the selected block or an external model in the model space.

BlockEdit

Toolbar Menu

Block

Edit

Blocks >

Edit Block in Place

The BlockEdit command allows selecting a block instance to change the block geometry and update the block definition.

Steps

  1. Select a block instance to edit.
    Or
    Double-click a block instance.
    The block geometry opens in the Rhino window. All other objects are locked.
    You can now edit the geometry in the block using any editing techniques.
  2. Click Apply to accept the editing.
    To cancel, click the red button at the upper-left corner.

Command-line options

PromptToEditLinkedBlocks

Linked blocks are not stored in the Rhino file, but are a connection to an external model. To edit linked blocks, Rhino opens the external model in a separate instance of Rhino. The current editing session is paused until the external file is locked.

Yes

Prompts to open a linked block.

No

Opens the linked block without prompting.

In the Edit Linked Block dialog box, checking the Don't ask this question again... box automatically sets the PromptToEditLinkedBlocks to No.

Block Edit options

The Block Edit dialog box displays the block name and a list of any blocks nested in it.

Add Object

Adds selected objects to the block definition. If the selected object is a block, this becomes a nested block and will display in the tree the next time the BlockEdit command is run.

The object added is copied to the block definition and the original object remains in the model.

Remove Object

Removes selected objects from the block definition.

When the block is updated, the removed objects are added to the model as separate individual objects.

Set Base Point

Repositions the block insertion point.

When the block is updated, the block instance will shift so the new insertion point is placed at the block insertion location.

Notes

ReplaceBlock

Toolbar Menu

Block

Not on menus.

The ReplaceBlock command redefines selected block instances with a different block definition.

Steps

  1. Select block instances to change and press Enter.
    If you select one of several instances in the model, a command-line message displays the number of additional instances in the model.
  2. Select a block instance that uses the desired block definition.
    Or select a block definition from the list.
Command-line options

SelectFromBlockDefinitionList

Displays a list of block definitions in the model to select from.

All

Selects all instances of the current block definition including unselected, hidden, and locked instances.

None

Selects no additional instances. Only the selected instances will be changed.

Or

Select a block from the definition list.

CopyLinkedBlockDefinition

Toolbar Menu

Not on toolbars.

Not on menus.

The CopyLinkedBlockDefinition copies a linked block with Reference style layers.

To create your own example:

  1. Create a simple file called BlockDef.3dm that will be used as a block definition.
  2. Start a new model called "FancyModel.3dm".
  3. Use the Insert command to create a linked block definition with "reference style" layers.
  4. Name this block "A".
  5. Run the CopyLinkedBlockDefinition command and copy "A" to new block named "B".
  6. Run the CopyLinkedBlockDefinition command and copy "A" to new block named "C".
  7. Adjust the layer settings for the three blocks.
  8. Run BlockManager and see that you have three linked blocks that reference the same "BlockDef.3dm".

See also

Work with blocks, groups, and worksessions

McNeel Wiki: Using blocks

 

 

 

Rhino 6 for Mac © 2010-2020 Robert McNeel & Associates. 11-Nov-2020