Captain Kraigg Brathwaite was last out in the West Indies' first innings of 354 before his Sri Lankan counterpart, Dimuth Karunaratne, was dismissed as the tourists reached 60 for one at tea on the second day of the second Test in Antigua on Tuesday.
Brathwaite's eight-and-a-half hour occupation of the crease brought him 126 off 311 deliveries with 13 fours.
Karunaratne, by contrast, survived 16 balls before an edged drive off fast bowler Alzarri Joseph produced a stunning diving catch at third slip by Nkrumah Bonner to send the left-hander back to the pavilion for just one.
His opening partner, Lahiru Thirimanne (40 not out), will resume the Sri Lankan reply alongside Oshada Fernando (18 not out) in the day's final session.
Brathwaite completed his ninth Test century at the start of the day and continued to play the anchor role in his team's compilation of a respectable total.
Suranga Lakmal again led the bowling effort of the visitors with figures of four for 94 off 28 overs.
It was Lakmal, the experienced fast-medium bowler, who finally broke through for an increasingly frustrated Sri Lankan team halfway through the morning session when he terminated a 103-run eighth-wicket partnership between Brathwaite and Rahkeem Cornwall.
Very much the aggressor for the two-and-a-half hours of their time in the middle, Cornwall went past his previous best in Tests -- 61 in the first innings of the first Test just a week earlier at the same venue.
He may have even been entertaining the prospect of a maiden Test hundred on his home ground when a miscued heave to the on-side offered a simple catch to Vishwa Fernando at mid-on.
His 73 came off 92 balls and was embellished by 10 fours and one six.
Brathwaite, who resumed on 99 overnight and went to three figures by turning the third ball of the morning from Lakmal to fine leg, never eased out of first gear, even with the demise of Cornwall.
He eventually stroked two more boundaries to add to his tally of 11 from day one but then saw the dismissal of Kemar Roach by Dushmantha Chameera, giving wicketkeeper Niroshan Dickwella his fifth catch of the innings.
Joined by last man Shannon Gabriel, someone with no pretensions to batsmanship, it seemed almost inevitable that Brathwaite would complete the rare feat of carrying his bat through a completed Test innings twice, having done so previously against Pakistan in Sharjah in 2016.
But it was the West Indies leader who perished, playing on to give Chameera a third wicket of the innings.