#N canvas 93 112 871 756 10; #X declare -path . -path .. -path data -path ../data -path ev-in -path ../ev-in -path ev-main -path ../ev-main -path ev-pano -path ../ev-pano -path ev-pro -path ../ev-pro -path libs/gil -path ../libs/gil -path libs/kollabs -path ../libs/kollabs -path media -path ../media -path ev-glsl -path ../ev-glsl; #X obj 34 68 cnv 15 400 480 empty empty gui_controls 5 8 0 12 -204800 -66577 0; #X text 37 88 on/off: toggles projection plane state; #X text 37 100 settings: opens settings window; #X text 37 126 settings window; #X text 37 129 _______________; #X text 38 150 vertex position parameters: control the x/y position of the; #X text 38 172 texture position parameters: control the x/y position of the; #X text 208 183 texture corners \, can be outside the; #X text 209 194 visible area; #X text 37 206 shade size: set the size of the softedge on the edges of the visible area(vertex); #X obj 34 30 cnv 15 785 32 empty empty EXTENDED_VIEW_3x3_PROJECTION_MODULE 20 8 0 14 -233017 -66577 0; #X obj 440 576 cnv 15 380 60 empty empty inlets/outlets 5 8 0 12 -233017 -66577 0; #X text 444 612 Inlet 2: texture ID; #X text 444 596 Inlet 1: gemlist; #X obj 440 508 cnv 15 380 60 empty empty creation_arguments: 3 8 0 12 -191407 -1 0; #X text 445 527 1st: module ID \, needs to be unique \; 2nd: storage domain \, see [ev_storage-help] for details; #X obj 439 68 cnv 15 380 430 empty empty empty 20 12 0 14 -204786 -66577 0; #X obj 451 109 gemhead; #X obj 451 389 ev_gemwin; #X text 445 365 [ev_gemwin] is needed for cursor interaction support. ; #X text 449 303 [ev_declare] loads all the needed pathes.; #X obj 440 644 cnv 15 380 70 empty empty PARAMETER_LIST_for_ev_pro_33 20 8 0 14 -233017 -66577 0; #N canvas 0 22 386 682 paramter-list 0; #X obj 4 4 cnv 15 360 660 empty empty PARAMETER_LIST_for_ev_pro_curved 20 8 0 14 -233017 -66577 0; #X text 11 30 /ev/pro//vertex/top/left/x ---- top left corner x \; /ev/pro//vertex/top/left/y --- top left corner y \; /ev/pro//vertex/top/center/x --- top center x \; /ev/pro//vertex/top/center/y --- top center y \; /ev/pro//vertex/top/right/x --- top right corner x \; /ev/pro//vertex/top/right/y --- top right corner y \; /ev/pro//vertex/center/left/x --- left center x \; /ev/pro//vertex/center/left/y --- left center y \; /ev/pro//vertex/center/center/x --- center point x \; /ev/pro//vertex/center/center/y --- center point y \; /ev/pro//vertex/center/right/x --- right center x \; /ev/pro//vertex/center/right/y --- right center y \; /ev/pro//vertex/bottom/left/x --- bottom left corner x \; /ev/pro//vertex/bottom/left/y --- bottom left corner y \; /ev/pro//vertex/bottom/center/x --- bottom center x \; /ev/pro//vertex/bottom/center/y --- bottom center y \; /ev/pro//vertex/bottom/right/x - bottom right corner x \; /ev/pro//vertex/bottom/right/y - bottom right corner y \; /ev/pro//texture/top/left/x --- top left x \; /ev/pro//texture/top/left/y --- top left y \; /ev/pro//texture/top/right/x --- top right x \; /ev/pro//texture/top/right/y --- top right y \; /ev/pro//texture/bottom/left/x --- bottom left x \; /ev/pro//texture/bottom/left/y --- bottom left y \; /ev/pro//texture/bottom/right/x --- bottom right x \; /ev/pro//texture/bottom/right/y --- bottom right y \; /ev/pro//shade/top --- top softedge amount \; /ev/pro//shade/right --- right softedge amount \; /ev/pro//shade/bottom --- bottom softedge amount \; /ev/pro//shade/left --- left softedge amount \; /ev/pro//state --- turn module on (1) / off (0) \; /ev/pro//texture/weight/x --- distance weight x \; /ev/pro//texture/weight/y --- distance weight y \; /ev/pro//set_alpha --- set alpha to value "1" \; /ev/pro//grid/state --- turn on(1)/off(0) grid \; /ev/pro//grid/res/x --- grid horizontal resolution \; /ev/pro//grid/res/y --- vertical grid resolution \; /ev/pro//grid/width --- grid line width \; /ev/pro//grid/color/h --- grid color hue \; /ev/pro//grid/color/s --- grid color saturation \; /ev/pro//grid/color/v --- grid color value \; /ev/pro//grid/color/a --- grid color alpha (opacity) \; /ev/pro//grid/tex/state --- grid texture state \; /ev/pro//grid/tex/open --- grid texture open dialog \; /ev/pro//grid/tex/load --- reload grid texture \; /ev/pro//grid/tex/flip/horizontal --- flip grid tex \; /ev/pro//grid/tex/flip/vertical --- flip grid tex \; /ev/pro//cursor/mode --- mouse interaction mode \; \;; #X restore 541 678 pd paramter-list; #X text 622 473 click "create" here to start; #X obj 453 328 ../ev-main/ev_declare; #X text 206 161 projection primitives 9 corners; #X obj 581 76 gemhead; #X obj 581 136 pix_image; #X obj 581 220 pix_texture; #X obj 637 76 loadbang; #X msg 666 106 open ../media/cam2.jpg; #X obj 581 178 pix_flip; #X msg 666 136 none; #X text 508 31 (c)2011 Cyrille Henry \, Peter Venus & Marian Weger \; /part of EXTENDED VIEW toolkit/ gpl v3; #X obj 451 245 ev_pro_33 \$0; #X msg 666 178 rectangle 1; #X text 37 276 grid_texture:; #X text 37 279 _____________; #X text 37 296 state: turn on grid to replace the texture \; open_new_file: load your own grid image \; reload: reload the given image file \; flip: flip grid horizontal(<->) or vertical(^v).; #X text 37 356 cursor_interaction:; #X text 36 359 ___________________; #X text 37 377 cursor_mode:; #X text 68 394 vertex_mouseover: show vertex control points if hovered \; vertex_permanent: show vertex control points permanently \; texture_mouseover: show texture control points if hovered \; texture_permanent: show texture control points permanently \;; #X text 37 242 set_alpha_to_'1': If selected \, alpha channel is set to 1 If not selected \, alpha channel remains as it gets in.; #X text 37 456 rendered_grid:; #X text 36 459 ______________; #X text 37 477 state: turn grid on/off; #X text 37 490 Resolution:; #X text 110 490 set vertical (y) and horizontal (x) grid resolution. ; #X text 37 504 line_width: set thickness of the grid lines; #X text 37 517 COLOR: set the color of the grid; #X text 79 530 (H = hue \, S = saturation \, V = Value \, A = alpha) ; #X obj 34 554 cnv 15 400 450 empty empty description 5 8 0 12 -233017 -66577 0; #X obj 46 863 cnv 15 150 120 empty empty texture 10 10 0 10 -261234 -66577 0; #X text 69 917 /; #X text 51 948 /; #X text 181 939 |; #X text 63 927 /; #X text 181 929 |; #X text 67 906 x/y---------------x/y; #X text 57 938 /; #X text 181 917 |; #X text 181 949 |; #X text 46 961 x/y------------------x/y; #X text 213 925 ==>; #X text 74 931 Texture positions; #X obj 256 863 cnv 15 150 120 empty empty gem_window 10 10 0 10 -191407 -66577 0; #X text 371 904 /; #X text 353 935 /; #X text 347 946 /; #X text 266 946 |; #X text 365 914 /; #X text 359 925 x/y; #X text 267 894 x/y------x/y------x/y; #X text 266 956 x/y---x/y---x/y; #X text 266 916 |; #X text 266 936 |; #X text 266 904 | Vertex; #X text 313 935 /; #X text 307 946 /; #X text 325 914 |; #X text 325 904 |; #X text 319 925 x/y----; #X text 266 926 x/y------.; #X text 45 575 This abstraction aims on video mapping onto curved surfaces. It can map a specified part of a texture onto a square plane \, which can then be distorted by a matrix of 3x3=9 control points \; The source is specified by a texture id \, and can be a framebuffer or any other texture. By 4 independently settable corner points \, a polygonal part of this texture is specified \, which is then mapped completely onto a square. This square can then be positioned and distorted by a matrix of 3x3 vertex points \; It is also possible to blend the four sides with a soft edge \, what makes it possible to overlay multiple modules to form a bigger \, but still adjustable projection plane. This would be useful in multiple projector environment \, where the gem window spans over all projectors but aligning them hard-edged is not possible or a challenge \; By the settable texture positions \, it is possible to display just a portion of the complete content of a framebuffer. This is useful if you build a big projection area out of multiple [ev_pro_xx] abstractions \, which cut their individual part out of the same texture. ; #X obj 440 724 cnv 15 380 140 empty empty additional_information 5 8 0 12 -233017 -66577 0; #X text 454 742 Can be controlled via OSC \, which uses the same syntax as the EV internal send/recieve message system see paramter-list below for additional information about the specific parameter-names.; #X text 452 807 This Object is connected to the Data Storage System. All the vertex and texture coordinates and the softedge settings can be morphed between scenes individually.; #X connect 17 0 34 0; #X connect 26 0 27 0; #X connect 27 0 31 0; #X connect 28 1 34 1; #X connect 29 0 30 0; #X connect 29 0 32 0; #X connect 29 0 35 0; #X connect 30 0 27 0; #X connect 31 0 28 0; #X connect 32 0 31 0; #X connect 35 0 28 0; #X coords 0 756 1 755 85 60 0;