|
|
|
|
|
|
| |
| |
|
|
|
|
| |
| |
|
|
High!
Since my childhood days in the 1970s I'm fascinated with maps,
especially physical and topographic maps, and I early started designing
fictitious continents and whole planets by drawing such maps. So when it
comes to creating terrain with PoV-Ray, I also favor such a
"cartographic" approach using contour line maps to be converted to
heightfields rather than intuitive mesh modeling or fully procedural
isosurfaces (which give only little control over topography).
Interpolating missing height levels manually from scanned contour lines
is cumbersome, but nowadays there is at least one program to do this
work - BlackArt (http://www.terrainmap.com/downloads/blackart.zip).
What bothers me more is that when viewed at close range, all
heightfields inevitably look "blocky", so I ask myself whether it is
possible to convert the height value matrix of a heightfield by
"cross-approximating" each row and column into a discrete 3D function
like it is used with isosurfaces...
Does anyone here know about such POV macros/external programs to do this
job?
See you in Khyberspace!
Yadgar
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
=?ISO-8859-15?Q?J=F6rg_=27Yadgar=27_Bleimann?= <yaz### [at] gmxde> wrote:
> High!
>
> Since my childhood days in the 1970s I'm fascinated with maps,
> especially physical and topographic maps, and I early started designing
> fictitious continents and whole planets by drawing such maps. So when it
> comes to creating terrain with PoV-Ray, I also favor such a
> "cartographic" approach using contour line maps to be converted to
> heightfields rather than intuitive mesh modeling or fully procedural
> isosurfaces (which give only little control over topography).
>
> Interpolating missing height levels manually from scanned contour lines
> is cumbersome, but nowadays there is at least one program to do this
> work - BlackArt (http://www.terrainmap.com/downloads/blackart.zip).
> What bothers me more is that when viewed at close range, all
> heightfields inevitably look "blocky", so I ask myself whether it is
> possible to convert the height value matrix of a heightfield by
> "cross-approximating" each row and column into a discrete 3D function
> like it is used with isosurfaces...
>
> Does anyone here know about such POV macros/external programs to do this
> job?
>
> See you in Khyberspace!
>
> Yadgar
Have you tried using the "smooth" statement in heightfields?
-Mike
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
"SharkD" <nomail@nomail> schreef in bericht
news:web.493dc3cc7670da7f65c9778a0@news.povray.org...
> =?ISO-8859-15?Q?J=F6rg_=27Yadgar=27_Bleimann?= <yaz### [at] gmxde> wrote:
>
> Have you tried using the "smooth" statement in heightfields?
>
That is not enough. In the end, blocks remain visible when viewing from very
near. I know of no external solution to this. When really necessary, I try
to make the height_field map as large as I can.
Thomas
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
> heightfields inevitably look "blocky", so I ask myself whether it is
> possible to convert the height value matrix of a heightfield by
> "cross-approximating" each row and column into a discrete 3D function like
> it is used with isosurfaces...
You can do that, but if you have more than a few data points on each
row/column your isosurface function is going to become horrendous and very
slow to render.
Did you consider using the "bicubic_patch" object in POV? Maybe you could
find (or write) some code to convert each heightfield cell into a bicubic
patch, this would then still look very smooth even if you got very close.
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
>
>Does anyone here know about such POV macros/external programs to do
>this job?
I suspect that isosurface spline functions might possibly do the job.
The basic strategy would be for a grid to be laid over the heightfield,
and for the edges of each square to be sampled to produce four splines.
Each square patch could then be rendered like the third entry on this
page:
http://www.econym.demon.co.uk/isotut/more.htm
except that that only takes the data from two of the edges.
What would be really nice would be to describe the contours as splines
and write an isosurface that interpolates between the spline functions,
but I imagine that would be rather difficult, and wouldn't be anywhere
near as sophisticated as the algorithm used by BlackArt.
--
Mike Williams
Gentleman of Leisure
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
High!
SharkD schrieb:
> Have you tried using the "smooth" statement in heightfields?
I did, but I would like to go for REAL smooth surfaces, not just
"cosmetic" normal tricks!
See you in Khyberspace!
Yadgar
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
> Does anyone here know about such POV macros/external programs to do this
> job?
Here are my experiments on that matter:
http://www.ignorancia.org/en/index.php?page=Heightfield_based_Isosurfaces
Indeed, it is an interesting method, but very slow with radiosity (not to
talk about media... ;).
Regards,
--
Jaime
Post a reply to this message
|
|
| |
| |
|
|
From: Christian Froeschlin
Subject: Re: Heightfields to isosurfaces?
Date: 9 Dec 2008 07:08:30
Message: <493e5fbe@news.povray.org>
|
|
|
| |
| |
|
|
> What bothers me more is that when viewed at close range, all
> heightfields inevitably look "blocky", so I ask myself whether it is
> possible to convert the height value matrix of a heightfield by
> "cross-approximating" each row and column into a discrete 3D function
> like it is used with isosurfaces...
what you can also try is to superimpose random detail from
f_ridged or similar onto a handcrafted lower resolution HF.
Suppose you have some 2048x2048 HF data, but enough free
memory so you could render a much higher resolution.
You can then
1. Define a pigment P based on the HF image_map
2. Define a pigment function FP based on P.gray
3. Define a random detail funtion FR (e.g., f_ridged)
4. Define a terrain function such as 0.9*FP + 0.1*FR
5. Create HF from function image at desired resolution
Of course it's still blocky, but maybe less so.
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
"scott" <sco### [at] scottcom> schreef in bericht
news:493e3cb6$1@news.povray.org...
>
> Did you consider using the "bicubic_patch" object in POV? Maybe you could
> find (or write) some code to convert each heightfield cell into a bicubic
> patch, this would then still look very smooth even if you got very close.
>
>
A program like GeoControl does something like that I think as it has the
possibility to export the heightfield as an .obj file. The other side of the
medal however, is that this file is HUGE, a few hundreds of MB for a high
resolution heightfield. This is very difficult to manage subsequently and I
am unsure about its render possibilities in terms of memory. I never could
go beyond the export process... :-(
Thomas
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
Jörg 'Yadgar' Bleimann nous illumina en ce 2008-12-09 06:58 -->
> High!
>
> SharkD schrieb:
>
>> Have you tried using the "smooth" statement in heightfields?
>
> I did, but I would like to go for REAL smooth surfaces, not just
> "cosmetic" normal tricks!
>
> See you in Khyberspace!
>
> Yadgar
You can use a hight_field for the far parts, and cover it with some
bicubic_patch for the close by area.
--
Alain
-------------------------------------------------
I find that the harder I work, the more luck I seem to have.
Thomas Jefferson
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |