"Make circle" as a SOP?

   5633   10   2
User Avatar
Member
670 posts
Joined: Sept. 2013
Offline
How can I access the new “make circle”-function procedurally?

(I also asked on http://forums.odforce.net/topic/26204-make-circle-sop/ [forums.odforce.net] a few days ago.)
https://procegen.konstantinmagnus.de/ [procegen.konstantinmagnus.de]
User Avatar
Member
333 posts
Joined: Oct. 2012
Offline
i dont think the make circle is implemented as a SOP.

but you can use this:
http://orbolt.com/asset/mifth::mifth_make_circle [orbolt.com]
User Avatar
Member
670 posts
Joined: Sept. 2013
Offline
thanks for showing me the asset.

isn`t there also a way to call the ‘make circle’-function with python?
https://procegen.konstantinmagnus.de/ [procegen.konstantinmagnus.de]
User Avatar
Member
1755 posts
Joined: March 2014
Offline
It would be cool to have this by default. The problem with relying on scripts/custom tools for lots of simple things is that one has to chase them in the first place, then manage them for each installation which requires time and some mental resources to keep track of what you have/has been installed, etc.
Out of the box for these simple things is always better.
User Avatar
Member
670 posts
Joined: Sept. 2013
Offline
I also dont think it fits Houdini´s philosophy to create a function that cant be accessed with nodes.
https://procegen.konstantinmagnus.de/ [procegen.konstantinmagnus.de]
User Avatar
Staff
4159 posts
Joined: Sept. 2007
Offline
Yeah I too was disappointing they weren't available in a procedural-friendly format. I believe I found the underlying functions in the HDK, in case anyone wants to build a SOP or use inlinecpp, until they get in by default:

GU_EdgeUtils.h [archive.sidefx.com]

// utility function that will move connected points into circles
// only loops containing points participating in two edges will be moved
GU_API void GUcircleEdges(UT_Map<GA_Offset, UT_Vector3> &edits,
const GU_Detail &gdp,
const UT_Set<GA_Edge> &gaedges);

// utility function that tries to make all connected edges the same length
// each connected island edges will move towards its own target length
GU_API void GUevenlySpaceEdges(UT_Map<GA_Offset, UT_Vector3> &edits,
const GU_Detail &gdp,
const UT_Set<GA_Edge> &gaedges);

// utility function that will project connected points along a line
// only points participating in two edges will be moved
GU_API void GUstraightenEdges(UT_Map<GA_Offset, UT_Vector3> &edits,
const GU_Detail &gdp,
const UT_Set<GA_Edge> &gaedges);

*edit*
Submitted as RFE #76129
Edited by goldleaf - June 16, 2016 23:22:37
I'm o.d.d.
User Avatar
Member
45 posts
Joined: Feb. 2014
Offline
Send a RFE for it
User Avatar
Staff
4159 posts
Joined: Sept. 2007
Offline
Thanks for the reminder (added number to earlier post)
I'm o.d.d.
User Avatar
Member
118 posts
Joined: Feb. 2016
Offline
Yes, it would definitely be a nice addition to have a factory node that does that!

cheers
User Avatar
Member
4508 posts
Joined: Feb. 2012
Offline
There are some modeling operations like this one that are not exposed so you can either implement it yourself, or call the HDK function from a C++ Wrangle node and wrap it as a new HDA:

Senior FX TD @ Industrial Light & Magic
Get to the NEXT level in Houdini & VEX with Pragmatic VEX! [www.pragmatic-vfx.com]

youtube.com/@pragmaticvfx | patreon.com/animatrix | animatrix2k7.gumroad.com
  • Quick Links