On Saturday 03 July 2010 10:03:32 Taco Hoekwater wrote:
> On 07/02/2010 07:01 PM, Marco wrote:
> > Hi,
> > 
> > two arbitrary paths are given. A small path and a larger path, both
> > cycled. How to find out if the smaller path lies completely »inside« the
> > larger path?
> 
> That is hard. The main problem is the word 'arbitrary'. An arbitrary
> path does not even have to enclose anything:
> 
>    path p; p = origin--(100,100)--cycle;
> 
> > If this is too complicated, it might help if I can find out if a given
> > point lies inside a given cycled path.
> 
> Even this is fairly tricky. Some important questions are:
> 
> * do your arbitrary paths selfintersect?
> * are your arbitrary paths convex or concave?
> * is a point *on* the path in or out?
> * do you want to use nonzero or even-odd filling rules?
> 
> Best wishes,
> Taco

OK, this is off-topic (and not very useful as an answer)...
but is something to think about:

``posito tendendum esse a puncto ad punctum, licet nihil ultra iter 
determinat, via eligetur maxime facilis seu brevissima;''

Leibniz: De rerum originatione radicali, 1697

``suppose that we are to go from one point to another, without being directed 
to follow a particular path, the path chosen will be the easiest or the 
shortest one;''


So, in a Cartesian space, if the energy cost of a kink is low, than
>    path p; p := origin--(100,100)--cycle;
should be a straight line running back on itself.
Indeed, this is what metapost produces.

Now try p := origin..(100,100)..cycle;

Alan
___________________________________________________________________________________
If your question is of interest to others as well, please add an entry to the 
Wiki!

maillist : ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context
webpage  : http://www.pragma-ade.nl / http://tex.aanhet.net
archive  : http://foundry.supelec.fr/projects/contextrev/
wiki     : http://contextgarden.net
___________________________________________________________________________________

Reply via email to