Jump to content


  • Content count

  • Joined

  • Last visited

Community Reputation

2 Neutral

About eyevex

  • Rank
  1. Python - Parameters 'Type'

    above should work on numerical parms, once that is determined and for string parms you could try something like.... is_exp=False raw = parm.unexpandedString() if any(['`' in raw, '$' in raw, '(' in raw]): is_exp = True or some variation depending on exaxtly what other than string literal you are trying to detect
  2. Excellent. Thanks a lot for all the info. This will help solve some serious problems for me.
  3. That's awesome and sounds like it may be what I am looking for! A couple of followup questions -- if you know.... Both the paths in the tuple are pointing to the shape lib? A little confused about the first element... as the agent def could be used in multple files and locations for crowd setups. are both elements required? Do the shape libs included need to generated via agent caching or can I include any bgeos -- just ass the name attib? I would still assume only packed and bgeo?
  4. The Hotkeys should work on all desktops, I think this was added somewhere in Houdini 15 or 15.5? But I don't see the KB command in the menu in the screen grab... Did you try searching the hotkey manager and see if its is remapped? Have you hand edited the hotkeys file? Try edit --> hot keys --> search --> String --> Maximize in split direction and see where it is. Maybe close Houdini, rename you hotkey file in your home directory HoudiniXX.y/HotkeyOverrides... maybe its corrupt? It is odd that you tried to map a hot key to it previously ... it should have had the default. Are you running this on very old or low powered hardware? shooting in the dark a little ....
  5. There is ALT + \ This will max a splitpane, how it was split depends on if it will max horiz or vert but should reflect the same menu item available. Be careful not to confuse with ALT+/ (forward slash) -- this will close the tab instead of maxing i am surprised it doesn't show this shortcut in your screen grab as it should be a default
  6. Floating Parameters Dialog

    Im not sure why you would see the interface for tabs like this although you will still see network controls... I am on kde/kunix h16. To make what for me looks and act exactly like the floating param via RMB -->Parameters and Channels -> parameters try this... node = hou.node('/obj/some/valid/oppath/to/look/at') # get desktop dt = hou.ui.curDesktop() # floating pane (pane not availible via floating pane tab) pane = dt.createFloatingPane(hou.paneTabType.Parm) # what parameters are in view pane.setCurrentNode(node) pane.setPin(True) # hide network interface and pane bar hou.hscript("pane -a 1 -A 0 " + pane.name())
  7. I have been poking around the shape library generated as part of the crowds agent definition on disk. It seems to only want bgeo packed prims adding all shapes used via declared layers into the single bgeo file. This potentially means bringing in geometry from disk ala file sop, since Agent Layer want an oppath, pointing to it and having the definition bake the unmodified geometry to disk landing in smoo_shapelib.bgeo Toggling "keep external" doesnt seem to affect this. this all seems a little inefficient. It would be desirable to include items already on disk. Agent Clip sop seems to afford this via "keepexternal' and source as file. There seems to be nothing equivalent for dealing with shapes and layers. Does anyone know a technique to achieve this? I did find a hopeful detail attrib on the generated shape lib, but no info seems to be available on the detail attrib "shapelib_include" -- although I imagine it might be what Im looking for but am unsure what it expects. Any info or idea on this attrib, how to include external geometry on disk (if possible) and preferably not have it re-cached out and remain as included would be great. The documentation on the shapelib seems to be minimal. thans ahead for thoughts and idea. Dan [eyevex] (|;-D>
  8. More options is always best Otherwise we would not have both pyside and pyQt. If uiscript can still be launched inside the ui directly like this going forward, I am considering extending this the last little bit for also doing HDK work for at least my self this would be very useful -- but will see where it goes, what I use it for, if others find it useful and if its possible at all.
  9. This is comprehensive -- not-so-simple, wrapper with much needed functionality for at least my use, as mentioned it was pieced together out of need -- since around 2010, but was part of a larger project. As also mentioned " I am aware of a couple efforts to do this, however I think uispy is fairly robust and useful... " So please do not feel that your efforts were not amongst the acknowledged. Look at the html manual included and see the features -- you dont need to know anything about uiscript to use it, there are enumerations for styles, many otherwise undocumented tags that seem to now work, hopefully you find it useful too... did you give it a spin? This still currently works in 15.x and uiscript ASFAIK is still used in HDK too... and internally everywhere, but had it feels a nice space when not wanting to use pyQt, (please see original post) but of course do not know the exact future.
  10. NOTE there seems to be a quirk where wordpress is mutating certain symbols so to use example properly for now, please copy and paste to a text editor, and replace the single quote with.. Yes, what appears to be the same single quote on your keyboard… if you run into this issue.
  11. I have decided to make available, uiScriptPy, a python wrapper around Houdini’s uiscript. It has been the result of needs I have had and was largely ripped from another defunct project. It should be considered alpha. I am aware of a couple efforts to do this, however I think uispy is fairly robust and useful. It fills a nice space where simple dialogs beyond hou.ui are needed, but full blown pySide/pyQt may be overkill Hopefully this will also provide an exploratory opportunity as I plan to document its clean-up on my blog eyevex.com bit by bit in the New year (assuming compatibility with h16 for now). At that time some more examples will be coming, until then feel free to download and poke around. It is acknowledged, that a few things are broken or missing, some the scripts are a bit hacky, there are places for improvement, and a bit that is completely wrong, but working. This is alpha, which mean it has only been used my myself and really only on a specific setup Happy Holidays and New Years [eyevex] (|;-D> www.eyevex.com
  12. You are correct, Not sure how I missed that, thanks for the 2nd look Anim.
  13. Interesting I thought kwargs was not available in menu generation... It seems I could be wrong on this, let me check it out thanks.
  14. In short... HDA parameter UI... I have ordered list A. and Ordered list B The item of B are generated dynamically with knowledge of List A. This basically could mean pull model where List B generation queries the value of List A. But do this as a multiparm instance and it seems to get more complicated.... List A may have different values per instance... meaning different items on List B per instance. But how to know which List A instance to query? I'd prefer not to pull and set the parmTemplates as this could force a cook to run... could be ie a menu type of string as well... and trying to avoid something toooo hacky.. but looking for ideas... Is there any way to have kwargs-like information so the instance # is known to the menu generation similar to callbacks on parms? Is there a way to force the menu generation or set the items from outside the menu generation script, such that List A callback() could populate List B since kwargs will provide the instance of List A which will be the same instance # as List B? Thanks ahead for any ideas (|;-D>
  15. changing hda event language type with python

    This seems really handy. Is there a list of possible name:val usable by hou.HDADefinition().setExtraFileOption() been looking through the documentation...