Why there is no way to save edge selection in a group?
4964 4 2- mlesin
- Member
- 176 posts
- Joined: May 2006
- Offline
- wolfwood
- Member
- 4261 posts
- Joined: July 2005
- Offline
You can only make groups of Points and Primitives. Edges and Vertices aren't supported.
Internally only Points and Primitives are stored in the Geo Detail, groups are also stored in the detail as a bit array. You can see this if you save out a small piece of geo with groups as a .geo file and open it up in a text editor.
That said, you *can* do some hackery using ordered groups.
Internally only Points and Primitives are stored in the Geo Detail, groups are also stored in the detail as a bit array. You can see this if you save out a small piece of geo with groups as a .geo file and open it up in a text editor.
That said, you *can* do some hackery using ordered groups.
if(coffees<2,round(float),float)
- mlesin
- Member
- 176 posts
- Joined: May 2006
- Offline
Nice trick but it's implementation is very limited. Try to create closed the edge selection form in your example… something like… 0-2 5 4 7 6 3 0
You see… 0 can't be included twice here.
Is this situation with Points and Primitives have only historical reason or any other motivation?
I think it would be great if edges (and possibly verticies) can be also grouped.. I understand that because it would be required to make changes in houdini's kernel to do so and therefore it will always stay in my dreams forever
You see… 0 can't be included twice here.
Is this situation with Points and Primitives have only historical reason or any other motivation?
I think it would be great if edges (and possibly verticies) can be also grouped.. I understand that because it would be required to make changes in houdini's kernel to do so and therefore it will always stay in my dreams forever
- wolfwood
- Member
- 4261 posts
- Joined: July 2005
- Offline
Indeed, it would be great if we could group edges and vertices, but I doubt we will get that ability any time soon. In the meantime we have to rely on various hacks and tricks to get the job done.
Its true that example I posted is limited, its main purpose was to inspire thinking outside the box. You could always make some custom expression functions to do what you want. For example,
Same expression as before, but as a custom expression
string openEdgeGroup(string grpName) {
string ret = “p”;
string ptList = pointlist(opinputpath(“.”,0),grpName);
ret = ret + strreplace(ptList,“ ”,“-”);
return ret;
}
Same as the previous one but its for closed edges.
string closedEdgeGroup(string grpName) {
string ret = “p”;
string ptList = pointlist(opinputpath(“.”,0),grpName);
ret = ret + strreplace(ptList,“ ”,“-”);
ret = ret + “-” + arg(ptList,0);
return ret;
}
Nice trick but it's implementation is very limited. Try to create closed the edge selection form in your example… something like… 0-2 5 4 7 6 3 0
You see… 0 can't be included twice here.
Its true that example I posted is limited, its main purpose was to inspire thinking outside the box. You could always make some custom expression functions to do what you want. For example,
Same expression as before, but as a custom expression
string openEdgeGroup(string grpName) {
string ret = “p”;
string ptList = pointlist(opinputpath(“.”,0),grpName);
ret = ret + strreplace(ptList,“ ”,“-”);
return ret;
}
Same as the previous one but its for closed edges.
string closedEdgeGroup(string grpName) {
string ret = “p”;
string ptList = pointlist(opinputpath(“.”,0),grpName);
ret = ret + strreplace(ptList,“ ”,“-”);
ret = ret + “-” + arg(ptList,0);
return ret;
}
if(coffees<2,round(float),float)
- Simon
- Member
- 2199 posts
- Joined: July 2005
- Offline
-
- Quick Links