There are certainly more efficient specialized solutions for low dimensions 
like 3D, but you can test whether a point is contained in the convex hull 
by solving a linear programming feasibility problem:

x = [1,1,1] # test point
Z = [1 0  # points along columns
     0 1
     0 0]
using JuMP
m = Model()
@defVar(m, 0 <= lambda[j=1:size(Z,2)] <= 1)

@addConstraint(m, inhull[i=1:length(x)], x[i] == sum{Z[i,j]*lambda[j], j = 1
:size(Z,2)})
@addConstraint(m, sum(lambda) == 1)
status = solve(m)
# Infeasible means not in the hull, Optimal means in the hull


On Monday, March 2, 2015 at 11:08:35 AM UTC-5, Robert Gates wrote:
>
> Dear Julia Users,
>
> does anyone know of a package capable of computing whether a point lies 
> inside or outside of a (3D) convex hull?
>
> I know that the solution to this problem is rather trivial, however, 
> before I reinvent the wheel, I figured some code might already be out 
> there. I checked the Julia interface to qhull (CHull.jl) but was unable to 
> find a quick fix in the qhull manual. I know that the GeometricalPredicates 
> package provides this functionality for triangles and tetrahedra, however, 
> I was looking for something more general.
>
> Best regards,
> Robert
>

Reply via email to