Copy to Points does not transfer groups?

   7983   9   1
User Avatar
Member
337 posts
Joined: June 2013
Offline
Am I missing something or Copy to Points doesn't transfer the point groups to the copied geometry?
Edited by probiner - Nov. 2, 2017 04:45:47
User Avatar
Member
323 posts
Joined: Jan. 2015
Online
No you are not missing something. Only this will be used:
http://www.sidefx.com/docs/houdini/copy/instanceattrs [www.sidefx.com]

BUT: You probably want to use a “for each loop”:
http://www.sidefx.com/docs/houdini/copy/tutorial_stamping [www.sidefx.com]

Very well explained.

Have Fun

Olaf
User Avatar
Member
337 posts
Joined: June 2013
Offline
Well my issue seems to be more about transferring the groups and I don't see how doing a for each would help. I will have question about “For each” in another thread though.
I could convert the group to an attribute and then back to a group, I was just expecting the sop to do it without extra steps and garbage attributes.



Here's a example with Sweep, also showing issues (scene attached)


Cheers
Edited by probiner - Nov. 2, 2017 23:29:10

Attachments:
SweepPointGroupBug.hiplc (55.7 KB)

User Avatar
Member
323 posts
Joined: Jan. 2015
Online
Hi probinier,
here scene with for each loop and group transfer.
NO extra step needed just the grouptransfer node.

Olaf

Attachments:
copy_to_points_with_grouptransfer.JPG (74.8 KB)
copy_to_points_with_grouptransfer.hiplc (79.4 KB)

User Avatar
Member
323 posts
Joined: Jan. 2015
Online
Hi again,
had a quick look at your “sweep” issue.
I would not expect “sweep” to respect groups. But you are right the result is strange.

kind regards

Olaf
User Avatar
Member
337 posts
Joined: June 2013
Offline
Many thanks Olaf for the scene and looking into my issue. I filed a Bug report.

Cheers
User Avatar
Member
337 posts
Joined: June 2013
Offline
While this works Olaf, there must be a better way than a for each search, hehe… I mean, the pairing between copy and point is already establish in the copy to point SOP. Is there a way to drain groups from one mesh to the other not based on search and for each loop but through element index?

Cheers
Edited by probiner - Nov. 7, 2017 10:23:50
User Avatar
Member
471 posts
Joined: Nov. 2013
Offline
You can also use attribute itself to recreate group after copy to point node.
See HIP file.

Attachments:
Transfer Group via Attribute.hip (87.7 KB)

User Avatar
Staff
2540 posts
Joined: July 2005
Offline
There is. Use attributes. They are faster too. But if you want to use groups and work with Copy to Points, you can convert your group in to an 8 bit integer type attribute of same name. This will come over nicely in the Copy To Points SOP.
After that, re-create your group using an Attribute Expression or Attribute Wrangle using
i@group_group1 = i@group1;
A bit more work but certainly way more efficient than using a foreach block to do this.

Attachments:
copy_to_points_groups_as_attribs.jpg (553.2 KB)
copy_to_points_groups_as_attributes.hip (142.9 KB)

There's at least one school like the old school!
User Avatar
Member
337 posts
Joined: June 2013
Offline
Jeff and Nima
Thank you for your time and scenes. Sadly, maybe I'm wrong, it seems both solutions are the same thing I've shown on my second post

My issue with this workflow is that:
- It's “dirty” since I'm creating trash attributes I don't need.
- I'm not processing all groups automatically and have to micromanage it.

I see both of you using Attribute Create and I'm wondering why use it instead of Attribute Wrangle for this case or what are the advantages over the wrangle in general. I'm not Houdini old school

@Nima
I'm not after coloring stuff. Used it here just as a display mechanism but thank you for highlighting that is possible to use expressions with it.

@Jeff
I'm not settling with this answer, I'll RFE x) I think either Copy to Points could drain groups from which geometry elements the copies are paired with, or…
Maybe Group Transfer could have an input where an attribute can control the mapping of the source elements to the target elements, since there's a mapping going on with its “search” but it's blackboxed, so this new input would override the Search and maybe be faster. This solution might also have broader and more abstract applications beyond solving Copy to Points group transfer.
So, which is a better RFE? Copy to Points to transfer groups or Group Transfer mapping input?
Mockup of proposed Groups Transfer workflow:


I can see the similar mapping mechanism being further used to also transfer in mass things like primitive and vertex attributes which are atm ignored in operations like Copy to Points, etc.

As for the edges… yeah…
Edited by probiner - Nov. 9, 2017 15:48:49
  • Quick Links