예제 #1
0
 private void createRouter()
 {
     if (router != null)
     {
         return;
     }
     router = new ParallelEdgeRouter();
 }
        /// <summary>
        /// Setup default values for various configuration parameters.
        /// </summary>
        public ParallelEdgeRouterConfig()
        {
            var router = new ParallelEdgeRouter();

            ScopeItem = EnumScope.ScopeAllEdges;
            UseSelectedEdgesAsMasterItem = false;
            ConsiderEdgeDirectionItem    = router.DirectedMode;
            UseAdaptiveLineDistanceItem  = router.AdaptiveLineDistances;
            LineDistanceItem             = (int)router.LineDistance;
            JoinEndsItem     = router.JoinEnds;
            JoinDistanceItem = router.AbsJoinEndDistance;
        }
        /// <inheritdoc />
        protected override ILayoutAlgorithm CreateConfiguredLayout(GraphControl graphControl)
        {
            var router = new ParallelEdgeRouter();

            router.AdjustLeadingEdge     = false;
            router.DirectedMode          = ConsiderEdgeDirectionItem;
            router.AdaptiveLineDistances = UseAdaptiveLineDistanceItem;
            router.LineDistance          = LineDistanceItem;
            router.JoinEnds           = JoinEndsItem;
            router.AbsJoinEndDistance = JoinDistanceItem;

            return(router);
        }