public Result Execute(ExternalCommandData commandData, ref string message, ElementSet elements) { Init(commandData); using (Transaction tr = new Transaction(doc, "Создание отверстий")) { UI.IntersectionsForm form = new UI.IntersectionsForm(this); if (form.DialogResult == System.Windows.Forms.DialogResult.OK) { tr.Start(); var intersections = form.Intersections.Cast <Intersection>().ToList(); if (form.DoMerge) { intersections = Intersection.AutoMerging(intersections, form.MergeTolerance); } PlaceOpeningFamilies(intersections); tr.Commit(); LoggingMachine.Show(); return(Result.Succeeded); } else { return(Result.Cancelled); } } }
public Result Execute(ExternalCommandData commandData, ref string message, ElementSet elements) { // Стандарт doc = commandData.Application.ActiveUIDocument.Document; if (!CheckDefaultSharedParameters()) { return(Result.Failed); } LoggingMachine.Reset(); List <FamilyInstance> allPlunts = GetPlunts(); if (allPlunts.Count < 1) { TaskDialog.Show("Ошибка", "Не найден ни один радиатор"); return(Result.Failed); } using (Transaction tr = new Transaction(doc, "Обновление радиаторов")) { tr.Start(); SetSpaces(allPlunts); tr.Commit(); tr.Start(); UpdatePluntData(allPlunts); tr.Commit(); tr.Start(); UpdatePluntGeometry(allPlunts); tr.Commit(); } LoggingMachine.Show(); return(Result.Succeeded); }