It is quite complicated. Air New Zealand and Singapore Airlines are both part of *a so you can earn and spend miles on either airline because these two airlines are in the same partnership. Virgin Atlantic is not part of *a. However, Virgin Atlantic is an airline partner of both Air New Zealand and Singapore. You can earn miles on both these airlines on Virgin's Flying Club programme. You can also book award flights through Virgin for flights on both airlines. You may not be able to book award flights on Virgin thru the two airlines-I'm not sure. You will have to check Air New Zealand's and Singapore's websites.
Perhaps it wouldn't hurt to join both *a and VS Flying Club. Then if you are flying either one of the three airlines, you can assign your miles to either of these programmes. Both programmes are pretty good. I think *a allows you more latitude in lounge access and airpasses. Virgin offers all kinds of ways to spend and earn miles.
Which airline do you think you will use the most may help determine how you will use a Star vs. Flying Club programme.