Technologieaustausch

16. Revit-API: Familie, Familiensymbol, Familieninstanz

2024-07-11

한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina

Vorwort

Ich schrieb vor mir, dass ich ständig nörgelte und mich schlecht fühlte. Ich möchte ein paar Emoticons finden, damit das Schreiben Spaß macht, aber ich finde nicht das richtige, oder es ist zeit- und arbeitsintensiv, aber ich bin damit nicht zufrieden, und ich kann die Emoticons nicht selbst erstellen , Vergiss es.

Zweitens habe ich einige der Kategoriemitglieder im Zählerstand aufgelistet, und ich wollte nicht, dass ich etwas Nützliches übersehe, wenn ich es aufschreibe, also werde ich es nicht auflisten .

Hören Sie also auf mit dem Klatsch und kommen Sie direkt zur Sache.


1. Was sind diese drei?

Family(Familie), direkt abgeleitet vonElement In Revit sind die meisten Grundelemente Familien. Modelle wie Wände, Balken und Stützen sind Familien, ebenso wie Zeichnungsanmerkungen wie Länge, Winkel und Durchmesser.Natürlich gibt es auch Menschen, die nicht ethnischen Gruppen angehören, wie zDirectShape, es ist nur ein Modell.
Je nach Bearbeitungsformular können Familien in drei Typen unterteilt werden: Systemfamilien, integrierte Familien und ladbare Familien. Da ich nicht genug über integrierte Gruppen weiß, werde ich nicht näher darauf eingehen. Sie können es selbst ausprobieren.

FamilySymbol (Familientyp), der Teil einer Familie ist. Beispielsweise können Breite, Höhe und Türgriffposition einer Tür durch Anpassen von Parametern geändert werden. Allerdings werden nur wenige Türgrößen tatsächlich verwendet, sodass einige Parameter voreingestellt werden können. Diese Voreinstellung ist der Familientyp. Eine Familie kann viele Arten haben.
Fügen Sie hier eine Bildbeschreibung ein

FamilyInstance(Familieninstanz) ist einfach verstanden eine Instanz der Familie.
Aber die Familieninstanzklasse,bezieht sich konkret daraufLadbare Familien (von Benutzern selbst erstellte Familien, dargestellt als.rfa Formatdatei).Ein Beispiel für eine Systemfamilie istWallCloumnDieser Familientyp wird intern in Revit definiert und implementiert.


2. Wie man sie erhält

Um die generische Familieninstanz zu erhalten, können Sie den Anweisungen folgen:Filter"Benehmen.

Um den Familiennamen zu erhalten, lesen Sie bitte einen anderen ArtikelRevit ruft den Familiennamen eines Elements ab, oder verwenden Sie direkt den folgenden Code.

// 扩展方法
public static string GetFamilyName(this Element element)
{
    Parameter parameter = element.GetParameter(BuiltInParameter.ELEM_FAMILY_PARAM); // GetParameter也是扩展方法,自带的返回是一个List
    string familyName = parameter.AsValueString(); 
    return familyName;
}