Jump to content
probiner

Heightfield Isolines?

Recommended Posts

ox3Dhnu.png


I'm meddling with Heightfields and one thing that seems to be missing int the workflow and amazed me in 3DSMax Forest plugin is the convert masks to curves. Is there a way to create isolines in Houdini from either @height or @mask?
I'm looking into creating road/river/track networks into terrain so if there's any good reference to follow let me know, thanks.

For now I'm just generating them irrespective of the heightfield.


2L61tSN.gif

ioca0xV.png

Edited by probiner

Share this post


Link to post
Share on other sites

I think you need to convert to geometry, and then make slices. I don't think you can go from volume straight to curves, i.e. an n-gon.

 

Share this post


Link to post
Share on other sites

Ok, so with the help on Discord later today, first I tried Boolean and then Voronoi, but those required to convert to geometry. So then I had another idea, using Trace SOP with the Heightfield as a COP! This way the isolines are sampled directly from the image!
Just be sure to use a color plane, like the default C. Don't use single channel like the ones created by the "SOP Import" button. Single channels for some reason will bug the Trace SOP. Wasted a lot of time figuring out they were the cause. There must be a logical reason but I don't know yet.


HinD2eE.png

COPs + Trace ftw! :D
Thanks for looking into it Noobini!

Edited by probiner
  • Like 2

Share this post


Link to post
Share on other sites
On 13.11.2018 at 2:11 AM, probiner said:

Ok, so with the help on Discord later today, first I tried Boolean and then Voronoi, but those required to convert to geometry. So then I had another idea, using Trace SOP with the Heightfield as a COP! This way the isolines are sampled directly from the image!
Just be sure to use a color plane, like the default C. Don't use single channel like the ones created by the "SOP Import" button. Single channels for some reason will bug the Trace SOP. Wasted a lot of time figuring out they were the cause. There must be a logical reason but I don't know yet.


HinD2eE.png

COPs + Trace ftw! :D
Thanks for looking into it Noobini!

 

here's another one which might be faster by avoiding the foreachLoop.

hth. petz

isolines.hipnc

 

 

  • Like 3

Share this post


Link to post
Share on other sites
21 hours ago, petz said:

 

here's another one which might be faster by avoiding the foreachLoop.

hth. petz

isolines.hipnc

 

 

Thanks Petz, nice approach, to focus more on COPs operators to perform things that are more natural to image than SOP making full use of the enviorment! I guess the only "challange" is to get a consistent "u"/ height for the whole points of each slice.
Thanks!
Only change I would do is to sample the hf directly:
 WOBR5Sh.png

22 hours ago, konstantin magnus said:

Just in case here is another procedural solution using heightfield conversion and booleans.

 

height_lines.hip

terrain_lines.jpg

Thanks konstantin, I tried converting the hf to mesh and then boolean and found it quite slow. But it's obvious one of the first ideas to try. I found the voronoi fracture, with a vertical line, to provide similar results, faster and more consistent in this particular case.

Cheers!

Edited by probiner

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×