Partage de technologie

16. API Revit : Famille, Symbole de famille, Instance de famille

2024-07-11

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

Préface

J'ai écrit devant moi que je n'arrêtais pas de harceler et que je me sentais mal. Je veux trouver des émoticônes pour rendre l'écriture amusante, mais je n'arrive pas à trouver la bonne, ou cela prend du temps et demande beaucoup de travail, mais je n'en suis pas satisfait et je ne peux pas créer les émoticônes moi-même. , alors oublie ça.

Deuxièmement, j'avais l'habitude de lister certains membres de la catégorie dans le relevé du compteur. C'était long et verbeux, et je ne voulais pas le lire, je pourrais manquer quelque chose d'utile si je l'écrivais, donc je ne le listerai pas. .

Alors, arrêtez les ragots et allez droit au but.


1. Quels sont ces trois-là ?

Family(famille), dérivé directement deElement , dans Revit, la plupart des primitives sont des familles. Les modèles tels que les murs, les poutres et les poteaux sont des familles, tout comme les annotations de dessin telles que la longueur, l'angle et le diamètre.Bien sûr, il y a aussi des gens qui ne appartiennent pas à des groupes ethniques, commeDirectShape, c'est juste un modèle.
Selon le formulaire d'édition, les familles peuvent être divisées en trois types : les familles système, les familles intégrées et les familles chargeables. Comme je ne connais pas suffisamment les groupes intégrés, je ne développerai pas ce sujet. Vous pouvez le vérifier par vous-même.

FamilySymbol (type de famille) qui fait partie d'une famille. Par exemple, pour une porte, sa largeur, sa hauteur et la position de la poignée de porte peuvent être modifiées en ajustant les paramètres. Mais seules quelques tailles de portes sont réellement utilisées, certains paramètres peuvent donc être prédéfinis. Ce préréglage est le type de famille. Une famille peut avoir plusieurs types.
Insérer la description de l'image ici

FamilyInstance(Instance familiale), compris simplement, est une instance de la famille.
Mais la classe d'instance familiale,fait spécifiquement référence àFamilles chargeables (familles créées par les utilisateurs eux-mêmes, reflétées sous forme.rfa formater le fichier).Un exemple de famille de systèmes estWallCloumnCe type de famille est défini et implémenté en interne dans Revit.


2. Comment les obtenir

Pour obtenir l'instance de famille générique, vous pouvez suivre la procédure "Filtre"conduire.

Pour obtenir le nom de famille, veuillez vous référer à un autre articleRevit obtient le nom de famille d'un élément, ou utilisez directement le code suivant.

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