Dear Digvijay,
Strategies should be used for Coordinate System (CS) specific
computations. That is, the algorithm should be CS generic and have a
strategy as a parameter. Whenever a CS computation is needed the
algorithms should call the strategy to compute it. For example if at
some point an algorithm needs to compute the length of a segment this
should be done using the strategies.
For convex hull this is not implemented, so it is not a good
introductory example.
Have a look e.g. at line_interpolate_point algorithm or
densify to see how this design is implemented.
I recommend to implement some (simple) concave hull
algorithm using boost.geometry's design but without strategies, only
for cartesian CS. Then try to figure out what part should be exported
to strategies (that could be done in GSOC if the student's proposal
is accepted).
Best,
Vissarion
On Sat, 15 Feb 2020 at 22:15, Digvijay Janartha via Geometry
<geometry@lists.boost.org> wrote:
>
> Hi,
>
> I wanted to ask what exactly we have to do in programming competency test for Project 1. It states that implement and test "Gift wrapping" Convex hull for MultiPoint Concept, so I need to design a new strategy for convex hull (strategy::convex_hull::gift_wrapping) or implement a new algorithm (convex_hull_gift_wrapping), and that too only for MultiPoint Concept? And also this algorithm should be implemented for cartesian coordinate system only, or any other systems also? Also I need to make a PR for this (with doxygen commands) or make a different repository for this? And at last, testing will include checking the code output with different existing algorithms? Thanks, in advance!
>
> Regards,
> Digvijay
> _______________________________________________
> Geometry mailing list
> Geometry@lists.boost.org
> https://lists.boost.org/mailman/listinfo.cgi/geometry
_______________________________________________
Geometry mailing list
Geometry@lists.boost.org
https://lists.boost.org/mailman/listinfo.cgi/geometry