Exemple #1
0
        public static void ConfigureParamsView(ParamsView view)
        {
            Label sizeLabel = null;

            void refreshSize() => sizeLabel.Text = Acad.GetSize(view.GetParams <Disk3DTechProcess>().ProcessingArea);

            view.BindingSource.DataSourceChanged += (s, e) => refreshSize();

            view.AddMachine(CAM.MachineType.Donatoni, CAM.MachineType.ScemaLogic)
            .AddMaterial()
            .AddParam(nameof(Thickness))
            .AddIndent()
            .AddTool()
            .AddParam(nameof(Frequency))
            .AddParam(nameof(PenetrationFeed))
            .AddIndent()
            .AddAcadObject(allowedTypes: $"{AcadObjectNames.Surface},{AcadObjectNames.Region}", afterSelect: (ids) => refreshSize())
            .AddText("Размеры", p => sizeLabel = p)
            .AddParam(nameof(Angle), "Угол")
            .AddParam(nameof(IsExactlyBegin), "Начало точно")
            .AddParam(nameof(IsExactlyEnd), "Конец точно")
            .AddParam(nameof(ZSafety))
            .AddParam(nameof(IsA90), "Угол A = 90")
            .AddParam(nameof(OriginCellNumber), "Ячейка начала координат");
        }
 public void BindData(Disk3DTechProcess data)
 {
     disk3DTechProcessBindingSource.DataSource = _techProcess = data;
     tbTool.Text    = _techProcess.Tool?.ToString();
     tbObjects.Text = _techProcess.ProcessingArea?.GetDesc();
     lbSize.Text    = Acad.GetSize(_techProcess.ProcessingArea);
 }
        private void bObjects_Click(object sender, EventArgs e)
        {
            Acad.SelectObjectIds();
            Interaction.SetActiveDocFocus();
            var ids = Interaction.GetSelection("\nВыберите объекты", $"{AcadObjectNames.Surface},{AcadObjectNames.Region}");

            if (ids.Length == 0)
            {
                return;
            }
            _techProcess.ProcessingArea = AcadObject.CreateList(ids);
            tbObjects.Text = _techProcess.ProcessingArea.GetDesc();
            lbSize.Text    = Acad.GetSize(_techProcess.ProcessingArea);
        }