public static void CreateDetailPlot() { Document doc = Application.DocumentManager.MdiActiveDocument; Editor editor = doc.Editor; List <string> keywords = new List <string>(); List <DetailPlotMaster> masters = DataService.Current.GetStore <HousingDocumentStore>(doc.Name).GetManager <DetailPlotMasterManager>().ManagedObjects; foreach (DetailPlotMaster master in masters) { keywords.Add(master.PlotTypeName); } string blockName = editor.PromptForKeywords("Please select plot master:", keywords.ToArray()); if (string.IsNullOrEmpty(blockName)) { return; } Point3d?basePoint = editor.PromptForPosition("Please select base point: "); if (!basePoint.HasValue) { return; } string plotId = editor.PromptForString("Please enter plot name:"); if (string.IsNullOrEmpty(plotId)) { return; } using (Transaction trans = doc.TransactionManager.StartTransaction()) { DetailPlotMaster dpm = masters.First(m => m.PlotTypeName.Equals(blockName)); //BlockDrawingObject newPlotMaster = BlockDrawingObject.Create(doc.Database, blockName); DetailPlot.Create(doc, dpm, basePoint.Value, plotId); trans.Commit(); } }
public static void CreateDetailPlotMaster() { Document doc = Application.DocumentManager.MdiActiveDocument; Editor editor = doc.Editor; string blockName = editor.PromptForString("Please enter plot type name:"); if (string.IsNullOrEmpty(blockName)) { return; } using (Transaction trans = doc.TransactionManager.StartTransaction()) { DetailPlotMaster newPlotMaster = DetailPlotMaster.Create(doc, blockName); trans.Commit(); } doc.SendStringToExecute($"-bedit {blockName}\n", true, false, false); }