Пример #1
0
        private void ERGraph_Constructor()
        {
            erg_showEdgeArrows.IsChecked    = true;
            erg_BundleEdgeRoutingParameters = (BundleEdgeRoutingParameters)erg_Area.AlgorithmFactory.CreateEdgeRoutingParameters(EdgeRoutingAlgorithmTypeEnum.Bundling);
            erg_SimpleERParameters          = (SimpleERParameters)erg_Area.AlgorithmFactory.CreateEdgeRoutingParameters(EdgeRoutingAlgorithmTypeEnum.SimpleER);
            erg_PFERParameters = (PathFinderEdgeRoutingParameters)erg_Area.AlgorithmFactory.CreateEdgeRoutingParameters(EdgeRoutingAlgorithmTypeEnum.PathFinder);

            erg_pfprm_formula.ItemsSource   = Enum.GetValues(typeof(PathFindAlgorithm)).Cast <PathFindAlgorithm>();
            erg_pfprm_formula.SelectedIndex = 0;

            erg_but_randomgraph.Click       += erg_but_randomgraph_Click;
            erg_but_relayout.Click          += erg_but_relayout_Click;
            erg_useExternalERAlgo.Checked   += erg_useExternalERAlgo_Checked;
            erg_useExternalERAlgo.Unchecked += erg_useExternalERAlgo_Checked;
            erg_dashstyle.ItemsSource        = Enum.GetValues(typeof(EdgeDashStyle)).Cast <EdgeDashStyle>();
            erg_dashstyle.SelectedIndex      = 0;
            erg_dashstyle.SelectionChanged  += erg_dashstyle_SelectionChanged;
            erg_eralgo.ItemsSource           = Enum.GetValues(typeof(EdgeRoutingAlgorithmTypeEnum)).Cast <EdgeRoutingAlgorithmTypeEnum>();
            erg_eralgo.SelectedIndex         = 0;
            erg_eralgo.SelectionChanged     += erg_eralgo_SelectionChanged;
            erg_prmsbox.Visibility           = System.Windows.Visibility.Collapsed;
            erg_recalculate.Checked         += erg_recalculate_Checked;
            erg_recalculate.Unchecked       += erg_recalculate_Checked;
            erg_randomizeAll.Click          += erg_randomizeAll_Click;
            erg_showEdgeArrows.Checked      += erg_showEdgeArrows_Checked;
            erg_showEdgeArrows.Unchecked    += erg_showEdgeArrows_Checked;
            erg_showEdgeLabels.Checked      += erg_showEdgeLabels_Checked;
            erg_showEdgeLabels.Unchecked    += erg_showEdgeLabels_Checked;
            erg_randomizeArrows.Click       += erg_randomizeArrows_Click;
            erg_useCurves.Checked           += erg_useCurves_Checked;
            erg_useCurves.Unchecked         += erg_useCurves_Checked;
            Zoombox.SetViewFinderVisibility(erg_zoomctrl, System.Windows.Visibility.Visible);

            erg_Area.UseNativeObjectArrange = true;
        }
