zoom not a member of rack::settings ?

You can get the RackScrollWidget's zoom level with APP->scene->rackScroll->getZoom() and a similar setter. Zoom levels are linear, not exponential like settings::zoom.

Another purpose of zoom I’ve seen plugins use is conditional drawing of fine details to save CPU. For that, plugins should read the NanoVG state in draw() such as

float t[6];
nvgCurrentTransform(args.vg, t);
float zoom = t[3];