Hi,
Basically, you need to use 4 wfs.config to generate 4 sdif files. You’ll load these files to 4 wfs~ objects.
This (unfortunately) requires a bit of patching, in order to route the messages/signals to the appropriate sub-arrays.
Attached a crude patch to show you how to handle one sub-array.
And no, it’s not possible to exchange the x/y coordinates.
And you dont give /speakers/xy message directly to the wfs.config. Instead you use the /spacing message; this is a “precaution” to enforce that the array is uniformly spaced.
Best,
T.
----------begin_max5_patcher----------
2285.3oc6ak0iiaiD94t+UPHrOrKfGaQQcXsOkM6QdYCP.xCYAlInAsDsaNi
rnWJo9HAY+Ms+FxurvCIY4tkjokolCfY.ZaYJppJ9UGrphZ90auwYC6IRgC3
uBdK3la90au4F0PxAto9223rG+TRFtPMMmbxirMu2Yg9VkjmJUCWb.WFrjUj
rjtKmwIfUXNA2Ls7p8rpxLRohFd0ipGp74CDs.33rP7G3mqu8ANofjWhKor7
63jjR8rfwwKcW.PPO4WPuH4Wdhez9fzTkHIDy2Df5HBz7FI.1vBbYx8z7clQ
d4y7a2dq7iEWGZUdOuperANH1bNbwWIoAnPk.GOFp3GconxfDeBXRBa+dg7+
JPIkUsIi7ljLZxG.kL.6.IuYRap1HtWWg7TXycbrIxWIxgqWuLPpTQpE.Z.z
wugqaY4kEzeQyW3R2NCmi2qF14uwo3rKENGQdrHf938jbPUgf0fG2VrLgkuk
tCv3xe8+V.Jum.vbN9Y.s.fydD+bAnn5vAVAIUh+aHfLZNAyAU4zsL99EhYw
DDS9f+m2fehVzvR47RXU4J9h5SWz6LrjV0OPhhdPEJJsT6UqF7QSq1i7b0gN
d.yaENcr1GnjGI7258yCDKVeev2PyokORKuG7NmUErJdBYkXAsQbK36b5OHD
Zz.zlDjN.5qfhPWskc3ngiBuTj97ju.+.I8NA0EOyc3xRNcSUodmtaZAbIs4
BTsjvuijiqsEcU2SosrkmHM+ABuf.3LMRYovZH8dUA53GPW3ng0PytCvHxiE
ASEHR.wt+9+GHBKIrqyHaKAEzTx6b.rsp3SRgBmuqJSD9REjytPte8ZKHXTH
26iEj2m7LAH+XVbxnGSH3.UpuLI9PPW+W8WAvAPQ3EGdXPp+kQ5J9HU3M+v.
cNnimth6rajMh7Xubh01dxTS.eSwAB9ChHl.jm3GpMsJ.vqLaiWXFOncbgnB
FIF80ql1UFmbPr5qXUoExTm5y5FEM0bCdM0sny++7I79CYD09O57pq3z5Tia
2MRtWD9jch9o+0Od5tQVwT9bQSzXfmBOfAtikkL5hSEaXpaQ3FmTVgy.hHA4
ofhDRNA7melUARv4f8rGHqHozRE3qCV.DEwPkv.3dBm7WrbXYe0hD46NVXYj
+Gsvx8HOS.6E4GWdLyTC6JwFgksgclHJ7nch7ydAs1X78lX9jZZwq4qs2yRl
uDW.MjChoCpKxZFa8kert2TAi1jGu0Sr0W8QdaCYkbbdgrmBmVe5y3GAuI1c
n5RsB5UWchWcFyCgdQSD85i7eIz3PTz5y23POzzZbXOD2dXRFCmphCMagtpa
vPv5QwF+ogM8P7IfM6IEE3cjWANqxvhMJk4ijuKir.rZGmltZOSjcRw+sBya
GRlmQSigB8EilRKNHd3UrsaKHkOKh9dbregw1KLwEi7HMOk83J49af0ttx+N
NZIUf4B+ZYZO+cUVRG8rOIulnyl4SzrXz6EpvdnutvF2gTsA8pZ8NqpsOxOe
sBD9YYq.a1UIPuCLBMlSDbpmWyHj+SSq.m51ey7te0MJBFO5wlENUsPOTeNx
1p8LFyStmwmQ3xyMV6AOZxBnoZ01G4s6Fix8E.HOamyPi7qhuEMpszjwlWQ6
IfLYzGHKS6TaU2fms2rSjyKvFZq.eKOKRU2fVu5R0TetdffeqGq5GXaciIUE
aX7TBOgkIr9UrQU6m3CXbn6Z0UQq8QP0Us75Bap7fxrNhZanzQBp9.Nqhv11
Lby3cWgMnZc0cmbuJQvwhxm0.P7PSPm.jSO2duX8Juq+x9nt7vLGyX3EjBqL
zPt8RqBQbnikyKxSpTDah3nmndCjosOxfI10vCveBZau6Z8utx4H+Q2vN5RS
MZPhOat2ymuMzbea2OW7sge44amLpycvE3bOlmcTfAd1hbPRD.5b5XWyh4vu
F100azTZhuX25gn8TcqkUlHl0PN1mdaq6Z2zMG0xQWgNLXf2wLS7ruztHMDe
mE2S34bOMyA6DURutX5ym9b9XcI1r5moNjwlRfsu6Fr6NcP33uCLWp+1vD+y
6tMVK2POCdOE8lXoC8P7Y9f+0m8jXwVU.zM+xRm4jWrZ2entSRd054ANyIO3
relSiHOyvqBP86r3LVfe8BINXzjbmpc3qIdGPRwIUePewKfshfxwOE4pOWI8
Zroa7fiBbJonjlqe+xNNI465amIoxsTI88ptLl0QlvZ3bvZDz.VKaF+mHVi5
mytWGdu1jEcsR453juIbJvFbJvDNgr.mjEecVNEaCFYhag2IyYOM8.ilWVGC
v2U+Jg6pCr14WWqnYhEDzJVPlvHKvGSh9YC6T+qUm5MW5TSbf7s.BDesH.xa
trpMIfrMBgDXh0VnMrpMxrFMGauEZhiqM.SiRbANKajBMg0M61dcgMLJEIaX
x3ahhCYkP6WxZxtJNi7KLg05ztwGNH+ujQ8iq3pnzj2qa455EpeRy0+TU8jC
m7.sY95QvbQd+khj9q35JpdJTWFui78qfmWQq8IEqWAKUcS4Eo5erXrpTJ6G
UEPd22SxqK6VrL2hqxJOEa1raKMKqsAwca5SSUPN56V2pEmSZlrWrODp5iLB
hh7BUWItHPFStA6peFXyC4G3G65ImpenWjef5p0dn.zIsgt9w7NxKYWqUbvM
dsqu9JwPPAu59XX4qmhpptniGvhn1M1AFuQIKdz314WUx1wwoTh98C4zSpeQ
soEWb21lXUer5N6E.Js4Y5ZJ1pL9GZTWT472xxRA+.SVeIcLUR25seqph6FO
MKIJeu++dL925E8BM8vnu6x0AsNJ8I98zxf2V2z.fDVbr+JzDj1tqT2OQqzl
VJLr0zVbS3OnIpIShIz5uzuKNJJzORgWH4wKovP+W3lNQuai0USJlPsq+HpQ
qqAwOEYhw5W0J1If762rw7nuwe0s3irawGJxnhDd9IY1Piom5rd0umXc+vRx
htkxeaVEY7Xr3jDACNQCffRUsD2Cay1ItV6aaA763DR9EKgp2Cf.j7exqfgq
EIiYUgScVXemXSuKV1j.kqx9MH1CFnvQXW62KW.EOyuc6enAXIwL
-----------end_max5_patcher-----------