LineSegment class that represents a line segment using two arbitrary endpoints.
Should the constructor throw if it is passed two approximately equal endpoints? Obviously this would require some arbitrary floating point comparison. For example, test the Euclidean distance between the endpoints is less than ε.
An advantage is users aren’t going to get nonsense answers to certain questions if they construct a
LineSegment with floating point noise, or two points that “should” be equal but diverged due to error in floating point calculations. For example, it would otherwise be dangerous if the user asked the direction a line segment was pointed.
A disadvantage is that the class now needs to try to encapsulate and maintain this requirement on the state of the two endpoints. Moving an endpoint of the
LineSegment would have the potential to throw.
PolyLine class that uses these
LineSegment under the hood. If the user wants to insert a new point in the
PolyLine it could throw if that point is within ε of another point. Would a
SafeInsert need to delete all nearby points? Could users tolerate a
SafeInsert that potentially reduced the size of their PolyLine? Even deleting a point could throw, because it could bring together two approximately equal points.
The alternative to throwing in the constructors is to skip validation, and rely on users to call a Douglas-Peucker or related algorithm if there is risk their
PolyLine data would provide unreasonable answers. Users would provide their own ε when they used this function.
Is anyone familiar with existing implementations of
PolyLine classes that prefer one approach to the other?
✓ Extra quality
ExtraProxies brings the best proxy quality for you with our private and reliable proxies
✓ Extra anonymity
Top level of anonymity and 100% safe proxies – this is what you get with every proxy package
✓ Extra speed
1,ooo mb/s proxy servers speed – we are way better than others – just enjoy our proxies!
USA proxy location
We offer premium quality USA private proxies – the most essential proxies you can ever want from USA
Our proxies have TOP level of anonymity + Elite quality, so you are always safe and secure with your proxies
Use your proxies as much as you want – we have no limits for data transfer and bandwidth, unlimited usage!
Superb fast proxy servers with 1,000 mb/s speed – sit back and enjoy your lightning fast private proxies!
99,9% servers uptime
Alive and working proxies all the time – we are taking care of our servers so you can use them without any problems
No usage restrictions
You have freedom to use your proxies with every software, browser or website you want without restrictions
Perfect for SEO
We are 100% friendly with all SEO tasks as well as internet marketing – feel the power with our proxies
Buy more proxies and get better price – we offer various proxy packages with great deals and discounts
We are working 24/7 to bring the best proxy experience for you – we are glad to help and assist you!