/// <summary> /// /// </summary> /// <param name="location"></param> /// <param name="boxPlacementType"></param> /// <returns></returns> public static ImagePlacementOptions Create(Point location, string boxPlacementType) { if (location == null) { throw new ArgumentNullException(nameof(location)); } if (string.IsNullOrWhiteSpace(boxPlacementType)) { throw new ArgumentNullException(nameof(boxPlacementType)); } var doc = DocumentManager.Instance.CurrentDBDocument; var pt = location.ToRevitType(); var bpt = (Autodesk.Revit.DB.BoxPlacement)Enum.Parse(typeof(Autodesk.Revit.DB.BoxPlacement), boxPlacementType); TransactionManager.Instance.EnsureInTransaction(doc); var imageOptions = new Autodesk.Revit.DB.ImagePlacementOptions(pt, bpt); TransactionManager.Instance.TransactionTaskDone(); return(new ImagePlacementOptions(imageOptions)); }
private void InitImageInstance(Autodesk.Revit.DB.View view, Autodesk.Revit.DB.ElementId typeId, Autodesk.Revit.DB.ImagePlacementOptions options) { //Phase 1 - Check to see if the object exists and should be rebound var oldEle = ElementBinder.GetElementFromTrace <Autodesk.Revit.DB.ImageInstance>(DocumentManager.Instance.CurrentDBDocument); // Rebind to Element if (oldEle != null) { InternalSetImageInstance(oldEle); return; } //Phase 2 - There was no existing Element, create new one TransactionManager.Instance.EnsureInTransaction(DocumentManager.Instance.CurrentDBDocument); var ii = Autodesk.Revit.DB.ImageInstance.Create(DocumentManager.Instance.CurrentDBDocument, view, typeId, options); InternalSetImageInstance(ii); TransactionManager.Instance.TransactionTaskDone(); ElementBinder.SetElementForTrace(InternalElement); }
private ImageInstances(Autodesk.Revit.DB.View view, Autodesk.Revit.DB.ElementId typeId, Autodesk.Revit.DB.ImagePlacementOptions options) { SafeInit(() => InitImageInstance(view, typeId, options)); }
private void InternalSetImagePlacementOptions(Autodesk.Revit.DB.ImagePlacementOptions ipo) { InternalImagePlacementOptions = ipo; }
public ImagePlacementOptions(Autodesk.Revit.DB.ImagePlacementOptions ipo) { InitImagePlacementOptions(ipo); }