Xrev API Tools: Increase Productivity!



Wednesday, April 12, 2006

Object Styles Explained

Object styles are located both in the project and in families. Every family, system and annotation category has atleast one object style. They are used to control globally how an object is displayed with regards to lineweight, colour and type. These can be overridden per view or changed throughout a project either in your "visibility graphics controls" or your "settings->Object Styles" respectively.

In a family:

When you are in a family going to settings->Object Styles can create new subcategories for elements that will enable them to be turned off or their display manipulated without changing all elements in that category. For example:

Say we have a generic model family and we create a new object style by going to our object style settings, clicking NEW and selecting sub-category of generic models and name in "Signage". We could then select individual solid geometries located in our family and go to their properties and set their subcategory to "Signage". Now if we were to load this family into a project we could turn off signage in our visibility settings and it would just turn off these geometries whilst keeping on our other generic models.

The other items that are created when adding a new object style are new linetypes (this is where some people become confused as in families you do not create new linetypes you create new object styles). If we were to select symbolic lines in our family you'll note that two new linestyles are now selectable. That is, Signage (cut) and Signage (projection). Similarly lines drawn in this object style can be turned off or manipulated independant of all generic models as previously outlined.

In a project:

In Settings->Object Styles in a project we can change how a particular sub-category or category is displayed globally throughout the model by editing its properties. You'll note we have multiple tabs, for model, annotation etc for the different classes of elements.

These can also be overridden per view to enable exceptions to the graphical display of these elements for paricular views.


Anonymous said...

Can you explain how the " Materials " part of Object Settings overides the Material of the Family category ? I thought I could over-ride the wall material with that, but it doesn't seem to work.

Chris said...

Materials are not effect by object styles at all. The material controls how an object will display when cut and when seen in projection. Object styles control what lineweights and colours will be used to display the object. This can be overridden per view, however the material cannot. The material is a property of the object and is a system wide setting so it will appear the same in every view unless the detail level is set to "Coarse" (depending on the type of object). Walls for example can have two different cut displays for coarse and medium/fine detail levels. In Revit 9 you can also turn off the visibility of the cut all together per view.


Anonymous said...

Sorry, but I’m not following you explanation.

Object Styles – Model Objects has a column for Materials. Some materials are assigned to some categories out of the box.

The Help section says :-
”.. Choose a material for the family category from the Material column. Click the button in the Material field to open the Materials dialog box. You can override the material for the family by changing its material type property. For imported geometry, set a Material for the layer. Note that this is not available for Annotations. “

I was attempting to over-ride the wall material in a 3D view using this setting.

Chris said...

Okay i see what you're after now.

As stated previously Object styles are project wide setting, so setting a material in the object styles will not just change your 3D view, but will change all views. Personally i can't really see a purpose for the ability to override family category materials project wide... Why would you want all your walls to the be same material, not sure what the factory was thinking there...

To re-iterate, there is no way to change an objects material per view as its a property of the object itself and is not view specific...


Anonymous said...

One case where this would be handy would be during Preliminary design stage, when fundamental design issues remain unresolved. Basic sketch type materials ( ie Solid Colour - White - Pure Matt) could be quickly assigned using the object styles settings. I suspect this one of the uses that the factory had in mind. It should work for this, but it appears not to over-ride all material assignments and that's what I'm trying to figure out.

Anonymous said...

I'm having the same problem and looking for the materials to do just what anonymous had in mind. I just attended an Autodesk seminar in San Francisco and the presenter from Audodesk said he sets a View Template in early prelim design to render all materials white. It was very effective. However, I have been unsuccessful in making this work.
The Vis/Graphics overrides has a Surface Pattern override that also doesn't achieve the desired result. Can anyone help on this?

How's Australia this winter? I'm going to Melbourne in August.

Chris said...

Apologies Greg,

I keep missing these posts, hard to spot and the notifications don't work very well on this site... Sorry.

I'd imagine you've got it sorted by now, but to help others:

If you have elements loaded with materials that have been left as by category they will use the assigned material in the object styles settings. If they do have a material assigned this will take precedence over the object style assigned material.

It would be nice to have it work the way you suggest...

As for the view template, i'm not sure what the go was here... View templates can't control materials at all just linestyles etc...

How was your trip to Melbourne.