added viewport scale
refactor tractor