Jump to content

Viewer States and onDraw indices


shadowst17

Recommended Posts

Hello, I'm wondering if anyone has had any issues getting hou.GeometryDrawable objects to set the "indices" parameter onDraw when manipulating the attribute data on the geometry data it's referencing in Houdini 18.0. 

 

For example I have a curve tool i've made and you can select multiple CVs. I have a hou.GeometryDrawable that is linked to the points geo inside the node. I create a list of points I want to select and feed that into the onDraw function.

def onDraw(self, kwargs):
     handle = kwargs['draw_handle'] 
     self.anchor_selected.draw(handle, {"indices": self.selectedPnts})

This works but I also have a handle that I create to move said selected points and as soon as I move the handle all the points are drawn with the selection hou.GeometryDrawable as if it's disregarding the indices. I can go back to select individual points again after the handle is no longer moving. It's not specifically to do with position, any attribute on the geometry that is changed breaks the drawable too. I've tried manually drawing at the end of the onHandleToState or force recooking the node that the hou.GeometryDrawable is referencing but no luck.

I don't know if this is a bug, an intentional limitation or possibly done to keep it optimized.

 

I wish I could attach a file but it's work related.

 

I guess I can just do it the way the example files have where you create the geo and points on the node and store them in a dictionary then iterate over them. Feels like it would be a more inefficient way to do it but I guess going the route I have with this problem probably one of the reasons not to do it this way. 

Edited by shadowst17
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...