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); }
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); }
internal virtual void Assign(com.epl.geometry.NonSimpleResult src) { m_reason = src.m_reason; m_vertexIndex1 = src.m_vertexIndex1; m_vertexIndex2 = src.m_vertexIndex2; }
internal NonSimpleResult(com.epl.geometry.NonSimpleResult.Reason reason, int index1, int index2) { m_reason = reason; m_vertexIndex1 = index1; m_vertexIndex2 = index2; }
public NonSimpleResult() { m_reason = com.epl.geometry.NonSimpleResult.Reason.NotDetermined; m_vertexIndex1 = -1; m_vertexIndex2 = -1; }