#include <CGAL/QP_models.h>
#include <CGAL/QP_functions.h>
template <class Point_d>
struct Homogeneous_begin {
typedef typename Point_d::Homogeneous_const_iterator result_type;
result_type operator() (const Point_d& p) const {
return p.homogeneous_begin();
}
};
template <class Point_d, class RandomAccessIterator, class ET>
solve_convex_hull_containment_lp (const Point_d& p,
RandomAccessIterator begin,
RandomAccessIterator end, const ET& dummy)
{
typedef boost::transform_iterator
<Homogeneous_begin<Point_d>, RandomAccessIterator> A_it;
typedef typename Point_d::Homogeneous_const_iterator B_it;
typedef CGAL::Const_oneset_iterator<CGAL::Comparison_result> R_it;
typedef typename CGAL::Kernel_traits<Point_d>::Kernel::RT RT;
typedef CGAL::Const_oneset_iterator<RT> C_it;
typedef
Program;
Program lp (static_cast<int>(end-begin),
p.dimension()+1,
A_it (begin), B_it (p.homogeneous_begin()),
R_it (CGAL::EQUAL), C_it (0));
}
An object of class Nonnegative_linear_program_from_iterators describes a linear program of the form.
Definition QP_models.h:314
An object of class Quadratic_program_solution represents the solution of a linear or convex quadratic...
Definition QP_solution.h:65
Quadratic_program_solution< ET > solve_nonnegative_linear_program(const NonnegativeLinearProgram &lp, const ET &, const Quadratic_program_options &options=Quadratic_program_options())
This function solves a nonnegative linear program, using some exact Integral Domain ET for its comput...