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,
  ...
)

Arguments

tad

The TAD. An object of GRanges.

targetObj

The GRanges object with mcols x0, y0, z0, x1, y1, and z1

type

The Geometry type. default is sphere. Possible types are sphere or segment.

name

The prefix for the name of the geometries.

tag

The tag used to group geometries.

alpha

alpha value. default is 0.2

lwd

line width for segment.

...

other properties.

Value

threeJsGeometry objects

Examples

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)