/// <summary>
 /// This function can be overridden if the original chains are needed.
 /// </summary>
 /// <param name="mc1"></param>
 /// <param name="start1">The index of the start of the overlapping segment from mc1.</param>
 /// <param name="mc2"></param>
 /// <param name="start2">The index of the start of the overlapping segment from mc2.</param>
 public virtual void Overlap(MonotoneChain mc1, int start1, MonotoneChain mc2, int start2)
 {
     OverlapSeg1 = mc1.GetLineSegment(start1);
     OverlapSeg2 = mc2.GetLineSegment(start2);
     Overlap(OverlapSeg1, OverlapSeg2);
 }
Esempio n. 2
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="mc"></param>
 /// <param name="si"></param>
 public virtual void ComputeIntersections(MonotoneChain mc, SegmentIntersector si)
 {
     _mce.ComputeIntersectsForChain(_chainIndex, mc._mce, mc._chainIndex, si);
 }
Esempio n. 3
0
 /// <summary>
 /// 
 /// </summary>
 /// <param name="mc"></param>
 /// <param name="si"></param>
 public void ComputeIntersections(MonotoneChain mc, SegmentIntersector si)
 {
     this.mce.ComputeIntersectsForChain(chainIndex, mc.mce, mc.chainIndex, si);
 }
 /// <summary>
 /// This function can be overridden if the original chain is needed.
 /// </summary>
 /// <param name="mc"></param>
 /// <param name="start"></param>
 public virtual void Select(MonotoneChain mc, int start)
 {
     _selectedSegment = mc.GetLineSegment(start);
     Select(_selectedSegment);
 }