Entradas

Macro para desactivar el nivel subyacente

La manera como Revit configura el nivel subyacente de una vista en planta nueva no es de mucha ayuda para los que trabajamos con un numero de vistas bastante elevado. Configurar vista a vista el parámetro nivel subyacente a ninguno es una tarea repetitiva sin ningún valor adicional que consume demasiado tiempo. Lamentablemente, para modificar varias vistas a la vez Revit no nos facilita las cosas y la única manera que encontré fue recurriendo a las Macros.

A continuación comparto este trozo de código que os puede ser útil:

		public void SetUnderlayViewNone()
		{
			UIDocument uidoc = this.ActiveUIDocument;
			Document doc = this.ActiveUIDocument.Document;

			FilteredElementCollector filteredviews = new FilteredElementCollector(doc)
				.OfCategory(BuiltInCategory.OST_Views);

			using (Transaction t = new Transaction(doc, "Set Underlay None"))
			{
				t.Start();

				foreach (Element e in filteredviews)
                        {
                                View myviewplan = e as View;
                                string viewName = myviewplan.Name;

                                Parameter underlyParam = myviewplan.get_Parameter(BuiltInParameter.VIEW_UNDERLAY_ID);
                                if (underlyParam != null) {
                                	ElementId id = new ElementId( -1 );
                                	underlyParam.Set(id);
                                }

                        }

				t.Commit();
			}

		}
 

Este código aplica a todas las vistas del modelo. Verificad que esto no estropea algo que no queráis.