/// <summary> /// Construct an Element from an existing Element in the Document /// </summary> /// <param name="family"></param> /// <param name="isRevitOwned"></param> /// <returns></returns> internal static Family FromExisting(Autodesk.Revit.DB.Family family, bool isRevitOwned) { return(new Family(family) { IsRevitOwned = isRevitOwned }); }
protected override void TrySolveInstance(IGH_DataAccess DA) { Autodesk.Revit.DB.Family family = null; if (!DA.GetData("Family", ref family)) { return; } DA.SetData("Category", family?.FamilyCategory); DA.SetData("Name", family?.Name); }
public bool LoadFamily(string path) { Autodesk.Revit.DB.Family family = null; lock (_locker) { TaskContainer.Instance.EnqueueTask(uiapp => { try { var doc = uiapp.ActiveUIDocument.Document; using (Autodesk.Revit.DB.Transaction trans = new Autodesk.Revit.DB.Transaction(doc, "loadFamily")) { trans.Start(); var isLoad = doc.LoadFamily(path, out family); if (isLoad) { Debug.Print("{0}:{1}", "load is success", family.Name); } else { Debug.Print("load is failed"); } trans.Commit(); } } finally { lock (_locker) { Monitor.Pulse(_locker); } } }); Monitor.Wait(_locker); } return(family != null); }
/// <summary> /// Set the internal Revit representation and update the ElementId and UniqueId /// </summary> /// <param name="family"></param> private void InternalSetFamily(Autodesk.Revit.DB.Family family) { this.InternalFamily = family; this.InternalElementId = family.Id; this.InternalUniqueId = family.UniqueId; }
private void InitFamily(Autodesk.Revit.DB.Family family) { InternalSetFamily(family); }
private Family(Autodesk.Revit.DB.Family family) { SafeInit(() => InitFamily(family)); }
public Family(Autodesk.Revit.DB.Family family) : base(family) { }