Xin.convex.hullY: Points from one class inside the convex hull of the points...

View source: R/AuxDelaunay.R

Xin.convex.hullYR Documentation

Points from one class inside the convex hull of the points from the other class

Description

Given two 2D data sets, Xp and Yp, it returns the Xp points inside the convex hull of Yp points.

See (\insertCiteokabe:2000,ceyhan:comp-geo-2010,sinclair:2016;textualpcds) for more on Delaunay triangulation and the corresponding algorithm.

Usage

Xin.convex.hullY(Xp, Yp)

Arguments

Xp

A set of 2D points which constitute the data set.

Yp

A set of 2D points which constitute the vertices of the Delaunay triangles.

Value

Xp points inside the convex hull of Yp points

Author(s)

Elvan Ceyhan

References

\insertAllCited

See Also

plotDelaunay.tri

Examples

## Not run: 
#nx is number of X points (target) and ny is number of Y points (nontarget)
nx<-20; ny<-5;  #try also nx<-40; ny<-10 or nx<-1000; ny<-10;

set.seed(1)
Xp<-cbind(runif(nx,0,1),runif(nx,0,1))
Yp<-cbind(runif(ny,0,.25),runif(ny,0,.25))+cbind(c(0,0,0.5,1,1),c(0,1,.5,0,1))
#try also Yp<-cbind(runif(ny,0,1),runif(ny,0,1))

DT<-interp::tri.mesh(Yp[,1],Yp[,2],duplicate="remove")

Xlim<-range(Xp[,1],Yp[,1])
Ylim<-range(Xp[,2],Yp[,2])
xd<-Xlim[2]-Xlim[1]
yd<-Ylim[2]-Ylim[1]

Xch<-Xin.convex.hullY(Xp,Yp)

plot(Xp,main=" ", xlab=" ", ylab=" ",
xlim=Xlim+xd*c(-.05,.05),ylim=Ylim+yd*c(-.05,.05),pch=".",cex=3)
interp::convex.hull(DT,plot.it = TRUE, add = TRUE)  # or try polygon(Yp[ch$i,])
points(Xch,pch=4,col="red")

## End(Not run)


elvanceyhan/pcds documentation built on June 29, 2023, 8:12 a.m.