public PanelBlRefExport(BlockReference blRef, PanelBtrExport panelBtrExport) { IdBlRefAkr = blRef.Id; Position = blRef.Position; PanelBtrExport = panelBtrExport; Transform = blRef.BlockTransform; Extents = blRef.GeometricExtents; }
public void DefinePanels(List <Facade> facades) { // определение экспортируемых панелей - в файле АКР Dictionary <ObjectId, PanelBtrExport> dictPanelsBtrExport = new Dictionary <ObjectId, PanelBtrExport>(); //RTreeLib.RTree<Facade> treeFacades = new RTreeLib.RTree<Facade>(); //facades.ForEach(f => // { // try // { // treeFacades.Add(ColorArea.GetRectangleRTree(f.Extents), f); // } // catch { } // }); ProgressMeter progress = new ProgressMeter(); progress.SetLimit(Service.SelectPanels.IdsBlRefPanelAr.Count); progress.Start("Определение панелей в файле АКР"); foreach (var idBlRefPanel in Service.SelectPanels.IdsBlRefPanelAr) { progress.MeterProgress(); if (HostApplicationServices.Current.UserBreak()) { throw new System.Exception("Отменено пользователем."); } using (var blRef = idBlRefPanel.Open(OpenMode.ForRead, false, true) as BlockReference) { // панель определения блока PanelBtrExport panelBtrExport; if (!dictPanelsBtrExport.TryGetValue(blRef.BlockTableRecord, out panelBtrExport)) { panelBtrExport = new PanelBtrExport(blRef.BlockTableRecord, this); dictPanelsBtrExport.Add(blRef.BlockTableRecord, panelBtrExport); } panelBtrExport.Def(); // панель вхождения блока PanelBlRefExport panelBlRefExport = new PanelBlRefExport(blRef, panelBtrExport); panelBtrExport.Panels.Add(panelBlRefExport); //// определение фасада панели //panelBlRefExport.Facade = defFacadeForPanel(treeFacades, blRef, panelBtrExport, panelBlRefExport); } } PanelsBtrExport = dictPanelsBtrExport.Values.ToList(); progress.Stop(); }
public ConvertCaption(PanelBtrExport panelBtr) { this.panelBtr = panelBtr; }
public ContourPanel(PanelBtrExport panelBtr) { this.panelBtr = panelBtr; }