The roof is hands down the best place, but it's not the only place. I used to get a few fishing up the big baddie with ancient nets but now it takes 10-15 kills to get 1 legendary and that's just not practical as a farming source. I also got some in Shame a long time ago now but again, none in a long while. They keep tinkering with the loot table, it's sometimes fun just to go back and re-try old stomping grounds too.
Sampires used to be my favorite but of late I find myself on a necro/mage with either weaving or mysticism to plow through the early spawn more quickly. The game isn't always friendly to melee when it comes to bosses.