Example: Cartesian Heart More...
Public Member Functions | |
CartesianHeart (const Options &) | |
Actual model. More... | |
CartesianHeart (bool share, CartesianHeart &p) | |
Constructor for cloning p. More... | |
virtual Space * | copy (bool share) |
Copy during cloning. More... | |
virtual void | constrain (const Space &_b) |
Add constraints to current model to get next solution (not too close) More... | |
virtual void | print (std::ostream &os) const |
Print solution coordinates. More... | |
![]() | |
ScriptBase (void) | |
Default constructor. More... | |
ScriptBase (bool share, ScriptBase &e) | |
Constructor used for cloning. More... | |
virtual void | compare (const Space &, std::ostream &os) const |
Compare with s. More... | |
Protected Attributes | |
FloatVarArray | f |
The numbers. More... | |
FloatNum | step |
Minimum distance between two solutions. More... | |
Related Functions | |
(Note that these are not member functions.) | |
int | main (int argc, char *argv[]) |
Main-function. More... | |
Additional Inherited Members | |
![]() | |
static std::ostream & | select_ostream (const char *name, std::ofstream &ofs) |
Choose output stream according to name. More... | |
template<class Script , template< class > class Engine, class Options > | |
static void | run (const Options &opt, Script *s=NULL) |
Example: Cartesian Heart
There are many mathematical curves that produce heart shapes. With a good solving effort, coordinates of a filled heart shape can be computed by solving the cartesian equation:
By setting and
, it yields to the equation:
To get reasonable interval starting sizes, and
are restricted to
.
Definition at line 67 of file cartesian-heart.cpp.
|
inline |
Actual model.
Definition at line 75 of file cartesian-heart.cpp.
|
inline |
Constructor for cloning p.
Definition at line 85 of file cartesian-heart.cpp.
|
inlinevirtual |
Copy during cloning.
Definition at line 90 of file cartesian-heart.cpp.
|
inlinevirtual |
Add constraints to current model to get next solution (not too close)
Definition at line 94 of file cartesian-heart.cpp.
|
inlinevirtual |
Print solution coordinates.
Reimplemented from Gecode::Driver::ScriptBase< BaseSpace >.
Definition at line 102 of file cartesian-heart.cpp.
|
related |
Main-function.
Definition at line 112 of file cartesian-heart.cpp.
|
protected |
The numbers.
Definition at line 70 of file cartesian-heart.cpp.
|
protected |
Minimum distance between two solutions.
Definition at line 72 of file cartesian-heart.cpp.