BILT Speaker

BILT Speaker
RevitCat - Revit Consultant
Showing posts with label Rhino. Show all posts
Showing posts with label Rhino. Show all posts

Friday, 16 December 2016

Applying colours and Materials in Rhino for Revit Import

Following on from my previous post about importing Rhino materials in Revit 2017.1   here is a brief description on how to set up the colours/materials in Rhino:

I am new to using Rhino, so my understanding of the UI and functions is pretty basic but I managed to figure out how to apply colours and materials to objects without reading any manuals.  I am happy to be corrected if there are better ways to do this.

Once you have created an object (or multiple objects), you can select the object and view its properties.  Unless you tell it otherwise, it will be on the 'Default' layer, with Color, Linetype etc set to 'By Layer', which means that it will behave according to the layer settings.  During the new import process, Revit 2017.1 considers the default layer & colour not to be a material.
 

You can change the layer of the object from the Layer drop-down list, providing you have created new layers

By default, your file most likely will have no layers, so you need to create them, using the 'Edit Layer' function, available from the Edit menu.

Once the layers menu has been opened, it will be available under a Layers tab.  It has typical columns showing the name, show/hide, lock, display colour (just a box) and material properties for each layer.  New layers will have default settings (no colour or material defined), but these can be changed by clicking on the colour box or adjacent space under the material column.
If you are creating layers just to manage export to Revit, the names are irrelevant to Revit, but the colour and material are important - you don't need to get the colour/material right for its end use in Revit, as long as each object has a different colour, it will become a different material when imported to Revit.  The materials can then be edited in Revit.

If you expand the width of the menu it shows the material name (if defined), linetype and print width/colour - the print colour does not seem to be relevant for Revit imports.

Materials

You can define a material for use in Rhino, but the only thing that Revit takes note of is the material colour.
Rhino Material Properties

Object Properties

Normally, objects will display according the the 'By Layer' settings, which means that all objects on a given layer can have their properties changed together easily.
Object properties By Layer

You can override individual 'Display Color' for any selected object
Object properties By Object
If you choose a non-standard colour, it will show the colour name as 'Other'


SAT files

I tried exporting a coloured Rhino file to SAT format, then importing it to Revit, but sadly it did not bring the colours in as materials - so I am not sure what the trick is to assigning colours to objects in a SAT file.  I tested various ACIS versions of SAT format, to no avail.
Rhino Export SAT options
Does anyone know how to define colours for objects in a SAT file from Rhino?  Or from any other 3D modelling software?

Import Colours to Revit

For details on how these colours are imported to Revit, refer to importing Rhino materials in Revit 2017.1

  • It seems that Revit uses the display colours set in Rhino, not the print colours.
  • If you import two different Rhino files that have identical colour definitions, it treats them as different materials
  • If you import the same Rhino file twice, it seems that Revit assigns the same materials to objects in both instances
  • However, if you rename a material, or change its definition before importing the second instance, Revit will create new materials with a suffix of (2) added to the original name.  You could use this to your advantage if you want multiple instances of the same object but with different materials.

Sunday, 20 November 2016

Revit 2017.1 Import Rhino Materials

Following on from my post about the new Revit 2017.1 feature 'Import 3D Shapes', I have done some more testing on how to import Rhino files with materials (colours) into a Revit family.

If you import a Rhino file that has no colours or materials defined in it, you just get a dumb object in Revit that has no capability for controlling materials.




However, one of the subtleties of the new import shape feature is that it will recognise assigned colours in the Rhino file.  It will then create a new material in Revit for each colour.




To assign a material or colour in Rhino, you can either select an object and choose a colour/material;  or else you can create layers and assign a colour/material to the to the layer, then put the object on that layer and leave its object properties set to 'By Layer'.
Once you import the Rhino file to Revit, it will take just the RGB value of the defined colour or material and use that to create a new material in Revit - any other material properties will be ignored, so don't expect textures, reflectivity or anything else.
If you do not assign a colour/material to any object by either method, it will not be given a material in Revit (not even 'Default') - so you cannot subsequently change it.  Hopefully this will change in future versions of Revit.

