Learning Arduino_Help_Led_Stream

Save the millis() value at the time that the start action happens (writing a value to the LED). Then, each time through loop(), check whether the required wait period has elapsed by subtracting the start time from the millis() value now. If the period has elapsed then act accordingly (change the intensity variable and write to the LED) and save the start time for the next activity. If not, then go round loop() again, taking other actions and/or reading inputs. What do you want to do if the button is found to be pressed ?