Пример #2
0
        public EdgeRoutingGraph()
        {
            InitializeComponent();
            DataContext        = this;
            _logicCore         = new LogicCoreExample();
            erg_Area.LogicCore = _logicCore;
            erg_Area.LogicCore.ParallelEdgeDistance = 20;
            erg_Area.EdgeLabelFactory = new DefaultEdgelabelFactory();

            erg_showEdgeArrows.IsChecked = true;
            BundleEdgeRoutingParameters  = (BundleEdgeRoutingParameters)_logicCore.AlgorithmFactory.CreateEdgeRoutingParameters(EdgeRoutingAlgorithmTypeEnum.Bundling);
            SimpleErParameters           = (SimpleERParameters)_logicCore.AlgorithmFactory.CreateEdgeRoutingParameters(EdgeRoutingAlgorithmTypeEnum.SimpleER);
            PfErParameters = (PathFinderEdgeRoutingParameters)_logicCore.AlgorithmFactory.CreateEdgeRoutingParameters(EdgeRoutingAlgorithmTypeEnum.PathFinder);

            erg_pfprm_formula.ItemsSource   = Enum.GetValues(typeof(PathFindAlgorithm)).Cast <PathFindAlgorithm>();
            erg_pfprm_formula.SelectedIndex = 0;

            erg_but_randomgraph.Click         += erg_but_randomgraph_Click;
            erg_but_relayout.Click            += erg_but_relayout_Click;
            erg_useExternalERAlgo.Checked     += erg_useExternalERAlgo_Checked;
            erg_useExternalERAlgo.Unchecked   += erg_useExternalERAlgo_Checked;
            erg_dashstyle.ItemsSource          = Enum.GetValues(typeof(EdgeDashStyle)).Cast <EdgeDashStyle>();
            erg_dashstyle.SelectedIndex        = 0;
            erg_dashstyle.SelectionChanged    += erg_dashstyle_SelectionChanged;
            erg_eralgo.ItemsSource             = Enum.GetValues(typeof(EdgeRoutingAlgorithmTypeEnum)).Cast <EdgeRoutingAlgorithmTypeEnum>();
            erg_eralgo.SelectedIndex           = 0;
            erg_eralgo.SelectionChanged       += erg_eralgo_SelectionChanged;
            erg_prmsbox.Visibility             = Visibility.Collapsed;
            erg_recalculate.Checked           += erg_recalculate_Checked;
            erg_recalculate.Unchecked         += erg_recalculate_Checked;
            erg_randomizeAll.Click            += erg_randomizeAll_Click;
            erg_showEdgeArrows.Checked        += erg_showEdgeArrows_Checked;
            erg_showEdgeArrows.Unchecked      += erg_showEdgeArrows_Checked;
            erg_showEdgeLabels.Checked        += erg_showEdgeLabels_Checked;
            erg_showEdgeLabels.Unchecked      += erg_showEdgeLabels_Checked;
            erg_alignEdgeLabels.Checked       += erg_alignEdgeLabels_Checked;
            erg_alignEdgeLabels.Unchecked     += erg_alignEdgeLabels_Checked;
            erg_enableParallelEdges.Checked   += erg_enableParallelEdges_Checked;
            erg_enableParallelEdges.Unchecked += erg_enableParallelEdges_Checked;


            erg_randomizeArrows.Click += erg_randomizeArrows_Click;
            erg_useCurves.Checked     += erg_useCurves_Checked;
            erg_useCurves.Unchecked   += erg_useCurves_Checked;
            ZoomControl.SetViewFinderVisibility(erg_zoomctrl, Visibility.Visible);
        }
Пример #3
0
 private void gg_eralgo_SelectionChanged(object sender, SelectionChangedEventArgs e)
 {
     gg_Area.LogicCore.DefaultEdgeRoutingAlgorithm = (EdgeRoutingAlgorithmTypeEnum)gg_eralgo.SelectedItem;
     if ((EdgeRoutingAlgorithmTypeEnum)gg_eralgo.SelectedItem == EdgeRoutingAlgorithmTypeEnum.Bundling)
     {
         BundleEdgeRoutingParameters prm = new BundleEdgeRoutingParameters();
         gg_Area.LogicCore.DefaultEdgeRoutingAlgorithmParams = prm;
         prm.Iterations     = 200;
         prm.SpringConstant = 5;
         prm.Threshold      = .1f;
         gg_Area.LogicCore.EdgeCurvingEnabled = true;
     }
     else
     {
         gg_Area.LogicCore.EdgeCurvingEnabled = false;
     }
 }
