Changeset 3132
- Timestamp:
- Oct 28, 2008, 8:30:10 PM (15 years ago)
- Location:
- libcaca/trunk/caca-php
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
libcaca/trunk/caca-php/examples/cacainfo.php
r3129 r3132 29 29 caca_set_color_ansi($cv, CACA_LIGHTGREEN, CACA_DEFAULT); 30 30 caca_put_str($cv, 8, 0, "Moo!"); 31 caca_set_color_ansi($cv, CACA_LIGHTRED, CACA_DEFAULT); 32 caca_put_char($cv, 8, 1, hexdec("2765")); //U+2765 33 caca_put_char($cv, 10, 1, hexdec("2764")); //U+2764 31 34 echo caca_export_string($cv, "utf8"); 32 35 } -
libcaca/trunk/caca-php/examples/demo.php
r3127 r3132 161 161 $j = 15 + sin(0.03 * $i) * 8; 162 162 caca_set_color_ansi($cv, CACA_WHITE, CACA_BLACK); 163 caca_fill_ellipse($cv, $xo, $yo, $j, $j / 2, '#');164 caca_set_color_ansi($cv, CACA_YELLOW, CACA_BLACK); 165 caca_draw_ellipse($cv, $xo, $yo, $j, $j / 2, '#');163 caca_fill_ellipse($cv, $xo, $yo, $j, $j / 2, ord('#')); 164 caca_set_color_ansi($cv, CACA_YELLOW, CACA_BLACK); 165 caca_draw_ellipse($cv, $xo, $yo, $j, $j / 2, ord('#')); 166 166 167 167 /* Draw the pyramid */ … … 179 179 180 180 caca_set_color_ansi($cv, CACA_GREEN, CACA_BLACK); 181 caca_fill_triangle($cv, $xo, $yo, $xb, $yb, $xa, $ya, '%');181 caca_fill_triangle($cv, $xo, $yo, $xb, $yb, $xa, $ya, ord('%')); 182 182 caca_set_color_ansi($cv, CACA_YELLOW, CACA_BLACK); 183 183 caca_draw_thin_triangle($cv, $xo, $yo, $xb, $yb, $xa, $ya); 184 184 185 185 caca_set_color_ansi($cv, CACA_RED, CACA_BLACK); 186 caca_fill_triangle($cv, $xa, $ya, $xb, $yb, $xc, $yc, '#');186 caca_fill_triangle($cv, $xa, $ya, $xb, $yb, $xc, $yc, ord('#')); 187 187 caca_set_color_ansi($cv, CACA_YELLOW, CACA_BLACK); 188 188 caca_draw_thin_triangle($cv, $xa, $ya, $xb, $yb, $xc, $yc); 189 189 190 190 caca_set_color_ansi($cv, CACA_BLUE, CACA_BLACK); 191 caca_fill_triangle($cv, $xo, $yo, $xb, $yb, $xc, $yc, '%');191 caca_fill_triangle($cv, $xo, $yo, $xb, $yb, $xc, $yc, ord('%')); 192 192 caca_set_color_ansi($cv, CACA_YELLOW, CACA_BLACK); 193 193 caca_draw_thin_triangle($cv, $xo, $yo, $xb, $yb, $xc, $yc); … … 220 220 caca_get_canvas_width($cv) / 2 + cos(0.02 * $j) * ($delta + caca_get_canvas_width($cv) / 4), 221 221 caca_get_canvas_height($cv) / 2 + sin(0.02 * $j) * ($delta + caca_get_canvas_height($cv) / 3), 222 '#');222 ord('#')); 223 223 } 224 224 } … … 265 265 /* Putpixel */ 266 266 caca_set_color_ansi($cv, caca_rand(0, 16), caca_rand(0, 16)); 267 caca_put_char($cv, caca_rand(0, $xmax), caca_rand(0, $ymax), $chars[caca_rand(0, 9)]);267 caca_put_char($cv, caca_rand(0, $xmax), caca_rand(0, $ymax), ord($chars[caca_rand(0, 9)])); 268 268 } 269 269 } … … 286 286 caca_draw_thin_line($cv, $xa, $ya, $xb, $yb); 287 287 else 288 caca_draw_line($cv, $xa, $ya, $xb, $yb, '#');288 caca_draw_line($cv, $xa, $ya, $xb, $yb, ord('#')); 289 289 } 290 290 … … 303 303 304 304 caca_set_color_ansi($cv, caca_rand(0, 16), caca_rand(0, 16)); 305 caca_fill_box($cv, $xa, $ya, $xb, $yb, '#');305 caca_fill_box($cv, $xa, $ya, $xb, $yb, ord('#')); 306 306 307 307 caca_set_color_ansi($cv, caca_rand(0, 16), CACA_BLACK); … … 309 309 caca_draw_thin_box($cv, $xa, $ya, $xb, $yb); 310 310 else if($outline == 1) 311 caca_draw_box($cv, $xa, $ya, $xb, $yb, '#');311 caca_draw_box($cv, $xa, $ya, $xb, $yb, ord('#')); 312 312 } 313 313 … … 328 328 329 329 caca_set_color_ansi($cv, caca_rand(0, 16), caca_rand(0, 16)); 330 caca_fill_ellipse($cv, $x, $y, $a, $b, '#');330 caca_fill_ellipse($cv, $x, $y, $a, $b, ord('#')); 331 331 332 332 caca_set_color_ansi($cv, caca_rand(0, 16), CACA_BLACK); … … 334 334 caca_draw_thin_ellipse($cv, $x, $y, $a, $b); 335 335 else if ($outline == 1) 336 caca_draw_ellipse($cv, $x, $y, $a, $b, '#');336 caca_draw_ellipse($cv, $x, $y, $a, $b, ord('#')); 337 337 } 338 338 … … 353 353 354 354 caca_set_color_ansi($cv, caca_rand(0, 16), caca_rand(0, 16)); 355 caca_fill_triangle($cv, $xa, $ya, $xb, $yb, $xc, $yc, '#');355 caca_fill_triangle($cv, $xa, $ya, $xb, $yb, $xc, $yc, ord('#')); 356 356 357 357 caca_set_color_ansi($cv, caca_rand(0, 16), CACA_BLACK); … … 359 359 caca_draw_thin_triangle($cv, $xa, $ya, $xb, $yb, $xc, $yc); 360 360 else if ($outline == 1) 361 caca_draw_triangle($cv, $xa, $ya, $xb, $yb, $xc, $yc, '#');361 caca_draw_triangle($cv, $xa, $ya, $xb, $yb, $xc, $yc, ord('#')); 362 362 } 363 363 -
libcaca/trunk/caca-php/examples/polyline.php
r3131 r3132 1 1 #!/usr/bin/php5 2 2 <?php 3 4 function transform($tbl, $tx, $ty, $sx, $sy) { 5 $result = array(); 6 foreach($tbl as $pt) 7 $result[] = array($pt[0] * $sx + $tx, $pt[1] * $sy + $ty); 8 return $result; 9 } 3 10 4 11 $canvas = caca_create_canvas(0, 0); … … 22 29 ); 23 30 24 function transform($tbl, $tx, $ty, $sx, $sy) {25 $result = array();26 foreach($tbl as $pt)27 $result[] = array($pt[0] * $sx + $tx, $pt[1] * $sy + $ty);28 return $result;29 }30 31 31 for ($i = 0; $i < 10; $i++) { 32 32 caca_set_color_ansi($canvas, 1 + (($color += 4) % 15), CACA_TRANSPARENT); 33 33 $scale = caca_rand(4, 10) / 10; 34 $translate = array(caca_rand(- 10, 60), caca_rand(-5, 20));34 $translate = array(caca_rand(-5, 55), caca_rand(-2, 25)); 35 35 $pts = transform($tbl, $translate[0], $translate[1], $scale, $scale); 36 36 caca_draw_thin_polyline($canvas, $pts); … … 40 40 caca_refresh_display($display); 41 41 sleep(5); 42 -
libcaca/trunk/caca-php/php_caca.c
r3131 r3132 474 474 PHP_FUNCTION(caca_put_char) { 475 475 zval *_zval; 476 char *str; 477 long str_len, x, y = 0; 478 if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "rlls", &_zval, &x, &y, &str, &str_len) == FAILURE) { 479 RETURN_FALSE; 480 } 481 caca_canvas_t *canvas; 482 ZEND_FETCH_RESOURCE(canvas, caca_canvas_t*, &_zval, -1, PHP_CACA_CANVAS_RES_NAME, le_caca_canvas); 483 if (str_len != 1) { 484 RETURN_FALSE; 485 } 486 RETURN_SUCCESS(caca_put_char(canvas, x, y, str[0])); 476 long x, y, c; 477 if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "rlll", &_zval, &x, &y, &c) == FAILURE) { 478 RETURN_FALSE; 479 } 480 caca_canvas_t *canvas; 481 ZEND_FETCH_RESOURCE(canvas, caca_canvas_t*, &_zval, -1, PHP_CACA_CANVAS_RES_NAME, le_caca_canvas); 482 RETURN_SUCCESS(caca_put_char(canvas, x, y, c)); 487 483 } 488 484 … … 721 717 PHP_FUNCTION(caca_draw_line) { 722 718 zval *_zval; 723 char *str; 724 long str_len, xa, ya, xb, yb = 0; 725 if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "rlllls", &_zval, &xa, &ya, &xb, &yb, &str, &str_len) == FAILURE) { 726 RETURN_FALSE; 727 } 728 caca_canvas_t *canvas; 729 ZEND_FETCH_RESOURCE(canvas, caca_canvas_t*, &_zval, -1, PHP_CACA_CANVAS_RES_NAME, le_caca_canvas); 730 if (str_len != 1) { 731 RETURN_FALSE; 732 } 733 RETURN_SUCCESS(caca_draw_line(canvas, xa, ya, xb, yb, str[0])); 719 long xa, ya, xb, yb, c; 720 if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "rlllll", &_zval, &xa, &ya, &xb, &yb, &c) == FAILURE) { 721 RETURN_FALSE; 722 } 723 caca_canvas_t *canvas; 724 ZEND_FETCH_RESOURCE(canvas, caca_canvas_t*, &_zval, -1, PHP_CACA_CANVAS_RES_NAME, le_caca_canvas); 725 RETURN_SUCCESS(caca_draw_line(canvas, xa, ya, xb, yb, c)); 734 726 } 735 727 736 728 PHP_FUNCTION(caca_draw_polyline) { 737 729 zval *zval_res, *zval_arr; 738 char *c; 739 long c_len; 740 741 if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "ras", &zval_res, &zval_arr, &c, &c_len) == FAILURE) { 742 RETURN_FALSE; 743 } 744 745 if (c_len != 1) { 730 long c; 731 732 if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "ral", &zval_res, &zval_arr, &c) == FAILURE) { 746 733 RETURN_FALSE; 747 734 } … … 776 763 } 777 764 } 778 int res = caca_draw_polyline(canvas, tbl_x, tbl_y, tbl_count - 1, c [0]);765 int res = caca_draw_polyline(canvas, tbl_x, tbl_y, tbl_count - 1, c); 779 766 free(tbl_x); 780 767 free(tbl_y); … … 836 823 PHP_FUNCTION(caca_draw_circle) { 837 824 zval *_zval; 838 char *str; 839 long str_len, x, y, r = 0; 840 if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "rllls", &_zval, &x, &y, &r, &str, &str_len) == FAILURE) { 841 RETURN_FALSE; 842 } 843 caca_canvas_t *canvas; 844 ZEND_FETCH_RESOURCE(canvas, caca_canvas_t*, &_zval, -1, PHP_CACA_CANVAS_RES_NAME, le_caca_canvas); 845 if (str_len != 1) { 846 RETURN_FALSE; 847 } 848 RETURN_SUCCESS(caca_draw_circle(canvas, x, y, r, str[0])); 825 long x, y, r, c; 826 if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "rllll", &_zval, &x, &y, &r, &c) == FAILURE) { 827 RETURN_FALSE; 828 } 829 caca_canvas_t *canvas; 830 ZEND_FETCH_RESOURCE(canvas, caca_canvas_t*, &_zval, -1, PHP_CACA_CANVAS_RES_NAME, le_caca_canvas); 831 RETURN_SUCCESS(caca_draw_circle(canvas, x, y, r, c)); 849 832 } 850 833 851 834 PHP_FUNCTION(caca_draw_ellipse) { 852 835 zval *_zval; 853 char *str; 854 long str_len, xa, ya, xb, yb = 0; 855 if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "rlllls", &_zval, &xa, &ya, &xb, &yb, &str, &str_len) == FAILURE) { 856 RETURN_FALSE; 857 } 858 caca_canvas_t *canvas; 859 ZEND_FETCH_RESOURCE(canvas, caca_canvas_t*, &_zval, -1, PHP_CACA_CANVAS_RES_NAME, le_caca_canvas); 860 if (str_len != 1) { 861 RETURN_FALSE; 862 } 863 RETURN_SUCCESS(caca_draw_ellipse(canvas, xa, ya, xb, yb, str[0])); 836 long xa, ya, xb, yb, c = 0; 837 if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "rlllll", &_zval, &xa, &ya, &xb, &yb, &c) == FAILURE) { 838 RETURN_FALSE; 839 } 840 caca_canvas_t *canvas; 841 ZEND_FETCH_RESOURCE(canvas, caca_canvas_t*, &_zval, -1, PHP_CACA_CANVAS_RES_NAME, le_caca_canvas); 842 RETURN_SUCCESS(caca_draw_ellipse(canvas, xa, ya, xb, yb, c)); 864 843 } 865 844 … … 877 856 PHP_FUNCTION(caca_fill_ellipse) { 878 857 zval *_zval; 879 char *str; 880 long str_len, xa, ya, xb, yb = 0; 881 if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "rlllls", &_zval, &xa, &ya, &xb, &yb, &str, &str_len) == FAILURE) { 882 RETURN_FALSE; 883 } 884 caca_canvas_t *canvas; 885 ZEND_FETCH_RESOURCE(canvas, caca_canvas_t*, &_zval, -1, PHP_CACA_CANVAS_RES_NAME, le_caca_canvas); 886 if (str_len != 1) { 887 RETURN_FALSE; 888 } 889 RETURN_SUCCESS(caca_fill_ellipse(canvas, xa, ya, xb, yb, str[0])); 858 long xa, ya, xb, yb, c; 859 if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "rlllll", &_zval, &xa, &ya, &xb, &yb, &c) == FAILURE) { 860 RETURN_FALSE; 861 } 862 caca_canvas_t *canvas; 863 ZEND_FETCH_RESOURCE(canvas, caca_canvas_t*, &_zval, -1, PHP_CACA_CANVAS_RES_NAME, le_caca_canvas); 864 RETURN_SUCCESS(caca_fill_ellipse(canvas, xa, ya, xb, yb, c)); 890 865 } 891 866 892 867 PHP_FUNCTION(caca_draw_box) { 893 868 zval *_zval; 894 char *str; 895 long str_len, xa, ya, xb, yb = 0; 896 if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "rlllls", &_zval, &xa, &ya, &xb, &yb, &str, &str_len) == FAILURE) { 897 RETURN_FALSE; 898 } 899 caca_canvas_t *canvas; 900 ZEND_FETCH_RESOURCE(canvas, caca_canvas_t*, &_zval, -1, PHP_CACA_CANVAS_RES_NAME, le_caca_canvas); 901 if (str_len != 1) { 902 RETURN_FALSE; 903 } 904 RETURN_SUCCESS(caca_draw_box(canvas, xa, ya, xb, yb, str[0])); 869 long xa, ya, xb, yb, c; 870 if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "rlllll", &_zval, &xa, &ya, &xb, &yb, &c) == FAILURE) { 871 RETURN_FALSE; 872 } 873 caca_canvas_t *canvas; 874 ZEND_FETCH_RESOURCE(canvas, caca_canvas_t*, &_zval, -1, PHP_CACA_CANVAS_RES_NAME, le_caca_canvas); 875 RETURN_SUCCESS(caca_draw_box(canvas, xa, ya, xb, yb, c)); 905 876 } 906 877 … … 918 889 PHP_FUNCTION(caca_draw_cp437_box) { 919 890 zval *_zval; 920 long xa, ya, xb, yb = 0;891 long xa, ya, xb, yb; 921 892 if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "rllll", &_zval, &xa, &ya, &xb, &yb) == FAILURE) { 922 893 RETURN_FALSE; … … 929 900 PHP_FUNCTION(caca_fill_box) { 930 901 zval *_zval; 931 char *str; 932 long str_len, xa, ya, xb, yb = 0; 933 if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "rlllls", &_zval, &xa, &ya, &xb, &yb, &str, &str_len) == FAILURE) { 934 RETURN_FALSE; 935 } 936 caca_canvas_t *canvas; 937 ZEND_FETCH_RESOURCE(canvas, caca_canvas_t*, &_zval, -1, PHP_CACA_CANVAS_RES_NAME, le_caca_canvas); 938 if (str_len != 1) { 939 RETURN_FALSE; 940 } 941 RETURN_SUCCESS(caca_fill_box(canvas, xa, ya, xb, yb, str[0])); 902 long xa, ya, xb, yb, c; 903 if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "rlllll", &_zval, &xa, &ya, &xb, &yb, &c) == FAILURE) { 904 RETURN_FALSE; 905 } 906 caca_canvas_t *canvas; 907 ZEND_FETCH_RESOURCE(canvas, caca_canvas_t*, &_zval, -1, PHP_CACA_CANVAS_RES_NAME, le_caca_canvas); 908 RETURN_SUCCESS(caca_fill_box(canvas, xa, ya, xb, yb, c)); 942 909 } 943 910 944 911 PHP_FUNCTION(caca_draw_triangle) { 945 912 zval *_zval; 946 char *str; 947 long str_len, xa, ya, xb, yb, xc, yc = 0; 948 if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "rlllllls", &_zval, &xa, &ya, &xb, &yb, &xc, &yc, &str, &str_len) == FAILURE) { 949 RETURN_FALSE; 950 } 951 caca_canvas_t *canvas; 952 ZEND_FETCH_RESOURCE(canvas, caca_canvas_t*, &_zval, -1, PHP_CACA_CANVAS_RES_NAME, le_caca_canvas); 953 if (str_len != 1) { 954 RETURN_FALSE; 955 } 956 RETURN_SUCCESS(caca_draw_triangle(canvas, xa, ya, xb, yb, xc, yc, str[0])); 913 long xa, ya, xb, yb, xc, yc, c; 914 if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "rlllllll", &_zval, &xa, &ya, &xb, &yb, &xc, &yc, &c) == FAILURE) { 915 RETURN_FALSE; 916 } 917 caca_canvas_t *canvas; 918 ZEND_FETCH_RESOURCE(canvas, caca_canvas_t*, &_zval, -1, PHP_CACA_CANVAS_RES_NAME, le_caca_canvas); 919 RETURN_SUCCESS(caca_draw_triangle(canvas, xa, ya, xb, yb, xc, yc, c)); 957 920 } 958 921 … … 970 933 PHP_FUNCTION(caca_fill_triangle) { 971 934 zval *_zval; 972 char *str; 973 long str_len, xa, ya, xb, yb, xc, yc = 0; 974 if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "rlllllls", &_zval, &xa, &ya, &xb, &yb, &xc, &yc, &str, &str_len) == FAILURE) { 975 RETURN_FALSE; 976 } 977 caca_canvas_t *canvas; 978 ZEND_FETCH_RESOURCE(canvas, caca_canvas_t*, &_zval, -1, PHP_CACA_CANVAS_RES_NAME, le_caca_canvas); 979 if (str_len != 1) { 980 RETURN_FALSE; 981 } 982 RETURN_SUCCESS(caca_fill_triangle(canvas, xa, ya, xb, yb, xc, yc, str[0])); 935 long xa, ya, xb, yb, xc, yc, c = 0; 936 if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "rlllllll", &_zval, &xa, &ya, &xb, &yb, &xc, &yc, &c) == FAILURE) { 937 RETURN_FALSE; 938 } 939 caca_canvas_t *canvas; 940 ZEND_FETCH_RESOURCE(canvas, caca_canvas_t*, &_zval, -1, PHP_CACA_CANVAS_RES_NAME, le_caca_canvas); 941 RETURN_SUCCESS(caca_fill_triangle(canvas, xa, ya, xb, yb, xc, yc, c)); 983 942 } 984 943
Note: See TracChangeset
for help on using the changeset viewer.