Learn R Programming

Momocs (version 1.2.9)

coo_scale: Scales coordinates

Description

coo_scale scales the coordinates by a 'scale' factor. If not provided, assumed to be the centroid size. It involves three steps: centering from current position, dividing coordinates by 'scale', pushing back to the original position. coo_scalex applies a scaling (or shrinking) parallel to the x-axis, coo_scaley does the same for the y axis.

Usage

coo_scale(coo, scale)

# S3 method for default coo_scale(coo, scale = coo_centsize(coo))

# S3 method for Coo coo_scale(coo, scale)

coo_scalex(coo, scale = 1)

# S3 method for default coo_scalex(coo, scale = 1)

# S3 method for Coo coo_scalex(coo, scale = 1)

coo_scaley(coo, scale = 1)

# S3 method for default coo_scaley(coo, scale = 1)

# S3 method for Coo coo_scaley(coo, scale = 1)

Arguments

coo

matrix of (x; y) coordinates or any Coo object.

scale

the scaling factor, by default, the centroid size for coo_scale; 1 for scalex and scaley.

Value

a single shape or a Coo object

See Also

Other coo_ utilities: coo_aligncalliper, coo_alignminradius, coo_alignxax, coo_align, coo_baseline, coo_bookstein, coo_boundingbox, coo_calliper, coo_centdist, coo_center, coo_centpos, coo_close, coo_down, coo_dxy, coo_extract, coo_flipx, coo_force2close, coo_interpolate, coo_is_closed, coo_jitter, coo_left, coo_likely_clockwise, coo_nb, coo_perim, coo_range, coo_rev, coo_right, coo_rotatecenter, coo_rotate, coo_sample_prop, coo_samplerr, coo_sample, coo_shearx, coo_slice, coo_slidedirection, coo_slidegap, coo_slide, coo_smoothcurve, coo_smooth, coo_template, coo_trans, coo_trimbottom, coo_trimtop, coo_trim, coo_up, is_equallyspacedradii

Other scaling functions: coo_template

Examples

Run this code
# NOT RUN {
# on a single shape
b <- bot[1] %>% coo_center %>% coo_scale
coo_plot(b, lwd=2)
coo_draw(coo_scalex(b, 1.5), bor="blue")
coo_draw(coo_scaley(b, 0.5), bor="red")
# this also works on Coo objects:
stack(bot)
bot %>% coo_center %>% coo_scale %>% stack
bot %>% coo_center %>% coo_scaley(0.5) %>% stack
#equivalent to:
#bot %>% coo_center %>% coo_scalex(2) %>% stack
# }

Run the code above in your browser using DataLab