public bool Intersected(Edge v_edge) { HalfLine v_hafl_s_e = new HalfLine(m_pointStart, m_pointEnd); HalfLine v_hafl_e_s = new HalfLine(m_pointEnd, m_pointStart); if (v_hafl_s_e.Intersected(v_edge) && v_hafl_e_s.Intersected(v_edge)) { return(true); } else { return(false); } }
public bool Contain(Point2D v_point) { List<Edge> v_list_boundaryEdge = GetBoundaryPolygon(); for (int i = 0; i < m_list_node.Count; i++) { int v_int_dem = 0; HalfLine v_hafl = new HalfLine(m_list_node[i], v_point); foreach (var item in v_list_boundaryEdge) { if (!v_hafl.Intersected(item)) { v_int_dem++; } } if(v_int_dem == v_list_boundaryEdge.Count) { return false; } } return true; }
public bool Contain(Point2D v_point) { List <Edge> v_list_boundaryEdge = GetBoundaryPolygon(); for (int i = 0; i < m_list_node.Count; i++) { int v_int_dem = 0; HalfLine v_hafl = new HalfLine(m_list_node[i], v_point); foreach (var item in v_list_boundaryEdge) { if (!v_hafl.Intersected(item)) { v_int_dem++; } } if (v_int_dem == v_list_boundaryEdge.Count) { return(false); } } return(true); }
public bool Intersected(Edge v_edge) { HalfLine v_hafl_s_e = new HalfLine(m_pointStart, m_pointEnd); HalfLine v_hafl_e_s = new HalfLine(m_pointEnd, m_pointStart); if (v_hafl_s_e.Intersected(v_edge) && v_hafl_e_s.Intersected(v_edge)) { return true; } else return false; }