<p dir="ltr">This representation ((x,y,z) _> bool) makes it very hard to find a point inside. Basically it does not give you any info: does the shape have area? What is it bounding box? Is it convex? Supposing x y and z are rationals (arbitrary precision), then all these questions are not computable. I suggest you use a different representation, such as a list of points for a polygon.</p>
<div class="gmail_quote">On Oct 29, 2015 10:13 AM, "Jonas Scholl" <<a href="mailto:anselm.scholl@tu-harburg.de">anselm.scholl@tu-harburg.de</a>> wrote:<br type="attribution"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><br>
-----BEGIN PGP SIGNED MESSAGE-----<br>
Hash: SHA256<br>
<br>
You could try to use a data structure like a kd-tree, which can find the<br>
nearest neighbours to your point quite efficient.<br>
<br>
On 10/29/2015 10:01 AM, martin wrote:<br>
> Hello all, > > I hope this is not a too silly question. It goes like this: > ><br>
Suppose I have a shape defined as > > (x,y,z) -> Bool > > how can I find<br>
a Point inside this shape? Obviously I could iterate through all<br>
possible x,y and z, but this appears > very expensive. > > There may be<br>
no point at all at x=0. With brute force iteration I would have no clue<br>
that the False I am receiving with > (0,1,1) is caused by x=0 and I may<br>
nedlessly try all combinations of y and z without ever receiving a True.<br>
> > Are there any alternative ways of finding points inside a shape? > ><br>
_______________________________________________ > Haskell-Cafe mailing<br>
list > <a href="mailto:Haskell-Cafe@haskell.org">Haskell-Cafe@haskell.org</a> ><br>
<a href="http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-cafe" rel="noreferrer" target="_blank">http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-cafe</a><br>
<br>
-----BEGIN PGP SIGNATURE-----<br>
Version: GnuPG v2<br>
<br>
iQEcBAEBCAAGBQJWMeMHAAoJEM0PYZBmfhoBcKUH/04/jSdP3660Ld1uWgK2P9BB<br>
iqAB4NnrRaCNbFNLSY6vNz1lFVm8p9ygxzZ4i+wfNbpa9V8tOvx2E2NJXaq/mLOr<br>
CDV9lS0LoQNWQCE41bH7QmEoK3ZiJjX1X0NolLpS2oBYhY1Jvwy/X8IUqoXAqZiu<br>
y+8CkExpJEL8dHmNXHwB4OmfRstRdcTumf/SVNhzwoHO+q+u8wz3d5PRSkCLSooB<br>
a5voFRdQpicfInzpW57+MHaQJtc1FtQ/+Ub4NQGh+rw5Npps/blQbvqgt/u1qcXL<br>
VwJqEonmF4T3NFxYAzfMR6rv/36MZcd39DK1+H2O5IrzIZXnXy007fw7irkiQ+0=<br>
=IIRy<br>
-----END PGP SIGNATURE-----<br>
<br>
<br>
_______________________________________________<br>
Haskell-Cafe mailing list<br>
<a href="mailto:Haskell-Cafe@haskell.org">Haskell-Cafe@haskell.org</a><br>
<a href="http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-cafe" rel="noreferrer" target="_blank">http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-cafe</a><br>
</blockquote></div>