5 #include <caml/mlvalues.h>
6 #include <caml/memory.h>
7 #include <caml/alloc.h>
9 #include <caml/callback.h>
11 #include <caml/custom.h>
12 #include <caml/bigarray.h>
14 #include <caml/camlidlruntime.h>
81 default: invalid_argument(
"enum plplot_bin_enum: bad enum plplot_bin_enum value");
154 default: invalid_argument(
"enum plplot_run_level_enum: bad enum plplot_run_level_enum value");
336 default: invalid_argument(
"enum plplot_fci_style_enum: bad enum plplot_fci_style_enum value");
361 default: invalid_argument(
"enum plplot_fci_weight_enum: bad enum plplot_fci_weight_enum value");
388 default: invalid_argument(
"enum plplot_draw_mode_enum: bad enum plplot_draw_mode_enum value");
395 (*_c2) = Int_val(_v1);
401 _v1 = Val_int((*_c2));
411 lexp = Int_val(_v_lexp);
412 sigdig = Int_val(_v_sigdig);
427 offset = Double_val(_v_offset);
428 size = Double_val(_v_size);
429 spacing = Double_val(_v_spacing);
430 active = Int_val(_v_active);
439 page = Int_val(_v_page);
462 x = Double_val(_v_x);
463 y = Double_val(_v_y);
464 a = Double_val(_v_a);
465 b = Double_val(_v_b);
466 angle1 = Double_val(_v_angle1);
467 angle2 = Double_val(_v_angle2);
468 rotate = Double_val(_v_rotate);
469 fill = Int_val(_v_fill);
470 c_plarc(x, y, a, b, angle1, angle2, rotate, fill);
497 x0 = Double_val(_v_x0);
498 y0 = Double_val(_v_y0);
499 xopt = String_val(_v_xopt);
500 xtick = Double_val(_v_xtick);
501 nxsub = Int_val(_v_nxsub);
502 yopt = String_val(_v_yopt);
503 ytick = Double_val(_v_ytick);
504 nysub = Int_val(_v_nysub);
505 c_plaxes(x0, y0, xopt, xtick, nxsub, yopt, ytick, nysub);
527 struct camlidl_ctx_struct _ctxs = { CAMLIDL_TRANSIENT, NULL };
528 camlidl_ctx _ctx = &_ctxs;
529 _c1 = Wosize_val(_v_x) / Double_wosize;
530 x = camlidl_malloc(_c1 *
sizeof(
double ), _ctx);
531 for (_c2 = 0; _c2 < _c1; _c2++) {
532 x[_c2] = Double_field(_v_x, _c2);
535 _c3 = Wosize_val(_v_y) / Double_wosize;
536 y = camlidl_malloc(_c3 *
sizeof(
double ), _ctx);
537 for (_c4 = 0; _c4 < _c3; _c4++) {
538 y[_c4] = Double_field(_v_y, _c4);
564 value _vres[6] = { 0, 0, 0, 0, 0, 0, };
566 ctime = Double_val(_v_ctime);
573 c_plbtime(year, month, day, hour, min, sec, ctime);
574 Begin_roots_block(_vres, 6)
575 _vres[0] = Val_int(*year);
576 _vres[1] = Val_int(*month);
577 _vres[2] = Val_int(*day);
578 _vres[3] = Val_int(*hour);
579 _vres[4] = Val_int(*min);
580 _vres[5] = copy_double(*sec);
581 _vresult = camlidl_alloc_small(6, 0);
583 for (_c7 = 0; _c7 < 6; _c7++) Field(_vresult, _c7) = _vres[_c7];
609 xopt = String_val(_v_xopt);
610 xtick = Double_val(_v_xtick);
611 nxsub = Int_val(_v_nxsub);
612 yopt = String_val(_v_yopt);
613 ytick = Double_val(_v_ytick);
614 nysub = Int_val(_v_nysub);
615 c_plbox(xopt, xtick, nxsub, yopt, ytick, nysub);
650 xopt = String_val(_v_xopt);
651 xlabel = String_val(_v_xlabel);
652 xtick = Double_val(_v_xtick);
653 nsubx = Int_val(_v_nsubx);
654 yopt = String_val(_v_yopt);
655 ylabel = String_val(_v_ylabel);
656 ytick = Double_val(_v_ytick);
657 nsuby = Int_val(_v_nsuby);
658 zopt = String_val(_v_zopt);
659 zlabel = String_val(_v_zlabel);
660 ztick = Double_val(_v_ztick);
661 nsubz = Int_val(_v_nsubz);
662 c_plbox3(xopt, xlabel, xtick, nsubx, yopt, ylabel, ytick, nsuby, zopt, zlabel, ztick, nsubz);
668 return camlidl_plplot_core_c_plbox3(argv[0], argv[1], argv[2], argv[3], argv[4], argv[5], argv[6], argv[7], argv[8], argv[9], argv[10], argv[11]);
684 value _vres[3] = { 0, 0, 0, };
686 rx = Double_val(_v_rx);
687 ry = Double_val(_v_ry);
692 Begin_roots_block(_vres, 3)
693 _vres[0] = copy_double(*wx);
694 _vres[1] = copy_double(*wy);
695 _vres[2] = Val_int(*window);
696 _vresult = camlidl_alloc_small(3, 0);
697 Field(_vresult, 0) = _vres[0];
698 Field(_vresult, 1) = _vres[1];
699 Field(_vresult, 2) = _vres[2];
714 icol0 = Int_val(_v_icol0);
723 col1 = Double_val(_v_col1);
733 value _v_ifbtime_offset,
752 scale = Double_val(_v_scale);
753 offset1 = Double_val(_v_offset1);
754 offset2 = Double_val(_v_offset2);
755 ccontrol = Int_val(_v_ccontrol);
756 ifbtime_offset = Int_val(_v_ifbtime_offset);
757 year = Int_val(_v_year);
758 month = Int_val(_v_month);
759 day = Int_val(_v_day);
760 hour = Int_val(_v_hour);
761 min = Int_val(_v_min);
762 sec = Double_val(_v_sec);
763 c_plconfigtime(scale, offset1, offset2, ccontrol, ifbtime_offset, year, month, day, hour, min, sec);
769 return camlidl_plplot_core_c_plconfigtime(argv[0], argv[1], argv[2], argv[3], argv[4], argv[5], argv[6], argv[7], argv[8], argv[9], argv[10]);
778 iplsr = Int_val(_v_iplsr);
779 flags = Int_val(_v_flags);
802 year = Int_val(_v_year);
803 month = Int_val(_v_month);
804 day = Int_val(_v_day);
805 hour = Int_val(_v_hour);
806 min = Int_val(_v_min);
807 sec = Double_val(_v_sec);
809 c_plctime(year, month, day, hour, min, sec, ctime);
810 _vres = copy_double(*ctime);
845 xmin = Double_val(_v_xmin);
846 xmax = Double_val(_v_xmax);
847 ymin = Double_val(_v_ymin);
848 ymax = Double_val(_v_ymax);
849 just = Int_val(_v_just);
850 axis = Int_val(_v_axis);
851 c_plenv(xmin, xmax, ymin, ymax, just, axis);
874 xmin = Double_val(_v_xmin);
875 xmax = Double_val(_v_xmax);
876 ymin = Double_val(_v_ymin);
877 ymax = Double_val(_v_ymax);
878 just = Int_val(_v_just);
879 axis = Int_val(_v_axis);
880 c_plenv0(xmin, xmax, ymin, ymax, just, axis);
910 struct camlidl_ctx_struct _ctxs = { CAMLIDL_TRANSIENT, NULL };
911 camlidl_ctx _ctx = &_ctxs;
912 _c1 = Wosize_val(_v_xmin) / Double_wosize;
913 xmin = camlidl_malloc(_c1 *
sizeof(
double ), _ctx);
914 for (_c2 = 0; _c2 < _c1; _c2++) {
915 xmin[_c2] = Double_field(_v_xmin, _c2);
918 _c3 = Wosize_val(_v_xmax) / Double_wosize;
919 xmax = camlidl_malloc(_c3 *
sizeof(
double ), _ctx);
920 for (_c4 = 0; _c4 < _c3; _c4++) {
921 xmax[_c4] = Double_field(_v_xmax, _c4);
924 _c5 = Wosize_val(_v_y) / Double_wosize;
925 y = camlidl_malloc(_c5 *
sizeof(
double ), _ctx);
926 for (_c6 = 0; _c6 < _c5; _c6++) {
927 y[_c6] = Double_field(_v_y, _c6);
950 struct camlidl_ctx_struct _ctxs = { CAMLIDL_TRANSIENT, NULL };
951 camlidl_ctx _ctx = &_ctxs;
952 _c1 = Wosize_val(_v_x) / Double_wosize;
953 x = camlidl_malloc(_c1 *
sizeof(
double ), _ctx);
954 for (_c2 = 0; _c2 < _c1; _c2++) {
955 x[_c2] = Double_field(_v_x, _c2);
958 _c3 = Wosize_val(_v_ymin) / Double_wosize;
959 ymin = camlidl_malloc(_c3 *
sizeof(
double ), _ctx);
960 for (_c4 = 0; _c4 < _c3; _c4++) {
961 ymin[_c4] = Double_field(_v_ymin, _c4);
964 _c5 = Wosize_val(_v_ymax) / Double_wosize;
965 ymax = camlidl_malloc(_c5 *
sizeof(
double ), _ctx);
966 for (_c6 = 0; _c6 < _c5; _c6++) {
967 ymax[_c6] = Double_field(_v_ymax, _c6);
992 struct camlidl_ctx_struct _ctxs = { CAMLIDL_TRANSIENT, NULL };
993 camlidl_ctx _ctx = &_ctxs;
994 _c1 = Wosize_val(_v_x) / Double_wosize;
995 x = camlidl_malloc(_c1 *
sizeof(
double ), _ctx);
996 for (_c2 = 0; _c2 < _c1; _c2++) {
997 x[_c2] = Double_field(_v_x, _c2);
1000 _c3 = Wosize_val(_v_y) / Double_wosize;
1001 y = camlidl_malloc(_c3 *
sizeof(
double ), _ctx);
1002 for (_c4 = 0; _c4 < _c3; _c4++) {
1003 y[_c4] = Double_field(_v_y, _c4);
1026 struct camlidl_ctx_struct _ctxs = { CAMLIDL_TRANSIENT, NULL };
1027 camlidl_ctx _ctx = &_ctxs;
1028 _c1 = Wosize_val(_v_x) / Double_wosize;
1029 x = camlidl_malloc(_c1 *
sizeof(
double ), _ctx);
1030 for (_c2 = 0; _c2 < _c1; _c2++) {
1031 x[_c2] = Double_field(_v_x, _c2);
1034 _c3 = Wosize_val(_v_y) / Double_wosize;
1035 y = camlidl_malloc(_c3 *
sizeof(
double ), _ctx);
1036 for (_c4 = 0; _c4 < _c3; _c4++) {
1037 y[_c4] = Double_field(_v_y, _c4);
1040 _c5 = Wosize_val(_v_z) / Double_wosize;
1041 z = camlidl_malloc(_c5 *
sizeof(
double ), _ctx);
1042 for (_c6 = 0; _c6 < _c5; _c6++) {
1043 z[_c6] = Double_field(_v_z, _c6);
1061 ifont = Int_val(_v_ifont);
1070 fnt = Int_val(_v_fnt);
1082 value _vres[2] = { 0, 0, };
1087 Begin_roots_block(_vres, 2)
1088 _vres[0] = copy_double(*p_def);
1089 _vres[1] = copy_double(*p_ht);
1090 _vresult = camlidl_alloc_small(2, 0);
1091 Field(_vresult, 0) = _vres[0];
1092 Field(_vresult, 1) = _vres[1];
1104 value _vres[2] = { 0, 0, };
1109 Begin_roots_block(_vres, 2)
1110 _vres[0] = copy_double(*min_color);
1111 _vres[1] = copy_double(*max_color);
1112 _vresult = camlidl_alloc_small(2, 0);
1113 Field(_vresult, 0) = _vres[0];
1114 Field(_vresult, 1) = _vres[1];
1130 value _vres[3] = { 0, 0, 0, };
1132 icol0 = Int_val(_v_icol0);
1137 Begin_roots_block(_vres, 3)
1138 _vres[0] = Val_int(*r);
1139 _vres[1] = Val_int(*g);
1140 _vres[2] = Val_int(*b);
1141 _vresult = camlidl_alloc_small(3, 0);
1142 Field(_vresult, 0) = _vres[0];
1143 Field(_vresult, 1) = _vres[1];
1144 Field(_vresult, 2) = _vres[2];
1162 value _vres[4] = { 0, 0, 0, 0, };
1164 icol0 = Int_val(_v_icol0);
1170 Begin_roots_block(_vres, 4)
1171 _vres[0] = Val_int(*r);
1172 _vres[1] = Val_int(*g);
1173 _vres[2] = Val_int(*b);
1174 _vres[3] = copy_double(*a);
1175 _vresult = camlidl_alloc_small(4, 0);
1176 Field(_vresult, 0) = _vres[0];
1177 Field(_vresult, 1) = _vres[1];
1178 Field(_vresult, 2) = _vres[2];
1179 Field(_vresult, 3) = _vres[3];
1193 value _vres[3] = { 0, 0, 0, };
1199 Begin_roots_block(_vres, 3)
1200 _vres[0] = Val_int(*r);
1201 _vres[1] = Val_int(*g);
1202 _vres[2] = Val_int(*b);
1203 _vresult = camlidl_alloc_small(3, 0);
1204 Field(_vresult, 0) = _vres[0];
1205 Field(_vresult, 1) = _vres[1];
1206 Field(_vresult, 2) = _vres[2];
1222 value _vres[4] = { 0, 0, 0, 0, };
1229 Begin_roots_block(_vres, 4)
1230 _vres[0] = Val_int(*r);
1231 _vres[1] = Val_int(*g);
1232 _vres[2] = Val_int(*b);
1233 _vres[3] = copy_double(*a);
1234 _vresult = camlidl_alloc_small(4, 0);
1235 Field(_vresult, 0) = _vres[0];
1236 Field(_vresult, 1) = _vres[1];
1237 Field(_vresult, 2) = _vres[2];
1238 Field(_vresult, 3) = _vres[3];
1251 _vres = Val_int(*compression);
1260 struct camlidl_ctx_struct _ctxs = { CAMLIDL_TRANSIENT, NULL };
1261 camlidl_ctx _ctx = &_ctxs;
1262 p_dev = camlidl_malloc(1024 *
sizeof(
char ), _ctx);
1264 _vres = copy_string(p_dev);
1280 value _vres[4] = { 0, 0, 0, 0, };
1287 Begin_roots_block(_vres, 4)
1288 _vres[0] = copy_double(*p_mar);
1289 _vres[1] = copy_double(*p_aspect);
1290 _vres[2] = copy_double(*p_jx);
1291 _vres[3] = copy_double(*p_jy);
1292 _vresult = camlidl_alloc_small(4, 0);
1293 Field(_vresult, 0) = _vres[0];
1294 Field(_vresult, 1) = _vres[1];
1295 Field(_vresult, 2) = _vres[2];
1296 Field(_vresult, 3) = _vres[3];
1309 _vres = copy_double(*p_rot);
1324 value _vres[4] = { 0, 0, 0, 0, };
1331 Begin_roots_block(_vres, 4)
1332 _vres[0] = copy_double(*p_xmin);
1333 _vres[1] = copy_double(*p_ymin);
1334 _vres[2] = copy_double(*p_xmax);
1335 _vres[3] = copy_double(*p_ymax);
1336 _vresult = camlidl_alloc_small(4, 0);
1337 Field(_vresult, 0) = _vres[0];
1338 Field(_vresult, 1) = _vres[1];
1339 Field(_vresult, 2) = _vres[2];
1340 Field(_vresult, 3) = _vres[3];
1363 _vres = copy_int64(*pfci);
1376 value _vres[3] = { 0, 0, 0, };
1382 Begin_roots_block(_vres, 3)
1383 _vres[0] = Val_int(*p_fam);
1384 _vres[1] = Val_int(*p_num);
1385 _vres[2] = Val_int(*p_bmax);
1386 _vresult = camlidl_alloc_small(3, 0);
1387 Field(_vresult, 0) = _vres[0];
1388 Field(_vresult, 1) = _vres[1];
1389 Field(_vresult, 2) = _vres[2];
1399 struct camlidl_ctx_struct _ctxs = { CAMLIDL_TRANSIENT, NULL };
1400 camlidl_ctx _ctx = &_ctxs;
1401 fnam = camlidl_malloc(1024 *
sizeof(
char ), _ctx);
1403 _vres = copy_string(fnam);
1417 value _vres[3] = { 0, 0, 0, };
1423 Begin_roots_block(_vres, 3)
1424 _vres[0] = Val_int(*p_family);
1425 _vres[1] = Val_int(*p_style);
1426 _vres[2] = Val_int(*p_weight);
1427 _vresult = camlidl_alloc_small(3, 0);
1428 Field(_vresult, 0) = _vres[0];
1429 Field(_vresult, 1) = _vres[1];
1430 Field(_vresult, 2) = _vres[2];
1441 struct camlidl_ctx_struct _ctxs = { CAMLIDL_TRANSIENT, NULL };
1442 camlidl_ctx _ctx = &_ctxs;
1465 value _vres[6] = { 0, 0, 0, 0, 0, 0, };
1473 c_plgpage(p_xp, p_yp, p_xleng, p_yleng, p_xoff, p_yoff);
1474 Begin_roots_block(_vres, 6)
1475 _vres[0] = copy_double(*p_xp);
1476 _vres[1] = copy_double(*p_yp);
1477 _vres[2] = Val_int(*p_xleng);
1478 _vres[3] = Val_int(*p_yleng);
1479 _vres[4] = Val_int(*p_xoff);
1480 _vres[5] = Val_int(*p_yoff);
1481 _vresult = camlidl_alloc_small(6, 0);
1483 for (_c7 = 0; _c7 < 6; _c7++) Field(_vresult, _c7) = _vres[_c7];
1508 struct camlidl_ctx_struct _ctxs = { CAMLIDL_TRANSIENT, NULL };
1509 camlidl_ctx _ctx = &_ctxs;
1510 _c1 = Wosize_val(_v_x) / Double_wosize;
1511 x = camlidl_malloc(_c1 *
sizeof(
double ), _ctx);
1512 for (_c2 = 0; _c2 < _c1; _c2++) {
1513 x[_c2] = Double_field(_v_x, _c2);
1516 _c3 = Wosize_val(_v_y) / Double_wosize;
1517 y = camlidl_malloc(_c3 *
sizeof(
double ), _ctx);
1518 for (_c4 = 0; _c4 < _c3; _c4++) {
1519 y[_c4] = Double_field(_v_y, _c4);
1522 angle = Double_val(_v_angle);
1539 value _vres[4] = { 0, 0, 0, 0, };
1546 Begin_roots_block(_vres, 4)
1547 _vres[0] = copy_double(*xmin);
1548 _vres[1] = copy_double(*xmax);
1549 _vres[2] = copy_double(*ymin);
1550 _vres[3] = copy_double(*ymax);
1551 _vresult = camlidl_alloc_small(4, 0);
1552 Field(_vresult, 0) = _vres[0];
1553 Field(_vresult, 1) = _vres[1];
1554 Field(_vresult, 2) = _vres[2];
1555 Field(_vresult, 3) = _vres[3];
1568 _vres = Val_int(*p_strm);
1577 struct camlidl_ctx_struct _ctxs = { CAMLIDL_TRANSIENT, NULL };
1578 camlidl_ctx _ctx = &_ctxs;
1579 p_ver = camlidl_malloc(1024 *
sizeof(
char ), _ctx);
1581 _vres = copy_string(p_ver);
1597 value _vres[4] = { 0, 0, 0, 0, };
1603 c_plgvpd(p_xmin, p_xmax, p_ymin, p_ymax);
1604 Begin_roots_block(_vres, 4)
1605 _vres[0] = copy_double(*p_xmin);
1606 _vres[1] = copy_double(*p_xmax);
1607 _vres[2] = copy_double(*p_ymin);
1608 _vres[3] = copy_double(*p_ymax);
1609 _vresult = camlidl_alloc_small(4, 0);
1610 Field(_vresult, 0) = _vres[0];
1611 Field(_vresult, 1) = _vres[1];
1612 Field(_vresult, 2) = _vres[2];
1613 Field(_vresult, 3) = _vres[3];
1629 value _vres[4] = { 0, 0, 0, 0, };
1635 c_plgvpw(p_xmin, p_xmax, p_ymin, p_ymax);
1636 Begin_roots_block(_vres, 4)
1637 _vres[0] = copy_double(*p_xmin);
1638 _vres[1] = copy_double(*p_xmax);
1639 _vres[2] = copy_double(*p_ymin);
1640 _vres[3] = copy_double(*p_ymax);
1641 _vresult = camlidl_alloc_small(4, 0);
1642 Field(_vresult, 0) = _vres[0];
1643 Field(_vresult, 1) = _vres[1];
1644 Field(_vresult, 2) = _vres[2];
1645 Field(_vresult, 3) = _vres[3];
1657 value _vres[2] = { 0, 0, };
1662 Begin_roots_block(_vres, 2)
1663 _vres[0] = Val_int(*p_digmax);
1664 _vres[1] = Val_int(*p_digits);
1665 _vresult = camlidl_alloc_small(2, 0);
1666 Field(_vresult, 0) = _vres[0];
1667 Field(_vresult, 1) = _vres[1];
1679 value _vres[2] = { 0, 0, };
1684 Begin_roots_block(_vres, 2)
1685 _vres[0] = Val_int(*p_digmax);
1686 _vres[1] = Val_int(*p_digits);
1687 _vresult = camlidl_alloc_small(2, 0);
1688 Field(_vresult, 0) = _vres[0];
1689 Field(_vresult, 1) = _vres[1];
1701 value _vres[2] = { 0, 0, };
1706 Begin_roots_block(_vres, 2)
1707 _vres[0] = Val_int(*p_digmax);
1708 _vres[1] = Val_int(*p_digits);
1709 _vresult = camlidl_alloc_small(2, 0);
1710 Field(_vresult, 0) = _vres[0];
1711 Field(_vresult, 1) = _vres[1];
1731 struct camlidl_ctx_struct _ctxs = { CAMLIDL_TRANSIENT, NULL };
1732 camlidl_ctx _ctx = &_ctxs;
1733 _c1 = Wosize_val(_v_data) / Double_wosize;
1734 data = camlidl_malloc(_c1 *
sizeof(
double ), _ctx);
1735 for (_c2 = 0; _c2 < _c1; _c2++) {
1736 data[_c2] = Double_field(_v_data, _c2);
1739 datmin = Double_val(_v_datmin);
1740 datmax = Double_val(_v_datmax);
1741 nbin = Int_val(_v_nbin);
1743 c_plhist(n, data, datmin, datmax, nbin, opt);
1763 value _vres[3] = { 0, 0, 0, };
1765 h = Double_val(_v_h);
1766 l = Double_val(_v_l);
1767 s = Double_val(_v_s);
1772 Begin_roots_block(_vres, 3)
1773 _vres[0] = copy_double(*p_r);
1774 _vres[1] = copy_double(*p_g);
1775 _vres[2] = copy_double(*p_b);
1776 _vresult = camlidl_alloc_small(3, 0);
1777 Field(_vresult, 0) = _vres[0];
1778 Field(_vresult, 1) = _vres[1];
1779 Field(_vresult, 2) = _vres[2];
1800 x1 = Double_val(_v_x1);
1801 y1 = Double_val(_v_y1);
1802 x2 = Double_val(_v_x2);
1803 y2 = Double_val(_v_y2);
1816 xlabel = String_val(_v_xlabel);
1817 ylabel = String_val(_v_ylabel);
1818 tlabel = String_val(_v_tlabel);
1819 c_pllab(xlabel, ylabel, tlabel);
1831 x = Double_val(_v_x);
1832 y = Double_val(_v_y);
1833 z = Double_val(_v_z);
1849 struct camlidl_ctx_struct _ctxs = { CAMLIDL_TRANSIENT, NULL };
1850 camlidl_ctx _ctx = &_ctxs;
1851 _c1 = Wosize_val(_v_x) / Double_wosize;
1852 x = camlidl_malloc(_c1 *
sizeof(
double ), _ctx);
1853 for (_c2 = 0; _c2 < _c1; _c2++) {
1854 x[_c2] = Double_field(_v_x, _c2);
1857 _c3 = Wosize_val(_v_y) / Double_wosize;
1858 y = camlidl_malloc(_c3 *
sizeof(
double ), _ctx);
1859 for (_c4 = 0; _c4 < _c3; _c4++) {
1860 y[_c4] = Double_field(_v_y, _c4);
1883 struct camlidl_ctx_struct _ctxs = { CAMLIDL_TRANSIENT, NULL };
1884 camlidl_ctx _ctx = &_ctxs;
1885 _c1 = Wosize_val(_v_x) / Double_wosize;
1886 x = camlidl_malloc(_c1 *
sizeof(
double ), _ctx);
1887 for (_c2 = 0; _c2 < _c1; _c2++) {
1888 x[_c2] = Double_field(_v_x, _c2);
1891 _c3 = Wosize_val(_v_y) / Double_wosize;
1892 y = camlidl_malloc(_c3 *
sizeof(
double ), _ctx);
1893 for (_c4 = 0; _c4 < _c3; _c4++) {
1894 y[_c4] = Double_field(_v_y, _c4);
1897 _c5 = Wosize_val(_v_z) / Double_wosize;
1898 z = camlidl_malloc(_c5 *
sizeof(
double ), _ctx);
1899 for (_c6 = 0; _c6 < _c5; _c6++) {
1900 z[_c6] = Double_field(_v_z, _c6);
1912 lin = Int_val(_v_lin);
1938 struct camlidl_ctx_struct _ctxs = { CAMLIDL_TRANSIENT, NULL };
1939 camlidl_ctx _ctx = &_ctxs;
1940 _c1 = Wosize_val(_v_x) / Double_wosize;
1941 x = camlidl_malloc(_c1 *
sizeof(
double ), _ctx);
1942 for (_c2 = 0; _c2 < _c1; _c2++) {
1943 x[_c2] = Double_field(_v_x, _c2);
1946 _c3 = Wosize_val(_v_y) / Double_wosize;
1947 y = camlidl_malloc(_c3 *
sizeof(
double ), _ctx);
1948 for (_c4 = 0; _c4 < _c3; _c4++) {
1949 y[_c4] = Double_field(_v_y, _c4);
1952 _c5 = Wosize_val(_v_z);
1953 z = camlidl_malloc(_c5 *
sizeof(
double *), _ctx);
1954 for (_c6 = 0; _c6 < _c5; _c6++) {
1955 _v7 = Field(_v_z, _c6);
1956 _c8 = Wosize_val(_v7) / Double_wosize;
1957 z[_c6] = camlidl_malloc(_c8 *
sizeof(
double ), _ctx);
1958 for (_c9 = 0; _c9 < _c8; _c9++) {
1959 z[_c6][_c9] = Double_field(_v7, _c9);
1996 struct camlidl_ctx_struct _ctxs = { CAMLIDL_TRANSIENT, NULL };
1997 camlidl_ctx _ctx = &_ctxs;
1998 _c1 = Wosize_val(_v_x) / Double_wosize;
1999 x = camlidl_malloc(_c1 *
sizeof(
double ), _ctx);
2000 for (_c2 = 0; _c2 < _c1; _c2++) {
2001 x[_c2] = Double_field(_v_x, _c2);
2004 _c3 = Wosize_val(_v_y) / Double_wosize;
2005 y = camlidl_malloc(_c3 *
sizeof(
double ), _ctx);
2006 for (_c4 = 0; _c4 < _c3; _c4++) {
2007 y[_c4] = Double_field(_v_y, _c4);
2010 _c5 = Wosize_val(_v_z);
2011 z = camlidl_malloc(_c5 *
sizeof(
double *), _ctx);
2012 for (_c6 = 0; _c6 < _c5; _c6++) {
2013 _v7 = Field(_v_z, _c6);
2014 _c8 = Wosize_val(_v7) / Double_wosize;
2015 z[_c6] = camlidl_malloc(_c8 *
sizeof(
double ), _ctx);
2016 for (_c9 = 0; _c9 < _c8; _c9++) {
2017 z[_c6][_c9] = Double_field(_v7, _c9);
2023 _c10 = Wosize_val(_v_clevel) / Double_wosize;
2024 clevel = camlidl_malloc(_c10 *
sizeof(
double ), _ctx);
2025 for (_c11 = 0; _c11 < _c10; _c11++) {
2026 clevel[_c11] = Double_field(_v_clevel, _c11);
2029 c_plmeshc(x, y, z, nx, ny, opt, clevel, nlevel);
2042 _vres = Val_int(*p_strm);
2058 side = String_val(_v_side);
2059 disp = Double_val(_v_disp);
2060 pos = Double_val(_v_pos);
2061 just = Double_val(_v_just);
2062 text = String_val(_v_text);
2063 c_plmtex(side, disp, pos, just, text);
2079 side = String_val(_v_side);
2080 disp = Double_val(_v_disp);
2081 pos = Double_val(_v_pos);
2082 just = Double_val(_v_just);
2083 text = String_val(_v_text);
2111 struct camlidl_ctx_struct _ctxs = { CAMLIDL_TRANSIENT, NULL };
2112 camlidl_ctx _ctx = &_ctxs;
2113 _c1 = Wosize_val(_v_x) / Double_wosize;
2114 x = camlidl_malloc(_c1 *
sizeof(
double ), _ctx);
2115 for (_c2 = 0; _c2 < _c1; _c2++) {
2116 x[_c2] = Double_field(_v_x, _c2);
2119 _c3 = Wosize_val(_v_y) / Double_wosize;
2120 y = camlidl_malloc(_c3 *
sizeof(
double ), _ctx);
2121 for (_c4 = 0; _c4 < _c3; _c4++) {
2122 y[_c4] = Double_field(_v_y, _c4);
2125 _c5 = Wosize_val(_v_z);
2126 z = camlidl_malloc(_c5 *
sizeof(
double *), _ctx);
2127 for (_c6 = 0; _c6 < _c5; _c6++) {
2128 _v7 = Field(_v_z, _c6);
2129 _c8 = Wosize_val(_v7) / Double_wosize;
2130 z[_c6] = camlidl_malloc(_c8 *
sizeof(
double ), _ctx);
2131 for (_c9 = 0; _c9 < _c8; _c9++) {
2132 z[_c6][_c9] = Double_field(_v7, _c9);
2138 side = Int_val(_v_side);
2139 c_plot3d(x, y, z, nx, ny, opt, side);
2170 struct camlidl_ctx_struct _ctxs = { CAMLIDL_TRANSIENT, NULL };
2171 camlidl_ctx _ctx = &_ctxs;
2172 _c1 = Wosize_val(_v_x) / Double_wosize;
2173 x = camlidl_malloc(_c1 *
sizeof(
double ), _ctx);
2174 for (_c2 = 0; _c2 < _c1; _c2++) {
2175 x[_c2] = Double_field(_v_x, _c2);
2178 _c3 = Wosize_val(_v_y) / Double_wosize;
2179 y = camlidl_malloc(_c3 *
sizeof(
double ), _ctx);
2180 for (_c4 = 0; _c4 < _c3; _c4++) {
2181 y[_c4] = Double_field(_v_y, _c4);
2184 _c5 = Wosize_val(_v_z);
2185 z = camlidl_malloc(_c5 *
sizeof(
double *), _ctx);
2186 for (_c6 = 0; _c6 < _c5; _c6++) {
2187 _v7 = Field(_v_z, _c6);
2188 _c8 = Wosize_val(_v7) / Double_wosize;
2189 z[_c6] = camlidl_malloc(_c8 *
sizeof(
double ), _ctx);
2190 for (_c9 = 0; _c9 < _c8; _c9++) {
2191 z[_c6][_c9] = Double_field(_v7, _c9);
2197 _c10 = Wosize_val(_v_clevel) / Double_wosize;
2198 clevel = camlidl_malloc(_c10 *
sizeof(
double ), _ctx);
2199 for (_c11 = 0; _c11 < _c10; _c11++) {
2200 clevel[_c11] = Double_field(_v_clevel, _c11);
2203 c_plot3dc(x, y, z, nx, ny, opt, clevel, nlevel);
2221 struct camlidl_ctx_struct _ctxs = { CAMLIDL_TRANSIENT, NULL };
2222 camlidl_ctx _ctx = &_ctxs;
2223 _c1 = Wosize_val(_v_inc);
2224 inc = camlidl_malloc(_c1 *
sizeof(
int ), _ctx);
2225 for (_c2 = 0; _c2 < _c1; _c2++) {
2226 _v3 = Field(_v_inc, _c2);
2227 inc[_c2] = Int_val(_v3);
2230 _c4 = Wosize_val(_v_del);
2231 del = camlidl_malloc(_c4 *
sizeof(
int ), _ctx);
2232 for (_c5 = 0; _c5 < _c4; _c5++) {
2233 _v6 = Field(_v_del, _c5);
2234 del[_c5] = Int_val(_v6);
2255 x1 = Double_val(_v_x1);
2256 y1 = Double_val(_v_y1);
2257 x2 = Double_val(_v_x2);
2258 y2 = Double_val(_v_y2);
2276 struct camlidl_ctx_struct _ctxs = { CAMLIDL_TRANSIENT, NULL };
2277 camlidl_ctx _ctx = &_ctxs;
2278 _c1 = Wosize_val(_v_x) / Double_wosize;
2279 x = camlidl_malloc(_c1 *
sizeof(
double ), _ctx);
2280 for (_c2 = 0; _c2 < _c1; _c2++) {
2281 x[_c2] = Double_field(_v_x, _c2);
2284 _c3 = Wosize_val(_v_y) / Double_wosize;
2285 y = camlidl_malloc(_c3 *
sizeof(
double ), _ctx);
2286 for (_c4 = 0; _c4 < _c3; _c4++) {
2287 y[_c4] = Double_field(_v_y, _c4);
2290 code = Int_val(_v_code);
2313 struct camlidl_ctx_struct _ctxs = { CAMLIDL_TRANSIENT, NULL };
2314 camlidl_ctx _ctx = &_ctxs;
2315 _c1 = Wosize_val(_v_x) / Double_wosize;
2316 x = camlidl_malloc(_c1 *
sizeof(
double ), _ctx);
2317 for (_c2 = 0; _c2 < _c1; _c2++) {
2318 x[_c2] = Double_field(_v_x, _c2);
2321 _c3 = Wosize_val(_v_y) / Double_wosize;
2322 y = camlidl_malloc(_c3 *
sizeof(
double ), _ctx);
2323 for (_c4 = 0; _c4 < _c3; _c4++) {
2324 y[_c4] = Double_field(_v_y, _c4);
2327 _c5 = Wosize_val(_v_z) / Double_wosize;
2328 z = camlidl_malloc(_c5 *
sizeof(
double ), _ctx);
2329 for (_c6 = 0; _c6 < _c5; _c6++) {
2330 z[_c6] = Double_field(_v_z, _c6);
2333 code = Int_val(_v_code);
2345 setp = Int_val(_v_setp);
2346 prec = Int_val(_v_prec);
2355 patt = Int_val(_v_patt);
2374 x = Double_val(_v_x);
2375 y = Double_val(_v_y);
2376 dx = Double_val(_v_dx);
2377 dy = Double_val(_v_dy);
2378 just = Double_val(_v_just);
2379 text = String_val(_v_text);
2380 c_plptex(x, y, dx, dy, just, text);
2413 wx = Double_val(_v_wx);
2414 wy = Double_val(_v_wy);
2415 wz = Double_val(_v_wz);
2416 dx = Double_val(_v_dx);
2417 dy = Double_val(_v_dy);
2418 dz = Double_val(_v_dz);
2419 sx = Double_val(_v_sx);
2420 sy = Double_val(_v_sy);
2421 sz = Double_val(_v_sz);
2422 just = Double_val(_v_just);
2423 text = String_val(_v_text);
2424 c_plptex3(wx, wy, wz, dx, dy, dz, sx, sy, sz, just, text);
2430 return camlidl_plplot_core_c_plptex3(argv[0], argv[1], argv[2], argv[3], argv[4], argv[5], argv[6], argv[7], argv[8], argv[9], argv[10]);
2439 _vres = copy_double(_res);
2464 value _vres[3] = { 0, 0, 0, };
2466 r = Double_val(_v_r);
2467 g = Double_val(_v_g);
2468 b = Double_val(_v_b);
2473 Begin_roots_block(_vres, 3)
2474 _vres[0] = copy_double(*p_h);
2475 _vres[1] = copy_double(*p_l);
2476 _vres[2] = copy_double(*p_s);
2477 _vresult = camlidl_alloc_small(3, 0);
2478 Field(_vresult, 0) = _vres[0];
2479 Field(_vresult, 1) = _vres[1];
2480 Field(_vresult, 2) = _vres[2];
2491 def = Double_val(_v_def);
2492 scale = Double_val(_v_scale);
2515 struct camlidl_ctx_struct _ctxs = { CAMLIDL_TRANSIENT, NULL };
2516 camlidl_ctx _ctx = &_ctxs;
2517 _c1 = Wosize_val(_v_r);
2518 r = camlidl_malloc(_c1 *
sizeof(
int ), _ctx);
2519 for (_c2 = 0; _c2 < _c1; _c2++) {
2520 _v3 = Field(_v_r, _c2);
2521 r[_c2] = Int_val(_v3);
2524 _c4 = Wosize_val(_v_g);
2525 g = camlidl_malloc(_c4 *
sizeof(
int ), _ctx);
2526 for (_c5 = 0; _c5 < _c4; _c5++) {
2527 _v6 = Field(_v_g, _c5);
2528 g[_c5] = Int_val(_v6);
2531 _c7 = Wosize_val(_v_b);
2532 b = camlidl_malloc(_c7 *
sizeof(
int ), _ctx);
2533 for (_c8 = 0; _c8 < _c7; _c8++) {
2534 _v9 = Field(_v_b, _c8);
2535 b[_c8] = Int_val(_v9);
2565 struct camlidl_ctx_struct _ctxs = { CAMLIDL_TRANSIENT, NULL };
2566 camlidl_ctx _ctx = &_ctxs;
2567 _c1 = Wosize_val(_v_r);
2568 r = camlidl_malloc(_c1 *
sizeof(
int ), _ctx);
2569 for (_c2 = 0; _c2 < _c1; _c2++) {
2570 _v3 = Field(_v_r, _c2);
2571 r[_c2] = Int_val(_v3);
2574 _c4 = Wosize_val(_v_g);
2575 g = camlidl_malloc(_c4 *
sizeof(
int ), _ctx);
2576 for (_c5 = 0; _c5 < _c4; _c5++) {
2577 _v6 = Field(_v_g, _c5);
2578 g[_c5] = Int_val(_v6);
2581 _c7 = Wosize_val(_v_b);
2582 b = camlidl_malloc(_c7 *
sizeof(
int ), _ctx);
2583 for (_c8 = 0; _c8 < _c7; _c8++) {
2584 _v9 = Field(_v_b, _c8);
2585 b[_c8] = Int_val(_v9);
2588 _c10 = Wosize_val(_v_a) / Double_wosize;
2589 a = camlidl_malloc(_c10 *
sizeof(
double ), _ctx);
2590 for (_c11 = 0; _c11 < _c10; _c11++) {
2591 a[_c11] = Double_field(_v_a, _c11);
2603 ncol0 = Int_val(_v_ncol0);
2626 struct camlidl_ctx_struct _ctxs = { CAMLIDL_TRANSIENT, NULL };
2627 camlidl_ctx _ctx = &_ctxs;
2628 _c1 = Wosize_val(_v_r);
2629 r = camlidl_malloc(_c1 *
sizeof(
int ), _ctx);
2630 for (_c2 = 0; _c2 < _c1; _c2++) {
2631 _v3 = Field(_v_r, _c2);
2632 r[_c2] = Int_val(_v3);
2635 _c4 = Wosize_val(_v_g);
2636 g = camlidl_malloc(_c4 *
sizeof(
int ), _ctx);
2637 for (_c5 = 0; _c5 < _c4; _c5++) {
2638 _v6 = Field(_v_g, _c5);
2639 g[_c5] = Int_val(_v6);
2642 _c7 = Wosize_val(_v_b);
2643 b = camlidl_malloc(_c7 *
sizeof(
int ), _ctx);
2644 for (_c8 = 0; _c8 < _c7; _c8++) {
2645 _v9 = Field(_v_b, _c8);
2646 b[_c8] = Int_val(_v9);
2676 struct camlidl_ctx_struct _ctxs = { CAMLIDL_TRANSIENT, NULL };
2677 camlidl_ctx _ctx = &_ctxs;
2678 _c1 = Wosize_val(_v_r);
2679 r = camlidl_malloc(_c1 *
sizeof(
int ), _ctx);
2680 for (_c2 = 0; _c2 < _c1; _c2++) {
2681 _v3 = Field(_v_r, _c2);
2682 r[_c2] = Int_val(_v3);
2685 _c4 = Wosize_val(_v_g);
2686 g = camlidl_malloc(_c4 *
sizeof(
int ), _ctx);
2687 for (_c5 = 0; _c5 < _c4; _c5++) {
2688 _v6 = Field(_v_g, _c5);
2689 g[_c5] = Int_val(_v6);
2692 _c7 = Wosize_val(_v_b);
2693 b = camlidl_malloc(_c7 *
sizeof(
int ), _ctx);
2694 for (_c8 = 0; _c8 < _c7; _c8++) {
2695 _v9 = Field(_v_b, _c8);
2696 b[_c8] = Int_val(_v9);
2699 _c10 = Wosize_val(_v_a) / Double_wosize;
2700 a = camlidl_malloc(_c10 *
sizeof(
double ), _ctx);
2701 for (_c11 = 0; _c11 < _c10; _c11++) {
2702 a[_c11] = Double_field(_v_a, _c11);
2716 value _v_alt_hue_path)
2737 struct camlidl_ctx_struct _ctxs = { CAMLIDL_TRANSIENT, NULL };
2738 camlidl_ctx _ctx = &_ctxs;
2739 itype = Int_val(_v_itype);
2740 _c1 = Wosize_val(_v_intensity) / Double_wosize;
2741 intensity = camlidl_malloc(_c1 *
sizeof(
double ), _ctx);
2742 for (_c2 = 0; _c2 < _c1; _c2++) {
2743 intensity[_c2] = Double_field(_v_intensity, _c2);
2746 _c3 = Wosize_val(_v_coord1) / Double_wosize;
2747 coord1 = camlidl_malloc(_c3 *
sizeof(
double ), _ctx);
2748 for (_c4 = 0; _c4 < _c3; _c4++) {
2749 coord1[_c4] = Double_field(_v_coord1, _c4);
2752 _c5 = Wosize_val(_v_coord2) / Double_wosize;
2753 coord2 = camlidl_malloc(_c5 *
sizeof(
double ), _ctx);
2754 for (_c6 = 0; _c6 < _c5; _c6++) {
2755 coord2[_c6] = Double_field(_v_coord2, _c6);
2758 _c7 = Wosize_val(_v_coord3) / Double_wosize;
2759 coord3 = camlidl_malloc(_c7 *
sizeof(
double ), _ctx);
2760 for (_c8 = 0; _c8 < _c7; _c8++) {
2761 coord3[_c8] = Double_field(_v_coord3, _c8);
2764 if (_v_alt_hue_path == Val_int(0)) {
2765 alt_hue_path = NULL;
2767 _v9 = Field(_v_alt_hue_path, 0);
2768 _c10 = Wosize_val(_v9);
2769 alt_hue_path = camlidl_malloc(_c10 *
sizeof(
int ), _ctx);
2770 for (_c11 = 0; _c11 < _c10; _c11++) {
2771 _v12 = Field(_v9, _c11);
2772 alt_hue_path[_c11] = Int_val(_v12);
2776 c_plscmap1l(itype, npts, intensity, coord1, coord2, coord3, alt_hue_path);
2793 value _v_alt_hue_path)
2817 struct camlidl_ctx_struct _ctxs = { CAMLIDL_TRANSIENT, NULL };
2818 camlidl_ctx _ctx = &_ctxs;
2819 itype = Int_val(_v_itype);
2820 _c1 = Wosize_val(_v_intensity) / Double_wosize;
2821 intensity = camlidl_malloc(_c1 *
sizeof(
double ), _ctx);
2822 for (_c2 = 0; _c2 < _c1; _c2++) {
2823 intensity[_c2] = Double_field(_v_intensity, _c2);
2826 _c3 = Wosize_val(_v_coord1) / Double_wosize;
2827 coord1 = camlidl_malloc(_c3 *
sizeof(
double ), _ctx);
2828 for (_c4 = 0; _c4 < _c3; _c4++) {
2829 coord1[_c4] = Double_field(_v_coord1, _c4);
2832 _c5 = Wosize_val(_v_coord2) / Double_wosize;
2833 coord2 = camlidl_malloc(_c5 *
sizeof(
double ), _ctx);
2834 for (_c6 = 0; _c6 < _c5; _c6++) {
2835 coord2[_c6] = Double_field(_v_coord2, _c6);
2838 _c7 = Wosize_val(_v_coord3) / Double_wosize;
2839 coord3 = camlidl_malloc(_c7 *
sizeof(
double ), _ctx);
2840 for (_c8 = 0; _c8 < _c7; _c8++) {
2841 coord3[_c8] = Double_field(_v_coord3, _c8);
2844 _c9 = Wosize_val(_v_a) / Double_wosize;
2845 a = camlidl_malloc(_c9 *
sizeof(
double ), _ctx);
2846 for (_c10 = 0; _c10 < _c9; _c10++) {
2847 a[_c10] = Double_field(_v_a, _c10);
2850 if (_v_alt_hue_path == Val_int(0)) {
2851 alt_hue_path = NULL;
2853 _v11 = Field(_v_alt_hue_path, 0);
2854 _c12 = Wosize_val(_v11);
2855 alt_hue_path = camlidl_malloc(_c12 *
sizeof(
int ), _ctx);
2856 for (_c13 = 0; _c13 < _c12; _c13++) {
2857 _v14 = Field(_v11, _c13);
2858 alt_hue_path[_c13] = Int_val(_v14);
2862 c_plscmap1la(itype, npts, intensity, coord1, coord2, coord3, a, alt_hue_path);
2876 ncol1 = Int_val(_v_ncol1);
2887 min_color = Double_val(_v_min_color);
2888 max_color = Double_val(_v_max_color);
2903 icol0 = Int_val(_v_icol0);
2923 icol0 = Int_val(_v_icol0);
2927 a = Double_val(_v_a);
2960 a = Double_val(_v_a);
2969 color = Int_val(_v_color);
2975 value _v_compression)
2978 compression = Int_val(_v_compression);
2986 char const *devname;
2987 devname = String_val(_v_devname);
3002 mar = Double_val(_v_mar);
3003 aspect = Double_val(_v_aspect);
3004 jx = Double_val(_v_jx);
3005 jy = Double_val(_v_jy);
3024 dimxmin = Int_val(_v_dimxmin);
3025 dimxmax = Int_val(_v_dimxmax);
3026 dimymin = Int_val(_v_dimymin);
3027 dimymax = Int_val(_v_dimymax);
3028 dimxpmm = Double_val(_v_dimxpmm);
3029 dimypmm = Double_val(_v_dimypmm);
3030 c_plsdimap(dimxmin, dimxmax, dimymin, dimymax, dimxpmm, dimypmm);
3043 rot = Double_val(_v_rot);
3058 xmin = Double_val(_v_xmin);
3059 ymin = Double_val(_v_ymin);
3060 xmax = Double_val(_v_xmax);
3061 ymax = Double_val(_v_ymax);
3076 xmin = Double_val(_v_xmin);
3077 ymin = Double_val(_v_ymin);
3078 xmax = Double_val(_v_xmax);
3079 ymax = Double_val(_v_ymax);
3088 s = Int64_val(_v_s);
3097 esc = Int_val(_v_esc);
3110 fam = Int_val(_v_fam);
3111 num = Int_val(_v_num);
3112 bmax = Int_val(_v_bmax);
3121 fci = Int64_val(_v_fci);
3130 fnam = String_val(_v_fnam);
3156 def = Double_val(_v_def);
3157 scale = Double_val(_v_scale);
3168 def = Double_val(_v_def);
3169 scale = Double_val(_v_scale);
3187 ori = Int_val(_v_ori);
3206 xp = Double_val(_v_xp);
3207 yp = Double_val(_v_yp);
3208 xleng = Int_val(_v_xleng);
3209 yleng = Int_val(_v_yleng);
3210 xoff = Int_val(_v_xoff);
3211 yoff = Int_val(_v_yoff);
3212 c_plspage(xp, yp, xleng, yleng, xoff, yoff);
3224 char const *filename;
3225 filename = String_val(_v_filename);
3232 value _v_interpolate)
3234 char const *filename;
3236 filename = String_val(_v_filename);
3237 interpolate = Int_val(_v_interpolate);
3246 pause = Int_val(_v_pause);
3255 strm = Int_val(_v_strm);
3266 nx = Int_val(_v_nx);
3267 ny = Int_val(_v_ny);
3278 def = Double_val(_v_def);
3279 scale = Double_val(_v_scale);
3290 nx = Int_val(_v_nx);
3291 ny = Int_val(_v_ny);
3301 char const *devname;
3304 devname = String_val(_v_devname);
3305 nx = Int_val(_v_nx);
3306 ny = Int_val(_v_ny);
3324 struct camlidl_ctx_struct _ctxs = { CAMLIDL_TRANSIENT, NULL };
3325 camlidl_ctx _ctx = &_ctxs;
3326 _c1 = Wosize_val(_v_x) / Double_wosize;
3327 x = camlidl_malloc(_c1 *
sizeof(
double ), _ctx);
3328 for (_c2 = 0; _c2 < _c1; _c2++) {
3329 x[_c2] = Double_field(_v_x, _c2);
3332 _c3 = Wosize_val(_v_y) / Double_wosize;
3333 y = camlidl_malloc(_c3 *
sizeof(
double ), _ctx);
3334 for (_c4 = 0; _c4 < _c3; _c4++) {
3335 y[_c4] = Double_field(_v_y, _c4);
3338 string = String_val(_v_string);
3361 struct camlidl_ctx_struct _ctxs = { CAMLIDL_TRANSIENT, NULL };
3362 camlidl_ctx _ctx = &_ctxs;
3363 _c1 = Wosize_val(_v_x) / Double_wosize;
3364 x = camlidl_malloc(_c1 *
sizeof(
double ), _ctx);
3365 for (_c2 = 0; _c2 < _c1; _c2++) {
3366 x[_c2] = Double_field(_v_x, _c2);
3369 _c3 = Wosize_val(_v_y) / Double_wosize;
3370 y = camlidl_malloc(_c3 *
sizeof(
double ), _ctx);
3371 for (_c4 = 0; _c4 < _c3; _c4++) {
3372 y[_c4] = Double_field(_v_y, _c4);
3375 _c5 = Wosize_val(_v_z) / Double_wosize;
3376 z = camlidl_malloc(_c5 *
sizeof(
double ), _ctx);
3377 for (_c6 = 0; _c6 < _c5; _c6++) {
3378 z[_c6] = Double_field(_v_z, _c6);
3381 string = String_val(_v_string);
3397 id = Int_val(_v_id);
3398 pen = Int_val(_v_pen);
3399 x = Double_val(_v_x);
3400 y = Double_val(_v_y);
3409 id = Int_val(_v_id);
3445 struct camlidl_ctx_struct _ctxs = { CAMLIDL_TRANSIENT, NULL };
3446 camlidl_ctx _ctx = &_ctxs;
3447 _c1 = Wosize_val(_v_idata);
3448 idata = camlidl_malloc(_c1 *
sizeof(
double *), _ctx);
3449 for (_c2 = 0; _c2 < _c1; _c2++) {
3450 _v3 = Field(_v_idata, _c2);
3451 _c4 = Wosize_val(_v3) / Double_wosize;
3452 idata[_c2] = camlidl_malloc(_c4 *
sizeof(
double ), _ctx);
3453 for (_c5 = 0; _c5 < _c4; _c5++) {
3454 idata[_c2][_c5] = Double_field(_v3, _c5);
3459 xmin = Double_val(_v_xmin);
3460 xmax = Double_val(_v_xmax);
3461 ymin = Double_val(_v_ymin);
3462 ymax = Double_val(_v_ymax);
3463 zmin = Double_val(_v_zmin);
3464 zmax = Double_val(_v_zmax);
3465 Dxmin = Double_val(_v_Dxmin);
3466 Dxmax = Double_val(_v_Dxmax);
3467 Dymin = Double_val(_v_Dymin);
3468 Dymax = Double_val(_v_Dymax);
3469 c_plimage(idata, nx, ny, xmin, xmax, ymin, ymax, zmin, zmax, Dxmin, Dxmax, Dymin, Dymax);
3476 return camlidl_plplot_core_c_plimage(argv[0], argv[1], argv[2], argv[3], argv[4], argv[5], argv[6], argv[7], argv[8], argv[9], argv[10]);
3492 struct camlidl_ctx_struct _ctxs = { CAMLIDL_TRANSIENT, NULL };
3493 camlidl_ctx _ctx = &_ctxs;
3494 _c1 = Wosize_val(_v_mark);
3495 mark = camlidl_malloc(_c1 *
sizeof(
int ), _ctx);
3496 for (_c2 = 0; _c2 < _c1; _c2++) {
3497 _v3 = Field(_v_mark, _c2);
3498 mark[_c2] = Int_val(_v3);
3501 _c4 = Wosize_val(_v_space);
3502 space = camlidl_malloc(_c4 *
sizeof(
int ), _ctx);
3503 for (_c5 = 0; _c5 < _c4; _c5++) {
3504 _v6 = Field(_v_space, _c5);
3505 space[_c5] = Int_val(_v6);
3539 struct camlidl_ctx_struct _ctxs = { CAMLIDL_TRANSIENT, NULL };
3540 camlidl_ctx _ctx = &_ctxs;
3541 _c1 = Wosize_val(_v_x) / Double_wosize;
3542 x = camlidl_malloc(_c1 *
sizeof(
double ), _ctx);
3543 for (_c2 = 0; _c2 < _c1; _c2++) {
3544 x[_c2] = Double_field(_v_x, _c2);
3547 _c3 = Wosize_val(_v_y) / Double_wosize;
3548 y = camlidl_malloc(_c3 *
sizeof(
double ), _ctx);
3549 for (_c4 = 0; _c4 < _c3; _c4++) {
3550 y[_c4] = Double_field(_v_y, _c4);
3553 _c5 = Wosize_val(_v_z);
3554 z = camlidl_malloc(_c5 *
sizeof(
double *), _ctx);
3555 for (_c6 = 0; _c6 < _c5; _c6++) {
3556 _v7 = Field(_v_z, _c6);
3557 _c8 = Wosize_val(_v7) / Double_wosize;
3558 z[_c6] = camlidl_malloc(_c8 *
sizeof(
double ), _ctx);
3559 for (_c9 = 0; _c9 < _c8; _c9++) {
3560 z[_c6][_c9] = Double_field(_v7, _c9);
3566 _c10 = Wosize_val(_v_clevel) / Double_wosize;
3567 clevel = camlidl_malloc(_c10 *
sizeof(
double ), _ctx);
3568 for (_c11 = 0; _c11 < _c10; _c11++) {
3569 clevel[_c11] = Double_field(_v_clevel, _c11);
3572 c_plsurf3d(x, y, z, nx, ny, opt, clevel, nlevel);
3590 struct camlidl_ctx_struct _ctxs = { CAMLIDL_TRANSIENT, NULL };
3591 camlidl_ctx _ctx = &_ctxs;
3592 _c1 = Wosize_val(_v_arrowx) / Double_wosize;
3593 arrowx = camlidl_malloc(_c1 *
sizeof(
double ), _ctx);
3594 for (_c2 = 0; _c2 < _c1; _c2++) {
3595 arrowx[_c2] = Double_field(_v_arrowx, _c2);
3598 _c3 = Wosize_val(_v_arrowy) / Double_wosize;
3599 arrowy = camlidl_malloc(_c3 *
sizeof(
double ), _ctx);
3600 for (_c4 = 0; _c4 < _c3; _c4++) {
3601 arrowy[_c4] = Double_field(_v_arrowy, _c4);
3604 fill = Int_val(_v_fill);
3620 xmin = Double_val(_v_xmin);
3621 xmax = Double_val(_v_xmax);
3622 ymin = Double_val(_v_ymin);
3623 ymax = Double_val(_v_ymax);
3634 digmax = Int_val(_v_digmax);
3635 digits = Int_val(_v_digits);
3644 window_id = Int_val(_v_window_id);
3655 digmax = Int_val(_v_digmax);
3656 digits = Int_val(_v_digits);
3674 struct camlidl_ctx_struct _ctxs = { CAMLIDL_TRANSIENT, NULL };
3675 camlidl_ctx _ctx = &_ctxs;
3676 _c1 = Wosize_val(_v_x) / Double_wosize;
3677 x = camlidl_malloc(_c1 *
sizeof(
double ), _ctx);
3678 for (_c2 = 0; _c2 < _c1; _c2++) {
3679 x[_c2] = Double_field(_v_x, _c2);
3682 _c3 = Wosize_val(_v_y) / Double_wosize;
3683 y = camlidl_malloc(_c3 *
sizeof(
double ), _ctx);
3684 for (_c4 = 0; _c4 < _c3; _c4++) {
3685 y[_c4] = Double_field(_v_y, _c4);
3688 code = Int_val(_v_code);
3700 digmax = Int_val(_v_digmax);
3701 digits = Int_val(_v_digits);
3716 fmt = String_val(_v_fmt);
3725 aspect = Double_val(_v_aspect);
3742 xmin = Double_val(_v_xmin);
3743 xmax = Double_val(_v_xmax);
3744 ymin = Double_val(_v_ymin);
3745 ymax = Double_val(_v_ymax);
3746 aspect = Double_val(_v_aspect);
3747 c_plvpas(xmin, xmax, ymin, ymax, aspect);
3761 xmin = Double_val(_v_xmin);
3762 xmax = Double_val(_v_xmax);
3763 ymin = Double_val(_v_ymin);
3764 ymax = Double_val(_v_ymax);
3799 basex = Double_val(_v_basex);
3800 basey = Double_val(_v_basey);
3801 height = Double_val(_v_height);
3802 xmin0 = Double_val(_v_xmin0);
3803 xmax0 = Double_val(_v_xmax0);
3804 ymin0 = Double_val(_v_ymin0);
3805 ymax0 = Double_val(_v_ymax0);
3806 zmin0 = Double_val(_v_zmin0);
3807 zmax0 = Double_val(_v_zmax0);
3808 alt = Double_val(_v_alt);
3809 az = Double_val(_v_az);
3810 c_plw3d(basex, basey, height, xmin0, xmax0, ymin0, ymax0, zmin0, zmax0, alt, az);
3816 return camlidl_plplot_core_c_plw3d(argv[0], argv[1], argv[2], argv[3], argv[4], argv[5], argv[6], argv[7], argv[8], argv[9], argv[10]);
3823 width = Double_val(_v_width);
3838 xmin = Double_val(_v_xmin);
3839 xmax = Double_val(_v_xmax);
3840 ymin = Double_val(_v_ymin);
3841 ymax = Double_val(_v_ymax);
3854 mode = Int_val(_v_mode);
3857 _vres = Val_int(*status);
3868 opt = String_val(_v_opt);
3869 optarg = String_val(_v_optarg);
3883 struct camlidl_ctx_struct _ctxs = { CAMLIDL_TRANSIENT, NULL };
3884 camlidl_ctx _ctx = &_ctxs;
3893 value _vres[2] = { 0, 0, };
3895 _c1 = Wosize_val(_v_f);
3896 f = camlidl_malloc(_c1 *
sizeof(
double *), _ctx);
3897 for (_c2 = 0; _c2 < _c1; _c2++) {
3898 _v3 = Field(_v_f, _c2);
3899 _c4 = Wosize_val(_v3) / Double_wosize;
3900 f[_c2] = camlidl_malloc(_c4 *
sizeof(
double ), _ctx);
3901 for (_c5 = 0; _c5 < _c4; _c5++) {
3902 f[_c2][_c5] = Double_field(_v3, _c5);
3910 Begin_roots_block(_vres, 2)
3911 _vres[0] = copy_double(*fmax);
3912 _vres[1] = copy_double(*fmin);
3913 _vresult = camlidl_alloc_small(2, 0);
3914 Field(_vresult, 0) = _vres[0];
3915 Field(_vresult, 1) = _vres[1];
3945 struct camlidl_ctx_struct _ctxs = { CAMLIDL_TRANSIENT, NULL };
3946 camlidl_ctx _ctx = &_ctxs;
3947 _c1 = Wosize_val(_v_f);
3948 f = camlidl_malloc(_c1 *
sizeof(
double *), _ctx);
3949 for (_c2 = 0; _c2 < _c1; _c2++) {
3950 _v3 = Field(_v_f, _c2);
3951 _c4 = Wosize_val(_v3) / Double_wosize;
3952 f[_c2] = camlidl_malloc(_c4 *
sizeof(
double ), _ctx);
3953 for (_c5 = 0; _c5 < _c4; _c5++) {
3954 f[_c2][_c5] = Double_field(_v3, _c5);
3959 kx = Int_val(_v_kx);
3960 lx = Int_val(_v_lx);
3961 ky = Int_val(_v_ky);
3962 ly = Int_val(_v_ly);
3963 _c6 = Wosize_val(_v_clevel) / Double_wosize;
3964 clevel = camlidl_malloc(_c6 *
sizeof(
double ), _ctx);
3965 for (_c7 = 0; _c7 < _c6; _c7++) {
3966 clevel[_c7] = Double_field(_v_clevel, _c7);
3969 ml_plcont(f, nx, ny, kx, lx, ky, ly, clevel, nlevel);
3994 value _v_rectangular)
4018 struct camlidl_ctx_struct _ctxs = { CAMLIDL_TRANSIENT, NULL };
4019 camlidl_ctx _ctx = &_ctxs;
4020 _c1 = Wosize_val(_v_a);
4021 a = camlidl_malloc(_c1 *
sizeof(
double *), _ctx);
4022 for (_c2 = 0; _c2 < _c1; _c2++) {
4023 _v3 = Field(_v_a, _c2);
4024 _c4 = Wosize_val(_v3) / Double_wosize;
4025 a[_c2] = camlidl_malloc(_c4 *
sizeof(
double ), _ctx);
4026 for (_c5 = 0; _c5 < _c4; _c5++) {
4027 a[_c2][_c5] = Double_field(_v3, _c5);
4032 left = Double_val(_v_left);
4033 right = Double_val(_v_right);
4034 bottom = Double_val(_v_bottom);
4035 top = Double_val(_v_top);
4036 shade_min = Double_val(_v_shade_min);
4037 shade_max = Double_val(_v_shade_max);
4038 sh_cmap = Int_val(_v_sh_cmap);
4039 sh_color = Double_val(_v_sh_color);
4040 sh_width = Double_val(_v_sh_width);
4041 min_color = Int_val(_v_min_color);
4042 min_width = Double_val(_v_min_width);
4043 max_color = Int_val(_v_max_color);
4044 max_width = Double_val(_v_max_width);
4045 rectangular = Int_val(_v_rectangular);
4046 ml_plshade(a, nx, ny, left, right, bottom, top, shade_min, shade_max, sh_cmap, sh_color, sh_width, min_color, min_width, max_color, max_width, rectangular);
4053 return camlidl_plplot_core_ml_plshade(argv[0], argv[1], argv[2], argv[3], argv[4], argv[5], argv[6], argv[7], argv[8], argv[9], argv[10], argv[11], argv[12], argv[13], argv[14]);
4063 value _v_fill_width,
4064 value _v_cont_color,
4065 value _v_cont_width,
4066 value _v_rectangular)
4088 struct camlidl_ctx_struct _ctxs = { CAMLIDL_TRANSIENT, NULL };
4089 camlidl_ctx _ctx = &_ctxs;
4090 _c1 = Wosize_val(_v_a);
4091 a = camlidl_malloc(_c1 *
sizeof(
double *), _ctx);
4092 for (_c2 = 0; _c2 < _c1; _c2++) {
4093 _v3 = Field(_v_a, _c2);
4094 _c4 = Wosize_val(_v3) / Double_wosize;
4095 a[_c2] = camlidl_malloc(_c4 *
sizeof(
double ), _ctx);
4096 for (_c5 = 0; _c5 < _c4; _c5++) {
4097 a[_c2][_c5] = Double_field(_v3, _c5);
4102 xmin = Double_val(_v_xmin);
4103 xmax = Double_val(_v_xmax);
4104 ymin = Double_val(_v_ymin);
4105 ymax = Double_val(_v_ymax);
4106 _c6 = Wosize_val(_v_clevel) / Double_wosize;
4107 clevel = camlidl_malloc(_c6 *
sizeof(
double ), _ctx);
4108 for (_c7 = 0; _c7 < _c6; _c7++) {
4109 clevel[_c7] = Double_field(_v_clevel, _c7);
4112 fill_width = Double_val(_v_fill_width);
4113 cont_color = Int_val(_v_cont_color);
4114 cont_width = Double_val(_v_cont_width);
4115 rectangular = Int_val(_v_rectangular);
4116 ml_plshades(a, nx, ny, xmin, xmax, ymin, ymax, clevel, nlevel, fill_width, cont_color, cont_width, rectangular);
4153 struct camlidl_ctx_struct _ctxs = { CAMLIDL_TRANSIENT, NULL };
4154 camlidl_ctx _ctx = &_ctxs;
4155 _c1 = Wosize_val(_v_idata);
4156 idata = camlidl_malloc(_c1 *
sizeof(
double *), _ctx);
4157 for (_c2 = 0; _c2 < _c1; _c2++) {
4158 _v3 = Field(_v_idata, _c2);
4159 _c4 = Wosize_val(_v3) / Double_wosize;
4160 idata[_c2] = camlidl_malloc(_c4 *
sizeof(
double ), _ctx);
4161 for (_c5 = 0; _c5 < _c4; _c5++) {
4162 idata[_c2][_c5] = Double_field(_v3, _c5);
4167 xmin = Double_val(_v_xmin);
4168 xmax = Double_val(_v_xmax);
4169 ymin = Double_val(_v_ymin);
4170 ymax = Double_val(_v_ymax);
4171 zmin = Double_val(_v_zmin);
4172 zmax = Double_val(_v_zmax);
4173 valuemin = Double_val(_v_valuemin);
4174 valuemax = Double_val(_v_valuemax);
4175 ml_plimagefr(idata, nx, ny, xmin, xmax, ymin, ymax, zmin, zmax, valuemin, valuemax);
4205 struct camlidl_ctx_struct _ctxs = { CAMLIDL_TRANSIENT, NULL };
4206 camlidl_ctx _ctx = &_ctxs;
4207 _c1 = Wosize_val(_v_u);
4208 u = camlidl_malloc(_c1 *
sizeof(
double *), _ctx);
4209 for (_c2 = 0; _c2 < _c1; _c2++) {
4210 _v3 = Field(_v_u, _c2);
4211 _c4 = Wosize_val(_v3) / Double_wosize;
4212 u[_c2] = camlidl_malloc(_c4 *
sizeof(
double ), _ctx);
4213 for (_c5 = 0; _c5 < _c4; _c5++) {
4214 u[_c2][_c5] = Double_field(_v3, _c5);
4219 _c6 = Wosize_val(_v_v);
4220 v = camlidl_malloc(_c6 *
sizeof(
double *), _ctx);
4221 for (_c7 = 0; _c7 < _c6; _c7++) {
4222 _v8 = Field(_v_v, _c7);
4223 _c9 = Wosize_val(_v8) / Double_wosize;
4224 v[_c7] = camlidl_malloc(_c9 *
sizeof(
double ), _ctx);
4225 for (_c10 = 0; _c10 < _c9; _c10++) {
4226 v[_c7][_c10] = Double_field(_v8, _c10);
4231 scale = Double_val(_v_scale);
4249 type = String_val(_v_type);
4250 minlong = Double_val(_v_minlong);
4251 maxlong = Double_val(_v_maxlong);
4252 minlat = Double_val(_v_minlat);
4253 maxlat = Double_val(_v_maxlat);
4254 ml_plmap(type, minlong, maxlong, minlat, maxlat);
4272 dlong = Double_val(_v_dlong);
4273 dlat = Double_val(_v_dlat);
4274 minlong = Double_val(_v_minlong);
4275 maxlong = Double_val(_v_maxlong);
4276 minlat = Double_val(_v_minlat);
4277 maxlat = Double_val(_v_maxlat);
4310 struct camlidl_ctx_struct _ctxs = { CAMLIDL_TRANSIENT, NULL };
4311 camlidl_ctx _ctx = &_ctxs;
4312 _c1 = Wosize_val(_v_x) / Double_wosize;
4313 x = camlidl_malloc(_c1 *
sizeof(
double ), _ctx);
4314 for (_c2 = 0; _c2 < _c1; _c2++) {
4315 x[_c2] = Double_field(_v_x, _c2);
4318 _c3 = Wosize_val(_v_y) / Double_wosize;
4319 y = camlidl_malloc(_c3 *
sizeof(
double ), _ctx);
4320 for (_c4 = 0; _c4 < _c3; _c4++) {
4321 y[_c4] = Double_field(_v_y, _c4);
4324 _c5 = Wosize_val(_v_z) / Double_wosize;
4325 z = camlidl_malloc(_c5 *
sizeof(
double ), _ctx);
4326 for (_c6 = 0; _c6 < _c5; _c6++) {
4327 z[_c6] = Double_field(_v_z, _c6);
4330 _c7 = Wosize_val(_v_draw);
4331 draw = camlidl_malloc(_c7 *
sizeof(
int ), _ctx);
4332 for (_c8 = 0; _c8 < _c7; _c8++) {
4333 _v9 = Field(_v_draw, _c8);
4334 draw[_c8] = Int_val(_v9);
4337 ifcc = Int_val(_v_ifcc);
4354 value _vres[2] = { 0, 0, };
4356 x = Double_val(_v_x);
4357 y = Double_val(_v_y);
4361 Begin_roots_block(_vres, 2)
4362 _vres[0] = copy_double(*tx);
4363 _vres[1] = copy_double(*ty);
4364 _vresult = camlidl_alloc_small(2, 0);
4365 Field(_vresult, 0) = _vres[0];
4366 Field(_vresult, 1) = _vres[1];
4377 _vres = Val_int(_res);
4387 _vres = copy_double(_res);
4397 _vres = copy_double(_res);
4407 _vres = copy_double(_res);