use transforms for panning and zooming