예제 #1
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="mc"></param>
 /// <param name="mco"></param>
 public virtual void ComputeOverlaps(MonotoneChain mc, MonotoneChainOverlapAction mco)
 {
     ComputeOverlaps(start, end, mc, mc.start, mc.end, mco);
 }
예제 #2
0
 /// <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)
 {
     mc1.GetLineSegment(start1, ref overlapSeg1);
     mc2.GetLineSegment(start2, ref overlapSeg2);
     Overlap(overlapSeg1, overlapSeg2);
 }
예제 #3
0
 /// <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)
 {
     mc.GetLineSegment(start, ref SelectedSegment);
     Select(SelectedSegment);
 }