To find out how many square feet Ivan can paint in 3 hours, we first need to determine how many half-hour intervals are in 3 hours.
3 hours is equivalent to: \[ 3 \text{ hours} \times \frac{2 \text{ half-hours}}{1 \text{ hour}} = 6 \text{ half-hours} \]
Next, we know that Ivan can paint 25 square feet in each half-hour. Therefore, in 6 half-hours, he can paint: \[ 6 \text{ half-hours} \times 25 \text{ square feet per half-hour} = 150 \text{ square feet} \]
So, the total area Ivan can paint in 3 hours is: \[ \boxed{150} \text{ square feet} \]
The answer is D. 150 square feet.