private void задатьКонфигурациюТоннеляToolStripMenuItem_Click(object sender, EventArgs e)
        {
            try
            {
                // TODO: remove hardcode for PB size
                tunnelPictureBox.Width  = 1100;
                tunnelPictureBox.Height = 400;
                EngineConfiguration     = ModelingEngineConfiguration.ReadFromFile(@"C:\Users\Lera\Desktop\MultiagentModelingSystem\src\engineConfig.json");
                var sceneRenderer = new MultiAgentSceneRenderer(new PictureBoxDrawWrapper(tunnelPictureBox), EngineConfiguration.DrawingSceneConfiguration);
                Engine = new MultiagentModelingEngine.MultiagentModelingEngine(EngineConfiguration, sceneRenderer);
                Engine.InitializeMultiAgentScene();

                /* var openFileDialog = new OpenFileDialog();
                 * openFileDialog.Filter = "json files (*.json)|*.json";
                 * if (openFileDialog.ShowDialog() == DialogResult.OK)
                 * {
                 *   EngineConfiguration = ModelingEngineConfiguration.ReadFromFile(openFileDialog.FileName);
                 *   var sceneRenderer = new MultiAgentSceneRenderer(new PictureBoxDrawWrapper(tunnelPictureBox), EngineConfiguration.DrawingSceneConfiguration);
                 *   Engine = new MultiagentModelingEngine.MultiagentModelingEngine(EngineConfiguration, sceneRenderer);
                 *   Engine.InitializeMultiAgentScene();
                 * } */
            }
            catch (Exception exception)
            {
                MessageBox.Show(exception.Message);
            }
        }
 public MultiagentModelingEngine(ModelingEngineConfiguration configuration, ISceneRenderer sceneRenderer)
 {
     Configuration = configuration ?? throw new ArgumentNullException($"{configuration}");
     SceneRenderer = sceneRenderer ?? throw new ArgumentNullException($"{sceneRenderer}");
 }