POV-Ray : Newsgroups : povray.advanced-users : Road Surface Typeface : Re: Road Surface Typeface Server Time
18 Apr 2024 10:33:26 EDT (-0400)
  Re: Road Surface Typeface  
From: omniverse
Date: 12 Mar 2018 22:20:01
Message: <web.5aa7347fd2f6c4ee9c5d6c810@news.povray.org>
clipka <ano### [at] anonymousorg> wrote:
> Am 12.03.2018 um 17:58 schrieb Bald Eagle:
>
> > I have not seen any specifications for these letters and arrows, and have not
> > yet found a source to download such a font / typeface.
>
> I guess different countries will have different standards (if any) for
> such purposes.
>
> According to Wikipedia, pictograms, numbers and texts on German roads
> must match regular traffic signs (*), except that they are to be scaled
> "vertically" by a factor of 3.
>
> (* Slight variations occur in practice, to allow for application via
> stencils.)
>
> > Doing a bit of trigonometric scribbling, at first glance it appears that the
> > upper half and lower half of such a typeface [ideally] ought to be scaled to
> > different extents.
>
> As far as I can tell, that's usually not done.

And probably for good reason.
Trying this out with projected_through lights the effect can appear great for a
non-parallel light source and camera placed at same location. It goes badly when
realizing it won't fulfill every situation, and worse because the road surface
text and symbols need so much space to accommodate them if done as a projection.

Check this out, if you don't mind the basic scene file inaccuracies. I literally
threw it together.

// BEGIN SCENE FILE
#version 3.7;

global_settings {
 assumed_gamma 1
 ambient_light 0
}

// parallel typical method of painting road surface text & symbols
#declare Parallel=no; // otherwise singular projected views
// projected viewpoint won't be seen good from other views

#declare OverheadView=no; // from above to see distortion
// a projected view text or symbol would require much more paint area

camera {
 location #if (OverheadView) <0,30,5> #else <0,3,-15> #end
 look_at #if (OverheadView) <0,0,5> #else <0,0,0> #end
 angle 30
}

#declare Text=
text {
 ttf "arialbd"
 //"IIIIIIIIII" // crosswalk
 "STOP"
 0.1, 0
 translate <-1.33,0,0>
}

light_source {
 <0,3,-15>,
 color rgb 1
  projected_through { object { Text } }
  #if (Parallel) parallel point_at 0 #end
  translate <-3,0,0>
}

#declare StraightArrowSymbol=
union {
 box {
  -0.5,0.5
  scale <0.25,0.75,0.01>
 }
 box {
  -0.5,0.5
  rotate z*45
  clipped_by {
   plane {
    -y, 0
   }
  }
  scale <0.325,0.5,0.01>
  translate y*0.375
 }
 translate <0,0.5,0>
}

light_source {
 <0,3,-15>,
 color rgb 1
  projected_through { object { StraightArrowSymbol } }
  #if (Parallel) parallel point_at 0 #end
  translate <0,0,0>
}

#declare RightTurnSymbol=
union {
 box {
  -0.5,0.5
  scale <0.25,0.5,0.01>
 }
 torus {
  2,1
  rotate x*90
  clipped_by {
   box {
    0,3
   }
  }
  scale <-0.125,0.125,0.01>
  translate <0.25,0.25,0>
 }
 box {
  -0.5,0.5
  rotate z*45
  clipped_by {
   plane {
    -y, 0
   }
  }
  scale <0.325,0.5,0.01>
  rotate -z*90
  translate <0.25,0.5,0>
 }
 translate <0,0.5,0>
}

light_source {
 <0,3,-15>,
 color rgb 1
  projected_through { object { RightTurnSymbol } }
  #if (Parallel) parallel point_at 0 #end
  translate <3,0,0>
}

plane {
 y, 0
 pigment {
  color rgb 1
 }
 finish {
  diffuse 2
 }
}

// grid
union {
#for (I,-10,10,1)
cylinder {
 -x*10,x*10,0.02
 pigment {
  color blue 1
 }
 finish {
  emission 1 diffuse 0
 }
 translate z*I
}
cylinder {
 -z*10,z*10,0.02
 pigment {
  color green 1
 }
 finish {
  emission 1 diffuse 0
 }
 translate x*I
}
#end
no_shadow
}
// END SCENE FILE


Post a reply to this message

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