Пример #4
0
        public EdgeRoutingGraph()
        {
            InitializeComponent();
            DataContext = this;
            _logicCore = new LogicCoreExample();
            erg_Area.LogicCore = _logicCore;
            erg_Area.LogicCore.ParallelEdgeDistance = 20;

            erg_showEdgeArrows.IsChecked = true;
            BundleEdgeRoutingParameters = (BundleEdgeRoutingParameters)_logicCore.AlgorithmFactory.CreateEdgeRoutingParameters(EdgeRoutingAlgorithmTypeEnum.Bundling);
            SimpleErParameters = (SimpleERParameters)_logicCore.AlgorithmFactory.CreateEdgeRoutingParameters(EdgeRoutingAlgorithmTypeEnum.SimpleER);
            PfErParameters = (PathFinderEdgeRoutingParameters)_logicCore.AlgorithmFactory.CreateEdgeRoutingParameters(EdgeRoutingAlgorithmTypeEnum.PathFinder);

            erg_pfprm_formula.ItemsSource = Enum.GetValues(typeof(PathFindAlgorithm)).Cast<PathFindAlgorithm>();
            erg_pfprm_formula.SelectedIndex = 0;

            erg_but_randomgraph.Click += erg_but_randomgraph_Click;
            erg_but_relayout.Click += erg_but_relayout_Click;
            erg_useExternalERAlgo.Checked += erg_useExternalERAlgo_Checked;
            erg_useExternalERAlgo.Unchecked += erg_useExternalERAlgo_Checked;
            erg_dashstyle.ItemsSource = Enum.GetValues(typeof(EdgeDashStyle)).Cast<EdgeDashStyle>();
            erg_dashstyle.SelectedIndex = 0;
            erg_dashstyle.SelectionChanged += erg_dashstyle_SelectionChanged;
            erg_eralgo.ItemsSource = Enum.GetValues(typeof(EdgeRoutingAlgorithmTypeEnum)).Cast<EdgeRoutingAlgorithmTypeEnum>();
            erg_eralgo.SelectedIndex = 0;
            erg_eralgo.SelectionChanged += erg_eralgo_SelectionChanged;
            erg_prmsbox.Visibility = Visibility.Collapsed;
            erg_recalculate.Checked += erg_recalculate_Checked;
            erg_recalculate.Unchecked += erg_recalculate_Checked;
            erg_randomizeAll.Click += erg_randomizeAll_Click;
            erg_showEdgeArrows.Checked += erg_showEdgeArrows_Checked;
            erg_showEdgeArrows.Unchecked += erg_showEdgeArrows_Checked;
            erg_showEdgeLabels.Checked += erg_showEdgeLabels_Checked;
            erg_showEdgeLabels.Unchecked += erg_showEdgeLabels_Checked;
            erg_alignEdgeLabels.Checked += erg_alignEdgeLabels_Checked;
            erg_alignEdgeLabels.Unchecked += erg_alignEdgeLabels_Checked;
            erg_enableParallelEdges.Checked += erg_enableParallelEdges_Checked;
            erg_enableParallelEdges.Unchecked += erg_enableParallelEdges_Checked;


            erg_randomizeArrows.Click += erg_randomizeArrows_Click;
            erg_useCurves.Checked += erg_useCurves_Checked;
            erg_useCurves.Unchecked += erg_useCurves_Checked;
            ZoomControl.SetViewFinderVisibility(erg_zoomctrl, Visibility.Visible);
        }
Пример #5
0
        public void SetDefaultEdgeRoutingAlgorithm(EdgeRoutingAlgorithmTypeEnum algorithm)
        {
            this.DefaultEdgeRoutingAlgorithm = algorithm;
            if (this.DefaultEdgeRoutingAlgorithm == EdgeRoutingAlgorithmTypeEnum.Bundling)
            {
                BundleEdgeRoutingParameters prm = new BundleEdgeRoutingParameters();
                this.DefaultEdgeRoutingAlgorithmParams = prm;
                prm.Iterations          = 200;
                prm.SpringConstant      = 5;
                prm.Threshold           = .1f;
                this.EdgeCurvingEnabled = true;
            }
            else
            {
                this.EdgeCurvingEnabled = false;
            }

            this.NotifyParent();
        }