South Africa's 562 for 5 was their highest score against New Zealand, beating the 524 for 8 declared at Wellington in the 1952-53 season, an innings which included 255 not out from Jackie McGlew, a score second only to Graeme Pollock's 274 against Australia in 1970.
Cullinan passed 150 for the third time in 46 Tests and then topped his previous best of 168 scored against the West Indies.
He shared stands of 183 with Gary Kirsten, 74 with Hansie Cronje, 141 with Jonty Rhodes and an unbroken 67 with Shaun Pollock. The home side claimed just three wickets all day.
Resuming at 245 for 2, Cullinan and Kirsten took their third-wicket partnership from 148 to 183 before Kirsten, resuming on 109, fell to a fine delivery from Geoff Allott which flew to Nathan Astle at second slip.
Cullinan survived a scare on 97 but reached his seventh Test century soon afterwards. A pull shot off Geoff Allott was dropped by Simon Doull at wide mid-on when Cullinan had 132 but that was to be the only chance he offered as he took lunch on 142 and tea on 171.
The afternoon wicket belonged to Cronje (30) who lost patience in facing the nagging but unthreatening Chris Harris. Rhodes (63) also fell to Harris.
Second day; New Zealand won toss
SOUTH AFRICA - First innings
(Overnight: 245 for 2)
G Kirsten c Astle b Allott 128
D J Cullinan not out 246
*W J Cronje c Allott b Harris 30
J N Rhodes c Twose b Harris 63
S M Pollock not out 39
Extras (4b 9lb 2nb) 15
Total (for 5, 186 overs) 562
Falls (cont): 3-280, 4-354, 5-495.
To bat: M V Boucher, L Klusener, A A Donald, P R Adams.
Bowling (to date): Doull 28-6-65-1; Allott 33-5-133-1 (1nb); Nash 28- 2-97-0 (1nb); Vettori 42-8-120-1, Harris 43-10-85-2; McMillan 3-0-19-0; Astle 9-1-30- 0.
New Zealand: M D Bell, M J Horne, R G Twose, N J Astle, C D McMillan, C Z Harris, A C Parore, *D J Nash, D L Vettori, S B Doull, G I Allott.
Umpires: R S Dunne and D J Harper.