The Terry Tyzack Aquatic Centre in Inglewood is great for swimming, no matter what the weather is like. There are three outdoor pools - one for children - so the lap swimmers don't have to compete with children (and vice versa!). There's also an outdoor diving pool for aqua aerobics. There's an indoor pool as well, plus sauna and spa facilities. There's loads of shade outside, and BBQs. The whole centre is set in grassland. It's a fantastic place to go - take a book to read after you've done your laps, or take your children and a picnic, and play in the toddlers pool.
I prefer swimming at the beach more than at public pools, but if I do go to a pool it will generally be Bayswater Waves as it's relatively close to where I live. My favourite swimming beach in Perth is Cottesloe. Apparently an ocean pool is going to be constructed there in the next year or two, which is something I'm getting quite excited about.