Changes between Version 5 and Version 6 of SoC2011


Ignore:
Timestamp:
Feb 8, 2011, 9:26:35 PM (12 years ago)
Author:
Lucanus Simonson
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • SoC2011

    v5 v6  
    2525== Projects ==
    2626The following projects have been suggested by potential mentors. If the descriptions of these projects seem a little vague... Well, that's intentional We are looking for students to develop requirements for their proposals by doing initial background research on the topic, and interacting with the community on the mailing list to help identify expectations.
     27
     28=== Boost.Polygon edge, polyline and edge set concepts ===
     29The polygon library is missing an edge concept.  There is a lot of code in the library that operates on edges, but no interface that exposes those operations to the user.  Also, there are a number of "edge set" algorithms that are of interest, so in addition to edge concept the library also needs an "edge set" concept.  Operations on edge set include booleans (intersection, union) and connectivity extraction.  Generalizing these to map overlay of edge sets would allow a single generic algorithm to implement all of these operations similar to how polygon set operations are already implemented.  The addition of a polyline concept, of which polygon would be a refinement that restricts to closed cycle polylines, would allow polygons to interoperate with edge sets in a very natural and productive syntax.  This project would be a great opportunity to learn about concept based generic programming and type systems, how to design and implement generic algorithms and computational geometry in general.
    2730
    2831=== Boost.Python and !NumPy ===