Welcome to od|forum

Register now to gain access to all of our features. Once registered and logged in, you will be able to contribute to this site by submitting your own content or replying to existing content. You'll be able to customize your profile, receive reputation points as a reward for submitting content, while also communicating with other members via your own private inbox, plus much more! This message will be removed once you have signed in.

Search the Community

Showing results for tags 'pyqt'.



More search options

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


Forums

  • General
    • Lounge/General chat
    • Education
    • Jobs
  • Houdini
    • General Houdini Questions
    • Effects
    • Modeling
    • Animation & Rigging
    • Lighting & Rendering
    • Compositing
    • Games
  • Coders Corner
    • HDK : Houdini Development Kit
    • Scripting
    • Shaders
  • Art and Challenges
    • Finished Work
    • Work in Progress
    • VFX Challenge
    • Effects Challenge Archive
  • Systems and Other Applications
    • Other 3d Packages
    • Operating Systems
    • Hardware
    • Pipeline
  • od|force
    • Feedback, Suggestions, Bugs

Found 9 results

  1. Hi guys! Just want to share with you some of my experiments. huilib - is a simple python wrapper around houdini .ui language. It was written "just for fun", so no warranty if it works for you. But i think it's pretty usable for simple ui, in situation, when PyQt is not an option Maybe someday we'll see something similar from sesi Feel free to use it. https://bitbucket.org/alexxbb/huilib/overview
  2. How to get houdini mainWindow & parent PyQt/PySide Qwidget to mainWindow in 14.0 and 15.0?? hou.ui.mainQtWindow() not working here
  3. Hi guys, This has boggled my mind for a while now. I have a OTL that has a tool script attached to it (Type Properties > Tool section), that evokes a PySide interface. The problem is that when I run the tool a few times, every single time a new instance of the interface is being opened, while the old one is still alive. So I'm ending up with lots of open windows of the same tool after a while which is super annoying. How can I prevent this from happening? I want to have only one single instance running at a time, basically close the old window if the tool is run again. Here's a really simple example that we could use as a test case. (Same problem if I run it as a shelf tool) from PySide import QtGui, QtCore class Window(QtGui.QWidget): """Simple Test""" def __init__(self): super(Window, self).__init__() self.setGeometry(50, 50, 500, 300) self.setWindowTitle("test") self.home() def home(self): btn = QtGui.QPushButton("Test Button") a_label = QtGui.QLabel("Test Label") qvbox = QtGui.QVBoxLayout() qvbox.addWidget(btn) qvbox.addWidget(a_label) qvbox.insertStretch(2) self.setLayout(qvbox) def run(self): self.show() main = Window() main.run() Some where I read that using the QEventLoop might help to detect running instances with hou.ui.eventLoopCallbacks(), but after trying some stuff for a few hours, I'm at my wits end. Help here would be much appreciated Thanks!!!
  4. A few weeks ago i started working on a shelf tool for my self, to learn PyQt and make my own live a bit easier. It allows uses to create a list of node names and assign colours to each name. When applied all nodes in the project matching to any of the given names is given a colour linked to that name. This can be used for example if you want to give all Null nodes the same colour without havin to look for every node in your project. I'ts almost finished and would like some feedback on possible improvements. attached is a file with the code. Simply create a new shelf tool and add the code in script tab. node coloring tool.txt
  5. Hi, I'm currently working on an asset browser implemented as a python panel using PySide. The main part of it is a QListWidget containing one items per asset. I'm trying to implement drag and drop functionality to place items directly in viewport at drop position. For dragging I'm using the itemPressed signal, which is sent by QListWidget when holding the mouse button over an item. Then I want to check if a drop is allowed on mouseMoveEvent() by traversing all viewports and checking if the mouse cursor is located inside. But can't find a way to check if the mouse cursor is over the viewport. Also I need the exact drop position when releasing the mouse button. I found this related topic http://forums.odforce.net/topic/20382-geometry-point-under-the-mouse/ and tried to adopt the first block to get the drop position in world space. For testing I just created a default Mouse CHOP and called hou.evalParm('/obj/chopnet/mouse") from withi mouseReleaseEvent(), but it always fails (the path is definetely correct) with hou.OperationFailed exception. Also calling hou.GeometryViewport.mapFromMouseChop() always fails for me, even if I just pass (0.0, 0.0). Here is some code: class AssetListWidget(QtGui.QListWidget): def __init__(self, parent=None): QtGui.QListWidget.__init__(self, parent) # doing some initialization here self.itemPressed.connect(self.onItemPressed) def onItemPressed(self, item): self.draggedItem = item # cache sceneviewers for paneTab in hou.ui.curDesktop().paneTabs(): if paneTab.type() == hou.paneTabType.SceneViewer: self.sceneViewers.append(paneTab) def mouseMoveEvent(self, ev): allowDrag = False for sceneViewer in self.sceneViewers: for viewport in sceneViewer.viewports(): try: mx, my = hou.evalParmTuple("/obj/chopnet/mouse") # always fails vx, vy = v.mapFromMouseChop(mx, my) # screen to view direction, position =v.mapToWorld(vx,vy) # view to world except hou.OperationFailed as err: print err """ try: print viewport.mapFromMouseChop(0.0, 0.0) # always fails except hou.OperationFailed as err: print err """ def mouseReleaseEvent(self, ev): # will be similiar to above QtGui.QListWidget.mouseReleaseEvent(self, ev) What am I doing wrong? How do I have to set up the Mouse CHOP properly? Does someone have a better advice for implementing this feature (if it is even possible using hom)? Thanks for any help! Best, Satara
  6. Pipeline Technical Director - Digital Domain Vancouver Location: Vancouver, BC Summary: Pipeline Technical Directors are responsible for improving the overall efficiency of the facility-wide production pipeline. They design, implement, and manage tools that assist the digital artists with their daily use of both third party and in-house software and systems. These tools are intended to make the computer graphics production as efficient and productive as possible. Pipeline TDs work with peers and supervisors to craft novel tools, techniques, and procedures to aid the execution of the current project and advance the capabilities of the facility. The role requires strong technical and communication skills, as well as a firm understanding of software design, graphics, and production work flow. Principal Duties and Responsibilities: • Work with other TDs and artists to help design and create tools to be integrated into Digital Domain's existing pipeline. These tools will be created using a combination of custom and commercial Python and C++ APIs- including those applicable to Nuke, Maya, and Houdini dependent upon the emphasis of the specific role. • Work with department representatives to augment their work flows and tool sets to achieve specific goals of the project • Work with artists to troubleshoot and fix problems • Craft and update documentation for tools, techniques and work flows generated by the Technical Director Education, Experience and Skills Required: • 3+ years experience as a Technical Director • Degree in Computer Science, Engineering, Mathematics, or equivalent work experience • Practical knowledge of Python strongly desired, knowledge of PyQt a plus • Working experience with one or more professional graphics packages, including Maya, Houdini and Nuke • Proficiency in one or more professional graphics package C++/ Python APIs, including the Maya SDK, HDK, Nuke SDK, Mental Ray SDK, and Prman SDK preferred • Proficiency in applicable domain specific programming language(s) including Mel, HScript, RSL, MetaSL To apply for this position submit an application at www.digitaldomain.com/careers/ Please select Vancouver from the location drop down menu
  7. Python in CG pipeline Masterclass with Pavel Giydenko originaly taught in Russian, translated (by me) to English. Toppics include - Python in CG Pipeline intro - Implementation of PyQt - Python- operators in Houdini - Live Connect and Data Transfer - Correct pattern for Object Oriented Programming Formore info, scene files and code: Pavels Blog
  8. Hi, I looked for but couldn't find an answer to my question, so sorry if this has actually been answered before. I am having a hard time having the PyQt4 library that is installed on my Win7 machine imported into houdini. When I try to run my code that includes an import command of PyQt4, I am getting: ImportError: No module named PyQt4 I already have this path defined in my windows environment variables. One thing I am noticing though is: when I check out the sys.path inside python shell, there doesn't seem to be any of my windows global environment paths listed there. I guess the question I have is: how do I get them to be seen by Houdini? Thanks!
  9. Hey guys I started using pyqt inside Houdini using eventloops. I followed this link from sidefx for setup and I'm able to get it working http://www.sidefx.com/docs/houdini12.5/hom/cookbook/pyqt/part1/ But it seems that the application runs independent of Houdini's UI. I'm just curious whether there is a way I can make this window behave like a Houdini UI window. So if I minimize Houdini, the pyqt window also gets minimized and If I maximize, the Pyqt window should get focus somthing of that sort.. Any help much appreciated. Cheers -J