Only the rain could stop Australia captain Michael Clarke on day two of the third test against South Africa as the tourists reached a commanding 494-7.
Clarke reached his 27th Test century in the morning, then spent the afternoon converting it into an unbeaten 161.
Rain dominated the second half of the day, triggering an early tea with the final session totally washed out.
Australia first innings
C Rogers c Smith b Steyn 25
D Warner c de Villiers b Duminy 135
A Doolan c Steyn b Philander 20
M Clarke not out 161
S Smith b Elgar 84
S Watson c Amla b Duminy 40
B Haddin c Amla b Duminy 13
M Johnson c de Villiers b Duminy 0
R Harris not out 4
Total: (7 wickets; 127.4 overs) 494
Fall of wickets: 1-65 2-138 3-217 4-401 5-456 6-489 7-489
It was the 10th time that Clarke had passed 150 in a Test innings, and the fourth against South Africa.
The only bright spot for the Proteas came in the shape of career-best figures for JP Duminy, but even his 4-73 could not pull them back into the match.
South Africa was hindered by the continued unavailability of fast bowler Dale Steyn, who failed to overcome a hamstring strain picked up on the opening day.
With low cloud around Newlands at the start of the day and a second new ball in hand, Steyn's absence was a major blow for the hosts, who failed to make early inroads.
Clarke began the day on 92 not out, and his only trouble came when he spent 24 deliveries on 99 before driving Vernon Philander's delivery through the covers for four to go to three figures.
The Newlands crowd gave the Australian captain a rousing ovation, having seen him get hit on the elbow, jaw, shoulder and hand during a brutal onslaught from Morne Morkel on Saturday.
Rain stops play
"I've been hit plenty of times through my career. Maybe not as many times in one spell, but that's the way it goes - that's part and parcel of the game,'' Clarke said. "The most pleasing thing was that I was able to get through and bat on.''
While Clarke was struggling to find his 100th run, Steve Smith was having no trouble scoring. He drove Philander back over his head for six, and then slashed Morkel over extra cover for another maximum.
Such brilliance made his lapse in concentration against part-time spinner Dean Elgar all the more disappointing, as Smith chopped a wide delivery onto his stumps to depart for 84.
Shane Watson then scored a quick 40 either side of lunch before holing out to long-off from the bowling of Duminy, who went on to pick up the wickets of Brad Haddin and Mitchell Johnson with consecutive deliveries.
However, with the dismissals coming off the last two balls of his over, and the rain arriving in the next over, Duminy will have a crack at a delayed hat trick on Monday unless Australia declare overnight.
"I will assess in the morning, I want to see what the weather is like more than anything else,'' Clarke said.
"Our goal is to win this Test match so, if it means batting for some time and getting as many runs as we can, we'll do that. If we think declaring overnight is the best way, we'll go for it.''