コード例 #1
0
        public DSOptimizeWindow(Design design, DSOptimizerComponent component)
        {
            MyComponent = component;
            InitializeComponent();

            this.StepperTab.Content = new StepperWindow(new StepperVM(design, component));
            this.RadicalWindow      = new RadicalWindow(new RadicalVM(design, component));
            this.RadicalTab.Content = this.RadicalWindow;
        }
コード例 #2
0
        //[STAThread]
        public override Grasshopper.GUI.Canvas.GH_ObjectResponse RespondToMouseDoubleClick(Grasshopper.GUI.Canvas.GH_Canvas sender, Grasshopper.GUI.GH_CanvasMouseEvent e)
        {
            //Prevent opening of multiple windows at once
            if (!MyComponent.IsWindowOpen && MyComponent.InputsSatisfied)
            {
                MyComponent.IsWindowOpen = true;

                Design design = new Design(MyComponent);

                Thread viewerThread = new Thread(delegate()
                {
                    RadicalVM radVM = new RadicalVM(design, this.MyComponent);
                    Window viewer   = new RadicalWindow(radVM);
                    viewer.Show();
                    System.Windows.Threading.Dispatcher.Run();
                });

                viewerThread.SetApartmentState(ApartmentState.STA); // needs to be STA or throws exception
                viewerThread.Start();
            }
            return(base.RespondToMouseDoubleClick(sender, e));
        }
コード例 #3
0
        //OPTIMIZE for Radical (Should be moved to RadicalVM)
        //Runs the optimizer and stores the objective data
        public void Optimize(RadicalWindow radicalWindow)
        {
            Optimizer opt = new Optimizer(this, radicalWindow);

            opt.RunOptimization();
        }
コード例 #4
0
 //CONSTRUCTOR
 public ConstraintControl(ConstVM const_vm, RadicalWindow window) : base(const_vm)
 {
     MyWindow = window;
     InitializeComponent();
     this.MyCheckBox.IsChecked = true;
 }