POV-Ray : Newsgroups : povray.newusers : imagemap not covering mesh or hightfield Server Time
30 Jul 2024 06:21:12 EDT (-0400)
  imagemap not covering mesh or hightfield (Message 1 to 8 of 8)  
From: Axel R DuVirage
Subject: imagemap not covering mesh or hightfield
Date: 20 Sep 2004 20:05:00
Message: <web.414f6f52ca70dcc8360c6a050@news.povray.org>
why are my imagemaps only covering 1/4 of heightfield or meshes ? i am
modelling in MORAY 3.5 and rendering in PovRay 3.6.1


Post a reply to this message

From: Mike Williams
Subject: Re: imagemap not covering mesh or hightfield
Date: 20 Sep 2004 20:31:30
Message: <ohIWWEARV3TBFwxU@econym.demon.co.uk>
Wasn't it Axel R DuVirage who wrote:
>why are my imagemaps only covering 1/4 of heightfield or meshes ? i am
>modelling in MORAY 3.5 and rendering in PovRay 3.6.1

Perhaps you think that imagemaps should cover the square from <-1,-1>
to <1,1> [1], but they don't. They cover the area from <0,0> to <1,1>


[1] Which actually might have been a sensible way to have done it in the
first place, but it's far too late to change things now.

-- 
Mike Williams
Gentleman of Leisure


Post a reply to this message

From: Warp
Subject: Re: imagemap not covering mesh or hightfield
Date: 21 Sep 2004 06:46:18
Message: <4150067a@news.povray.org>
Mike Williams <nos### [at] econymdemoncouk> wrote:
> [1] Which actually might have been a sensible way to have done it in the
> first place

  Why?

-- 
#macro N(D)#if(D>99)cylinder{M()#local D=div(D,104);M().5,2pigment{rgb M()}}
N(D)#end#end#macro M()<mod(D,13)-6mod(div(D,13)8)-3,10>#end blob{
N(11117333955)N(4254934330)N(3900569407)N(7382340)N(3358)N(970)}//  - Warp -


Post a reply to this message

From: Mike Williams
Subject: Re: imagemap not covering mesh or hightfield
Date: 21 Sep 2004 09:28:16
Message: <UXK57AAFoBUBFwNb@econym.demon.co.uk>
Wasn't it Warp who wrote:
>Mike Williams <nos### [at] econymdemoncouk> wrote:
>> [1] Which actually might have been a sensible way to have done it in the
>> first place
>
>  Why?

For consistency with things that were invented around the same time
(many of which are not used much these days) like Sphere, Cylinder_X,
Cone_Y, Disk_Z, Cube and more recent things like the torus and
Supertorus which all pop into existence centred around <0,0,0> rather
than <0.5,0.5,0>.

I'd guess that even today only a relatively small percentage of image
maps get used without translate <-0.5,-0.5,0> scale 2.

-- 
Mike Williams
Gentleman of Leisure


Post a reply to this message

From: Warp
Subject: Re: imagemap not covering mesh or hightfield
Date: 21 Sep 2004 14:00:49
Message: <41506c51@news.povray.org>
Mike Williams <nos### [at] econymdemoncouk> wrote:
> For consistency with things that were invented around the same time
> (many of which are not used much these days) like Sphere, Cylinder_X,
> Cone_Y, Disk_Z, Cube and more recent things like the torus and
> Supertorus which all pop into existence centred around <0,0,0> rather
> than <0.5,0.5,0>.

  How about consistency with other texture-related things, like for
example most patterns which start from <0,0,0> and usually go to some
multiple of <1,1,1> (such as gradient, checker, etc)?

-- 
plane{-x+y,-1pigment{bozo color_map{[0rgb x][1rgb x+y]}turbulence 1}}
sphere{0,2pigment{rgbt 1}interior{media{emission 1density{spherical
density_map{[0rgb 0][.5rgb<1,.5>][1rgb 1]}turbulence.9}}}scale
<1,1,3>hollow}text{ttf"timrom""Warp".1,0translate<-1,-.1,2>}//  - Warp -


Post a reply to this message

From: Hughes, B 
Subject: Re: imagemap not covering mesh or hightfield
Date: 21 Sep 2004 14:56:38
Message: <41507966@news.povray.org>
Also, heightfield itself goes hand in hand with image mapping once rotated 
90*x, so those are mutually compatible as-is.

What might have been a good idea, and could still be, would be to use a 
keyword in height_field and image_map to allow automatically centering 
them... and anything else that places a corner at <0,0,0>. Except then I'd 
think rescaling to double the initial 1 unit size might be something to 
consider, too, so that the area covered would be like a unit-sized sphere, 
cylinder, cone, etc.

Bob H.


Post a reply to this message

From: Mike Williams
Subject: Re: imagemap not covering mesh or hightfield
Date: 21 Sep 2004 15:04:29
Message: <kA8qfGAckHUBFwrN@econym.demon.co.uk>
Wasn't it Warp who wrote:
>Mike Williams <nos### [at] econymdemoncouk> wrote:
>> For consistency with things that were invented around the same time
>> (many of which are not used much these days) like Sphere, Cylinder_X,
>> Cone_Y, Disk_Z, Cube and more recent things like the torus and
>> Supertorus which all pop into existence centred around <0,0,0> rather
>> than <0.5,0.5,0>.
>
>  How about consistency with other texture-related things, like for
>example most patterns which start from <0,0,0> and usually go to some
>multiple of <1,1,1> (such as gradient, checker, etc)?

Most patterns are centred at <0,0,0>, not <.5,.5,0>. 

Note that if you paint checker onto "box {<0,0,0><1,1,1>}" all the faces
are single colours, so I claim that's only a quarter of the checker
pattern. The repeat unit of the checker pattern is the unit cube, not
the <0,0,0><1,1,1> cube.

The gradient pattern is a bit of an oddity, particularly now that it has
recently been redesigned. 

-- 
Mike Williams
Gentleman of Leisure


Post a reply to this message

From: Warp
Subject: Re: imagemap not covering mesh or hightfield
Date: 21 Sep 2004 15:24:50
Message: <41508002@news.povray.org>
Mike Williams <nos### [at] econymdemoncouk> wrote:
> Note that if you paint checker onto "box {<0,0,0><1,1,1>}" all the faces
> are single colours, so I claim that's only a quarter of the checker
> pattern. The repeat unit of the checker pattern is the unit cube, not
> the <0,0,0><1,1,1> cube.

  I said "to a multiple of <1,1,1>", not "to <1,1,1>".

  The checker pattern actually starts from <0,0,0> (the first cube from
that to positive axes is colored as the first color given).

  The image_map pigment works in the same way as checker (unless you
specify the 'once' keyword), which is consistent and logical.

  Also think how UV-mapping works by default: The texture will be taken
from <0,0,0> to <1,1,0>. If you just create an image_map, it will work
right away with an uv-mapped object.

-- 
#macro M(A,N,D,L)plane{-z,-9pigment{mandel L*9translate N color_map{[0rgb x]
[1rgb 9]}scale<D,D*3D>*1e3}rotate y*A*8}#end M(-3<1.206434.28623>70,7)M(
-1<.7438.1795>1,20)M(1<.77595.13699>30,20)M(3<.75923.07145>80,99)// - Warp -


Post a reply to this message

Copyright 2003-2023 Persistence of Vision Raytracer Pty. Ltd.