Axis for 800x480 screen with qtvcp tabs

More
12 Jan 2020 21:18 - 12 Jan 2020 21:37 #154720 by cakeslob
When you start getting down in screen size to 5" and 7" screens, most of them have a 800x480 resolution sometimes not scalable.

pic is just an example i found online but ive seen pictures like this several times. The same thing happened to me the first time I got axis to load on my 7" screen, it completely cuts off the gcode bar. Not totally unusable but not ideal. (I know, im using an RPI4 to do stuff and i mention machine kit so dont judge me to harshly,this is the reason i cannot do a full qtvcp gui but this isnt about that, its about modding the trusted/stable axis gui to work on 800x480 screens, so please keep an open mind) Im not to good with computers and honestly dont know what Im doing, but I have been reading a lot so here is what Ive got

Goal: to get specifically Axis working well in 800x480

Best option: move gcode into the manual/mdi tab
no idea how to do this, but if anyone else does thats cool

Current route: with qtvcp(or maybe glade) tabs and .axisrc
(hopefully to make it somewhat cross compatible with machinekit, they have a qt thing but idk if it will work with this)

qtvcp tabs: somehow i installed qt designer with the linuxcnc plugins by mashing commands into terminal. from there, I copied the qtvcp tab stuff for axis. I opened up the camview widget and made some panels with widgets like the gcode viewer and added them to the share/qtvcp/panels.
The panel files still need some work, but its a proof of concept



only loads gcode after a new file is loaded also during tests seems 1 line ahead of the axis gcode viewer. need to add run from line and fix sizing, maybe gcode edit


I know there is already a tool table thing in axis, but i like things being in tabs,


I added this to my ini file to get it to load more than 1 tab. i dont know how to do it properly i think its something like usertab1 or something but i dont know, this is just something me and a friend were trying out and it worked
[DISPLAY]
# Embed tabs
#EMBED_TAB_NAME= offset
#EMBED_TAB_COMMAND= halcmd loadusr -Wn qtvcp_embed qtvcp -d -c qtvcp_embed  -x {XID} offset

#EMBED_TAB_NAME= alarm
#EMBED_TAB_COMMAND= halcmd loadusr -Wn qtvcp_embed qtvcp -d -c qtvcp_embed  -x {XID} alarm

EMBED_TAB_NAME= gcode
EMBED_TAB_COMMAND= halcmd loadusr -Wn qtvcp_embed qtvcp -d -c qtvcp_embed  -x {XID} gcode

EMBED_TAB_NAME= offset
EMBED_TAB_COMMAND= qtvcp -d -c qtvcp_embeda  -x {XID} offset

EMBED_TAB_NAME= tool2
EMBED_TAB_COMMAND= qtvcp -d -c qtvcp_embedd  -x {XID} tool2

I might have to remove Max velocity slider but I dont know if thats ini or .axisrc
axisrc: ive added this to my axisrc file to try and kill the gcode window, it has worked(kinda, theres still a tiny nub left over), but it looks like theres 1 more thing i need to resize somehow but i dont know what, maybe pane but im not sure, so if anyone can help me with this, that would be great
#window resize
root_window.tk.call("wm","geometry",".","800x480")

root_window.tk.call('pack','forget','.pane.bottom.t.text')
root_window.tk.call('grid','forget','.pane.bottom.t')
root_window.tk.call('pack','forget','.pane.bottom')

Ive added my panel files, all I did was copy the cam align panel folder and rename the folder and handler to alarm/gcode/offset/tool2
Im trying to get a alarm tab goings and eventually kill the alarm popup, but it looks like I need to link something or something I dont know. I dont really know what Im doing, so if anyone knows the proper way to do these things, input is appreciated

tl;dr- Axis on a 800x480 screen cuts off the gcode window. I want to remove it and resize the window to 800x480 and add some tabs to compensate
-How do I kill the gcode pane properly and resize the window to 800x480?
-How do I embed the tabs properly and improve tabs over all?
Attachments:
Last edit: 12 Jan 2020 21:37 by cakeslob.
The following user(s) said Thank You: Mike_Eitel, tommylight

