File: meshcam_persp_compare.pov

package info (click to toggle)
povray 1%3A3.7.0.10-3
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 147,232 kB
  • sloc: cpp: 845,011; ansic: 122,118; sh: 34,204; pascal: 6,420; asm: 3,355; ada: 1,681; makefile: 1,389; cs: 879; awk: 590; perl: 245; xml: 95
file content (88 lines) | stat: -rw-r--r-- 2,386 bytes parent folder | download | duplicates (7)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
// This work is licensed under the Creative Commons Attribution-ShareAlike 3.0 Unported License.
// To view a copy of this license, visit http://creativecommons.org/licenses/by-sa/3.0/ or send a
// letter to Creative Commons, 444 Castro Street, Suite 900, Mountain View, California, 94041, USA.

/* Persistence Of Vision Raytracer sample file.

   Test scene for the Mesh Camera macros
  
   Comparison of the meshcam pinhole cameras with a regular camera
   to test the correctness of the results
   
   --
   Jaime Vives Piqueres, Jan. 2011  <jaime@ignorancia.org> */

/**********************************************************************************************
 * $File: //depot/povray/smp/distribution/scenes/camera/mesh_camera/meshcam_persp_compare.pov $
 * $Revision: #1 $
 * $Change: 5377 $
 * $DateTime: 2011/01/09 19:56:00 $
 * $Author: jholsenback $
 *********************************************************************************************/
#version 3.7;

// control center:
#declare use_mesh_cam=1;  //  0=regular camera, 1=pinhole mesh, 2=pinhole mesh with UV 

// common globals for all the demos
#include "demo_globals.inc"

// standard includes
#include "colors.inc"
#include "textures.inc"

// common test subjects and scenario
#include "demo_common.inc"

// common camera parameters
#declare c_location=<4,2,-3>;   // location
#declare c_look_at=<0,1.1,1>;   // look at
#declare c_angle=54;            // angle

// test mesh camera
#if (use_mesh_cam)

  // mesh camera macros
  #include "meshcam_macros.inc"

  // create the pinhole mesh camera and
  // use it camera at the location, oriented to the look_at
  #if (use_mesh_cam=1)
    #declare camera_mesh=
    meshcam_pinhole(image_width, image_height, c_angle, "")
    camera{
      mesh_camera{ 1 0
        mesh{camera_mesh
          meshcam_placement(c_location,c_look_at)
        }
      }
      location <0,0,-.01>
    }
  #else
    #declare camera_mesh=
    meshcam_pinhole_uv(image_width*.1, image_height*.1, c_angle, "")
    camera{
      mesh_camera{ 1 3
        mesh{camera_mesh
          meshcam_placement(c_location,c_look_at)
        }
        smooth
      }
      location <0,0,-.01>
    } 
  #end

// test regular camera for comparison
#else

  camera{
    perspective   
    location c_location
    up 1*y right (image_width/image_height)*x
    angle c_angle
    look_at c_look_at
  }


#end