コード例 #1
0
bool detect(vector<Triangle_3> &a, vector<Triangle_3> &b)
{
    std::vector<Box> boxes;
    triangles.clear();
    for ( Iterator i = a.begin(); i != a.end(); ++i)
        triangles.push_back(*i);
    for ( Iterator i = b.begin(); i != b.end(); ++i)
        triangles.push_back(*i);

    for(Iterator i = triangles.begin(); i!= triangles.end(); ++i)
        boxes.push_back( Box( i->bbox(), i));

    // Run the self intersection algorithm with all defaults
    CGAL::box_self_intersection_d( boxes.begin(), boxes.end(), report_inters);
   return true;
}
コード例 #2
0
ファイル: KeyEdge.cpp プロジェクト: EgoIncarnate/vpaint
void KeyEdge::triangulate_(double width, Time time, Triangles & out) const
{
    out.clear();
    if (exists(time))
        geometry()->triangulate(width, out);
}
コード例 #3
0
ファイル: EdgeCell.cpp プロジェクト: gitter-badger/vpaint
void EdgeCell::triangulate(Time /*time*/, Triangles & out)
{
    out.clear();
}
コード例 #4
0
ファイル: EdgeCell.cpp プロジェクト: gitter-badger/vpaint
void EdgeCell::triangulate(double /*width*/, Time /*time*/, Triangles & out)
{
    out.clear();
}