Create a 3d Geometry by given TADs for target 3d positions.
createTADGeometries(
tad,
targetObj,
type = "sphere",
name = "TAD_",
tag = "TAD",
alpha = 0.2,
lwd = 3,
...
)
The TAD. An object of GRanges.
The GRanges object with mcols x0, y0, z0, x1, y1, and z1
The Geometry type. default is sphere. Possible types are sphere or segment.
The prefix for the name of the geometries.
The tag used to group geometries.
alpha value. default is 0.2
line width for segment.
other properties.
threeJsGeometry objects
library(GenomicRanges)
obj <- readRDS(system.file("extdata", "4DNFI1UEG1HD.chr21.FLAMINGO.res.rds",
package = "geomeTriD"
))
tjg <- view3dStructure(obj, renderer = "none")
pc <- pointCluster(as.data.frame(mcols(obj)))
#> eps is set to 1.92420018162681e-06
tads <- split(obj, pc$cluster)
tads <- tads[names(tads)!="0"] # cluster 0 is noise
tads <- unlist(range(GRangesList(tads)))
backbone <- extractBackbonePositions(tjg)
tad_geometries <- createTADGeometries(tads, backbone)
threeJsViewer(tjg, tad_geometries)