The materials in Revit are given names such as 'Material 2' etc.  This is a big improvement over the confusing naming of imported Autocad materials (eg. Render Material 255-255-255).

The only property that the new materials have is a 'Graphics' colour definition.

It has default 'Appearance' settings (grey), meaning that realistic or rendered views will show grey objects.

You can of course change the material definition and give it 'Appearance' colours, tints, bump maps etc. 

This will only affect the part of the imported Rhino file that had that original colour (and now Revit material).
Realistic view with only one material Appearance edited

It would make sense to rename the materials so that they refer specifically to the individual objects within the imported file.  I like to set the 'Appearance' colour to match the Graphics colour, so that not only do the material previews show in colour but also any realistic views will display the colours rather than default grey.


I have not yet succeeded in testing this functionality with an imported SAT file (as I can't figure out how to apply colours in a SAT file), but hopefully it will work as a viable alternative workflow to the old method of importing/linking SAT files, as described in an earlier post.

For details on how to apply colours/materials to objects in Rhino, click here

Sunday, 30 October 2016

2017.1 Import 3D Shapes - Swings and Roundabouts

The new 'Import 3D Shape' feature in Revit 2017.1 seems like an improvement - but it is not necessarily all good.  In previous versions we could link or import 3D SAT into Revit.  In v2017.1 the import engine for SAT files has changed (it is not just a UI change);  in addition, we can also import Rhino files (but not link them).
The underlying import engine for this new feature is different to the previous one used for importing SAT files.  I have heard anecdotal evidence that SAT files imported in v2017.1 perform better than in v2017; and that it may import more (of the) models, or sometimes not at all - at this stage it is too early to tell, so I will concentrate on the changes in functionality.

Sat vs Rhino



What is SAT?  It is not a satellite.  It stands for 'Standard ACIS Text' file format.
ACIS is a 3D geometric modelling kernel used by various different softwares (currently owned by Dassault) - but since it is open-source, its data file structure has become a commonly used industry 3D model translation format.  Revit can only import/link SAT v7 or earlier (as of 2017.1).
A rhino file is the native file format (3dm) of the 'Rhinoceros' 3D modeling program (by McNeel & Associates).  Until Revit 2017.1 it was not possible to import rhino files directly - you had to use a whole menagerie of software such as Dynamo, Rhynamo, Chameleon, Hummingbird and who knows what other creatures.

The Old SAT Import Method

Before evaluating the relative merits of the old vs new methods of importing SAT files, it is important to understand how people might use the old method - particularly in terms of managing materials and subcategories.

During the import CAD process, once you chose the SAT format, the dialog box options were the same as other CAD formats (DWG, DXF etc) - allowing you to choose units, origin points.
Old import SAT options
 Once the SAT file was imported, it had base constraints - a level that you could change.
Old SAT import Instance Properties in project

In the family editor, you had all the visibility controls and even a direct subcategory property, which the imported model can be assigned to.
Old SAT import Instance Properties in family
It also had type properties that allowed you to change the scale if the import scale was not quite right
Old SAT import Type Properties


Imported SAT shaded view

Subcategories

In the project, like any other imported/linked CAD file, the imported SAT file had a default subcategory of  "0", which could be accessed from the 'Imported Objects' tab of the 'Object Styles' dialog box - from there the line weights and patterns could be changed

The subcategory could be renamed - so that multiple imported SAT files could each have a different subcategory.

Materials

The object style material could also be changed, so that the imported SAT looked different in all views
Imported SAT with material over-ride in Object Styles
All these settings behaved pretty much the same regardless of whether you linked or imported a SAT file.  The relative merits of link vs import are for another discussion.  Linked/imported SAT files would not section correctly when placed directly in the model (just gave a projection view) because imports were not considered to be of a 'Cuttable' category - to get around this we always used to create an in-place generic family and link/import to that, so that it would cut sections properly.

New SAT Import Method

During the new 'Import SAT' procedure, we have lost all those options for controlling units, origin points, correcting off-axis lines etc.  All that is replaced with just one 'Category' drop-down menu. 


What this means is that we can no longer control units/scale or location.  You have to know the units in advance, and make sure that they match the units of your current file exactly.  However, you may occasionally get a dialog prompting you for import units if the units are not defined in the SAT file

Once the file is imported, the instance properties have lost the base level & offset, which is extremely unfortunate;  we have gained Image, Comments, Mark and Phasing - all of which may come in useful, particularly when tagging.


The type properties have lost the scale settings, but gained a whole swathe of standard system properties, again useful for scheduling and tagging:

In the family editor, we now have the same properties as in the project, although I can't see the benefit of having them here, as they will change in the project with every instance.

Once the SAT (or Rhino) file has been imported, it is not possible to apply a material, although the new import engine supposedly should support materials if they are defined in the original file (even if only as a colour). [Edit - Rhino colours/materials applied to objects will import as materials to Revit - read about it herefor info on how to apply colours in Rhino click here]

If you choose a 'cuttable' category such as casework or generic, then you can cut section correctly through directly imported SAT/Rhino files without having to first host them in an in-place family.  Once imported, you cannot change its category in the project environment;  in the family editor you can change the category.

Swings and Roundabouts

What have we gained with the new method:
  • Can import a rhino file directly (if it works)
  • Apply a category directly to import
  • Can over-ride surface pattern by element per view
  • Can schedule imported elements
  • Can tag imported elements
  • Can dimension imported elements - where edges are parallel or have arcs
  • Use imported elements for bounding rooms, providing they are put in a suitable category (such as walls, floors, ceilings) - the imported element has a 'room-bounding' checkbox, but I could not get it to work!
  • [Edit - Colours/materials applied to objects in Rhino will import as unique materials to Revit]

What capabilities have we lost with the new method:
  • No scaling on insertion (unless the file is unitless)
  • No rescaling after insertion
  • No base level or offset
  • No location control - presumably just uses Origin to Origin?
  • No 'Current View Only' checkbox, if for some reason you wanted to flatten your SAT file to 2D
  • No subcategory
  • No material per subcategory (can only edit materials if applied as colours in Rhino first) [edit]
  • In the family editor - no visibilty controls (Visible checkbox and Detail Level)
We now have two very different workflows for linking and importing CAD files.  Presumably this is a work in progress, and the old method of linking will become just like the new importing process.  Hopefully we will have the old capabilities reinstated to the new method in some fashion, and applied to Rhino files too.

Many people will have devised their own workflows when importing SAT files.  If those workflows rely on any of the capabilities that have been lost, you might be cursing version 2017.1 after the upgrade.  Here are some workarounds for dealing with the problem (with SAT files, not Rhino):

Import SAT Workarounds

1.  You could just use Link CAD instead of Import - this uses the old method, and has many advantages over importing.

2.  You could link the SAT file into a DWG file, and assign layers to it before importing - I have not tested this as it requires the use of another piece of software that I don't ever use.

3.  If you must have the SAT file imported, you could link the SAT file; then assign it to a subcategory (as described above) and a material;  then 'bind' it.  How do you bind a linked SAT file, you might ask?  Unlike linked Revit files, there is no "Bind" command on the ribbon when you select a linked CAD/SAT file.

The command is hidden away on the Manage Links dialog box, and it is not called 'Bind' - it is called Import.  I guess that is because you are converting a linked file into an imported CAD file.  Oh, why do we have these obscure inconsistencies in Revit?


Once you select a linked CAD file (be it DWG, SAT), the 'Import' button becomes available

Once you click on that button and then OK (or Apply), the linked file disappears from the Manage Links list and becomes just like a SAT file imported by the old method.

This workaround is obviously not available in the family editor, as you cannot link CAD files of any type in that environment.

[Edit - Rhino colours/materials applied to objects will import as materials to Revit - read about it herefor info on how to apply colours in Rhino click here]

For more on Revit 2017.1 features, click here