POV-Ray : Newsgroups : povray.general : Normal vs. smooth triangle mesh : Re: Normal vs. smooth triangle mesh Server Time
9 Aug 2024 03:24:44 EDT (-0400)
  Re: Normal vs. smooth triangle mesh  
From: Warp
Date: 23 Aug 2000 09:33:10
Message: <39a3d296@news.povray.org>
Greg M. Johnson <gre### [at] my-dejanewscom> wrote:
: I have been unable to get normals to show up on a DXF object that I
: imported into pov (as a smooth triangle mesh? I think) using 3DWin.
: Is there some trick to this?

  Are you sure they are smooth_triangles? Have you checked the contents
of the file the program exports?

: Also, how can I get something to work like (yes, asked question 2-3
: times before, not satisfied)

:     normal{
:         gradient x
:         normal_map{
:             [0.0    down]
:             [0.2    down]
:             [0.21    up]
:             [1.0    up]
:             }
:     }

: I find the SLOPE map to be pretty much useless, I'm not worried about
: slope, I just want it UP in some places and DOWN in others, to my
: specification.

  But that's exactly what slope maps are for. Your example would be something
like:

normal
{ gradient x 1  // note that your example lacks this "amount" number
  slope_map
  { [0.0 <1,-1>]
    [0.2 <0,-1>]
    [0.21 <0,1>]
    [1.0 <1,1>]
  }
}

  The two numbers in the 2D-vector have the following meaning:

  - The first number is the "height" of the surface at that point (of course
    only the apparent height). I don't remember if the allowed range for this
    value was from 0 to 1 or if you can go outside that range, but 0-1 will
    suffice for most things.

  - The second number is the "slope" of the surface at that point (again,
    only the apparent slope).
    0 means unmodified surface normal, a positive value means upwards slope and
    a negative value means downwards slope. (As with all slopes, this value
    is the tangent of the angle, that is, a value of 1 would mean a slope of
    45 degrees and -1 would mean a slope of -45 degrees.)

  So what does this:

[0.0 <1,-1>]
[0.2 <0,-1>]
[0.21 <0,1>]
[1.0 <1,1>]

mean?

  - At a pattern value 0 the surface "height" will be at 1 (ie. like 1 unit
"above" the actual surface) and the "slope" of the surface will be 45 degrees
down.
  - At a pattern value of 0.2 the "height" will be at 0 (like at the height
of the actual surface) and the "slope" will still be 45 degrees down.
  - At a pattern value of 0.21 the "height" is 0 but now the "slope" will be
45 degrees up.
  - And finally at value 1 we are back to "height" 1 with "slope" of 45
degrees up.

-- 
main(i,_){for(_?--i,main(i+2,"FhhQHFIJD|FQTITFN]zRFHhhTBFHhhTBFysdB"[i]
):_;i&&_>1;printf("%s",_-70?_&1?"[]":" ":(_=0,"\n")),_/=2);} /*- Warp -*/


Post a reply to this message

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