Ejemplo n.º 1
0
 internal virtual int ErrorCoincident()
 {
     // two segments coincide.
     m_b_intersection_detected = true;
     System.Diagnostics.Debug.Assert((m_b_is_simple));
     com.epl.geometry.NonSimpleResult.Reason reason = com.epl.geometry.NonSimpleResult.Reason.CrossOver;
     m_non_simple_result = new com.epl.geometry.NonSimpleResult(reason, m_vertex_1, m_vertex_2);
     return(-1);
 }
Ejemplo n.º 2
0
 internal virtual int ErrorCracking()
 {
     // cracking error
     m_b_intersection_detected = true;
     if (m_b_is_simple)
     {
         // only report the reason in IsSimple. Do not do
         // that for regular cracking.
         com.epl.geometry.NonSimpleResult.Reason reason = com.epl.geometry.NonSimpleResult.Reason.Cracking;
         m_non_simple_result = new com.epl.geometry.NonSimpleResult(reason, m_vertex_1, m_vertex_2);
     }
     else
     {
         // reset cached data after detected intersection
         m_prev_1   = -1;
         m_prev_2   = -1;
         m_vertex_1 = -1;
         m_vertex_2 = -1;
     }
     return(-1);
 }
Ejemplo n.º 3
0
 internal virtual void Assign(com.epl.geometry.NonSimpleResult src)
 {
     m_reason       = src.m_reason;
     m_vertexIndex1 = src.m_vertexIndex1;
     m_vertexIndex2 = src.m_vertexIndex2;
 }
Ejemplo n.º 4
0
 internal NonSimpleResult(com.epl.geometry.NonSimpleResult.Reason reason, int index1, int index2)
 {
     m_reason       = reason;
     m_vertexIndex1 = index1;
     m_vertexIndex2 = index2;
 }
Ejemplo n.º 5
0
 public NonSimpleResult()
 {
     m_reason       = com.epl.geometry.NonSimpleResult.Reason.NotDetermined;
     m_vertexIndex1 = -1;
     m_vertexIndex2 = -1;
 }