It could be easier:
def user_live_update():
if ucomp["m-p"]:
vars.coord_type.set(0)
else:
vars.coord_type.set(1)
if hal_present == 1 :
ucomp = hal.component("axisui.user")
ucomp.newpin("m-p",hal.HAL_BIT,hal.HAL_IN)
ucomp.ready()
2017-09-23 18:35 GMT+03:00 Dewey Garrett <[email protected]>:
> In <CAJZ=BTNHivrbVW_8MR-aD0rtxE+=sqisfunmhdbcwog1vfw...@mail.gmail.com>
> Andrew <[email protected]> writes:
>
> >Is there a pin for machine/relative position?
> No, but you can create your own pin for the axis gui
> using python statements in ~/.axisrc
>
> Example:
> #--------------------------------------------------------
> $ cat ~/.axisrc
> mycomp = hal.component("mycomp")
> mycomp.newpin("coord_relative",hal.HAL_BIT,hal.HAL_IN)
> coord_relative = vars.coord_type.get()
>
> def user_live_update():
> global coord_relative
> coord_relative_pin = mycomp["coord_relative"]
> if (coord_relative != coord_relative_pin):
> vars.coord_type.set(coord_relative_pin)
> coord_relative = coord_relative_pin
> o.tkRedraw()
>
> #--------------------------------------------------------
> $ # Testing:
> $ linuxcnc yourinifile.ini &
> $ halcmd show pin mycomp
> Component Pins:
> Owner Type Dir Value Name
> 72 bit IN FALSE mycomp.coord_relative
> $ # test using sim_pin (toggle):
> $ sim_pin mycomp.coord_relative &
>
> #-----------------------------------------------------------------------
> Notes:
> 1) Future changes to the axis gui may break this method.
> 2) Using the axis gui key ("#") that is bound to the
> commands.toggle_coord_type() function will override
> the current mycomp.coord_relative hal pin setting
>
> #-----------------------------------------------------------------------
> References (for 2.7.x LinuxCNC version):
>
> ~/.axisrc:
> http://linuxcnc.org/docs/2.7/html/gui/axis.html#_axisrc
>
> user_live_update():
> http://linuxcnc.org/docs/2.7/html/gui/axis.html#_user_live_update
>
> sim_pin:
> http://linuxcnc.org/docs/2.7/html/man/man1/sim_pin.1.html
>
> Alternatively, the statements shown above for ~/.axisrc
> can be placed in a configuration-specific file defined
> by [DISPLAY]USER_COMMAND_FILE, see:
>
> http://linuxcnc.org/docs/2.7/html/gui/axis.html#_user_command_file
> --
> Dewey Garrett
>
>
> ------------------------------------------------------------
> ------------------
> Check out the vibrant tech community on one of the world's most
> engaging tech sites, Slashdot.org! http://sdm.link/slashdot
> _______________________________________________
> Emc-users mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/emc-users
>
------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Emc-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/emc-users