コード例 #1
0
ファイル: Rectangle.cpp プロジェクト: sirmarcis/a9667backup
bool Rectangle::add_point(const Point2D& p){
    if(is_point_within(p)){
        Point2D currPnt;
        bool newPnt = true;
        for(int x = 0; x <m_points_contained.size(); x++){
            currPnt = m_points_contained[x];
            if(currPnt.x() == p.x() && currPnt.y() == p.y())
                newPnt = false;
        }
        if(newPnt){
            m_points_contained.push_back(p);
            return true;
        }
        else return false;
    }
    else return false;
}
コード例 #2
0
bool Rectangle::add_point(const Point2D& p)
{
    const std::vector<Point2D> & contained_points = points_contained();
    if(is_point_within(p))
    {
        for(unsigned int i=0; i<contained_points.size(); i++)
        {
            if(p.x()==contained_points[i].x() && p.y()==contained_points[i].y())
            {
                return false;
            }
            if(p.x()!=contained_points[i].x() && p.y()!=contained_points[i].y() && i==contained_points.size()-1)
            {
                setMPoints(p);
                return true;
            }
        }
        return false;
    }
    else
    {
        return false;
    }
}