Skip to Content.
Sympa Menu

cgal-discuss - [cgal-discuss] Using ranges in point set processing?

Subject: CGAL users discussion list

List archive

[cgal-discuss] Using ranges in point set processing?


Chronological Thread 
  • From: Simon Giraudot <>
  • To:
  • Subject: [cgal-discuss] Using ranges in point set processing?
  • Date: Tue, 3 May 2016 14:26:45 +0200
  • Authentication-results: mail2-smtp-roc.national.inria.fr; spf=None ; spf=None ; spf=None
  • Ironport-phdr: 9a23:G9jvrhK3xRXkiMY0ddmcpTZWNBhigK39O0sv0rFitYgULfzxwZ3uMQTl6Ol3ixeRBMOAu6MC07Kd6PiocFdDyKjCmUhKSIZLWR4BhJdetC0bK+nBN3fGKuX3ZTcxBsVIWQwt1Xi6NU9IBJS2PAWK8TWM5DIfUi/yKRBybrysXNWC3oLvj6vpo9X6WEZhunmUWftKNhK4rAHc5IE9oLBJDeIP8CbPuWZCYO9MxGlldhq5lhf44dqsrtY4q3wD88QIrJEbFP2mN+RlFf0LRAghZms67cmuuRjYRhaU/VMdVH8Xm1xGGVvr9hb/C6zwtyz8/sV8wiCHMcrqBeQvWDGl6eFkSQXhlSsAKxY2/WbSh9BqnaxSqw6mvQ05yInRNtLGfMFid7/QKItJDVFKWdxcAnEZDw==

Hi everybody,


The CGAL Point Set Processing package provides the user with many algorithms, most of them using the following API:

template <typename Iterator, [...]>
void algorithm (Iterator begin, Iterator end, [...] )

The first 2 arguments are iterators that indicate where to begin and where to stop and, in my opinion, could be easily replaced by anything following a Range concept ( http://doc.cgal.org/4.7/Circulator/classRange.html ). It seems to me that calling these functions always comes to doing "algorithm(range.begin(), range.end(), ...)", so having a range-based API "algorithm (range, ...)" would be simpler and equally generic.

Is there a good reason (other than historical) why this is not how the API of Point Set Processing works? If not, do you think it would be reasonable to change it this way? (provided we also keep the iterator-based version for backward compatibility)


Thanks,

--
Simon Giraudot, PhD
R&D Engineer
GeometryFactory - http://geometryfactory.com/




Archive powered by MHonArc 2.6.18.

Top of Page