refactored rectangle; draws by points; rotate directly rotates diagonal