# tests for shape descriptor computation
test_that("Shape descriptors can be computed", {
testthat::skip_on_cran();
fsbrain::download_optional_data();
subjects_dir = fsbrain::get_optional_data_filepath("subjects_dir");
subject_id = 'subject1';
# Load data (see function surface.curvature for computing it in R)
k1 = subject.morph.native(subjects_dir, subject_id, 'white.max', hemi='both');
k2 = subject.morph.native(subjects_dir, subject_id, 'white.min', hemi='both');
# Get principal curvature info
pc = principal.curvatures(k1, k2);
# Visualize k1
vis.data.on.subject(subjects_dir, subject_id, morph_data_both = pc$principal_curvature_k1, rglactions = list('trans_fun'=clip.data));
# Compute shape descriptors
shape = shape.descriptors(pc);
expect_true(is.data.frame(shape));
# error handling
expect_error(shape.descriptors(pc, descriptors = c('noidea'))); # invalid descriptor
vis.data.on.subject(subjects_dir, subject_id, morph_data_both = shape$shape_index, rglactions = list('trans_fun'=clip.data));
})
test_that("Principal curvatures can be computed", {
testthat::skip_on_cran();
fsbrain::download_optional_data();
subjects_dir = fsbrain::get_optional_data_filepath("subjects_dir");
subject_id = 'subject1';
# Load data (see function surface.curvature for computing it in R)
lh_surf = subject.surface(subjects_dir, subject_id, surface = "white", hemi='lh');
rh_surf = subject.surface(subjects_dir, subject_id, surface = "white", hemi='rh');
lh_curvatures = surface.curvatures(lh_surf);
rh_curvatures = surface.curvatures(rh_surf);
# Get principal curvature info
lh_pc = principal.curvatures(lh_curvatures$K1, lh_curvatures$K2);
rh_pc = principal.curvatures(rh_curvatures$K1, rh_curvatures$K2);
vis.data.on.subject(subjects_dir, subject_id, morph_data_lh = lh_pc$principal_curvature_k1, morph_data_rh = rh_pc$principal_curvature_k1, rglactions = list('trans_fun'=clip.data));
expect_true(1L == 1L);
})
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.