Hello,

I am Aditya Mohan, currently pursuing my undergrad in BITS Goa, India. I have contributed to Boost::Geometry by providing examples for the documentation of the arithmetic operations - namely the dot and the cross product. I look forward to continue contributing to Boost::Geometry as part of GSOC 2020. I came across the ideas list released for this year, and Project 2 (Implement support for non-cartesian geometries in convex_hull) seems like something I can work on during GSOC 2020. I have a clarification that I hope you would help me out with. The previous mail in this thread said the Strategies to be used are for Coordinate System (CS) specifically. Is this something that the Project 2 is looking to address for the Convex Hull algorithm (in order to generalize it)? Also, I'd like to know about the procedure of allotment of a mentor to guide me through this process.

Thank You,
Aditya Mohan.
 

On Tue, 18 Feb, 2020, 8:26 PM Vissarion Fisikopoulos via Geometry, <geometry@lists.boost.org> wrote:
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