How to build swarm cluster of hosts with heterogenous Operating System?

Hi, everyone,

I have used “docker-machine, swarm” build up a small docker cluster in centos 7.
All these hosts are installed centos 7.
[root@localhost ~]# docker-machine ls
NAME ACTIVE DRIVER STATE URL SWARM DOCKER ERRORS
node3 - generic Running tcp://192.168.0.3:2376 node3 (master) v1.11.2
node4 - generic Running tcp://192.168.0.4:2376 node3 v1.11.2
swarm-consul - generic Running tcp://192.168.0.1:2376 v1.11.2

Currently, we have a new requirement that there are several other hosts which installed other Operating System, like Windows or Mac OS. I also want them join this docker cluster.

Is it doable for this requirement? and How can I do it if it is possible? can you give me some suggestions?
Thank your very much for your reply!