Description
I have an issue with a 3-axis magnet (a driver not online yet, but basically using the same spherical to cartesian conversion as the Mercury IPS)
When i sweep a value in the spherical coordinates, lets say the radius, the driver will use \theta and \phi values from cache, and calculate the xyz field. That works fine, unless the t and p values are updated. That happens i.e. when the user actually reads the spherical coordinates, if a magnet.rtp.get()
is called at every sweep point, the internal r,t,p values will change eventually (right away, or after going through zero, or...).
The issue is basically that we have many representations of one xyz point in the spherical system. And I have no idea how to ensure that the other two variables will not change during a given sweep.
The only way to make this not happen (that i can come up with) would be to just not ask for spherical values during a sweep.
Anyone with any ideas?
@core @AdriaanRol @peendebak <- just tagging because of some reason...