I have encountered a bug with blocks sometimes not printing properly if the instance is on a layer with print width set to “No Print”. Rhino appears to be using the parent instance layer print width as the print width source for the block geometry even if the geometry print width source is “By Layer”.
I have been placing blocks on non-printing layers for months without problems. I just noticed this in new files today.
If the instance layer print width is changed to something other than “No Print”, then the block geometry prints just fine (using it’s own by-layer print width, color, etc.).
The problem sometimes goes away when an annotation object is added to the block, but only after the block is transformed in some way (move/scale/mirror/etc.). In some existing files, this fixes the bug, in some this doesn’t fix it, and in some the bug does not occur, but I can replicate both the bug and the fix in new files.
Steps to replicate bug:
- Create new Rhino file
- Create a layer with non-white print color and non-zero print width
- Create a second layer with print width set to “No Print”
- Create some curves on the printing layer (all attributes “By Layer”)
- Create a block from the geometry and place the instance on the non-printing layer
- Go to print preview and observe that the block is not visible
- Edit the block and add a text object on the printing layer
- Go to print preview and observe that the block is still not visible
- Move the block
- Go to print preview and observe that the block is now visible
- Edit the block and remove the text object
- Go to print preview and observe that the block is still visible
- Move the block
- Go to print preview and observe that the block is no longer visible
Any ideas what could be causing this?
(Windows 10)
Version 5 SR14 64-bit
(5.14.522.8390, 5/22/2017)