Please Log in or Create an account to join the conversation.

More
12 Jan 2020 23:22 #154728 by cmorley
I know you said you want AXIS modified and I bet that someone could get you there...
There is actually a lot more info available for modifimg AXIS then there used to be in the manual - not quite enough to show you how to do what you want though.

But I thought I'd point out that qtvcp has an AXIS replica that might be easier to modify. It's certainly not perfect but if you eventually go that way, I could help with that.

Good luck!
Chris M

Please Log in or Create an account to join the conversation.

More
13 Jan 2020 00:13 #154732 by cakeslob
I noticed, once day i went to check something, and the axis modification section was huge all of a sudden. it was helpful.

A whole new qtvcp would be ideal and is my plan b. I have been playing with and modding the 800x600 panel. The problem though is I cannot get the graphics preview to work with my setup for any of the qtvcp screens. Not a deal breaker, but i dont know computer hacking so Im trying to find the most realistic option that will run on most things, and if done with axisrc and tabs, that should be easier to integrate into my machinekit setups as well .
not to derail thread, but the errors i get in qt are
error1
Traceback (most recent call last):
  File "/home/pi/emc9/lib/python/qt5_graphics.py", line 471, in initializeGL
    self.object = self.makeObject()
  File "/home/pi/emc9/lib/python/qt5_graphics.py", line 640, in makeObject
    genList = GL.glGenLists(1)
  File "/usr/lib/python2.7/dist-packages/OpenGL/platform/baseplatform.py", line 402, in __call__
    return self( *args, **named )
  File "errorchecker.pyx", line 53, in OpenGL_accelerate.errorchecker._ErrorChecker.glCheckError (src/errorchecker.c:1218)
GLError: GLError(
	err = 1282,
	description = 'invalid operation',
	baseOperation = glGenLists,
	cArguments = (1,),
	result = 0L
)

error2
Traceback (most recent call last):
  File "/home/pi/emc9/lib/python/qt5_graphics.py", line 564, in resizeGL
    GL.glMatrixMode(GL.GL_PROJECTION) # To operate on projection-view matrix
  File "/usr/lib/python2.7/dist-packages/OpenGL/platform/baseplatform.py", line 402, in __call__
    return self( *args, **named )
  File "errorchecker.pyx", line 53, in OpenGL_accelerate.errorchecker._ErrorChecker.glCheckError (src/errorchecker.c:1218)
GLError: GLError(
	err = 1282,
	description = 'invalid operation',
	baseOperation = glMatrixMode,
	cArguments = (GL_PROJECTION,)
)

which i find refferenced here by scotta forum.linuxcnc.org/41-guis/34895-qtvcp-issues?start=120#120047
who seems to have switched to archlinux because of it as far as i understand

Please Log in or Create an account to join the conversation.

More
13 Jan 2020 17:56 #154774 by cmorley
Ah yes rasberry pi - it seems strange as alot of the code it the same.
Does gladevcp''s gremlin work?

Chris

Please Log in or Create an account to join the conversation.

More
14 Jan 2020 02:39 #154799 by cakeslob
If gladevcp uses the same gremlin as gscreen and gmoccapy(what looks like pyGTK?), then yes it works

Please Log in or Create an account to join the conversation.

More
14 Jan 2020 03:35 #154800 by cmorley

cakeslob wrote: If gladevcp uses the same gremlin as gscreen and gmoccapy(what looks like pyGTK?), then yes it works

I don't mean to redirect your thread here but that is good info. I looks like maybe a change in openGL libraries. Apparently version 3.2 removed deprecated functions (which we surely use) I'd have to guess that maybe there are two versions of openGL libraries on your system. We need an openGL expert to help with this I think. In my case I don/t have a system that shows the problem - I probably need to update my system to something much newer...

Phillc54 of plasmac fame probably is the guy to ask about AXIS modifications - he is the one who made all the new docs for AXIS modification in the manual.

Chris

Please Log in or Create an account to join the conversation.

Time to create page: 0.160 seconds
Powered by Kunena Forum