예제 #1
0
 /// <summary>
 /// Update the IM with the contribution for the EdgeStubs around the node.
 /// </summary>
 /// <param name="im"></param>
 public void UpdateIM(IntersectionMatrix im)
 {
     for (IEnumerator it = GetEnumerator(); it.MoveNext();)
     {
         EdgeEndBundle esb = (EdgeEndBundle)it.Current;
         esb.UpdateIM(im);
     }
 }
예제 #2
0
 /// <summary>
 /// Insert a EdgeEnd in order in the list.
 /// If there is an existing EdgeStubBundle which is parallel, the EdgeEnd is
 /// added to the bundle.  Otherwise, a new EdgeEndBundle is created
 /// to contain the EdgeEnd.
 /// </summary>
 /// <param name="e"></param>
 public override void Insert(EdgeEnd e)
 {
     EdgeEndBundle eb = (EdgeEndBundle) edgeMap[e];
     if (eb == null)
     {
         eb = new EdgeEndBundle(e);
         InsertEdgeEnd(e, eb);
     }
     else
         eb.Insert(e);
 }
예제 #3
0
        /// <summary>
        /// Insert a EdgeEnd in order in the list.
        /// If there is an existing EdgeStubBundle which is parallel, the EdgeEnd is
        /// added to the bundle.  Otherwise, a new EdgeEndBundle is created
        /// to contain the EdgeEnd.
        /// </summary>
        /// <param name="e"></param>
        public override void Insert(EdgeEnd e)
        {
            EdgeEndBundle eb = (EdgeEndBundle)edgeMap[e];

            if (eb == null)
            {
                eb = new EdgeEndBundle(e);
                InsertEdgeEnd(e, eb);
            }
            else
            {
                eb.Insert(e);
            }
        }