Hi
I will try to reproduce it.
Perhaps I have to disable that you can change it via the UI at all.
For now, you would need to write your own “Change Frameset” python command in rrControl that reads/writes a new frameset.
regards,
Holger Schönberger
Craftsman and Keeper of the Royal Render Flame
Please use the rrKnights Tavern
or our support system for new questions.
Hi
RR offers a simple Qt UI with these functions.
For more complex UIs you have to use some 3rd party module.
Tkinter should be available in rrControl.
Otherwise place the UI module into RR\plugins\python_modules\ (or you define a new path in your script with sys.path.append(“path”))
But I just noticed some issues:
1) The function to add frames to the frame list is available in module rrSubmit, but not in rrControl.
You would have to import that module.
2) The current function is able to add frames to render only.
If you try to replace the complete frameset, then it is not updated at the rrServer.
Both issues are logged to the fixed.
I have attached an example that uses the module SDK\External\Python\rr_python_utils\ to import the rrSubmit.
Hi Dimitri
Upcoming RR 9.1.24 has some new functions in rrControl (and in module pyRR).
Side-note:
RR10 (some months until release) will have an UI to change the frameset.
And the BinaryFrameSet in the xml file not be required any more.
This is a script for rrControl 9.1.24:
#Change Frameset with a string.
frameset_string="10, 50 - 70 + 10 , 100-200+10 , 201-300+8"
if not rr.jobSend_ReplaceFrameset(job, frameset_string):
raise rrCleanExit()
rrGlobal.messageBox(rrGlobal.logLvL.info, "jobSend_ReplaceFrameset frameset_string done")
#Using our _binaryFrameSet class might be easier than to create a string in the right format
frSet= rrJob._binaryFrameSet()
frSet.setFrame(110, True)
frSet.setFrame(150, True)
frSet.setFrame(160, True)
frSet.setFrame(190, True)
print(frSet.asString_FrameSet())# in case you need some visual confirmation
if not rr.jobSend_ReplaceFramesetBinary(job, frSet):
raise rrCleanExit()
rrGlobal.messageBox(rrGlobal.logLvL.info, "jobSend_ReplaceFrameset _binaryFrameSet done")
frSet.clear(False)
frSet.setFrame(200, True)
if not rr.jobSend_AddFramesetBinary(job, frSet):
raise rrCleanExit()
rrGlobal.messageBox(rrGlobal.logLvL.info, "jobSend_AddFrameset _binaryFrameSet done")