Red de conocimiento informático - Conocimiento informático - Cómo ocultar un grupo mediante programación en Revit

Cómo ocultar un grupo mediante programación en Revit

Los objetos del grupo se pueden ocultar por separado para lograr el propósito de ocultar el grupo.

A través del comando de la interfaz de usuario de Revit

, podemos ocultar el grupo seleccionándolo y haciendo clic en el comando ocultar como

otros elementos. Sin embargo, no puedo ocultar el grupo a través de la API.

Aquí está el código de DevelopSharp que utilicé.

public void hidegroup()

{

Document doc = this.ActiveUIDocument.Document ;

Selección sel = this.ActiveUIDocument.Selection;

Referencia ref1 = sel.PickObject(ObjectType.Element,"Elija un grupo");

Elemento elem = doc.GetElement(ref1);

IList listas = nueva Lista();

listas.Add(elem.Id);

Transacción trans = nueva Transacción(doc);

trans.Start("hidegroup");

doc.ActiveView.HideElements(listas);

trans.Commit ();

}

Inicie el comando, seleccione cualquier grupo, se produce el error:

Revit no se pudo ejecutar. hidegroup.

Se ha detectado un problema.

Entonces, ¿cómo podemos ocultar un grupo?

Solución

Grupos

no se puede ocultar ni anular como elementos normales. Para ocultar un grupo

, necesitamos ocultar el elemento establecido en ese grupo mediante HideElements()

. método Lo bueno es que podemos ocultar parte de un grupo.

Aquí está el código para ocultar todo el grupo.

public void hidegroup()

{

Documento doc = this.ActiveUIDocument.Document;

Selección

n sel = this.ActiveUIDocument.Selection;

Referencia ref1 = sel.PickObject(ObjectType.Element,"Elija un grupo");

Elemento elem = doc.GetElement(ref1 );

IList listas = nueva Lista();

Grupo g = elem como Grupo;

IList ids = g.GetMemberIds();

Transacción trans = nueva transacción(doc);

trans.Start("hidegroup");

this.ActiveUIDocument.ActiveView .HideElements(ids);

trans.Commit ();

}

Enlace original: /joexiongjin/article/details/17915301