16 #define SWIG_PYTHON_DIRECTOR_NO_VTABLE
24 #ifndef SWIGTEMPLATEDISAMBIGUATOR
25 # if defined(__SUNPRO_CC) && (__SUNPRO_CC <= 0x560)
26 # define SWIGTEMPLATEDISAMBIGUATOR template
27 # elif defined(__HP_aCC)
30 # define SWIGTEMPLATEDISAMBIGUATOR template
32 # define SWIGTEMPLATEDISAMBIGUATOR
38 # if defined(__cplusplus) || (defined(__GNUC__) && !defined(__STRICT_ANSI__))
39 # define SWIGINLINE inline
47 # if defined(__GNUC__)
48 # if !(defined(__cplusplus)) || (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4))
49 # define SWIGUNUSED __attribute__ ((__unused__))
54 # define SWIGUNUSED __attribute__ ((__unused__))
60 #ifndef SWIG_MSC_UNSUPPRESS_4505
61 # if defined(_MSC_VER)
62 # pragma warning(disable : 4505)
66 #ifndef SWIGUNUSEDPARM
68 # define SWIGUNUSEDPARM(p)
70 # define SWIGUNUSEDPARM(p) p SWIGUNUSED
76 # define SWIGINTERN static SWIGUNUSED
80 #ifndef SWIGINTERNINLINE
81 # define SWIGINTERNINLINE SWIGINTERN SWIGINLINE
86 # if (__GNUC__ >= 4) || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4)
87 # ifndef GCC_HASCLASSVISIBILITY
88 # define GCC_HASCLASSVISIBILITY
94 # if defined(_WIN32) || defined(__WIN32__) || defined(__CYGWIN__)
95 # if defined(STATIC_LINKED)
98 # define SWIGEXPORT __declspec(dllexport)
101 # if defined(__GNUC__) && defined(GCC_HASCLASSVISIBILITY)
102 # define SWIGEXPORT __attribute__ ((visibility("default")))
111 # if defined(_WIN32) || defined(__WIN32__) || defined(__CYGWIN__)
112 # define SWIGSTDCALL __stdcall
119 #if !defined(SWIG_NO_CRT_SECURE_NO_DEPRECATE) && defined(_MSC_VER) && !defined(_CRT_SECURE_NO_DEPRECATE)
120 # define _CRT_SECURE_NO_DEPRECATE
124 #if !defined(SWIG_NO_SCL_SECURE_NO_DEPRECATE) && defined(_MSC_VER) && !defined(_SCL_SECURE_NO_DEPRECATE)
125 # define _SCL_SECURE_NO_DEPRECATE
129 #if defined(__APPLE__) && !defined(__ASSERT_MACROS_DEFINE_VERSIONS_WITHOUT_UNDERSCORES)
130 # define __ASSERT_MACROS_DEFINE_VERSIONS_WITHOUT_UNDERSCORES 0
138 #ifdef __INTEL_COMPILER
139 # pragma warning disable 592
143 #if defined(__GNUC__) && defined(_WIN32) && !defined(SWIG_PYTHON_NO_HYPOT_WORKAROUND)
148 #if defined(_DEBUG) && defined(SWIG_PYTHON_INTERPRETER_NO_DEBUG)
166 #define SWIG_RUNTIME_VERSION "4"
169 #ifdef SWIG_TYPE_TABLE
170 # define SWIG_QUOTE_STRING(x) #x
171 # define SWIG_EXPAND_AND_QUOTE_STRING(x) SWIG_QUOTE_STRING(x)
172 # define SWIG_TYPE_TABLE_NAME SWIG_EXPAND_AND_QUOTE_STRING(SWIG_TYPE_TABLE)
174 # define SWIG_TYPE_TABLE_NAME
187 # define SWIGRUNTIME SWIGINTERN
190 #ifndef SWIGRUNTIMEINLINE
191 # define SWIGRUNTIMEINLINE SWIGRUNTIME SWIGINLINE
195 #ifndef SWIG_BUFFER_SIZE
196 # define SWIG_BUFFER_SIZE 1024
200 #define SWIG_POINTER_DISOWN 0x1
201 #define SWIG_CAST_NEW_MEMORY 0x2
202 #define SWIG_POINTER_NO_NULL 0x4
205 #define SWIG_POINTER_OWN 0x1
288 #define SWIG_ERROR (-1)
289 #define SWIG_IsOK(r) (r >= 0)
290 #define SWIG_ArgError(r) ((r != SWIG_ERROR) ? r : SWIG_TypeError)
293 #define SWIG_CASTRANKLIMIT (1 << 8)
295 #define SWIG_NEWOBJMASK (SWIG_CASTRANKLIMIT << 1)
297 #define SWIG_TMPOBJMASK (SWIG_NEWOBJMASK << 1)
299 #define SWIG_BADOBJ (SWIG_ERROR)
300 #define SWIG_OLDOBJ (SWIG_OK)
301 #define SWIG_NEWOBJ (SWIG_OK | SWIG_NEWOBJMASK)
302 #define SWIG_TMPOBJ (SWIG_OK | SWIG_TMPOBJMASK)
304 #define SWIG_AddNewMask(r) (SWIG_IsOK(r) ? (r | SWIG_NEWOBJMASK) : r)
305 #define SWIG_DelNewMask(r) (SWIG_IsOK(r) ? (r & ~SWIG_NEWOBJMASK) : r)
306 #define SWIG_IsNewObj(r) (SWIG_IsOK(r) && (r & SWIG_NEWOBJMASK))
307 #define SWIG_AddTmpMask(r) (SWIG_IsOK(r) ? (r | SWIG_TMPOBJMASK) : r)
308 #define SWIG_DelTmpMask(r) (SWIG_IsOK(r) ? (r & ~SWIG_TMPOBJMASK) : r)
309 #define SWIG_IsTmpObj(r) (SWIG_IsOK(r) && (r & SWIG_TMPOBJMASK))
312 #if defined(SWIG_CASTRANK_MODE)
313 # ifndef SWIG_TypeRank
314 # define SWIG_TypeRank unsigned long
316 # ifndef SWIG_MAXCASTRANK
317 # define SWIG_MAXCASTRANK (2)
319 # define SWIG_CASTRANKMASK ((SWIG_CASTRANKLIMIT) -1)
320 # define SWIG_CastRank(r) (r & SWIG_CASTRANKMASK)
325 return SWIG_IsOK(r) ? SWIG_CastRank(r) + 1 : 0;
328 # define SWIG_AddCast(r) (r)
329 # define SWIG_CheckState(r) (SWIG_IsOK(r) ? 1 : 0)
339 typedef void *(*swig_converter_func)(
void *,
int *);
381 const char *f2,
const char *l2) {
382 for (;(f1 != l1) && (f2 != l2); ++f1, ++f2) {
383 while ((*f1 ==
' ') && (f1 != l1)) ++f1;
384 while ((*f2 ==
' ') && (f2 != l2)) ++f2;
385 if (*f1 != *f2)
return (*f1 > *f2) ? 1 : -1;
387 return (
int)((l1 - f1) - (l2 - f2));
397 const char* te = tb + strlen(tb);
399 while (equiv != 0 && *ne) {
400 for (nb = ne; *ne; ++ne) {
401 if (*ne ==
'|')
break;
426 if (strcmp(iter->
type->
name, c) == 0) {
427 if (iter == ty->
cast)
453 if (iter->
type == from) {
454 if (iter == ty->
cast)
486 if (!ty || !ty->
dcast)
return ty;
487 while (ty && (ty->
dcast)) {
488 ty = (*ty->
dcast)(ptr);
512 if (!type)
return NULL;
513 if (type->
str != NULL) {
514 const char *last_name = type->
str;
516 for (s = type->
str; *s; s++)
517 if (*s ==
'|') last_name = s+1;
565 size_t r = iter->
size - 1;
568 size_t i = (l + r) >> 1;
569 const char *iname = iter->
types[i]->
name;
571 int compare = strcmp(
name, iname);
573 return iter->
types[i];
574 }
else if (compare < 0) {
580 }
else if (compare > 0) {
589 }
while (iter != end);
616 for (; i < iter->
size; ++i) {
618 return iter->
types[i];
621 }
while (iter != end);
633 static const char hex[17] =
"0123456789abcdef";
634 const unsigned char *u = (
unsigned char *) ptr;
635 const unsigned char *eu = u + sz;
636 for (; u != eu; ++u) {
637 unsigned char uu = *u;
638 *(c++) = hex[(uu & 0xf0) >> 4];
639 *(c++) = hex[uu & 0xf];
649 unsigned char *u = (
unsigned char *) ptr;
650 const unsigned char *eu = u + sz;
651 for (; u != eu; ++u) {
654 if ((d >=
'0') && (d <=
'9'))
655 uu = (
unsigned char)((d -
'0') << 4);
656 else if ((d >=
'a') && (d <=
'f'))
657 uu = (
unsigned char)((d - (
'a'-10)) << 4);
661 if ((d >=
'0') && (d <=
'9'))
662 uu |= (
unsigned char)(d -
'0');
663 else if ((d >=
'a') && (d <=
'f'))
664 uu |= (
unsigned char)(d - (
'a'-10));
678 if ((2*
sizeof(
void *) + 2) > bsz)
return 0;
681 if (strlen(
name) + 1 > (bsz - (r - buff)))
return 0;
689 if (strcmp(c,
"NULL") == 0) {
702 size_t lname = (
name ? strlen(
name) : 0);
703 if ((2*sz + 2 + lname) > bsz)
return 0;
707 strncpy(r,
name,lname+1);
717 if (strcmp(c,
"NULL") == 0) {
732 #define SWIG_UnknownError -1
733 #define SWIG_IOError -2
734 #define SWIG_RuntimeError -3
735 #define SWIG_IndexError -4
736 #define SWIG_TypeError -5
737 #define SWIG_DivisionByZero -6
738 #define SWIG_OverflowError -7
739 #define SWIG_SyntaxError -8
740 #define SWIG_ValueError -9
741 #define SWIG_SystemError -10
742 #define SWIG_AttributeError -11
743 #define SWIG_MemoryError -12
744 #define SWIG_NullReferenceError -13
749 #if PY_VERSION_HEX >= 0x03000000
751 #define PyClass_Check(obj) PyObject_IsInstance(obj, (PyObject *)&PyType_Type)
752 #define PyInt_Check(x) PyLong_Check(x)
753 #define PyInt_AsLong(x) PyLong_AsLong(x)
754 #define PyInt_FromLong(x) PyLong_FromLong(x)
755 #define PyInt_FromSize_t(x) PyLong_FromSize_t(x)
756 #define PyString_Check(name) PyBytes_Check(name)
757 #define PyString_FromString(x) PyUnicode_FromString(x)
758 #define PyString_Format(fmt, args) PyUnicode_Format(fmt, args)
759 #define PyString_AsString(str) PyBytes_AsString(str)
760 #define PyString_Size(str) PyBytes_Size(str)
761 #define PyString_InternFromString(key) PyUnicode_InternFromString(key)
762 #define Py_TPFLAGS_HAVE_CLASS Py_TPFLAGS_BASETYPE
763 #define PyString_AS_STRING(x) PyUnicode_AS_STRING(x)
764 #define _PyLong_FromSsize_t(x) PyLong_FromSsize_t(x)
769 # define Py_TYPE(op) ((op)->ob_type)
774 #if PY_VERSION_HEX >= 0x03000000
775 # define SWIG_Python_str_FromFormat PyUnicode_FromFormat
777 # define SWIG_Python_str_FromFormat PyString_FromFormat
787 #if PY_VERSION_HEX >= 0x03000000
789 str = PyUnicode_AsUTF8String(str);
793 PyBytes_AsStringAndSize(str, &cstr, &len);
794 newstr = (
char *) malloc(len+1);
795 memcpy(newstr, cstr, len+1);
800 return PyString_AsString(str);
804 #if PY_VERSION_HEX >= 0x03000000
805 # define SWIG_Python_str_DelForPy3(x) free( (void*) (x) )
807 # define SWIG_Python_str_DelForPy3(x)
814 #if PY_VERSION_HEX >= 0x03000000
815 return PyUnicode_FromString(c);
817 return PyString_FromString(c);
822 # define PyObject_DEL PyObject_Del
827 # define SWIGPY_USE_CAPSULE
828 # define SWIGPY_CAPSULE_NAME ("swig_runtime_data" SWIG_RUNTIME_VERSION ".type_pointer_capsule" SWIG_TYPE_TABLE_NAME)
830 #if PY_VERSION_HEX < 0x03020000
831 #define PyDescr_TYPE(x) (((PyDescrObject *)(x))->d_type)
832 #define PyDescr_NAME(x) (((PyDescrObject *)(x))->d_name)
833 #define Py_hash_t long
845 type = PyExc_MemoryError;
848 type = PyExc_IOError;
851 type = PyExc_RuntimeError;
854 type = PyExc_IndexError;
857 type = PyExc_TypeError;
860 type = PyExc_ZeroDivisionError;
863 type = PyExc_OverflowError;
866 type = PyExc_SyntaxError;
869 type = PyExc_ValueError;
872 type = PyExc_SystemError;
875 type = PyExc_AttributeError;
878 type = PyExc_RuntimeError;
889 PyObject *traceback = 0;
891 if (PyErr_Occurred())
892 PyErr_Fetch(&type, &
value, &traceback);
894 PyObject *old_str = PyObject_Str(
value);
899 PyErr_Format(type,
"%s %s", tmp, mesg);
901 PyErr_Format(type,
"%s", mesg);
906 PyErr_SetString(PyExc_RuntimeError, mesg);
916 error = PyErr_Occurred();
917 return error && PyErr_GivenExceptionMatches(
error, PyExc_TypeError);
926 PyObject *type = NULL, *
value = NULL, *traceback = NULL;
927 PyErr_Fetch(&type, &
value, &traceback);
928 #if PY_VERSION_HEX >= 0x03000000
929 newvalue = PyUnicode_FromFormat(
"%S\nAdditional information:\n%s",
value, message);
931 newvalue = PyString_FromFormat(
"%s\nAdditional information:\n%s", PyString_AsString(
value), message);
934 PyErr_Restore(type, newvalue, traceback);
937 PyErr_SetString(PyExc_TypeError, message);
941 #if defined(SWIG_PYTHON_NO_THREADS)
942 # if defined(SWIG_PYTHON_THREADS)
943 # undef SWIG_PYTHON_THREADS
946 #if defined(SWIG_PYTHON_THREADS)
947 # if !defined(SWIG_PYTHON_USE_GIL) && !defined(SWIG_PYTHON_NO_USE_GIL)
948 # define SWIG_PYTHON_USE_GIL
950 # if defined(SWIG_PYTHON_USE_GIL)
951 # ifndef SWIG_PYTHON_INITIALIZE_THREADS
952 # define SWIG_PYTHON_INITIALIZE_THREADS PyEval_InitThreads()
955 class SWIG_Python_Thread_Block {
957 PyGILState_STATE state;
959 void end() {
if (status) { PyGILState_Release(state); status =
false;} }
960 SWIG_Python_Thread_Block() : status(true), state(PyGILState_Ensure()) {}
961 ~SWIG_Python_Thread_Block() { end(); }
963 class SWIG_Python_Thread_Allow {
967 void end() {
if (status) { PyEval_RestoreThread(save); status =
false; }}
968 SWIG_Python_Thread_Allow() : status(true), save(PyEval_SaveThread()) {}
969 ~SWIG_Python_Thread_Allow() { end(); }
971 # define SWIG_PYTHON_THREAD_BEGIN_BLOCK SWIG_Python_Thread_Block _swig_thread_block
972 # define SWIG_PYTHON_THREAD_END_BLOCK _swig_thread_block.end()
973 # define SWIG_PYTHON_THREAD_BEGIN_ALLOW SWIG_Python_Thread_Allow _swig_thread_allow
974 # define SWIG_PYTHON_THREAD_END_ALLOW _swig_thread_allow.end()
976 # define SWIG_PYTHON_THREAD_BEGIN_BLOCK PyGILState_STATE _swig_thread_block = PyGILState_Ensure()
977 # define SWIG_PYTHON_THREAD_END_BLOCK PyGILState_Release(_swig_thread_block)
978 # define SWIG_PYTHON_THREAD_BEGIN_ALLOW PyThreadState *_swig_thread_allow = PyEval_SaveThread()
979 # define SWIG_PYTHON_THREAD_END_ALLOW PyEval_RestoreThread(_swig_thread_allow)
982 # if !defined(SWIG_PYTHON_INITIALIZE_THREADS)
983 # define SWIG_PYTHON_INITIALIZE_THREADS
985 # if !defined(SWIG_PYTHON_THREAD_BEGIN_BLOCK)
986 # define SWIG_PYTHON_THREAD_BEGIN_BLOCK
988 # if !defined(SWIG_PYTHON_THREAD_END_BLOCK)
989 # define SWIG_PYTHON_THREAD_END_BLOCK
991 # if !defined(SWIG_PYTHON_THREAD_BEGIN_ALLOW)
992 # define SWIG_PYTHON_THREAD_BEGIN_ALLOW
994 # if !defined(SWIG_PYTHON_THREAD_END_ALLOW)
995 # define SWIG_PYTHON_THREAD_END_ALLOW
999 # define SWIG_PYTHON_INITIALIZE_THREADS
1000 # define SWIG_PYTHON_THREAD_BEGIN_BLOCK
1001 # define SWIG_PYTHON_THREAD_END_BLOCK
1002 # define SWIG_PYTHON_THREAD_BEGIN_ALLOW
1003 # define SWIG_PYTHON_THREAD_END_ALLOW
1019 #define SWIG_PY_POINTER 4
1020 #define SWIG_PY_BINARY 5
1046 #if PY_VERSION_HEX < 0x02070000
1047 # error "This version of SWIG only supports Python >= 2.7"
1050 #if PY_VERSION_HEX >= 0x03000000 && PY_VERSION_HEX < 0x03020000
1051 # error "This version of SWIG only supports Python 3 >= 3.2"
1057 #define SWIG_Python_ConvertPtr(obj, pptr, type, flags) SWIG_Python_ConvertPtrAndOwn(obj, pptr, type, flags, 0)
1058 #define SWIG_ConvertPtr(obj, pptr, type, flags) SWIG_Python_ConvertPtr(obj, pptr, type, flags)
1059 #define SWIG_ConvertPtrAndOwn(obj,pptr,type,flags,own) SWIG_Python_ConvertPtrAndOwn(obj, pptr, type, flags, own)
1061 #ifdef SWIGPYTHON_BUILTIN
1062 #define SWIG_NewPointerObj(ptr, type, flags) SWIG_Python_NewPointerObj(self, ptr, type, flags)
1064 #define SWIG_NewPointerObj(ptr, type, flags) SWIG_Python_NewPointerObj(NULL, ptr, type, flags)
1067 #define SWIG_InternalNewPointerObj(ptr, type, flags) SWIG_Python_NewPointerObj(NULL, ptr, type, flags)
1069 #define SWIG_CheckImplicit(ty) SWIG_Python_CheckImplicit(ty)
1070 #define SWIG_AcquirePtr(ptr, src) SWIG_Python_AcquirePtr(ptr, src)
1071 #define swig_owntype int
1074 #define SWIG_ConvertPacked(obj, ptr, sz, ty) SWIG_Python_ConvertPacked(obj, ptr, sz, ty)
1075 #define SWIG_NewPackedObj(ptr, sz, type) SWIG_Python_NewPackedObj(ptr, sz, type)
1078 #define SWIG_ConvertInstance(obj, pptr, type, flags) SWIG_ConvertPtr(obj, pptr, type, flags)
1079 #define SWIG_NewInstanceObj(ptr, type, flags) SWIG_NewPointerObj(ptr, type, flags)
1082 #define SWIG_ConvertFunctionPtr(obj, pptr, type) SWIG_Python_ConvertFunctionPtr(obj, pptr, type)
1083 #define SWIG_NewFunctionPtrObj(ptr, type) SWIG_Python_NewPointerObj(NULL, ptr, type, 0)
1086 #define SWIG_ConvertMember(obj, ptr, sz, ty) SWIG_Python_ConvertPacked(obj, ptr, sz, ty)
1087 #define SWIG_NewMemberObj(ptr, sz, type) SWIG_Python_NewPackedObj(ptr, sz, type)
1092 #define SWIG_GetModule(clientdata) SWIG_Python_GetModule(clientdata)
1093 #define SWIG_SetModule(clientdata, pointer) SWIG_Python_SetModule(pointer)
1094 #define SWIG_NewClientData(obj) SwigPyClientData_New(obj)
1096 #define SWIG_SetErrorObj SWIG_Python_SetErrorObj
1097 #define SWIG_SetErrorMsg SWIG_Python_SetErrorMsg
1098 #define SWIG_ErrorType(code) SWIG_Python_ErrorType(code)
1099 #define SWIG_Error(code, msg) SWIG_Python_SetErrorMsg(SWIG_ErrorType(code), msg)
1100 #define SWIG_fail goto fail
1110 PyErr_SetObject(errtype, obj);
1118 PyErr_SetString(errtype, msg);
1122 #define SWIG_Python_Raise(obj, type, desc) SWIG_Python_SetErrorObj(SWIG_Python_ExceptionType(desc), obj)
1126 #if defined(SWIGPYTHON_BUILTIN)
1129 SwigPyBuiltin_AddPublicSymbol(PyObject *seq,
const char *key) {
1130 PyObject *s = PyString_InternFromString(key);
1131 PyList_Append(seq, s);
1137 PyDict_SetItemString(d,
name, obj);
1139 if (public_interface)
1140 SwigPyBuiltin_AddPublicSymbol(public_interface,
name);
1147 PyDict_SetItemString(d,
name, obj);
1159 }
else if (result == Py_None) {
1163 if (!PyList_Check(result)) {
1164 PyObject *o2 = result;
1165 result = PyList_New(1);
1166 PyList_SetItem(result, 0, o2);
1168 PyList_Append(result,obj);
1183 PyErr_Format(PyExc_TypeError,
"%s expected %s%d arguments, got none",
1188 if (!PyTuple_Check(args)) {
1189 if (min <= 1 && max >= 1) {
1192 for (i = 1; i <
max; ++i) {
1197 PyErr_SetString(PyExc_SystemError,
"UnpackTuple() argument list is not a tuple");
1200 Py_ssize_t l = PyTuple_GET_SIZE(args);
1202 PyErr_Format(PyExc_TypeError,
"%s expected %s%d arguments, got %d",
1205 }
else if (l >
max) {
1206 PyErr_Format(PyExc_TypeError,
"%s expected %s%d arguments, got %d",
1211 for (i = 0; i < l; ++i) {
1212 objs[i] = PyTuple_GET_ITEM(args, i);
1214 for (; l <
max; ++l) {
1223 #define SWIG_Python_CallFunctor(functor, obj) PyObject_CallFunctionObjArgs(functor, obj, NULL);
1230 #define SWIG_STATIC_POINTER(var) var
1232 #define SWIG_STATIC_POINTER(var) var = 0; if (!var) var
1240 #define SWIG_POINTER_NOSHADOW (SWIG_POINTER_OWN << 1)
1241 #define SWIG_POINTER_NEW (SWIG_POINTER_NOSHADOW | SWIG_POINTER_OWN)
1243 #define SWIG_POINTER_IMPLICIT_CONV (SWIG_POINTER_DISOWN << 1)
1245 #define SWIG_BUILTIN_TP_INIT (SWIG_POINTER_OWN << 2)
1246 #define SWIG_BUILTIN_INIT (SWIG_BUILTIN_TP_INIT | SWIG_POINTER_OWN)
1257 PyObject *none = Py_None;
1280 PyErr_SetString(PyExc_TypeError,
"Implicit conversion is prohibited for explicit constructors.");
1287 PyObject *klass = data ? data->
klass : 0;
1288 return (klass ? klass : PyExc_RuntimeError);
1301 Py_INCREF(data->
klass);
1303 if (PyClass_Check(obj)) {
1308 data->
newraw = PyObject_GetAttrString(data->
klass,
"__new__");
1311 data->
newargs = PyTuple_New(1);
1312 PyTuple_SetItem(data->
newargs, 0, obj);
1319 data->
destroy = PyObject_GetAttrString(data->
klass,
"__swig_destroy__");
1320 if (PyErr_Occurred()) {
1327 flags = PyCFunction_GET_FLAGS(data->
destroy);
1328 data->
delargs = !(flags & (METH_O));
1340 Py_XDECREF(data->
newraw);
1353 #ifdef SWIGPYTHON_BUILTIN
1359 #ifdef SWIGPYTHON_BUILTIN
1362 SwigPyObject_get___dict__(PyObject *v, PyObject *
SWIGUNUSEDPARM(args))
1367 sobj->dict = PyDict_New();
1369 Py_INCREF(sobj->dict);
1378 return PyLong_FromVoidPtr(v->
ptr);
1384 PyObject *res = NULL;
1385 PyObject *args = PyTuple_New(1);
1390 #if PY_VERSION_HEX >= 0x03000000
1391 res = PyUnicode_Format(ofmt,args);
1393 res = PyString_Format(ofmt,args);
1422 # if PY_VERSION_HEX >= 0x03000000
1423 PyObject *joined = PyUnicode_Concat(repr, nrep);
1428 PyString_ConcatAndDel(&repr,nrep);
1447 return (i < j) ? -1 : ((i > j) ? 1 : 0);
1455 if( op != Py_EQ && op != Py_NE ) {
1456 Py_INCREF(Py_NotImplemented);
1457 return Py_NotImplemented;
1466 #ifdef SWIGPYTHON_BUILTIN
1471 assert(SwigPyObject_stype);
1487 #ifdef SWIGPYTHON_BUILTIN
1489 if (PyType_IsSubtype(op->ob_type, target_tp))
1491 return (strcmp(op->ob_type->tp_name,
"SwigPyObject") == 0);
1494 || (strcmp(
Py_TYPE(op)->tp_name,
"SwigPyObject") == 0);
1505 PyObject *next = sobj->
next;
1509 PyObject *destroy = data ? data->
destroy : 0;
1521 PyObject *type = NULL, *
value = NULL, *traceback = NULL;
1522 PyErr_Fetch(&type, &
value, &traceback);
1530 PyCFunction meth = PyCFunction_GET_FUNCTION(destroy);
1531 PyObject *mself = PyCFunction_GET_SELF(destroy);
1532 res = ((*meth)(mself, v));
1535 PyErr_WriteUnraisable(destroy);
1537 PyErr_Restore(type,
value, traceback);
1541 #if !defined(SWIG_PYTHON_SILENT_MEMLEAK)
1544 printf(
"swig/python detected a memory leak of type '%s', no destructor found.\n", (
name ?
name :
"unknown"));
1557 PyErr_SetString(PyExc_TypeError,
"Attempt to append a non SwigPyObject");
1570 Py_INCREF(sobj->
next);
1597 if (!PyArg_UnpackTuple(args,
"own", 0, 1, &val)) {
1601 PyObject *obj = PyBool_FromLong(sobj->
own);
1603 if (PyObject_IsTrue(val)) {
1617 {
"own",
SwigPyObject_own, METH_VARARGS,
"returns/sets ownership of the pointer"},
1626 static char swigobject_doc[] =
"Swig object carries a C/C++ instance pointer";
1628 static PyNumberMethods SwigPyObject_as_number = {
1633 #
if PY_VERSION_HEX < 0x03000000
1649 #
if PY_VERSION_HEX < 0x03000000
1653 #if PY_VERSION_HEX < 0x03000000
1659 #if PY_VERSION_HEX < 0x03000000
1663 #if PY_VERSION_HEX >= 0x03050000
1664 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
1665 #elif PY_VERSION_HEX >= 0x03000000
1666 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
1668 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
1672 static PyTypeObject swigpyobject_type;
1673 static int type_init = 0;
1675 const PyTypeObject tmp = {
1676 #if PY_VERSION_HEX >= 0x03000000
1677 PyVarObject_HEAD_INIT(NULL, 0)
1679 PyObject_HEAD_INIT(NULL)
1689 #if PY_VERSION_HEX >= 0x03000000
1695 &SwigPyObject_as_number,
1701 PyObject_GenericGetAttr,
1732 #
if PY_VERSION_HEX >= 0x03040000
1743 swigpyobject_type = tmp;
1745 if (PyType_Ready(&swigpyobject_type) < 0)
1748 return &swigpyobject_type;
1761 return (PyObject *)sobj;
1802 int s = (i < j) ? -1 : ((i > j) ? 1 : 0);
1803 return s ? s : strncmp((
const char *)v->
pack, (
const char *)w->
pack, 2*v->
size);
1817 || (strcmp((op)->ob_type->tp_name,
"SwigPyPacked") == 0);
1832 static char swigpacked_doc[] =
"Swig object carries a C/C++ instance pointer";
1833 static PyTypeObject swigpypacked_type;
1834 static int type_init = 0;
1836 const PyTypeObject tmp = {
1837 #if PY_VERSION_HEX>=0x03000000
1838 PyVarObject_HEAD_INIT(NULL, 0)
1840 PyObject_HEAD_INIT(NULL)
1850 #if PY_VERSION_HEX>=0x03000000
1862 PyObject_GenericGetAttr,
1893 #
if PY_VERSION_HEX >= 0x03040000
1904 swigpypacked_type = tmp;
1906 if (PyType_Ready(&swigpypacked_type) < 0)
1909 return &swigpypacked_type;
1917 void *pack = malloc(size);
1919 memcpy(pack, ptr, size);
1928 return (PyObject *) sobj;
1936 if (sobj->
size != size)
return 0;
1937 memcpy(ptr, sobj->
pack, size);
1961 #if PY_VERSION_HEX>=0x03000000
1962 #define SWIG_PYTHON_SLOW_GETSET_THIS
1973 #ifdef SWIGPYTHON_BUILTIN
1975 # ifdef PyWeakref_CheckProxy
1976 if (PyWeakref_CheckProxy(pyobj)) {
1977 pyobj = PyWeakref_GET_OBJECT(pyobj);
1987 #if !defined(SWIG_PYTHON_SLOW_GETSET_THIS)
1988 if (PyInstance_Check(pyobj)) {
1989 obj = _PyInstance_Lookup(pyobj,
SWIG_This());
1991 PyObject **dictptr = _PyObject_GetDictPtr(pyobj);
1992 if (dictptr != NULL) {
1993 PyObject *dict = *dictptr;
1994 obj = dict ? PyDict_GetItem(dict,
SWIG_This()) : 0;
1996 #ifdef PyWeakref_CheckProxy
1997 if (PyWeakref_CheckProxy(pyobj)) {
1998 PyObject *wobj = PyWeakref_GET_OBJECT(pyobj);
2002 obj = PyObject_GetAttr(pyobj,
SWIG_This());
2006 if (PyErr_Occurred()) PyErr_Clear();
2012 obj = PyObject_GetAttr(pyobj,
SWIG_This());
2016 if (PyErr_Occurred()) PyErr_Clear();
2036 int oldown = sobj->
own;
2054 if (obj == Py_None && !implicit_conv) {
2066 void *vptr = sobj->
ptr;
2071 if (ptr) *ptr = vptr;
2091 if (ptr) *ptr = vptr;
2097 *own = *own | sobj->
own;
2103 if (implicit_conv) {
2106 PyObject *klass = data->
klass;
2112 if (PyErr_Occurred()) {
2137 if (!
SWIG_IsOK(res) && obj == Py_None) {
2140 if (PyErr_Occurred())
2153 if (!PyCFunction_Check(obj)) {
2160 const char *doc = (((PyCFunctionObject *)obj) -> m_ml -> ml_doc);
2161 const char *desc = doc ? strstr(doc,
"swig_ptr: ") : 0;
2207 PyObject *newraw = data->
newraw;
2209 inst = PyObject_Call(newraw, data->
newargs, NULL);
2211 #if !defined(SWIG_PYTHON_SLOW_GETSET_THIS)
2212 PyObject **dictptr = _PyObject_GetDictPtr(inst);
2213 if (dictptr != NULL) {
2214 PyObject *dict = *dictptr;
2216 dict = PyDict_New();
2218 PyDict_SetItem(dict,
SWIG_This(), swig_this);
2223 PyObject_SetAttr(inst, key, swig_this);
2227 #if PY_VERSION_HEX >= 0x03000000
2228 PyObject *empty_args = PyTuple_New(0);
2230 PyObject *empty_kwargs = PyDict_New();
2232 inst = ((PyTypeObject *)data->
newargs)->tp_new((PyTypeObject *)data->
newargs, empty_args, empty_kwargs);
2233 Py_DECREF(empty_kwargs);
2235 PyObject_SetAttr(inst,
SWIG_This(), swig_this);
2236 Py_TYPE(inst)->tp_flags &= ~Py_TPFLAGS_VALID_VERSION_TAG;
2239 Py_DECREF(empty_args);
2242 PyObject *dict = PyDict_New();
2244 PyDict_SetItem(dict,
SWIG_This(), swig_this);
2245 inst = PyInstance_NewRaw(data->
newargs, dict);
2257 #if !defined(SWIG_PYTHON_SLOW_GETSET_THIS)
2258 PyObject **dictptr = _PyObject_GetDictPtr(inst);
2259 if (dictptr != NULL) {
2262 dict = PyDict_New();
2265 PyDict_SetItem(dict,
SWIG_This(), swig_this);
2269 dict = PyObject_GetAttrString(inst,
"__dict__");
2270 PyDict_SetItem(dict,
SWIG_This(), swig_this);
2304 if (clientdata && clientdata->
pytype) {
2309 PyObject *next_self = clientdata->
pytype->tp_alloc(clientdata->
pytype, 0);
2310 while (newobj->
next)
2312 newobj->
next = next_self;
2314 #ifdef SWIGPYTHON_BUILTIN
2320 #ifdef SWIGPYTHON_BUILTIN
2329 return (PyObject*) newobj;
2356 #ifdef SWIG_LINK_RUNTIME
2357 void *SWIG_ReturnGlobalTypeList(
void *);
2362 static void *type_pointer = (
void *)0;
2364 if (!type_pointer) {
2365 #ifdef SWIG_LINK_RUNTIME
2366 type_pointer = SWIG_ReturnGlobalTypeList((
void *)0);
2369 if (PyErr_Occurred()) {
2371 type_pointer = (
void *)0;
2397 #if PY_VERSION_HEX >= 0x03000000
2401 static PyMethodDef swig_empty_runtime_method_table[] = { {NULL, NULL, 0, NULL} };
2402 PyObject *module = Py_InitModule(
"swig_runtime_data" SWIG_RUNTIME_VERSION, swig_empty_runtime_method_table);
2405 if (pointer && module) {
2408 Py_XDECREF(pointer);
2424 PyObject *obj = PyDict_GetItem(cache, key);
2432 obj = PyCapsule_New((
void*) descriptor, NULL, NULL);
2433 PyDict_SetItem(cache, key, obj);
2444 #define SWIG_POINTER_EXCEPTION 0
2445 #define SWIG_arg_fail(arg) SWIG_Python_ArgFail(arg)
2446 #define SWIG_MustGetPtr(p, type, argnum, flags) SWIG_Python_MustGetPtr(p, type, argnum, flags)
2451 if (PyErr_Occurred()) {
2453 PyObject *
value = 0;
2454 PyObject *traceback = 0;
2455 PyErr_Fetch(&type, &
value, &traceback);
2457 PyObject *old_str = PyObject_Str(
value);
2459 const char *errmesg = tmp ? tmp :
"Invalid error message";
2463 PyErr_Format(type,
"%s %s", mesg, errmesg);
2465 PyErr_Format(type,
"%s %s", errmesg, mesg);
2479 if (PyErr_Occurred()) {
2482 PyOS_snprintf(mesg,
sizeof(mesg),
"argument number %d:", argnum);
2494 return ty ? ty->
str :
"";
2501 #if defined(SWIG_COBJECT_TYPES)
2505 PyErr_Format(PyExc_TypeError,
"a '%s' is expected, 'SwigPyObject(%s)' is received",
2512 const char *otype = (obj ? obj->ob_type->tp_name : 0);
2514 PyObject *str = PyObject_Str(obj);
2517 PyErr_Format(PyExc_TypeError,
"a '%s' is expected, '%s(%s)' is received",
2521 PyErr_Format(PyExc_TypeError,
"a '%s' is expected, '%s' is received",
2528 PyErr_Format(PyExc_TypeError,
"a '%s' is expected", type);
2530 PyErr_Format(PyExc_TypeError,
"unexpected type is received");
2541 #if SWIG_POINTER_EXCEPTION
2551 #ifdef SWIGPYTHON_BUILTIN
2553 SWIG_Python_NonDynamicSetAttr(PyObject *obj, PyObject *
name, PyObject *
value) {
2554 PyTypeObject *tp = obj->ob_type;
2556 PyObject *encoded_name;
2560 # ifdef Py_USING_UNICODE
2561 if (PyString_Check(
name)) {
2562 name = PyUnicode_Decode(PyString_AsString(
name), PyString_Size(
name), NULL, NULL);
2565 }
else if (!PyUnicode_Check(
name))
2567 if (!PyString_Check(
name))
2570 PyErr_Format(PyExc_TypeError,
"attribute name must be string, not '%.200s'",
name->ob_type->tp_name);
2577 if (PyType_Ready(tp) < 0)
2581 descr = _PyType_Lookup(tp,
name);
2584 f = descr->ob_type->tp_descr_set;
2586 if (PyString_Check(
name)) {
2587 encoded_name =
name;
2590 encoded_name = PyUnicode_AsUTF8String(
name);
2594 PyErr_Format(PyExc_AttributeError,
"'%.100s' object has no attribute '%.200s'", tp->tp_name, PyString_AsString(encoded_name));
2595 Py_DECREF(encoded_name);
2597 res = f(descr, obj,
value);
2613 #define SWIG_exception_fail(code, msg) do { SWIG_Error(code, msg); SWIG_fail; } while(0)
2615 #define SWIG_contract_assert(expr, msg) if (!(expr)) { SWIG_Error(SWIG_RuntimeError, msg); SWIG_fail; } else
2636 #define SWIGTYPE_p_PLGraphicsIn swig_types[0]
2637 #define SWIGTYPE_p_PLcGrid swig_types[1]
2638 #define SWIGTYPE_p_PLcGrid2 swig_types[2]
2639 #define SWIGTYPE_p_char swig_types[3]
2640 #define SWIGTYPE_p_double swig_types[4]
2641 #define SWIGTYPE_p_f_double_double__int swig_types[5]
2642 #define SWIGTYPE_p_f_double_double_p_double_p_double_p_void__void swig_types[6]
2643 #define SWIGTYPE_p_f_int_double_p_char_int_p_void__void swig_types[7]
2644 #define SWIGTYPE_p_f_int_p_double_p_double__void swig_types[8]
2645 #define SWIGTYPE_p_f_int_p_q_const__double_p_q_const__double__void swig_types[9]
2646 #define SWIGTYPE_p_int swig_types[10]
2647 #define SWIGTYPE_p_p_char swig_types[11]
2648 #define SWIGTYPE_p_p_double swig_types[12]
2649 #define SWIGTYPE_p_unsigned_int swig_types[13]
2652 #define SWIG_TypeQuery(name) SWIG_TypeQueryModule(&swig_module, &swig_module, name)
2653 #define SWIG_MangledTypeQuery(name) SWIG_MangledTypeQueryModule(&swig_module, &swig_module, name)
2657 #ifdef SWIG_TypeQuery
2658 # undef SWIG_TypeQuery
2660 #define SWIG_TypeQuery SWIG_Python_TypeQuery
2665 #if PY_VERSION_HEX >= 0x03000000
2666 # define SWIG_init PyInit__plplotc
2669 # define SWIG_init init_plplotc
2672 #define SWIG_name "_plplotc"
2674 #define SWIGVERSION 0x040001
2675 #define SWIG_VERSION SWIGVERSION
2678 #define SWIG_as_voidptr(a) (void *)((const void *)(a))
2679 #define SWIG_as_voidptrptr(a) ((void)SWIG_as_voidptr(*a),(void**)(a))
2682 #define NPY_NO_DEPRECATED_API NPY_1_7_API_VERSION
2683 #include <arrayobject.h>
2687 #define NPY_PLINT NPY_INT32
2690 #define NPY_PLFLT NPY_FLOAT64
2692 #define NPY_PLFLT NPY_FLOAT32
2696 #if !defined ( PySequence_Fast_GET_ITEM )
2697 #define PySequence_Fast_GET_ITEM PySequence_GetItem
2699 #define PySequence_Size PySequence_Length
2710 if (PyFloat_Check(obj)) {
2711 if (val) *val = PyFloat_AsDouble(obj);
2713 #if PY_VERSION_HEX < 0x03000000
2714 }
else if (PyInt_Check(obj)) {
2715 if (val) *val = (double) PyInt_AsLong(obj);
2718 }
else if (PyLong_Check(obj)) {
2719 double v = PyLong_AsDouble(obj);
2720 if (!PyErr_Occurred()) {
2727 #ifdef SWIG_PYTHON_CAST_MODE
2730 double d = PyFloat_AsDouble(obj);
2731 if (!PyErr_Occurred()) {
2738 long v = PyLong_AsLong(obj);
2739 if (!PyErr_Occurred()) {
2752 #define SWIG_From_double PyFloat_FromDouble
2767 return PyInt_FromLong((
long)
value);
2772 #if !defined(SWIG_NO_LLONG_MAX)
2773 # if !defined(LLONG_MAX) && defined(__GNUC__) && defined (__LONG_LONG_MAX__)
2774 # define LLONG_MAX __LONG_LONG_MAX__
2775 # define LLONG_MIN (-LLONG_MAX - 1LL)
2776 # define ULLONG_MAX (LLONG_MAX * 2ULL + 1ULL)
2790 if ((
min <= x && x <=
max)) {
2791 double fx = floor(x);
2792 double cx = ceil(x);
2793 double rd = ((x - fx) < 0.5) ? fx : cx;
2794 if ((errno == EDOM) || (errno == ERANGE)) {
2797 double summ, reps, diff;
2800 }
else if (rd > x) {
2807 if (reps < 8*DBL_EPSILON) {
2820 #if PY_VERSION_HEX < 0x03000000
2821 if (PyInt_Check(obj)) {
2822 if (val) *val = PyInt_AsLong(obj);
2826 if (PyLong_Check(obj)) {
2827 long v = PyLong_AsLong(obj);
2828 if (!PyErr_Occurred()) {
2836 #ifdef SWIG_PYTHON_CAST_MODE
2839 long v = PyInt_AsLong(obj);
2840 if (!PyErr_Occurred()) {
2850 if (val) *val = (long)(d);
2866 if ((v < INT_MIN || v > INT_MAX)) {
2869 if (val) *val = (int)(v);
2879 #if PY_VERSION_HEX < 0x03000000
2880 if (PyInt_Check(obj)) {
2881 long v = PyInt_AsLong(obj);
2890 if (PyLong_Check(obj)) {
2891 unsigned long v = PyLong_AsUnsignedLong(obj);
2892 if (!PyErr_Occurred()) {
2900 #ifdef SWIG_PYTHON_CAST_MODE
2903 unsigned long v = PyLong_AsUnsignedLong(obj);
2904 if (!PyErr_Occurred()) {
2914 if (val) *val = (
unsigned long)(d);
2930 if ((v > UINT_MAX)) {
2933 if (val) *val = (
unsigned int)(v);
2943 return PyInt_FromSize_t((
size_t)
value);
2950 static int init = 0;
2963 #if PY_VERSION_HEX>=0x03000000
2964 #if defined(SWIG_PYTHON_STRICT_BYTE_CHAR)
2965 if (PyBytes_Check(obj))
2967 if (PyUnicode_Check(obj))
2970 if (PyString_Check(obj))
2973 char *cstr; Py_ssize_t len;
2975 #if PY_VERSION_HEX>=0x03000000
2976 #if !defined(SWIG_PYTHON_STRICT_BYTE_CHAR)
2977 if (!alloc && cptr) {
2984 obj = PyUnicode_AsUTF8String(obj);
2990 PyBytes_AsStringAndSize(obj, &cstr, &len);
2992 PyString_AsStringAndSize(obj, &cstr, &len);
2997 *cptr = (
char *)memcpy(malloc((len + 1)*
sizeof(
char)), cstr,
sizeof(char)*(len + 1));
3004 #if PY_VERSION_HEX>=0x03000000
3005 #if defined(SWIG_PYTHON_STRICT_BYTE_CHAR)
3006 *cptr = PyBytes_AsString(obj);
3017 if (psize) *psize = len + 1;
3018 #if PY_VERSION_HEX>=0x03000000 && !defined(SWIG_PYTHON_STRICT_BYTE_CHAR)
3023 #if defined(SWIG_PYTHON_2_UNICODE)
3024 #if defined(SWIG_PYTHON_STRICT_BYTE_CHAR)
3025 #error "Cannot use both SWIG_PYTHON_2_UNICODE and SWIG_PYTHON_STRICT_BYTE_CHAR at once"
3027 #if PY_VERSION_HEX<0x03000000
3028 if (PyUnicode_Check(obj)) {
3029 char *cstr; Py_ssize_t len;
3030 if (!alloc && cptr) {
3033 obj = PyUnicode_AsUTF8String(obj);
3036 if (PyString_AsStringAndSize(obj, &cstr, &len) != -1) {
3039 *cptr = (
char *)memcpy(malloc((len + 1)*
sizeof(
char)), cstr,
sizeof(char)*(len + 1));
3041 if (psize) *psize = len + 1;
3053 if (pchar_descriptor) {
3056 if (cptr) *cptr = (
char *) vptr;
3057 if (psize) *psize = vptr ? (strlen((
char *)vptr) + 1) : 0;
3070 char* cptr = 0;
size_t csize = 0;
int alloc =
SWIG_OLDOBJ;
3074 if (size == 1 && csize == 2 && cptr && !cptr[1]) --csize;
3075 if (csize <= size) {
3077 if (csize) memcpy(val, cptr, csize*
sizeof(
char));
3078 if (csize < size) memset(val + csize, 0, (size - csize)*
sizeof(
char));
3096 if (size > INT_MAX) {
3098 return pchar_descriptor ?
3101 #if PY_VERSION_HEX >= 0x03000000
3102 #if defined(SWIG_PYTHON_STRICT_BYTE_CHAR)
3103 return PyBytes_FromStringAndSize(carray, (Py_ssize_t)(size));
3105 return PyUnicode_DecodeUTF8(carray, (Py_ssize_t)(size),
"surrogateescape");
3108 return PyString_FromStringAndSize(carray, (Py_ssize_t)(size));
3121 for (p = s;
maxlen-- && *p; p++)
3130 #define t_output_helper SWIG_Python_AppendOutput
3141 if ((CHAR_MIN <= v) && (v <= CHAR_MAX)) {
3142 if (val) *val = (char)(v);
3160 PyArrayObject* tmp = (PyArrayObject *) PyArray_ContiguousFromObject( in,
NPY_PLINT,
3165 if ( PyArray_Check( in ) )
3168 tmp = (PyArrayObject *) PyArray_Cast( (PyArrayObject *) in,
NPY_PLINT );
3175 #define myArray_ContiguousFromObject PyArray_ContiguousFromObject
3178 PyObject *resultobj = 0;
3192 PyObject *swig_obj[2] ;
3204 arg1 = (
PLFLT)(val1);
3209 arg2 = (
PLFLT)(val2);
3210 pltr0(arg1,arg2,arg3,arg4,arg5);
3245 PyErr_SetString( PyExc_ValueError,
"Expected a sequence of two arrays." );
3254 PyErr_SetString( PyExc_ValueError,
"Expected a sequence to two 1D arrays." );
3263 PyErr_SetString( PyExc_ValueError,
"pltr arguments must have X and Y dimensions of first arg." );
3271 PyErr_SetString( PyExc_ValueError,
"pltr arguments must have X and Y dimensions of first arg + 1." );
3293 PyErr_SetString( PyExc_ValueError,
"Expected a sequence of two arrays." );
3302 PyErr_SetString( PyExc_ValueError,
"Expected a sequence of two 2D arrays." );
3308 PyErr_SetString( PyExc_ValueError,
"Arrays must be same size." );
3317 PyErr_SetString( PyExc_ValueError,
"pltr arguments must have X and Y dimensions of first arg." );
3325 PyErr_SetString( PyExc_ValueError,
"pltr arguments must have X and Y dimensions of first arg + 1." );
3349 PyObject *resultobj = 0;
3363 PyObject *swig_obj[3] ;
3372 arg1 = (
PLFLT)(val1);
3377 arg2 = (
PLFLT)(val2);
3383 pltr1(arg1,arg2,arg3,arg4,arg5);
3410 PyObject *resultobj = 0;
3424 PyObject *swig_obj[3] ;
3433 arg1 = (
PLFLT)(val1);
3438 arg2 = (
PLFLT)(val2);
3444 pltr2(arg1,arg2,arg3,arg4,arg5);
3473 static PyInterpreterState *save_interp = NULL;
3483 #define MY_BLOCK_THREADS { \
3484 PyThreadState *prev_state, *new_state; \
3487 PyEval_AcquireLock(); \
3488 new_state = PyThreadState_New( save_interp ); \
3489 prev_state = PyThreadState_Swap( new_state );
3490 #define MY_UNBLOCK_THREADS \
3491 new_state = PyThreadState_Swap( prev_state ); \
3492 PyThreadState_Clear( new_state ); \
3493 PyEval_ReleaseLock(); \
3494 PyThreadState_Delete( new_state ); \
3497 #define MY_BLOCK_THREADS
3498 #define MY_UNBLOCK_THREADS
3521 PyObject *pdata, *arglist, *result;
3525 pdata = (PyObject *) data;
3532 Py_XINCREF( pdata );
3537 arglist = Py_BuildValue(
"(ddO)", x, y, pdata );
3539 arglist = Py_BuildValue(
"(ffO)", x, y, pdata );
3541 if ( arglist == NULL )
3543 fprintf( stderr,
"Py_BuildValue failed to make argument list.\n" );
3548 result = PyEval_CallObject(
python_pltr, arglist );
3550 Py_CLEAR( arglist );
3552 if ( result == NULL )
3554 fprintf( stderr,
"call to python pltr function with 3 arguments failed\n" );
3555 PyErr_SetString( PyExc_RuntimeError,
"pltr callback must take 3 arguments." );
3561 if ( tmp == 0 || PyArray_DIMS( tmp )[0] != 2 )
3563 fprintf( stderr,
"pltr callback must return a 2 element array or sequence\n" );
3564 PyErr_SetString( PyExc_RuntimeError,
"pltr callback must return a 2-sequence." );
3584 PyObject *pdata, *arglist, *result;
3585 PLFLT fresult = 0.0;
3588 pdata = (PyObject *) data;
3591 Py_XINCREF( pdata );
3595 arglist = Py_BuildValue(
"(iiO)", x, y, pdata );
3599 Py_CLEAR( arglist );
3601 if ( !PyFloat_Check( result ) )
3603 fprintf( stderr,
"f2eval callback must return a float\n" );
3604 PyErr_SetString( PyExc_RuntimeError,
"f2eval callback must return a float." );
3609 fresult = (
PLFLT) PyFloat_AsDouble( result );
3621 PyObject *pdata, *arglist, *result, *unicode_string;
3626 pdata = (PyObject *) data;
3631 Py_XINCREF( pdata );
3636 arglist = Py_BuildValue(
"(ldO)", axis,
value, pdata );
3638 arglist = Py_BuildValue(
"(lfO)", axis,
value, pdata );
3645 if ( result == NULL )
3647 fprintf( stderr,
"label callback failed with 3 arguments\n" );
3648 PyErr_SetString( PyExc_RuntimeError,
"label callback must take 3 arguments." );
3650 else if ( PyString_Check( result ) )
3653 pystring = PyString_AsString( result );
3654 strncpy(
string, pystring, len );
3656 else if ( PyUnicode_Check( result ) )
3659 unicode_string = PyUnicode_AsEncodedString( result,
"utf-8",
"Error ~" );
3660 pystring = PyBytes_AS_STRING( unicode_string );
3662 strncpy(
string, pystring, len );
3666 fprintf( stderr,
"label callback must return a string\n" );
3667 PyErr_SetString( PyExc_RuntimeError,
"label callback must return a string." );
3678 PyObject *px, *py, *pdata, *arglist, *result;
3683 pdata = (PyObject *) data;
3690 Py_XINCREF( pdata );
3694 px = PyArray_SimpleNewFromData( 1, &n,
NPY_PLFLT, (
void *) xt );
3695 py = PyArray_SimpleNewFromData( 1, &n,
NPY_PLFLT, (
void *) yt );
3696 arglist = Py_BuildValue(
"(ddOOO)", x, y, px, py, pdata );
3698 result = PyEval_CallObject(
python_ct, arglist );
3700 Py_CLEAR( arglist );
3705 if ( result == NULL )
3707 fprintf( stderr,
"call to python coordinate transform function with 5 arguments failed\n" );
3708 PyErr_SetString( PyExc_RuntimeError,
"coordinate transform callback must take 5 arguments." );
3719 PyObject *px, *py, *arglist, *result;
3730 #ifdef PL_HAVE_PTHREAD
3731 px = PyArray_SimpleNewFromData( 1, &nn,
NPY_PLFLT, (
void *) x );
3732 py = PyArray_SimpleNewFromData( 1, &nn,
NPY_PLFLT, (
void *) y );
3734 px = PyArray_FromDimsAndData( 1, &n,
NPY_PLFLT, (
char *) x );
3735 py = PyArray_FromDimsAndData( 1, &n,
NPY_PLFLT, (
char *) y );
3737 arglist = Py_BuildValue(
"(iOO)", n, px, py );
3741 Py_CLEAR( arglist );
3745 if ( result == NULL )
3747 fprintf( stderr,
"call to python mapform function with 3 arguments failed\n" );
3748 PyErr_SetString( PyExc_RuntimeError,
"mapform callback must take 3 arguments." );
3761 PyObject * rep = PyObject_Repr( input );
3766 if ( PyUnicode_Check( rep ) )
3768 PyObject *uni_str = PyUnicode_AsEncodedString( rep,
"utf-8",
"Error ~" );
3769 str = PyBytes_AS_STRING( uni_str );
3773 str = PyString_AsString( rep );
3775 if ( strstr( str,
"function pltr0" ) != 0 )
3781 else if ( strstr( str,
"function pltr1" ) != 0 )
3787 else if ( strstr( str,
"function pltr2" ) != 0 )
3797 Py_XINCREF( input );
3805 Py_XINCREF( input );
3821 Py_XINCREF( input );
3836 Py_XINCREF( input );
3854 if ( input != Py_None )
3858 if ( input != Py_None )
3862 Py_XINCREF( input );
3866 fprintf( stderr,
"pltr_type is invalid\n" );
3887 fprintf( stderr,
"pltr_type is invalid\n" );
3896 PyObject *resultobj = 0;
3903 PyObject *swig_obj[2] ;
3916 if (arg1) (arg1)->type = arg2;
3925 PyObject *resultobj = 0;
3929 PyObject *swig_obj[1] ;
3939 result = (int) ((arg1)->type);
3948 PyObject *resultobj = 0;
3955 PyObject *swig_obj[2] ;
3967 arg2 = (
unsigned int)(val2);
3968 if (arg1) (arg1)->state = arg2;
3977 PyObject *resultobj = 0;
3981 PyObject *swig_obj[1] ;
3982 unsigned int result;
3991 result = (
unsigned int) ((arg1)->state);
4000 PyObject *resultobj = 0;
4007 PyObject *swig_obj[2] ;
4019 arg2 = (
unsigned int)(val2);
4020 if (arg1) (arg1)->keysym = arg2;
4029 PyObject *resultobj = 0;
4033 PyObject *swig_obj[1] ;
4034 unsigned int result;
4043 result = (
unsigned int) ((arg1)->keysym);
4052 PyObject *resultobj = 0;
4059 PyObject *swig_obj[2] ;
4071 arg2 = (
unsigned int)(val2);
4072 if (arg1) (arg1)->button = arg2;
4081 PyObject *resultobj = 0;
4085 PyObject *swig_obj[1] ;
4086 unsigned int result;
4095 result = (
unsigned int) ((arg1)->button);
4104 PyObject *resultobj = 0;
4111 PyObject *swig_obj[2] ;
4123 arg2 = (
PLINT)(val2);
4124 if (arg1) (arg1)->subwindow = arg2;
4133 PyObject *resultobj = 0;
4137 PyObject *swig_obj[1] ;
4147 result = (
PLINT) ((arg1)->subwindow);
4156 PyObject *resultobj = 0;
4163 PyObject *swig_obj[2] ;
4175 arg2 = (
char *)(temp2);
4176 if (arg2) memcpy(arg1->
string,arg2,16*
sizeof(
char));
4177 else memset(arg1->
string,0,16*
sizeof(
char));
4186 PyObject *resultobj = 0;
4190 PyObject *swig_obj[1] ;
4200 result = (
char *)(
char *) ((arg1)->
string);
4215 PyObject *resultobj = 0;
4222 PyObject *swig_obj[2] ;
4235 if (arg1) (arg1)->pX = arg2;
4244 PyObject *resultobj = 0;
4248 PyObject *swig_obj[1] ;
4258 result = (int) ((arg1)->pX);
4267 PyObject *resultobj = 0;
4274 PyObject *swig_obj[2] ;
4287 if (arg1) (arg1)->pY = arg2;
4296 PyObject *resultobj = 0;
4300 PyObject *swig_obj[1] ;
4310 result = (int) ((arg1)->pY);
4319 PyObject *resultobj = 0;
4326 PyObject *swig_obj[2] ;
4338 arg2 = (
PLFLT)(val2);
4339 if (arg1) (arg1)->dX = arg2;
4348 PyObject *resultobj = 0;
4352 PyObject *swig_obj[1] ;
4362 result = (
PLFLT) ((arg1)->dX);
4371 PyObject *resultobj = 0;
4378 PyObject *swig_obj[2] ;
4390 arg2 = (
PLFLT)(val2);
4391 if (arg1) (arg1)->dY = arg2;
4400 PyObject *resultobj = 0;
4404 PyObject *swig_obj[1] ;
4414 result = (
PLFLT) ((arg1)->dY);
4423 PyObject *resultobj = 0;
4430 PyObject *swig_obj[2] ;
4442 arg2 = (
PLFLT)(val2);
4443 if (arg1) (arg1)->wX = arg2;
4452 PyObject *resultobj = 0;
4456 PyObject *swig_obj[1] ;
4466 result = (
PLFLT) ((arg1)->wX);
4475 PyObject *resultobj = 0;
4482 PyObject *swig_obj[2] ;
4494 arg2 = (
PLFLT)(val2);
4495 if (arg1) (arg1)->wY = arg2;
4504 PyObject *resultobj = 0;
4508 PyObject *swig_obj[1] ;
4518 result = (
PLFLT) ((arg1)->wY);
4527 PyObject *resultobj = 0;
4540 PyObject *resultobj = 0;
4544 PyObject *swig_obj[1] ;
4553 free((
char *) arg1);
4573 PyObject *resultobj = 0;
4577 PyObject *swig_obj[1] ;
4585 arg1 = (
PLINT)(val1);
4595 PyObject *resultobj = 0;
4602 PyObject *swig_obj[2] ;
4609 arg1 = (
PLINT)(val1);
4614 arg2 = (
PLINT)(val2);
4624 PyObject *resultobj = 0;
4637 PyObject *swig_obj[4] ;
4644 arg1 = (
PLFLT)(val1);
4649 arg2 = (
PLFLT)(val2);
4654 arg3 = (
PLFLT)(val3);
4659 arg4 = (
PLINT)(val4);
4669 PyObject *resultobj = 0;
4673 PyObject *swig_obj[1] ;
4681 arg1 = (
PLINT)(val1);
4691 PyObject *resultobj = 0;
4716 PyObject *swig_obj[8] ;
4723 arg1 = (
PLFLT)(val1);
4728 arg2 = (
PLFLT)(val2);
4733 arg3 = (
PLFLT)(val3);
4738 arg4 = (
PLFLT)(val4);
4743 arg5 = (
PLFLT)(val5);
4748 arg6 = (
PLFLT)(val6);
4753 arg7 = (
PLFLT)(val7);
4759 plarc(arg1,arg2,arg3,arg4,arg5,arg6,arg7,arg8);
4768 PyObject *resultobj = 0;
4771 char *arg3 = (
char *) 0 ;
4774 char *arg6 = (
char *) 0 ;
4795 PyObject *swig_obj[8] ;
4802 arg1 = (
PLFLT)(val1);
4807 arg2 = (
PLFLT)(val2);
4812 arg3 = (
char *)(buf3);
4817 arg4 = (
PLFLT)(val4);
4822 arg5 = (
PLINT)(val5);
4827 arg6 = (
char *)(buf6);
4832 arg7 = (
PLFLT)(val7);
4837 arg8 = (
PLINT)(val8);
4838 plaxes(arg1,arg2,(
char const *)arg3,arg4,arg5,(
char const *)arg6,arg7,arg8);
4851 PyObject *resultobj = 0;
4856 PyArrayObject *tmp1 = NULL ;
4857 PyArrayObject *tmp3 = NULL ;
4860 PyObject *swig_obj[3] ;
4867 arg1 =
Alen = PyArray_DIMS( tmp1 )[0];
4868 arg2 = (
PLFLT *) PyArray_DATA( tmp1 );
4874 if ( PyArray_DIMS( tmp3 )[0] !=
Alen )
4876 PyErr_SetString( PyExc_ValueError,
"Vectors must be same length." );
4879 arg3 = (
PLFLT *) PyArray_DATA( tmp3 );
4885 arg4 = (
PLINT)(val4);
4886 plbin(arg1,(
double const *)arg2,(
double const *)arg3,arg4);
4907 PyObject *resultobj = 0;
4929 PyObject *swig_obj[1] ;
4943 arg7 = (
PLFLT)(val7);
4944 plbtime(arg1,arg2,arg3,arg4,arg5,arg6,arg7);
4989 PyObject *resultobj = 0;
5001 PyObject *resultobj = 0;
5002 char *arg1 = (
char *) 0 ;
5005 char *arg4 = (
char *) 0 ;
5022 PyObject *swig_obj[6] ;
5029 arg1 = (
char *)(buf1);
5034 arg2 = (
PLFLT)(val2);
5039 arg3 = (
PLINT)(val3);
5044 arg4 = (
char *)(buf4);
5049 arg5 = (
PLFLT)(val5);
5054 arg6 = (
PLINT)(val6);
5055 plbox((
char const *)arg1,arg2,arg3,(
char const *)arg4,arg5,arg6);
5068 PyObject *resultobj = 0;
5069 char *arg1 = (
char *) 0 ;
5070 char *arg2 = (
char *) 0 ;
5073 char *arg5 = (
char *) 0 ;
5074 char *arg6 = (
char *) 0 ;
5077 char *arg9 = (
char *) 0 ;
5078 char *arg10 = (
char *) 0 ;
5111 PyObject *swig_obj[12] ;
5118 arg1 = (
char *)(buf1);
5123 arg2 = (
char *)(buf2);
5128 arg3 = (
PLFLT)(val3);
5133 arg4 = (
PLINT)(val4);
5138 arg5 = (
char *)(buf5);
5143 arg6 = (
char *)(buf6);
5148 arg7 = (
PLFLT)(val7);
5153 arg8 = (
PLINT)(val8);
5158 arg9 = (
char *)(buf9);
5163 arg10 = (
char *)(buf10);
5168 arg11 = (
PLFLT)(val11);
5173 arg12 = (
PLINT)(val12);
5174 plbox3((
char const *)arg1,(
char const *)arg2,arg3,arg4,(
char const *)arg5,(
char const *)arg6,arg7,arg8,(
char const *)arg9,(
char const *)arg10,arg11,arg12);
5195 PyObject *resultobj = 0;
5211 PyObject *swig_obj[2] ;
5221 arg1 = (
PLFLT)(val1);
5226 arg2 = (
PLFLT)(val2);
5254 PyObject *resultobj = 0;
5266 PyObject *resultobj = 0;
5270 PyObject *swig_obj[1] ;
5278 arg1 = (
PLINT)(val1);
5288 PyObject *resultobj = 0;
5292 PyObject *swig_obj[1] ;
5300 arg1 = (
PLFLT)(val1);
5310 PyObject *resultobj = 0;
5344 PyObject *swig_obj[11] ;
5351 arg1 = (
PLFLT)(val1);
5356 arg2 = (
PLFLT)(val2);
5361 arg3 = (
PLFLT)(val3);
5366 arg4 = (
PLINT)(val4);
5376 arg6 = (
PLINT)(val6);
5381 arg7 = (
PLINT)(val7);
5386 arg8 = (
PLINT)(val8);
5391 arg9 = (
PLINT)(val9);
5396 arg10 = (
PLINT)(val10);
5401 arg11 = (
PLFLT)(val11);
5402 plconfigtime(arg1,arg2,arg3,arg4,arg5,arg6,arg7,arg8,arg9,arg10,arg11);
5411 PyObject *resultobj = 0;
5423 PyArrayObject *tmp1 = NULL ;
5432 PyArrayObject *tmp8 = NULL ;
5433 PyObject *swig_obj[8] ;
5448 Xlen = arg2 = PyArray_DIMS( tmp1 )[0];
5449 Ylen = arg3 = PyArray_DIMS( tmp1 )[1];
5451 arg1 = (
PLFLT **) malloc(
sizeof (
PLFLT* ) * (size_t) arg2 );
5452 for ( i = 0; i < arg2; i++ )
5453 arg1[i] = ( (
PLFLT *) PyArray_DATA( tmp1 ) + i * size );
5459 arg4 = (
PLINT)(val4);
5464 arg5 = (
PLINT)(val5);
5469 arg6 = (
PLINT)(val6);
5474 arg7 = (
PLINT)(val7);
5479 arg9 = PyArray_DIMS( tmp8 )[0];
5480 arg8 = (
PLFLT *) PyArray_DATA( tmp8 );
5485 if ( swig_obj[6] == Py_None )
5491 if ( !PyCallable_Check( (PyObject *) swig_obj[6] ) )
5493 PyErr_SetString( PyExc_ValueError,
"pltr argument must be callable" );
5502 if ( swig_obj[7] == Py_None )
5510 plcont((
double const **)arg1,arg2,arg3,arg4,arg5,arg6,arg7,(
double const *)arg8,arg9,arg10,arg11);
5545 PyObject *resultobj = 0;
5567 PyObject *swig_obj[6] ;
5575 arg1 = (
PLINT)(val1);
5580 arg2 = (
PLINT)(val2);
5585 arg3 = (
PLINT)(val3);
5590 arg4 = (
PLINT)(val4);
5595 arg5 = (
PLINT)(val5);
5600 arg6 = (
PLFLT)(val6);
5601 plctime(arg1,arg2,arg3,arg4,arg5,arg6,arg7);
5616 PyObject *resultobj = 0;
5623 PyObject *swig_obj[2] ;
5630 arg1 = (
PLINT)(val1);
5645 PyObject *resultobj = 0;
5657 PyObject *resultobj = 0;
5669 PyObject *resultobj = 0;
5688 PyObject *swig_obj[6] ;
5695 arg1 = (
PLFLT)(val1);
5700 arg2 = (
PLFLT)(val2);
5705 arg3 = (
PLFLT)(val3);
5710 arg4 = (
PLFLT)(val4);
5715 arg5 = (
PLINT)(val5);
5720 arg6 = (
PLINT)(val6);
5721 plenv(arg1,arg2,arg3,arg4,arg5,arg6);
5730 PyObject *resultobj = 0;
5749 PyObject *swig_obj[6] ;
5756 arg1 = (
PLFLT)(val1);
5761 arg2 = (
PLFLT)(val2);
5766 arg3 = (
PLFLT)(val3);
5771 arg4 = (
PLFLT)(val4);
5776 arg5 = (
PLINT)(val5);
5781 arg6 = (
PLINT)(val6);
5782 plenv0(arg1,arg2,arg3,arg4,arg5,arg6);
5791 PyObject *resultobj = 0;
5803 PyObject *resultobj = 0;
5808 PyArrayObject *tmp1 = NULL ;
5809 PyArrayObject *tmp3 = NULL ;
5810 PyArrayObject *tmp4 = NULL ;
5811 PyObject *swig_obj[3] ;
5818 arg1 =
Alen = PyArray_DIMS( tmp1 )[0];
5819 arg2 = (
PLFLT *) PyArray_DATA( tmp1 );
5825 if ( PyArray_DIMS( tmp3 )[0] !=
Alen )
5827 PyErr_SetString( PyExc_ValueError,
"Vectors must be same length." );
5830 arg3 = (
PLFLT *) PyArray_DATA( tmp3 );
5836 if ( PyArray_DIMS( tmp4 )[0] !=
Alen )
5838 PyErr_SetString( PyExc_ValueError,
"Vectors must be same length." );
5841 arg4 = (
PLFLT *) PyArray_DATA( tmp4 );
5843 plerrx(arg1,(
double const *)arg2,(
double const *)arg3,(
double const *)arg4);
5870 PyObject *resultobj = 0;
5875 PyArrayObject *tmp1 = NULL ;
5876 PyArrayObject *tmp3 = NULL ;
5877 PyArrayObject *tmp4 = NULL ;
5878 PyObject *swig_obj[3] ;
5885 arg1 =
Alen = PyArray_DIMS( tmp1 )[0];
5886 arg2 = (
PLFLT *) PyArray_DATA( tmp1 );
5892 if ( PyArray_DIMS( tmp3 )[0] !=
Alen )
5894 PyErr_SetString( PyExc_ValueError,
"Vectors must be same length." );
5897 arg3 = (
PLFLT *) PyArray_DATA( tmp3 );
5903 if ( PyArray_DIMS( tmp4 )[0] !=
Alen )
5905 PyErr_SetString( PyExc_ValueError,
"Vectors must be same length." );
5908 arg4 = (
PLFLT *) PyArray_DATA( tmp4 );
5910 plerry(arg1,(
double const *)arg2,(
double const *)arg3,(
double const *)arg4);
5937 PyObject *resultobj = 0;
5949 PyObject *resultobj = 0;
5953 PyArrayObject *tmp1 = NULL ;
5954 PyArrayObject *tmp3 = NULL ;
5955 PyObject *swig_obj[2] ;
5962 arg1 =
Alen = PyArray_DIMS( tmp1 )[0];
5963 arg2 = (
PLFLT *) PyArray_DATA( tmp1 );
5969 if ( PyArray_DIMS( tmp3 )[0] !=
Alen )
5971 PyErr_SetString( PyExc_ValueError,
"Vectors must be same length." );
5974 arg3 = (
PLFLT *) PyArray_DATA( tmp3 );
5976 plfill(arg1,(
double const *)arg2,(
double const *)arg3);
5997 PyObject *resultobj = 0;
6002 PyArrayObject *tmp1 = NULL ;
6003 PyArrayObject *tmp3 = NULL ;
6004 PyArrayObject *tmp4 = NULL ;
6005 PyObject *swig_obj[3] ;
6012 arg1 =
Alen = PyArray_DIMS( tmp1 )[0];
6013 arg2 = (
PLFLT *) PyArray_DATA( tmp1 );
6019 if ( PyArray_DIMS( tmp3 )[0] !=
Alen )
6021 PyErr_SetString( PyExc_ValueError,
"Vectors must be same length." );
6024 arg3 = (
PLFLT *) PyArray_DATA( tmp3 );
6030 if ( PyArray_DIMS( tmp4 )[0] !=
Alen )
6032 PyErr_SetString( PyExc_ValueError,
"Vectors must be same length." );
6035 arg4 = (
PLFLT *) PyArray_DATA( tmp4 );
6037 plfill3(arg1,(
double const *)arg2,(
double const *)arg3,(
double const *)arg4);
6064 PyObject *resultobj = 0;
6069 PyArrayObject *tmp1 = NULL ;
6070 PyArrayObject *tmp3 = NULL ;
6073 PyObject *swig_obj[3] ;
6080 arg1 =
Alen = PyArray_DIMS( tmp1 )[0];
6081 arg2 = (
PLFLT *) PyArray_DATA( tmp1 );
6087 if ( PyArray_DIMS( tmp3 )[0] !=
Alen )
6089 PyErr_SetString( PyExc_ValueError,
"Vectors must be same length." );
6092 arg3 = (
PLFLT *) PyArray_DATA( tmp3 );
6098 arg4 = (
PLFLT)(val4);
6099 plgradient(arg1,(
double const *)arg2,(
double const *)arg3,arg4);
6120 PyObject *resultobj = 0;
6132 PyObject *resultobj = 0;
6136 PyObject *swig_obj[1] ;
6144 arg1 = (
PLINT)(val1);
6154 PyObject *resultobj = 0;
6158 PyObject *swig_obj[1] ;
6166 arg1 = (
PLINT)(val1);
6176 PyObject *resultobj = 0;
6208 PyObject *resultobj = 0;
6221 PyObject *swig_obj[1] ;
6232 arg1 = (
PLINT)(val1);
6260 PyObject *resultobj = 0;
6276 PyObject *swig_obj[1] ;
6288 arg1 = (
PLINT)(val1);
6289 plgcol0a(arg1,arg2,arg3,arg4,arg5);
6322 PyObject *resultobj = 0;
6364 PyObject *resultobj = 0;
6416 PyObject *resultobj = 0;
6438 PyObject *resultobj = 0;
6439 char *arg1 = (
char *) 0 ;
6449 PyObject *o = PyString_FromString( arg1 );
6459 PyObject *resultobj = 0;
6511 PyObject *resultobj = 0;
6533 PyObject *resultobj = 0;
6585 PyObject *resultobj = 0;
6627 PyObject *resultobj = 0;
6649 PyObject *resultobj = 0;
6650 char *arg1 = (
char *) 0 ;
6660 PyObject *o = PyString_FromString( arg1 );
6670 PyObject *resultobj = 0;
6712 PyObject *resultobj = 0;
6734 PyObject *resultobj = 0;
6761 plgpage(arg1,arg2,arg3,arg4,arg5,arg6);
6806 PyObject *resultobj = 0;
6818 PyObject *resultobj = 0;
6830 PyArrayObject *tmp1 = NULL ;
6831 PyArrayObject *tmp2 = NULL ;
6832 PyArrayObject *tmp3 = NULL ;
6833 PyArrayObject *tmp5 = NULL ;
6834 PyArrayObject *tmp7 = NULL ;
6835 PyObject *array7 = NULL ;
6840 PyObject *swig_obj[7] ;
6847 Alen = PyArray_DIMS( tmp1 )[0];
6848 arg1 = (
PLFLT *) PyArray_DATA( tmp1 );
6854 if ( PyArray_DIMS( tmp2 )[0] !=
Alen )
6856 PyErr_SetString( PyExc_ValueError,
"Vectors must be same length." );
6859 arg2 = (
PLFLT *) PyArray_DATA( tmp2 );
6865 if ( PyArray_DIMS( tmp3 )[0] !=
Alen )
6867 PyErr_SetString( PyExc_ValueError,
"Vectors must be same length." );
6870 arg3 = (
PLFLT *) PyArray_DATA( tmp3 );
6871 arg4 = PyArray_DIMS( tmp3 )[0];
6877 Xlen = PyArray_DIMS( tmp5 )[0];
6879 arg5 = (
PLFLT *) PyArray_DATA( tmp5 );
6887 Ylen = PyArray_DIMS( tmp7 )[0];
6889 arg7 = (
PLFLT *) PyArray_DATA( tmp7 );
6894 array7 = PyArray_SimpleNew( 2, dims,
NPY_PLFLT );
6898 arg9 = (
PLFLT **) malloc(
sizeof (
double * ) * (size_t)
Xlen );
6899 for ( i = 0; i <
Xlen; i++ )
6900 arg9[i] = ( (
PLFLT *) PyArray_DATA( (PyArrayObject *) array7 ) + i * size );
6906 arg10 = (
PLINT)(val10);
6911 arg11 = (
PLFLT)(val11);
6912 plgriddata((
double const *)arg1,(
double const *)arg2,(
double const *)arg3,arg4,(
double const *)arg5,arg6,(
double const *)arg7,arg8,arg9,arg10,arg11);
6956 PyObject *resultobj = 0;
6975 plgspa(arg1,arg2,arg3,arg4);
7008 PyObject *resultobj = 0;
7030 PyObject *resultobj = 0;
7031 char *arg1 = (
char *) 0 ;
7041 PyObject *o = PyString_FromString( arg1 );
7051 PyObject *resultobj = 0;
7070 plgvpd(arg1,arg2,arg3,arg4);
7103 PyObject *resultobj = 0;
7122 plgvpw(arg1,arg2,arg3,arg4);
7155 PyObject *resultobj = 0;
7187 PyObject *resultobj = 0;
7219 PyObject *resultobj = 0;
7251 PyObject *resultobj = 0;
7258 PyArrayObject *tmp1 = NULL ;
7267 PyObject *swig_obj[5] ;
7274 arg1 =
Alen = PyArray_DIMS( tmp1 )[0];
7275 arg2 = (
PLFLT *) PyArray_DATA( tmp1 );
7281 arg3 = (
PLFLT)(val3);
7286 arg4 = (
PLFLT)(val4);
7291 arg5 = (
PLINT)(val5);
7296 arg6 = (
PLINT)(val6);
7297 plhist(arg1,(
double const *)arg2,arg3,arg4,arg5,arg6);
7312 PyObject *resultobj = 0;
7331 PyObject *swig_obj[3] ;
7341 arg1 = (
PLFLT)(val1);
7346 arg2 = (
PLFLT)(val2);
7351 arg3 = (
PLFLT)(val3);
7352 plhlsrgb(arg1,arg2,arg3,arg4,arg5,arg6);
7379 PyObject *resultobj = 0;
7391 PyObject *resultobj = 0;
7404 PyObject *swig_obj[4] ;
7411 arg1 = (
PLFLT)(val1);
7416 arg2 = (
PLFLT)(val2);
7421 arg3 = (
PLFLT)(val3);
7426 arg4 = (
PLFLT)(val4);
7427 pljoin(arg1,arg2,arg3,arg4);
7436 PyObject *resultobj = 0;
7437 char *arg1 = (
char *) 0 ;
7438 char *arg2 = (
char *) 0 ;
7439 char *arg3 = (
char *) 0 ;
7449 PyObject *swig_obj[3] ;
7456 arg1 = (
char *)(buf1);
7461 arg2 = (
char *)(buf2);
7466 arg3 = (
char *)(buf3);
7467 pllab((
char const *)arg1,(
char const *)arg2,(
char const *)arg3);
7482 PyObject *resultobj = 0;
7502 char **arg20 = (
char **) 0 ;
7513 char **arg31 = (
char **) 0 ;
7538 PyArrayObject *tmp13 = NULL ;
7547 PyArrayObject *tmp19 = NULL ;
7548 PyArrayObject *tmp20 = NULL ;
7549 PyArrayObject *tmp21 = NULL ;
7550 PyArrayObject *tmp22 = NULL ;
7551 PyArrayObject *tmp23 = NULL ;
7552 PyArrayObject *tmp24 = NULL ;
7553 PyArrayObject *tmp25 = NULL ;
7554 PyArrayObject *tmp26 = NULL ;
7555 PyArrayObject *tmp27 = NULL ;
7556 PyArrayObject *tmp28 = NULL ;
7557 PyArrayObject *tmp29 = NULL ;
7558 PyArrayObject *tmp30 = NULL ;
7559 PyArrayObject *tmp31 = NULL ;
7560 PyObject *swig_obj[28] ;
7569 arg3 = (
PLINT)(val3);
7574 arg4 = (
PLINT)(val4);
7579 arg5 = (
PLFLT)(val5);
7584 arg6 = (
PLFLT)(val6);
7589 arg7 = (
PLFLT)(val7);
7594 arg8 = (
PLINT)(val8);
7599 arg9 = (
PLINT)(val9);
7604 arg10 = (
PLINT)(val10);
7609 arg11 = (
PLINT)(val11);
7614 arg12 = (
PLINT)(val12);
7617 if ( tmp13 == NULL )
7619 arg13 =
Alen = PyArray_DIMS( tmp13 )[0];
7620 arg14 = (
PLINT *) PyArray_DATA( tmp13 );
7626 arg15 = (
PLFLT)(val15);
7631 arg16 = (
PLFLT)(val16);
7636 arg17 = (
PLFLT)(val17);
7641 arg18 = (
PLFLT)(val18);
7644 if ( tmp19 == NULL )
7646 if ( PyArray_DIMS( tmp19 )[0] !=
Alen )
7648 PyErr_SetString( PyExc_ValueError,
"Vectors must be same length." );
7651 arg19 = (
PLINT *) PyArray_DATA( tmp19 );
7655 tmp20 = (PyArrayObject *) PyArray_ContiguousFromObject( swig_obj[16], NPY_STRING, 1, 1 );
7656 if ( tmp20 == NULL )
7658 if ( PyArray_DIMS( tmp20 )[0] !=
Alen )
7660 PyErr_SetString( PyExc_ValueError,
"Vectors must be same length." );
7663 arg20 = (
char **) malloc(
sizeof (
char* ) * (size_t)
Alen );
7664 for ( i = 0; i <
Alen; i++ )
7666 arg20[i] = (
char *) PyArray_DATA( tmp20 ) + i * PyArray_STRIDES( tmp20 )[0];
7667 if ( arg20[i] == NULL )
7676 if ( tmp21 == NULL )
7678 if ( PyArray_DIMS( tmp21 )[0] !=
Alen )
7680 PyErr_SetString( PyExc_ValueError,
"Vectors must be same length." );
7683 arg21 = (
PLINT *) PyArray_DATA( tmp21 );
7687 if ( tmp22 == NULL )
7689 if ( PyArray_DIMS( tmp22 )[0] !=
Alen )
7691 PyErr_SetString( PyExc_ValueError,
"Vectors must be same length." );
7694 arg22 = (
PLINT *) PyArray_DATA( tmp22 );
7697 if ( swig_obj[19] != Py_None )
7700 if ( tmp23 == NULL )
7702 if ( PyArray_DIMS( tmp23 )[0] !=
Alen )
7704 PyErr_SetString( PyExc_ValueError,
"Vectors must be same length." );
7707 arg23 = (
PLFLT *) PyArray_DATA( tmp23 );
7715 if ( swig_obj[20] != Py_None )
7718 if ( tmp24 == NULL )
7720 if ( PyArray_DIMS( tmp24 )[0] !=
Alen )
7722 PyErr_SetString( PyExc_ValueError,
"Vectors must be same length." );
7725 arg24 = (
PLFLT *) PyArray_DATA( tmp24 );
7734 if ( tmp25 == NULL )
7736 if ( PyArray_DIMS( tmp25 )[0] !=
Alen )
7738 PyErr_SetString( PyExc_ValueError,
"Vectors must be same length." );
7741 arg25 = (
PLINT *) PyArray_DATA( tmp25 );
7745 if ( tmp26 == NULL )
7747 if ( PyArray_DIMS( tmp26 )[0] !=
Alen )
7749 PyErr_SetString( PyExc_ValueError,
"Vectors must be same length." );
7752 arg26 = (
PLINT *) PyArray_DATA( tmp26 );
7755 if ( swig_obj[23] != Py_None )
7758 if ( tmp27 == NULL )
7760 if ( PyArray_DIMS( tmp27 )[0] !=
Alen )
7762 PyErr_SetString( PyExc_ValueError,
"Vectors must be same length." );
7765 arg27 = (
PLFLT *) PyArray_DATA( tmp27 );
7774 if ( tmp28 == NULL )
7776 if ( PyArray_DIMS( tmp28 )[0] !=
Alen )
7778 PyErr_SetString( PyExc_ValueError,
"Vectors must be same length." );
7781 arg28 = (
PLINT *) PyArray_DATA( tmp28 );
7784 if ( swig_obj[25] != Py_None )
7787 if ( tmp29 == NULL )
7789 if ( PyArray_DIMS( tmp29 )[0] !=
Alen )
7791 PyErr_SetString( PyExc_ValueError,
"Vectors must be same length." );
7794 arg29 = (
PLFLT *) PyArray_DATA( tmp29 );
7803 if ( tmp30 == NULL )
7805 if ( PyArray_DIMS( tmp30 )[0] !=
Alen )
7807 PyErr_SetString( PyExc_ValueError,
"Vectors must be same length." );
7810 arg30 = (
PLINT *) PyArray_DATA( tmp30 );
7814 tmp31 = (PyArrayObject *) PyArray_ContiguousFromObject( swig_obj[27], NPY_STRING, 1, 1 );
7815 if ( tmp31 == NULL )
7817 if ( PyArray_DIMS( tmp31 )[0] !=
Alen )
7819 PyErr_SetString( PyExc_ValueError,
"Vectors must be same length." );
7822 arg31 = (
char **) malloc(
sizeof (
char* ) * (size_t)
Alen );
7823 for ( i = 0; i <
Alen; i++ )
7825 arg31[i] = (
char *) PyArray_DATA( tmp31 ) + i * PyArray_STRIDES( tmp31 )[0];
7826 if ( arg31[i] == NULL )
7833 pllegend(arg1,arg2,arg3,arg4,arg5,arg6,arg7,arg8,arg9,arg10,arg11,arg12,arg13,(
int const *)arg14,arg15,arg16,arg17,arg18,(
int const *)arg19,(
char const **)arg20,(
int const *)arg21,(
int const *)arg22,(
double const *)arg23,(
double const *)arg24,(
int const *)arg25,(
int const *)arg26,(
double const *)arg27,(
int const *)arg28,(
double const *)arg29,(
int const *)arg30,(
char const **)arg31);
7854 Py_CLEAR( tmp20 ); free( arg20 );
7887 Py_CLEAR( tmp31 ); free( arg31 );
7898 Py_CLEAR( tmp20 ); free( arg20 );
7931 Py_CLEAR( tmp31 ); free( arg31 );
7938 PyObject *resultobj = 0;
7956 char **arg18 = (
char **) 0 ;
7958 char **arg20 = (
char **) 0 ;
7993 PyArrayObject *tmp16 = NULL ;
7994 PyArrayObject *tmp18 = NULL ;
7995 PyArrayObject *tmp19 = NULL ;
7996 PyArrayObject *tmp21 = NULL ;
7997 PyArrayObject *tmp22 = NULL ;
7998 PyArrayObject *tmp23 = NULL ;
7999 PyArrayObject *tmp24 = NULL ;
8000 PyObject *swig_obj[20] ;
8009 arg3 = (
PLINT)(val3);
8014 arg4 = (
PLINT)(val4);
8019 arg5 = (
PLFLT)(val5);
8024 arg6 = (
PLFLT)(val6);
8029 arg7 = (
PLFLT)(val7);
8034 arg8 = (
PLFLT)(val8);
8039 arg9 = (
PLINT)(val9);
8044 arg10 = (
PLINT)(val10);
8049 arg11 = (
PLINT)(val11);
8054 arg12 = (
PLFLT)(val12);
8059 arg13 = (
PLFLT)(val13);
8064 arg14 = (
PLINT)(val14);
8069 arg15 = (
PLFLT)(val15);
8072 if ( tmp16 == NULL )
8074 arg16 =
Alen = PyArray_DIMS( tmp16 )[0];
8075 arg17 = (
PLINT *) PyArray_DATA( tmp16 );
8079 tmp18 = (PyArrayObject *) PyArray_ContiguousFromObject( swig_obj[14], NPY_STRING, 1, 1 );
8080 if ( tmp18 == NULL )
8082 if ( PyArray_DIMS( tmp18 )[0] !=
Alen )
8084 PyErr_SetString( PyExc_ValueError,
"Vectors must be same length." );
8087 arg18 = (
char **) malloc(
sizeof (
char* ) * (size_t)
Alen );
8088 for ( i = 0; i <
Alen; i++ )
8090 arg18[i] = (
char *) PyArray_DATA( tmp18 ) + i * PyArray_STRIDES( tmp18 )[0];
8091 if ( arg18[i] == NULL )
8100 tmp19 = (PyArrayObject *) PyArray_ContiguousFromObject( swig_obj[15], NPY_STRING, 1, 1 );
8101 if ( tmp19 == NULL )
8103 Alen = PyArray_DIMS( tmp19 )[0];
8105 arg20 = (
char **) malloc(
sizeof (
char* ) * (size_t)
Alen );
8106 for ( i = 0; i <
Alen; i++ )
8108 arg20[i] = (
char *) PyArray_DATA( tmp19 ) + i * PyArray_STRIDES( tmp19 )[0];
8109 if ( arg20[i] == NULL )
8118 if ( tmp21 == NULL )
8120 if ( PyArray_DIMS( tmp21 )[0] !=
Alen )
8122 PyErr_SetString( PyExc_ValueError,
"Vectors must be same length." );
8125 arg21 = (
PLFLT *) PyArray_DATA( tmp21 );
8129 if ( tmp22 == NULL )
8131 if ( PyArray_DIMS( tmp22 )[0] !=
Alen )
8133 PyErr_SetString( PyExc_ValueError,
"Vectors must be same length." );
8136 arg22 = (
PLINT *) PyArray_DATA( tmp22 );
8141 if ( tmp23 == NULL )
8143 if ( PyArray_DIMS( tmp23 )[0] !=
Alen )
8145 PyErr_SetString( PyExc_ValueError,
"Vectors must be same length." );
8148 Xlen = PyArray_DIMS( tmp23 )[0];
8149 arg23 = (
PLINT *) PyArray_DATA( tmp23 );
8151 for ( i = 0; i <
Xlen; i++ )
8152 if ( arg23[i] >
Ylen )
8158 if ( tmp24 == NULL )
8160 if ( PyArray_DIMS( tmp24 )[0] !=
Xlen || PyArray_DIMS( tmp24 )[1] !=
Ylen )
8162 PyErr_SetString( PyExc_ValueError,
"Vectors must match matrix." );
8167 for ( i = 0; i <
Xlen; i++ )
8168 arg24[i] = ( (
PLFLT *) PyArray_DATA( tmp24 ) + i * size );
8170 plcolorbar(arg1,arg2,arg3,arg4,arg5,arg6,arg7,arg8,arg9,arg10,arg11,arg12,arg13,arg14,arg15,arg16,(
int const *)arg17,(
char const **)arg18,arg19,(
char const **)arg20,(
double const *)arg21,(
int const *)arg22,(
int const *)arg23,(
double const **)arg24);
8188 Py_CLEAR( tmp18 ); free( arg18 );
8191 Py_CLEAR( tmp19 ); free( arg20 );
8212 Py_CLEAR( tmp18 ); free( arg18 );
8215 Py_CLEAR( tmp19 ); free( arg20 );
8235 PyObject *resultobj = 0;
8245 PyObject *swig_obj[3] ;
8252 arg1 = (
PLFLT)(val1);
8257 arg2 = (
PLFLT)(val2);
8262 arg3 = (
PLFLT)(val3);
8272 PyObject *resultobj = 0;
8276 PyArrayObject *tmp1 = NULL ;
8277 PyArrayObject *tmp3 = NULL ;
8278 PyObject *swig_obj[2] ;
8285 arg1 =
Alen = PyArray_DIMS( tmp1 )[0];
8286 arg2 = (
PLFLT *) PyArray_DATA( tmp1 );
8292 if ( PyArray_DIMS( tmp3 )[0] !=
Alen )
8294 PyErr_SetString( PyExc_ValueError,
"Vectors must be same length." );
8297 arg3 = (
PLFLT *) PyArray_DATA( tmp3 );
8299 plline(arg1,(
double const *)arg2,(
double const *)arg3);
8320 PyObject *resultobj = 0;
8325 PyArrayObject *tmp1 = NULL ;
8326 PyArrayObject *tmp3 = NULL ;
8327 PyArrayObject *tmp4 = NULL ;
8328 PyObject *swig_obj[3] ;
8335 arg1 =
Alen = PyArray_DIMS( tmp1 )[0];
8336 arg2 = (
PLFLT *) PyArray_DATA( tmp1 );
8342 if ( PyArray_DIMS( tmp3 )[0] !=
Alen )
8344 PyErr_SetString( PyExc_ValueError,
"Vectors must be same length." );
8347 arg3 = (
PLFLT *) PyArray_DATA( tmp3 );
8353 if ( PyArray_DIMS( tmp4 )[0] !=
Alen )
8355 PyErr_SetString( PyExc_ValueError,
"Vectors must be same length." );
8358 arg4 = (
PLFLT *) PyArray_DATA( tmp4 );
8360 plline3(arg1,(
double const *)arg2,(
double const *)arg3,(
double const *)arg4);
8387 PyObject *resultobj = 0;
8391 PyObject *swig_obj[1] ;
8399 arg1 = (
PLINT)(val1);
8409 PyObject *resultobj = 0;
8416 PyArrayObject *tmp1 = NULL ;
8417 PyArrayObject *tmp2 = NULL ;
8418 PyArrayObject *tmp3 = NULL ;
8421 PyObject *swig_obj[4] ;
8428 Xlen = PyArray_DIMS( tmp1 )[0];
8429 arg1 = (
PLFLT *) PyArray_DATA( tmp1 );
8435 Ylen = PyArray_DIMS( tmp2 )[0];
8436 arg2 = (
PLFLT *) PyArray_DATA( tmp2 );
8443 if (
Xlen != PyArray_DIMS( tmp3 )[0] ||
Ylen != PyArray_DIMS( tmp3 )[1] )
8445 PyErr_SetString( PyExc_ValueError,
"Vectors must match matrix." );
8448 arg4 = PyArray_DIMS( tmp3 )[0];
8449 arg5 = PyArray_DIMS( tmp3 )[1];
8451 arg3 = (
PLFLT **) malloc(
sizeof (
PLFLT* ) * (size_t) arg4 );
8452 for ( i = 0; i < arg4; i++ )
8453 arg3[i] = ( (
PLFLT *) PyArray_DATA( tmp3 ) + i * size );
8459 arg6 = (
PLINT)(val6);
8460 plmesh((
double const *)arg1,(
double const *)arg2,(
double const **)arg3,arg4,arg5,arg6);
8489 PyObject *resultobj = 0;
8498 PyArrayObject *tmp1 = NULL ;
8499 PyArrayObject *tmp2 = NULL ;
8500 PyArrayObject *tmp3 = NULL ;
8503 PyArrayObject *tmp7 = NULL ;
8504 PyObject *swig_obj[5] ;
8511 Xlen = PyArray_DIMS( tmp1 )[0];
8512 arg1 = (
PLFLT *) PyArray_DATA( tmp1 );
8518 Ylen = PyArray_DIMS( tmp2 )[0];
8519 arg2 = (
PLFLT *) PyArray_DATA( tmp2 );
8526 if (
Xlen != PyArray_DIMS( tmp3 )[0] ||
Ylen != PyArray_DIMS( tmp3 )[1] )
8528 PyErr_SetString( PyExc_ValueError,
"Vectors must match matrix." );
8531 arg4 = PyArray_DIMS( tmp3 )[0];
8532 arg5 = PyArray_DIMS( tmp3 )[1];
8534 arg3 = (
PLFLT **) malloc(
sizeof (
PLFLT* ) * (size_t) arg4 );
8535 for ( i = 0; i < arg4; i++ )
8536 arg3[i] = ( (
PLFLT *) PyArray_DATA( tmp3 ) + i * size );
8542 arg6 = (
PLINT)(val6);
8547 arg8 = PyArray_DIMS( tmp7 )[0];
8548 arg7 = (
PLFLT *) PyArray_DATA( tmp7 );
8550 plmeshc((
double const *)arg1,(
double const *)arg2,(
double const **)arg3,arg4,arg5,arg6,(
double const *)arg7,arg8);
8585 PyObject *resultobj = 0;
8607 PyObject *resultobj = 0;
8608 char *arg1 = (
char *) 0 ;
8612 char *arg5 = (
char *) 0 ;
8625 PyObject *swig_obj[5] ;
8632 arg1 = (
char *)(buf1);
8637 arg2 = (
PLFLT)(val2);
8642 arg3 = (
PLFLT)(val3);
8647 arg4 = (
PLFLT)(val4);
8652 arg5 = (
char *)(buf5);
8653 plmtex((
char const *)arg1,arg2,arg3,arg4,(
char const *)arg5);
8666 PyObject *resultobj = 0;
8667 char *arg1 = (
char *) 0 ;
8671 char *arg5 = (
char *) 0 ;
8684 PyObject *swig_obj[5] ;
8691 arg1 = (
char *)(buf1);
8696 arg2 = (
PLFLT)(val2);
8701 arg3 = (
PLFLT)(val3);
8706 arg4 = (
PLFLT)(val4);
8711 arg5 = (
char *)(buf5);
8712 plmtex3((
char const *)arg1,arg2,arg3,arg4,(
char const *)arg5);
8725 PyObject *resultobj = 0;
8733 PyArrayObject *tmp1 = NULL ;
8734 PyArrayObject *tmp2 = NULL ;
8735 PyArrayObject *tmp3 = NULL ;
8740 PyObject *swig_obj[5] ;
8747 Xlen = PyArray_DIMS( tmp1 )[0];
8748 arg1 = (
PLFLT *) PyArray_DATA( tmp1 );
8754 Ylen = PyArray_DIMS( tmp2 )[0];
8755 arg2 = (
PLFLT *) PyArray_DATA( tmp2 );
8762 if (
Xlen != PyArray_DIMS( tmp3 )[0] ||
Ylen != PyArray_DIMS( tmp3 )[1] )
8764 PyErr_SetString( PyExc_ValueError,
"Vectors must match matrix." );
8767 arg4 = PyArray_DIMS( tmp3 )[0];
8768 arg5 = PyArray_DIMS( tmp3 )[1];
8770 arg3 = (
PLFLT **) malloc(
sizeof (
PLFLT* ) * (size_t) arg4 );
8771 for ( i = 0; i < arg4; i++ )
8772 arg3[i] = ( (
PLFLT *) PyArray_DATA( tmp3 ) + i * size );
8778 arg6 = (
PLINT)(val6);
8784 plot3d((
double const *)arg1,(
double const *)arg2,(
double const **)arg3,arg4,arg5,arg6,arg7);
8813 PyObject *resultobj = 0;
8822 PyArrayObject *tmp1 = NULL ;
8823 PyArrayObject *tmp2 = NULL ;
8824 PyArrayObject *tmp3 = NULL ;
8827 PyArrayObject *tmp7 = NULL ;
8828 PyObject *swig_obj[5] ;
8835 Xlen = PyArray_DIMS( tmp1 )[0];
8836 arg1 = (
PLFLT *) PyArray_DATA( tmp1 );
8842 Ylen = PyArray_DIMS( tmp2 )[0];
8843 arg2 = (
PLFLT *) PyArray_DATA( tmp2 );
8850 if (
Xlen != PyArray_DIMS( tmp3 )[0] ||
Ylen != PyArray_DIMS( tmp3 )[1] )
8852 PyErr_SetString( PyExc_ValueError,
"Vectors must match matrix." );
8855 arg4 = PyArray_DIMS( tmp3 )[0];
8856 arg5 = PyArray_DIMS( tmp3 )[1];
8858 arg3 = (
PLFLT **) malloc(
sizeof (
PLFLT* ) * (size_t) arg4 );
8859 for ( i = 0; i < arg4; i++ )
8860 arg3[i] = ( (
PLFLT *) PyArray_DATA( tmp3 ) + i * size );
8866 arg6 = (
PLINT)(val6);
8871 arg8 = PyArray_DIMS( tmp7 )[0];
8872 arg7 = (
PLFLT *) PyArray_DATA( tmp7 );
8874 plot3dc((
double const *)arg1,(
double const *)arg2,(
double const **)arg3,arg4,arg5,arg6,(
double const *)arg7,arg8);
8909 PyObject *resultobj = 0;
8922 PyArrayObject *tmp1 = NULL ;
8923 PyArrayObject *tmp2 = NULL ;
8924 PyArrayObject *tmp3 = NULL ;
8927 PyArrayObject *tmp7 = NULL ;
8930 PyArrayObject *tmp10 = NULL ;
8931 PyArrayObject *tmp12 = NULL ;
8932 PyObject *swig_obj[8] ;
8939 Xlen = PyArray_DIMS( tmp1 )[0];
8940 arg1 = (
PLFLT *) PyArray_DATA( tmp1 );
8946 Ylen = PyArray_DIMS( tmp2 )[0];
8947 arg2 = (
PLFLT *) PyArray_DATA( tmp2 );
8954 if (
Xlen != PyArray_DIMS( tmp3 )[0] ||
Ylen != PyArray_DIMS( tmp3 )[1] )
8956 PyErr_SetString( PyExc_ValueError,
"Vectors must match matrix." );
8959 arg4 = PyArray_DIMS( tmp3 )[0];
8960 arg5 = PyArray_DIMS( tmp3 )[1];
8962 arg3 = (
PLFLT **) malloc(
sizeof (
PLFLT* ) * (size_t) arg4 );
8963 for ( i = 0; i < arg4; i++ )
8964 arg3[i] = ( (
PLFLT *) PyArray_DATA( tmp3 ) + i * size );
8970 arg6 = (
PLINT)(val6);
8975 arg8 = PyArray_DIMS( tmp7 )[0];
8976 arg7 = (
PLFLT *) PyArray_DATA( tmp7 );
8982 arg9 = (
PLINT)(val9);
8985 if ( tmp10 == NULL )
8987 arg10 =
Alen = PyArray_DIMS( tmp10 )[0];
8988 arg11 = (
PLINT *) PyArray_DATA( tmp10 );
8992 if ( tmp12 == NULL )
8994 if ( PyArray_DIMS( tmp12 )[0] !=
Alen )
8996 PyErr_SetString( PyExc_ValueError,
"Vectors must be same length." );
8999 arg12 = (
PLINT *) PyArray_DATA( tmp12 );
9001 plot3dcl((
double const *)arg1,(
double const *)arg2,(
double const **)arg3,arg4,arg5,arg6,(
double const *)arg7,arg8,arg9,arg10,(
int const *)arg11,(
int const *)arg12);
9048 PyObject *resultobj = 0;
9057 PyArrayObject *tmp1 = NULL ;
9058 PyArrayObject *tmp2 = NULL ;
9059 PyArrayObject *tmp3 = NULL ;
9062 PyArrayObject *tmp7 = NULL ;
9063 PyObject *swig_obj[5] ;
9070 Xlen = PyArray_DIMS( tmp1 )[0];
9071 arg1 = (
PLFLT *) PyArray_DATA( tmp1 );
9077 Ylen = PyArray_DIMS( tmp2 )[0];
9078 arg2 = (
PLFLT *) PyArray_DATA( tmp2 );
9085 if (
Xlen != PyArray_DIMS( tmp3 )[0] ||
Ylen != PyArray_DIMS( tmp3 )[1] )
9087 PyErr_SetString( PyExc_ValueError,
"Vectors must match matrix." );
9090 arg4 = PyArray_DIMS( tmp3 )[0];
9091 arg5 = PyArray_DIMS( tmp3 )[1];
9093 arg3 = (
PLFLT **) malloc(
sizeof (
PLFLT* ) * (size_t) arg4 );
9094 for ( i = 0; i < arg4; i++ )
9095 arg3[i] = ( (
PLFLT *) PyArray_DATA( tmp3 ) + i * size );
9101 arg6 = (
PLINT)(val6);
9106 arg8 = PyArray_DIMS( tmp7 )[0];
9107 arg7 = (
PLFLT *) PyArray_DATA( tmp7 );
9109 plsurf3d((
double const *)arg1,(
double const *)arg2,(
double const **)arg3,arg4,arg5,arg6,(
double const *)arg7,arg8);
9144 PyObject *resultobj = 0;
9157 PyArrayObject *tmp1 = NULL ;
9158 PyArrayObject *tmp2 = NULL ;
9159 PyArrayObject *tmp3 = NULL ;
9162 PyArrayObject *tmp7 = NULL ;
9165 PyArrayObject *tmp10 = NULL ;
9166 PyArrayObject *tmp12 = NULL ;
9167 PyObject *swig_obj[8] ;
9174 Xlen = PyArray_DIMS( tmp1 )[0];
9175 arg1 = (
PLFLT *) PyArray_DATA( tmp1 );
9181 Ylen = PyArray_DIMS( tmp2 )[0];
9182 arg2 = (
PLFLT *) PyArray_DATA( tmp2 );
9189 if (
Xlen != PyArray_DIMS( tmp3 )[0] ||
Ylen != PyArray_DIMS( tmp3 )[1] )
9191 PyErr_SetString( PyExc_ValueError,
"Vectors must match matrix." );
9194 arg4 = PyArray_DIMS( tmp3 )[0];
9195 arg5 = PyArray_DIMS( tmp3 )[1];
9197 arg3 = (
PLFLT **) malloc(
sizeof (
PLFLT* ) * (size_t) arg4 );
9198 for ( i = 0; i < arg4; i++ )
9199 arg3[i] = ( (
PLFLT *) PyArray_DATA( tmp3 ) + i * size );
9205 arg6 = (
PLINT)(val6);
9210 arg8 = PyArray_DIMS( tmp7 )[0];
9211 arg7 = (
PLFLT *) PyArray_DATA( tmp7 );
9217 arg9 = (
PLINT)(val9);
9220 if ( tmp10 == NULL )
9222 arg10 =
Alen = PyArray_DIMS( tmp10 )[0];
9223 arg11 = (
PLINT *) PyArray_DATA( tmp10 );
9227 if ( tmp12 == NULL )
9229 if ( PyArray_DIMS( tmp12 )[0] !=
Alen )
9231 PyErr_SetString( PyExc_ValueError,
"Vectors must be same length." );
9234 arg12 = (
PLINT *) PyArray_DATA( tmp12 );
9236 plsurf3dl((
double const *)arg1,(
double const *)arg2,(
double const **)arg3,arg4,arg5,arg6,(
double const *)arg7,arg8,arg9,arg10,(
int const *)arg11,(
int const *)arg12);
9283 PyObject *resultobj = 0;
9284 int *arg1 = (
int *) 0 ;
9285 char **arg2 = (
char **) 0 ;
9290 PyObject *swig_obj[2] ;
9296 PyObject *unicode_string;
9298 if ( !PyList_Check( swig_obj[0] ) )
9300 PyErr_SetString( PyExc_ValueError,
"Expecting a list" );
9303 tmp1 = PyList_Size( swig_obj[0] );
9305 arg2 = (
char **) malloc( (
size_t) ( tmp1 + 1 ) *
sizeof (
char * ) );
9306 for ( i = 0; i < tmp1; i++ )
9308 PyObject *s = PyList_GetItem( swig_obj[0], i );
9309 if ( PyString_Check( s ) )
9311 arg2[i] = PyString_AsString( s );
9313 else if ( PyUnicode_Check( s ) )
9316 unicode_string = PyUnicode_AsEncodedString( s,
"utf-8",
"Error ~" );
9317 arg2[i] = PyBytes_AS_STRING( unicode_string );
9322 PyErr_SetString( PyExc_ValueError,
"List items must be strings" );
9332 arg3 = (
PLINT)(val3);
9350 PyObject *resultobj = 0;
9354 PyArrayObject *tmp1 = NULL ;
9355 PyArrayObject *tmp3 = NULL ;
9356 PyObject *swig_obj[2] ;
9363 arg1 =
Alen = PyArray_DIMS( tmp1 )[0];
9364 arg2 = (
PLINT *) PyArray_DATA( tmp1 );
9370 if ( PyArray_DIMS( tmp3 )[0] !=
Alen )
9372 PyErr_SetString( PyExc_ValueError,
"Vectors must be same length." );
9375 arg3 = (
PLINT *) PyArray_DATA( tmp3 );
9377 plpat(arg1,(
int const *)arg2,(
int const *)arg3);
9398 PyObject *resultobj = 0;
9414 PyObject *swig_obj[5] ;
9421 arg1 = (
PLINT)(val1);
9426 arg2 = (
PLFLT)(val2);
9431 arg3 = (
PLFLT)(val3);
9436 arg4 = (
PLFLT)(val4);
9441 arg5 = (
PLFLT)(val5);
9442 plpath(arg1,arg2,arg3,arg4,arg5);
9451 PyObject *resultobj = 0;
9456 PyArrayObject *tmp1 = NULL ;
9457 PyArrayObject *tmp3 = NULL ;
9460 PyObject *swig_obj[3] ;
9467 arg1 =
Alen = PyArray_DIMS( tmp1 )[0];
9468 arg2 = (
PLFLT *) PyArray_DATA( tmp1 );
9474 if ( PyArray_DIMS( tmp3 )[0] !=
Alen )
9476 PyErr_SetString( PyExc_ValueError,
"Vectors must be same length." );
9479 arg3 = (
PLFLT *) PyArray_DATA( tmp3 );
9485 arg4 = (
PLINT)(val4);
9486 plpoin(arg1,(
double const *)arg2,(
double const *)arg3,arg4);
9507 PyObject *resultobj = 0;
9513 PyArrayObject *tmp1 = NULL ;
9514 PyArrayObject *tmp3 = NULL ;
9515 PyArrayObject *tmp4 = NULL ;
9518 PyObject *swig_obj[4] ;
9525 arg1 =
Alen = PyArray_DIMS( tmp1 )[0];
9526 arg2 = (
PLFLT *) PyArray_DATA( tmp1 );
9532 if ( PyArray_DIMS( tmp3 )[0] !=
Alen )
9534 PyErr_SetString( PyExc_ValueError,
"Vectors must be same length." );
9537 arg3 = (
PLFLT *) PyArray_DATA( tmp3 );
9543 if ( PyArray_DIMS( tmp4 )[0] !=
Alen )
9545 PyErr_SetString( PyExc_ValueError,
"Vectors must be same length." );
9548 arg4 = (
PLFLT *) PyArray_DATA( tmp4 );
9554 arg5 = (
PLINT)(val5);
9555 plpoin3(arg1,(
double const *)arg2,(
double const *)arg3,(
double const *)arg4,arg5);
9582 PyObject *resultobj = 0;
9589 PyArrayObject *tmp1 = NULL ;
9590 PyArrayObject *tmp3 = NULL ;
9591 PyArrayObject *tmp4 = NULL ;
9592 PyArrayObject *tmp5 = NULL ;
9595 PyObject *swig_obj[5] ;
9602 arg1 =
Alen = PyArray_DIMS( tmp1 )[0];
9603 arg2 = (
PLFLT *) PyArray_DATA( tmp1 );
9609 if ( PyArray_DIMS( tmp3 )[0] !=
Alen )
9611 PyErr_SetString( PyExc_ValueError,
"Vectors must be same length." );
9614 arg3 = (
PLFLT *) PyArray_DATA( tmp3 );
9620 if ( PyArray_DIMS( tmp4 )[0] !=
Alen )
9622 PyErr_SetString( PyExc_ValueError,
"Vectors must be same length." );
9625 arg4 = (
PLFLT *) PyArray_DATA( tmp4 );
9631 if ( PyArray_DIMS( tmp5 )[0] <
Alen - 1 )
9633 PyErr_SetString( PyExc_ValueError,
"Vector must be at least length of others minus 1." );
9636 arg5 = (
PLINT *) PyArray_DATA( tmp5 );
9643 plpoly3(arg1,(
double const *)arg2,(
double const *)arg3,(
double const *)arg4,(
int const *)arg5,arg6);
9676 PyObject *resultobj = 0;
9683 PyObject *swig_obj[2] ;
9690 arg1 = (
PLINT)(val1);
9695 arg2 = (
PLINT)(val2);
9705 PyObject *resultobj = 0;
9709 PyObject *swig_obj[1] ;
9717 arg1 = (
PLINT)(val1);
9727 PyObject *resultobj = 0;
9733 char *arg6 = (
char *) 0 ;
9747 PyObject *swig_obj[6] ;
9754 arg1 = (
PLFLT)(val1);
9759 arg2 = (
PLFLT)(val2);
9764 arg3 = (
PLFLT)(val3);
9769 arg4 = (
PLFLT)(val4);
9774 arg5 = (
PLFLT)(val5);
9779 arg6 = (
char *)(buf6);
9780 plptex(arg1,arg2,arg3,arg4,arg5,(
char const *)arg6);
9791 PyObject *resultobj = 0;
9802 char *arg11 = (
char *) 0 ;
9826 PyObject *swig_obj[11] ;
9833 arg1 = (
PLFLT)(val1);
9838 arg2 = (
PLFLT)(val2);
9843 arg3 = (
PLFLT)(val3);
9848 arg4 = (
PLFLT)(val4);
9853 arg5 = (
PLFLT)(val5);
9858 arg6 = (
PLFLT)(val6);
9863 arg7 = (
PLFLT)(val7);
9868 arg8 = (
PLFLT)(val8);
9873 arg9 = (
PLFLT)(val9);
9878 arg10 = (
PLFLT)(val10);
9883 arg11 = (
char *)(buf11);
9884 plptex3(arg1,arg2,arg3,arg4,arg5,arg6,arg7,arg8,arg9,arg10,(
char const *)arg11);
9895 PyObject *resultobj = 0;
9908 PyObject *resultobj = 0;
9920 PyObject *resultobj = 0;
9939 PyObject *swig_obj[3] ;
9949 arg1 = (
PLFLT)(val1);
9954 arg2 = (
PLFLT)(val2);
9959 arg3 = (
PLFLT)(val3);
9960 plrgbhls(arg1,arg2,arg3,arg4,arg5,arg6);
9987 PyObject *resultobj = 0;
9994 PyObject *swig_obj[2] ;
10001 arg1 = (
PLFLT)(val1);
10006 arg2 = (
PLFLT)(val2);
10016 PyObject *resultobj = 0;
10021 PyArrayObject *tmp1 = NULL ;
10022 PyArrayObject *tmp2 = NULL ;
10023 PyArrayObject *tmp3 = NULL ;
10024 PyObject *swig_obj[3] ;
10029 if ( tmp1 == NULL )
10031 Alen = PyArray_DIMS( tmp1 )[0];
10032 arg1 = (
PLINT *) PyArray_DATA( tmp1 );
10036 if ( tmp2 == NULL )
10038 if ( PyArray_DIMS( tmp2 )[0] !=
Alen )
10040 PyErr_SetString( PyExc_ValueError,
"Vectors must be same length." );
10043 arg2 = (
PLINT *) PyArray_DATA( tmp2 );
10047 if ( tmp3 == NULL )
10049 if ( PyArray_DIMS( tmp3 )[0] !=
Alen )
10051 PyErr_SetString( PyExc_ValueError,
"Vectors must be same length." );
10054 arg4 = PyArray_DIMS( tmp3 )[0];
10055 arg3 = (
PLINT *) PyArray_DATA( tmp3 );
10057 plscmap0((
int const *)arg1,(
int const *)arg2,(
int const *)arg3,arg4);
10084 PyObject *resultobj = 0;
10090 PyArrayObject *tmp1 = NULL ;
10091 PyArrayObject *tmp2 = NULL ;
10092 PyArrayObject *tmp3 = NULL ;
10093 PyArrayObject *tmp4 = NULL ;
10094 PyObject *swig_obj[4] ;
10099 if ( tmp1 == NULL )
10101 Alen = PyArray_DIMS( tmp1 )[0];
10102 arg1 = (
PLINT *) PyArray_DATA( tmp1 );
10106 if ( tmp2 == NULL )
10108 if ( PyArray_DIMS( tmp2 )[0] !=
Alen )
10110 PyErr_SetString( PyExc_ValueError,
"Vectors must be same length." );
10113 arg2 = (
PLINT *) PyArray_DATA( tmp2 );
10117 if ( tmp3 == NULL )
10119 if ( PyArray_DIMS( tmp3 )[0] !=
Alen )
10121 PyErr_SetString( PyExc_ValueError,
"Vectors must be same length." );
10124 arg3 = (
PLINT *) PyArray_DATA( tmp3 );
10128 if ( tmp4 == NULL )
10130 if ( PyArray_DIMS( tmp4 )[0] !=
Alen )
10132 PyErr_SetString( PyExc_ValueError,
"Vectors must be same length." );
10135 arg4 = (
PLFLT *) PyArray_DATA( tmp4 );
10136 arg5 = PyArray_DIMS( tmp4 )[0];
10138 plscmap0a((
int const *)arg1,(
int const *)arg2,(
int const *)arg3,(
double const *)arg4,arg5);
10171 PyObject *resultobj = 0;
10175 PyObject *swig_obj[1] ;
10178 swig_obj[0] = args;
10183 arg1 = (
PLINT)(val1);
10193 PyObject *resultobj = 0;
10198 PyArrayObject *tmp1 = NULL ;
10199 PyArrayObject *tmp2 = NULL ;
10200 PyArrayObject *tmp3 = NULL ;
10201 PyObject *swig_obj[3] ;
10206 if ( tmp1 == NULL )
10208 Alen = PyArray_DIMS( tmp1 )[0];
10209 arg1 = (
PLINT *) PyArray_DATA( tmp1 );
10213 if ( tmp2 == NULL )
10215 if ( PyArray_DIMS( tmp2 )[0] !=
Alen )
10217 PyErr_SetString( PyExc_ValueError,
"Vectors must be same length." );
10220 arg2 = (
PLINT *) PyArray_DATA( tmp2 );
10224 if ( tmp3 == NULL )
10226 if ( PyArray_DIMS( tmp3 )[0] !=
Alen )
10228 PyErr_SetString( PyExc_ValueError,
"Vectors must be same length." );
10231 arg4 = PyArray_DIMS( tmp3 )[0];
10232 arg3 = (
PLINT *) PyArray_DATA( tmp3 );
10234 plscmap1((
int const *)arg1,(
int const *)arg2,(
int const *)arg3,arg4);
10261 PyObject *resultobj = 0;
10267 PyArrayObject *tmp1 = NULL ;
10268 PyArrayObject *tmp2 = NULL ;
10269 PyArrayObject *tmp3 = NULL ;
10270 PyArrayObject *tmp4 = NULL ;
10271 PyObject *swig_obj[4] ;
10276 if ( tmp1 == NULL )
10278 Alen = PyArray_DIMS( tmp1 )[0];
10279 arg1 = (
PLINT *) PyArray_DATA( tmp1 );
10283 if ( tmp2 == NULL )
10285 if ( PyArray_DIMS( tmp2 )[0] !=
Alen )
10287 PyErr_SetString( PyExc_ValueError,
"Vectors must be same length." );
10290 arg2 = (
PLINT *) PyArray_DATA( tmp2 );
10294 if ( tmp3 == NULL )
10296 if ( PyArray_DIMS( tmp3 )[0] !=
Alen )
10298 PyErr_SetString( PyExc_ValueError,
"Vectors must be same length." );
10301 arg3 = (
PLINT *) PyArray_DATA( tmp3 );
10305 if ( tmp4 == NULL )
10307 if ( PyArray_DIMS( tmp4 )[0] !=
Alen )
10309 PyErr_SetString( PyExc_ValueError,
"Vectors must be same length." );
10312 arg4 = (
PLFLT *) PyArray_DATA( tmp4 );
10313 arg5 = PyArray_DIMS( tmp4 )[0];
10315 plscmap1a((
int const *)arg1,(
int const *)arg2,(
int const *)arg3,(
double const *)arg4,arg5);
10348 PyObject *resultobj = 0;
10358 PyArrayObject *tmp2 = NULL ;
10359 PyArrayObject *tmp4 = NULL ;
10360 PyArrayObject *tmp5 = NULL ;
10361 PyArrayObject *tmp6 = NULL ;
10362 PyArrayObject *tmp7 = NULL ;
10363 PyObject *swig_obj[6] ;
10373 if ( tmp2 == NULL )
10375 arg2 =
Alen = PyArray_DIMS( tmp2 )[0];
10376 arg3 = (
PLFLT *) PyArray_DATA( tmp2 );
10380 if ( tmp4 == NULL )
10382 if ( PyArray_DIMS( tmp4 )[0] !=
Alen )
10384 PyErr_SetString( PyExc_ValueError,
"Vectors must be same length." );
10387 arg4 = (
PLFLT *) PyArray_DATA( tmp4 );
10391 if ( tmp5 == NULL )
10393 if ( PyArray_DIMS( tmp5 )[0] !=
Alen )
10395 PyErr_SetString( PyExc_ValueError,
"Vectors must be same length." );
10398 arg5 = (
PLFLT *) PyArray_DATA( tmp5 );
10402 if ( tmp6 == NULL )
10404 if ( PyArray_DIMS( tmp6 )[0] !=
Alen )
10406 PyErr_SetString( PyExc_ValueError,
"Vectors must be same length." );
10409 arg6 = (
PLFLT *) PyArray_DATA( tmp6 );
10413 if ( tmp7 == NULL )
10415 if ( PyArray_DIMS( tmp7 )[0] <
Alen - 1 )
10417 PyErr_SetString( PyExc_ValueError,
"Vector must be at least length of others minus 1." );
10420 arg7 = (
PLINT *) PyArray_DATA( tmp7 );
10422 plscmap1l(arg1,arg2,(
double const *)arg3,(
double const *)arg4,(
double const *)arg5,(
double const *)arg6,(
int const *)arg7);
10461 PyObject *resultobj = 0;
10472 PyArrayObject *tmp2 = NULL ;
10473 PyArrayObject *tmp4 = NULL ;
10474 PyArrayObject *tmp5 = NULL ;
10475 PyArrayObject *tmp6 = NULL ;
10476 PyArrayObject *tmp7 = NULL ;
10477 PyArrayObject *tmp8 = NULL ;
10478 PyObject *swig_obj[7] ;
10488 if ( tmp2 == NULL )
10490 arg2 =
Alen = PyArray_DIMS( tmp2 )[0];
10491 arg3 = (
PLFLT *) PyArray_DATA( tmp2 );
10495 if ( tmp4 == NULL )
10497 if ( PyArray_DIMS( tmp4 )[0] !=
Alen )
10499 PyErr_SetString( PyExc_ValueError,
"Vectors must be same length." );
10502 arg4 = (
PLFLT *) PyArray_DATA( tmp4 );
10506 if ( tmp5 == NULL )
10508 if ( PyArray_DIMS( tmp5 )[0] !=
Alen )
10510 PyErr_SetString( PyExc_ValueError,
"Vectors must be same length." );
10513 arg5 = (
PLFLT *) PyArray_DATA( tmp5 );
10517 if ( tmp6 == NULL )
10519 if ( PyArray_DIMS( tmp6 )[0] !=
Alen )
10521 PyErr_SetString( PyExc_ValueError,
"Vectors must be same length." );
10524 arg6 = (
PLFLT *) PyArray_DATA( tmp6 );
10528 if ( tmp7 == NULL )
10530 if ( PyArray_DIMS( tmp7 )[0] !=
Alen )
10532 PyErr_SetString( PyExc_ValueError,
"Vectors must be same length." );
10535 arg7 = (
PLFLT *) PyArray_DATA( tmp7 );
10539 if ( tmp8 == NULL )
10541 if ( PyArray_DIMS( tmp8 )[0] <
Alen - 1 )
10543 PyErr_SetString( PyExc_ValueError,
"Vector must be at least length of others minus 1." );
10546 arg8 = (
PLINT *) PyArray_DATA( tmp8 );
10548 plscmap1la(arg1,arg2,(
double const *)arg3,(
double const *)arg4,(
double const *)arg5,(
double const *)arg6,(
double const *)arg7,(
int const *)arg8);
10593 PyObject *resultobj = 0;
10597 PyObject *swig_obj[1] ;
10600 swig_obj[0] = args;
10605 arg1 = (
PLINT)(val1);
10615 PyObject *resultobj = 0;
10622 PyObject *swig_obj[2] ;
10629 arg1 = (
PLFLT)(val1);
10634 arg2 = (
PLFLT)(val2);
10644 PyObject *resultobj = 0;
10676 PyObject *resultobj = 0;
10689 PyObject *swig_obj[4] ;
10696 arg1 = (
PLINT)(val1);
10701 arg2 = (
PLINT)(val2);
10706 arg3 = (
PLINT)(val3);
10711 arg4 = (
PLINT)(val4);
10712 plscol0(arg1,arg2,arg3,arg4);
10721 PyObject *resultobj = 0;
10737 PyObject *swig_obj[5] ;
10744 arg1 = (
PLINT)(val1);
10749 arg2 = (
PLINT)(val2);
10754 arg3 = (
PLINT)(val3);
10759 arg4 = (
PLINT)(val4);
10764 arg5 = (
PLFLT)(val5);
10765 plscol0a(arg1,arg2,arg3,arg4,arg5);
10774 PyObject *resultobj = 0;
10784 PyObject *swig_obj[3] ;
10791 arg1 = (
PLINT)(val1);
10796 arg2 = (
PLINT)(val2);
10801 arg3 = (
PLINT)(val3);
10811 PyObject *resultobj = 0;
10824 PyObject *swig_obj[4] ;
10831 arg1 = (
PLINT)(val1);
10836 arg2 = (
PLINT)(val2);
10841 arg3 = (
PLINT)(val3);
10846 arg4 = (
PLFLT)(val4);
10856 PyObject *resultobj = 0;
10860 PyObject *swig_obj[1] ;
10863 swig_obj[0] = args;
10868 arg1 = (
PLINT)(val1);
10878 PyObject *resultobj = 0;
10882 PyObject *swig_obj[1] ;
10885 swig_obj[0] = args;
10890 arg1 = (
PLINT)(val1);
10900 PyObject *resultobj = 0;
10901 char *arg1 = (
char *) 0 ;
10905 PyObject *swig_obj[1] ;
10908 swig_obj[0] = args;
10913 arg1 = (
char *)(buf1);
10914 plsdev((
char const *)arg1);
10925 PyObject *resultobj = 0;
10938 PyObject *swig_obj[4] ;
10945 arg1 = (
PLFLT)(val1);
10950 arg2 = (
PLFLT)(val2);
10955 arg3 = (
PLFLT)(val3);
10960 arg4 = (
PLFLT)(val4);
10970 PyObject *resultobj = 0;
10989 PyObject *swig_obj[6] ;
10996 arg1 = (
PLINT)(val1);
11001 arg2 = (
PLINT)(val2);
11006 arg3 = (
PLINT)(val3);
11011 arg4 = (
PLINT)(val4);
11016 arg5 = (
PLFLT)(val5);
11021 arg6 = (
PLFLT)(val6);
11022 plsdimap(arg1,arg2,arg3,arg4,arg5,arg6);
11031 PyObject *resultobj = 0;
11035 PyObject *swig_obj[1] ;
11038 swig_obj[0] = args;
11043 arg1 = (
PLFLT)(val1);
11053 PyObject *resultobj = 0;
11066 PyObject *swig_obj[4] ;
11073 arg1 = (
PLFLT)(val1);
11078 arg2 = (
PLFLT)(val2);
11083 arg3 = (
PLFLT)(val3);
11088 arg4 = (
PLFLT)(val4);
11098 PyObject *resultobj = 0;
11111 PyObject *swig_obj[4] ;
11118 arg1 = (
PLFLT)(val1);
11123 arg2 = (
PLFLT)(val2);
11128 arg3 = (
PLFLT)(val3);
11133 arg4 = (
PLFLT)(val4);
11143 PyObject *resultobj = 0;
11144 unsigned int arg1 ;
11145 unsigned int val1 ;
11147 PyObject *swig_obj[1] ;
11150 swig_obj[0] = args;
11155 arg1 = (
unsigned int)(val1);
11165 PyObject *resultobj = 0;
11169 PyObject *swig_obj[1] ;
11172 swig_obj[0] = args;
11177 arg1 = (char)(val1);
11187 PyObject *resultobj = 0;
11188 char *arg1 = (
char *) 0 ;
11189 char *arg2 = (
char *) 0 ;
11196 PyObject *swig_obj[2] ;
11204 arg1 = (
char *)(buf1);
11209 arg2 = (
char *)(buf2);
11210 result = (
PLINT)
plsetopt((
char const *)arg1,(
char const *)arg2);
11223 PyObject *resultobj = 0;
11233 PyObject *swig_obj[3] ;
11240 arg1 = (
PLINT)(val1);
11245 arg2 = (
PLINT)(val2);
11250 arg3 = (
PLINT)(val3);
11260 PyObject *resultobj = 0;
11262 unsigned int val1 ;
11264 PyObject *swig_obj[1] ;
11267 swig_obj[0] = args;
11282 PyObject *resultobj = 0;
11283 char *arg1 = (
char *) 0 ;
11287 PyObject *swig_obj[1] ;
11290 swig_obj[0] = args;
11295 arg1 = (
char *)(buf1);
11307 PyObject *resultobj = 0;
11317 PyObject *swig_obj[3] ;
11324 arg1 = (
PLINT)(val1);
11329 arg2 = (
PLINT)(val2);
11334 arg3 = (
PLINT)(val3);
11344 PyObject *resultobj = 0;
11362 PyArrayObject *tmp1 = NULL ;
11371 PyArrayObject *tmp9 = NULL ;
11380 PyObject *swig_obj[12] ;
11399 if ( tmp1 == NULL )
11401 Xlen = arg2 = PyArray_DIMS( tmp1 )[0];
11402 Ylen = arg3 = PyArray_DIMS( tmp1 )[1];
11404 arg1 = (
PLFLT **) malloc(
sizeof (
PLFLT* ) * (size_t) arg2 );
11405 for ( i = 0; i < arg2; i++ )
11406 arg1[i] = ( (
PLFLT *) PyArray_DATA( tmp1 ) + i * size );
11412 arg5 = (
PLFLT)(val5);
11417 arg6 = (
PLFLT)(val6);
11422 arg7 = (
PLFLT)(val7);
11427 arg8 = (
PLFLT)(val8);
11430 if ( tmp9 == NULL )
11432 arg10 = PyArray_DIMS( tmp9 )[0];
11433 arg9 = (
PLFLT *) PyArray_DATA( tmp9 );
11439 arg11 = (
PLFLT)(val11);
11444 arg12 = (
PLINT)(val12);
11449 arg13 = (
PLFLT)(val13);
11454 arg15 = (
PLBOOL)(val15);
11455 if (swig_obj[10]) {
11458 if ( swig_obj[10] == Py_None )
11464 if ( !PyCallable_Check( (PyObject *) swig_obj[10] ) )
11466 PyErr_SetString( PyExc_ValueError,
"pltr argument must be callable" );
11473 if (swig_obj[11]) {
11475 if ( swig_obj[11] == Py_None )
11483 plshades((
double const **)arg1,arg2,arg3,arg4,arg5,arg6,arg7,arg8,(
double const *)arg9,arg10,arg11,arg12,arg13,arg14,arg15,arg16,arg17);
11518 PyObject *resultobj = 0;
11540 PyArrayObject *tmp1 = NULL ;
11569 PyObject *swig_obj[17] ;
11588 if ( tmp1 == NULL )
11590 Xlen = arg2 = PyArray_DIMS( tmp1 )[0];
11591 Ylen = arg3 = PyArray_DIMS( tmp1 )[1];
11593 arg1 = (
PLFLT **) malloc(
sizeof (
PLFLT* ) * (size_t) arg2 );
11594 for ( i = 0; i < arg2; i++ )
11595 arg1[i] = ( (
PLFLT *) PyArray_DATA( tmp1 ) + i * size );
11601 arg5 = (
PLFLT)(val5);
11606 arg6 = (
PLFLT)(val6);
11611 arg7 = (
PLFLT)(val7);
11616 arg8 = (
PLFLT)(val8);
11621 arg9 = (
PLFLT)(val9);
11626 arg10 = (
PLFLT)(val10);
11631 arg11 = (
PLINT)(val11);
11636 arg12 = (
PLFLT)(val12);
11641 arg13 = (
PLFLT)(val13);
11646 arg14 = (
PLINT)(val14);
11651 arg15 = (
PLFLT)(val15);
11656 arg16 = (
PLINT)(val16);
11661 arg17 = (
PLFLT)(val17);
11666 arg19 = (
PLBOOL)(val19);
11667 if (swig_obj[15]) {
11670 if ( swig_obj[15] == Py_None )
11676 if ( !PyCallable_Check( (PyObject *) swig_obj[15] ) )
11678 PyErr_SetString( PyExc_ValueError,
"pltr argument must be callable" );
11685 if (swig_obj[16]) {
11687 if ( swig_obj[16] == Py_None )
11695 plshade((
double const **)arg1,arg2,arg3,arg4,arg5,arg6,arg7,arg8,arg9,arg10,arg11,arg12,arg13,arg14,arg15,arg16,arg17,arg18,arg19,arg20,arg21);
11724 PyObject *resultobj = 0;
11728 PyObject *swig_obj[2] ;
11739 if ( swig_obj[0] == Py_None )
11745 if ( !PyCallable_Check( (PyObject *) swig_obj[0] ) )
11747 PyErr_SetString( PyExc_ValueError,
"label_func argument must be callable" );
11751 Py_XINCREF( (PyObject *) swig_obj[0] );
11770 PyObject *resultobj = 0;
11777 PyObject *swig_obj[2] ;
11784 arg1 = (
PLFLT)(val1);
11789 arg2 = (
PLFLT)(val2);
11799 PyObject *resultobj = 0;
11802 void *arg3 = (
void *) 0 ;
11807 PyObject *swig_obj[3] ;
11814 arg1 = (
PLINT)(val1);
11819 arg2 = (
PLINT)(val2);
11821 int res;
void *
buf = 0;
11823 res = PyObject_GetBuffer(swig_obj[2], &view, PyBUF_WRITABLE);
11825 PyBuffer_Release(&view);
11830 arg3 = (
void *)
buf;
11841 PyObject *resultobj = 0;
11844 void *arg3 = (
void *) 0 ;
11849 PyObject *swig_obj[3] ;
11856 arg1 = (
PLINT)(val1);
11861 arg2 = (
PLINT)(val2);
11863 int res;
void *
buf = 0;
11865 res = PyObject_GetBuffer(swig_obj[2], &view, PyBUF_WRITABLE);
11867 PyBuffer_Release(&view);
11872 arg3 = (
void *)
buf;
11883 PyObject *resultobj = 0;
11890 PyObject *swig_obj[2] ;
11897 arg1 = (
PLFLT)(val1);
11902 arg2 = (
PLFLT)(val2);
11912 PyObject *resultobj = 0;
11916 PyObject *swig_obj[1] ;
11919 swig_obj[0] = args;
11924 arg1 = (
PLINT)(val1);
11934 PyObject *resultobj = 0;
11953 PyObject *swig_obj[6] ;
11960 arg1 = (
PLFLT)(val1);
11965 arg2 = (
PLFLT)(val2);
11970 arg3 = (
PLINT)(val3);
11975 arg4 = (
PLINT)(val4);
11980 arg5 = (
PLINT)(val5);
11985 arg6 = (
PLINT)(val6);
11986 plspage(arg1,arg2,arg3,arg4,arg5,arg6);
11995 PyObject *resultobj = 0;
11996 char *arg1 = (
char *) 0 ;
12000 PyObject *swig_obj[1] ;
12003 swig_obj[0] = args;
12008 arg1 = (
char *)(buf1);
12020 PyObject *resultobj = 0;
12021 char *arg1 = (
char *) 0 ;
12028 PyObject *swig_obj[2] ;
12035 arg1 = (
char *)(buf1);
12041 plspal1((
char const *)arg1,arg2);
12052 PyObject *resultobj = 0;
12056 PyObject *swig_obj[1] ;
12059 swig_obj[0] = args;
12074 PyObject *resultobj = 0;
12078 PyObject *swig_obj[1] ;
12081 swig_obj[0] = args;
12086 arg1 = (
PLINT)(val1);
12096 PyObject *resultobj = 0;
12103 PyObject *swig_obj[2] ;
12110 arg1 = (
PLINT)(val1);
12115 arg2 = (
PLINT)(val2);
12125 PyObject *resultobj = 0;
12132 PyObject *swig_obj[2] ;
12139 arg1 = (
PLFLT)(val1);
12144 arg2 = (
PLFLT)(val2);
12154 PyObject *resultobj = 0;
12161 PyObject *swig_obj[2] ;
12168 arg1 = (
PLINT)(val1);
12173 arg2 = (
PLINT)(val2);
12183 PyObject *resultobj = 0;
12184 char *arg1 = (
char *) 0 ;
12194 PyObject *swig_obj[3] ;
12201 arg1 = (
char *)(buf1);
12206 arg2 = (
PLINT)(val2);
12211 arg3 = (
PLINT)(val3);
12212 plstart((
char const *)arg1,arg2,arg3);
12223 PyObject *resultobj = 0;
12227 PyObject *swig_obj[2] ;
12239 if ( swig_obj[0] == Py_None )
12245 if ( !PyCallable_Check( (PyObject *) swig_obj[0] ) )
12247 PyErr_SetString( PyExc_ValueError,
"coordinate transform argument must be callable" );
12269 PyObject *resultobj = 0;
12273 char *arg4 = (
char *) 0 ;
12274 PyArrayObject *tmp1 = NULL ;
12275 PyArrayObject *tmp3 = NULL ;
12279 PyObject *swig_obj[3] ;
12284 if ( tmp1 == NULL )
12286 arg1 =
Alen = PyArray_DIMS( tmp1 )[0];
12287 arg2 = (
PLFLT *) PyArray_DATA( tmp1 );
12291 if ( tmp3 == NULL )
12293 if ( PyArray_DIMS( tmp3 )[0] !=
Alen )
12295 PyErr_SetString( PyExc_ValueError,
"Vectors must be same length." );
12298 arg3 = (
PLFLT *) PyArray_DATA( tmp3 );
12304 arg4 = (
char *)(buf4);
12305 plstring(arg1,(
double const *)arg2,(
double const *)arg3,(
char const *)arg4);
12328 PyObject *resultobj = 0;
12333 char *arg5 = (
char *) 0 ;
12334 PyArrayObject *tmp1 = NULL ;
12335 PyArrayObject *tmp3 = NULL ;
12336 PyArrayObject *tmp4 = NULL ;
12340 PyObject *swig_obj[4] ;
12345 if ( tmp1 == NULL )
12347 arg1 =
Alen = PyArray_DIMS( tmp1 )[0];
12348 arg2 = (
PLFLT *) PyArray_DATA( tmp1 );
12352 if ( tmp3 == NULL )
12354 if ( PyArray_DIMS( tmp3 )[0] !=
Alen )
12356 PyErr_SetString( PyExc_ValueError,
"Vectors must be same length." );
12359 arg3 = (
PLFLT *) PyArray_DATA( tmp3 );
12363 if ( tmp4 == NULL )
12365 if ( PyArray_DIMS( tmp4 )[0] !=
Alen )
12367 PyErr_SetString( PyExc_ValueError,
"Vectors must be same length." );
12370 arg4 = (
PLFLT *) PyArray_DATA( tmp4 );
12376 arg5 = (
char *)(buf5);
12377 plstring3(arg1,(
double const *)arg2,(
double const *)arg3,(
double const *)arg4,(
char const *)arg5);
12406 PyObject *resultobj = 0;
12419 PyObject *swig_obj[4] ;
12426 arg1 = (
PLINT)(val1);
12431 arg2 = (
PLINT)(val2);
12436 arg3 = (
PLFLT)(val3);
12441 arg4 = (
PLFLT)(val4);
12451 PyObject *resultobj = 0;
12453 char *arg2 = (
char *) 0 ;
12454 char *arg3 = (
char *) 0 ;
12469 char *arg18 = (
char *) 0 ;
12470 char *arg19 = (
char *) 0 ;
12471 char *arg20 = (
char *) 0 ;
12502 PyArrayObject *tmp15 = NULL ;
12503 PyArrayObject *tmp16 = NULL ;
12504 char **tmp17 = NULL ;
12514 PyObject *swig_obj[19] ;
12522 arg2 = (
char *)(buf2);
12527 arg3 = (
char *)(buf3);
12532 arg4 = (
PLFLT)(val4);
12537 arg5 = (
PLFLT)(val5);
12542 arg6 = (
PLFLT)(val6);
12547 arg7 = (
PLFLT)(val7);
12552 arg8 = (
PLFLT)(val8);
12557 arg9 = (
PLFLT)(val9);
12562 arg10 = (
PLFLT)(val10);
12567 arg11 = (
PLBOOL)(val11);
12572 arg12 = (
PLBOOL)(val12);
12577 arg13 = (
PLINT)(val13);
12582 arg14 = (
PLINT)(val14);
12585 if ( tmp15 == NULL )
12587 Alen = PyArray_DIMS( tmp15 )[0];
12588 arg15 = (
PLINT *) PyArray_DATA( tmp15 );
12592 if ( tmp16 == NULL )
12594 if ( PyArray_DIMS( tmp16 )[0] !=
Alen )
12596 PyErr_SetString( PyExc_ValueError,
"Vectors must be same length." );
12599 arg16 = (
PLINT *) PyArray_DATA( tmp16 );
12603 PyObject *elt, *unicode_string;
12605 if ( !PySequence_Check( swig_obj[15] ) ||
PySequence_Size( swig_obj[15] ) != 4 )
12607 PyErr_SetString( PyExc_ValueError,
"Requires a sequence of 4 strings." );
12612 PyErr_SetString( PyExc_ValueError,
"colline and styline args must be length 4." );
12615 tmp17 = (
char **) malloc(
sizeof (
char* ) * 4 );
12616 if ( tmp17 == NULL )
12619 for ( i = 0; i < 4; i++ )
12623 if ( PyString_Check( elt ) )
12625 arg17[i] = PyString_AsString( elt );
12627 else if ( PyUnicode_Check( elt ) )
12629 unicode_string = PyUnicode_AsEncodedString( elt,
"utf-8",
"Error ~" );
12630 arg17[i] = PyBytes_AS_STRING( unicode_string );
12632 if ( arg17[i] == NULL )
12643 arg18 = (
char *)(buf18);
12648 arg19 = (
char *)(buf19);
12653 arg20 = (
char *)(buf20);
12654 plstripc(arg1,(
char const *)arg2,(
char const *)arg3,arg4,arg5,arg6,arg7,arg8,arg9,arg10,arg11,arg12,arg13,arg14,(
int const *)arg15,(
int const *)arg16,(
char const *(*))arg17,(
char const *)arg18,(
char const *)arg19,(
char const *)arg20);
12697 PyObject *resultobj = 0;
12701 PyObject *swig_obj[1] ;
12704 swig_obj[0] = args;
12709 arg1 = (
PLINT)(val1);
12719 PyObject *resultobj = 0;
12723 PyArrayObject *tmp1 = NULL ;
12724 PyArrayObject *tmp3 = NULL ;
12725 PyObject *swig_obj[2] ;
12730 if ( tmp1 == NULL )
12732 arg1 =
Alen = PyArray_DIMS( tmp1 )[0];
12733 arg2 = (
PLINT *) PyArray_DATA( tmp1 );
12737 if ( tmp3 == NULL )
12739 if ( PyArray_DIMS( tmp3 )[0] !=
Alen )
12741 PyErr_SetString( PyExc_ValueError,
"Vectors must be same length." );
12744 arg3 = (
PLINT *) PyArray_DATA( tmp3 );
12746 plstyl(arg1,(
int const *)arg2,(
int const *)arg3);
12767 PyObject *resultobj = 0;
12772 PyArrayObject *tmp1 = NULL ;
12773 PyArrayObject *tmp2 = NULL ;
12776 PyObject *swig_obj[3] ;
12780 if ( swig_obj[0] != Py_None )
12783 if ( tmp1 == NULL )
12785 Alen = PyArray_DIMS( tmp1 )[0];
12786 arg1 = (
PLFLT *) PyArray_DATA( tmp1 );
12795 if ( swig_obj[1] != Py_None )
12798 if ( tmp2 == NULL )
12800 if ( PyArray_DIMS( tmp2 )[0] !=
Alen )
12802 PyErr_SetString( PyExc_ValueError,
"Vectors must be same length." );
12805 arg2 = (
PLFLT *) PyArray_DATA( tmp2 );
12806 arg3 = PyArray_DIMS( tmp2 )[0];
12819 plsvect((
double const *)arg1,(
double const *)arg2,arg3,arg4);
12840 PyObject *resultobj = 0;
12853 PyObject *swig_obj[4] ;
12860 arg1 = (
PLFLT)(val1);
12865 arg2 = (
PLFLT)(val2);
12870 arg3 = (
PLFLT)(val3);
12875 arg4 = (
PLFLT)(val4);
12876 plsvpa(arg1,arg2,arg3,arg4);
12885 PyObject *resultobj = 0;
12892 PyObject *swig_obj[2] ;
12899 arg1 = (
PLINT)(val1);
12904 arg2 = (
PLINT)(val2);
12914 PyObject *resultobj = 0;
12921 PyObject *swig_obj[2] ;
12928 arg1 = (
PLINT)(val1);
12933 arg2 = (
PLINT)(val2);
12943 PyObject *resultobj = 0;
12948 PyArrayObject *tmp1 = NULL ;
12949 PyArrayObject *tmp3 = NULL ;
12952 PyObject *swig_obj[3] ;
12957 if ( tmp1 == NULL )
12959 arg1 =
Alen = PyArray_DIMS( tmp1 )[0];
12960 arg2 = (
PLFLT *) PyArray_DATA( tmp1 );
12964 if ( tmp3 == NULL )
12966 if ( PyArray_DIMS( tmp3 )[0] !=
Alen )
12968 PyErr_SetString( PyExc_ValueError,
"Vectors must be same length." );
12971 arg3 = (
PLFLT *) PyArray_DATA( tmp3 );
12977 arg4 = (
PLINT)(val4);
12978 plsym(arg1,(
double const *)arg2,(
double const *)arg3,arg4);
12999 PyObject *resultobj = 0;
13006 PyObject *swig_obj[2] ;
13013 arg1 = (
PLINT)(val1);
13018 arg2 = (
PLINT)(val2);
13028 PyObject *resultobj = 0;
13040 PyObject *resultobj = 0;
13041 char *arg1 = (
char *) 0 ;
13045 PyObject *swig_obj[1] ;
13048 swig_obj[0] = args;
13053 arg1 = (
char *)(buf1);
13065 PyObject *resultobj = 0;
13069 PyObject *swig_obj[1] ;
13072 swig_obj[0] = args;
13077 arg1 = (
PLFLT)(val1);
13087 PyObject *resultobj = 0;
13095 PyArrayObject *tmp1 = NULL ;
13096 PyArrayObject *tmp2 = NULL ;
13099 PyObject *swig_obj[5] ;
13112 if ( tmp1 == NULL )
13114 Xlen = PyArray_DIMS( tmp1 )[0];
13115 Ylen = PyArray_DIMS( tmp1 )[1];
13118 for ( i = 0; i <
Xlen; i++ )
13119 arg1[i] = ( (
PLFLT *) PyArray_DATA( tmp1 ) + i * size );
13124 if ( tmp2 == NULL )
13126 if (
Xlen != PyArray_DIMS( tmp2 )[0] ||
Ylen != PyArray_DIMS( tmp2 )[1] )
13128 PyErr_SetString( PyExc_ValueError,
"Vectors must match matrix." );
13131 arg3 = PyArray_DIMS( tmp2 )[0];
13132 arg4 = PyArray_DIMS( tmp2 )[1];
13134 arg2 = (
PLFLT **) malloc(
sizeof (
PLFLT* ) * (size_t) arg3 );
13135 for ( i = 0; i < arg3; i++ )
13136 arg2[i] = ( (
PLFLT *) PyArray_DATA( tmp2 ) + i * size );
13142 arg5 = (
PLFLT)(val5);
13146 if ( swig_obj[3] == Py_None )
13152 if ( !PyCallable_Check( (PyObject *) swig_obj[3] ) )
13154 PyErr_SetString( PyExc_ValueError,
"pltr argument must be callable" );
13163 if ( swig_obj[4] == Py_None )
13171 plvect((
double const **)arg1,(
double const **)arg2,arg3,arg4,arg5,arg6,arg7);
13208 PyObject *resultobj = 0;
13224 PyObject *swig_obj[5] ;
13231 arg1 = (
PLFLT)(val1);
13236 arg2 = (
PLFLT)(val2);
13241 arg3 = (
PLFLT)(val3);
13246 arg4 = (
PLFLT)(val4);
13251 arg5 = (
PLFLT)(val5);
13252 plvpas(arg1,arg2,arg3,arg4,arg5);
13261 PyObject *resultobj = 0;
13274 PyObject *swig_obj[4] ;
13281 arg1 = (
PLFLT)(val1);
13286 arg2 = (
PLFLT)(val2);
13291 arg3 = (
PLFLT)(val3);
13296 arg4 = (
PLFLT)(val4);
13297 plvpor(arg1,arg2,arg3,arg4);
13306 PyObject *resultobj = 0;
13318 PyObject *resultobj = 0;
13352 PyObject *swig_obj[11] ;
13359 arg1 = (
PLFLT)(val1);
13364 arg2 = (
PLFLT)(val2);
13369 arg3 = (
PLFLT)(val3);
13374 arg4 = (
PLFLT)(val4);
13379 arg5 = (
PLFLT)(val5);
13384 arg6 = (
PLFLT)(val6);
13389 arg7 = (
PLFLT)(val7);
13394 arg8 = (
PLFLT)(val8);
13399 arg9 = (
PLFLT)(val9);
13404 arg10 = (
PLFLT)(val10);
13409 arg11 = (
PLFLT)(val11);
13410 plw3d(arg1,arg2,arg3,arg4,arg5,arg6,arg7,arg8,arg9,arg10,arg11);
13419 PyObject *resultobj = 0;
13423 PyObject *swig_obj[1] ;
13426 swig_obj[0] = args;
13431 arg1 = (
PLFLT)(val1);
13441 PyObject *resultobj = 0;
13454 PyObject *swig_obj[4] ;
13461 arg1 = (
PLFLT)(val1);
13466 arg2 = (
PLFLT)(val2);
13471 arg3 = (
PLFLT)(val3);
13476 arg4 = (
PLFLT)(val4);
13477 plwind(arg1,arg2,arg3,arg4);
13486 PyObject *resultobj = 0;
13493 PyObject *swig_obj[1] ;
13497 swig_obj[0] = args;
13518 PyObject *resultobj = 0;
13520 char *arg2 = (
char *) 0 ;
13536 PyObject *swig_obj[6] ;
13541 if ( swig_obj[0] == Py_None )
13547 if ( !PyCallable_Check( (PyObject *) swig_obj[0] ) )
13549 PyErr_SetString( PyExc_ValueError,
"mapform argument must be callable" );
13559 arg2 = (
char *)(buf2);
13564 arg3 = (
PLFLT)(val3);
13569 arg4 = (
PLFLT)(val4);
13574 arg5 = (
PLFLT)(val5);
13579 arg6 = (
PLFLT)(val6);
13580 plmap(arg1,(
char const *)arg2,arg3,arg4,arg5,arg6);
13597 PyObject *resultobj = 0;
13599 char *arg2 = (
char *) 0 ;
13617 PyArrayObject *tmp7 = NULL ;
13618 PyObject *swig_obj[7] ;
13623 if ( swig_obj[0] == Py_None )
13629 if ( !PyCallable_Check( (PyObject *) swig_obj[0] ) )
13631 PyErr_SetString( PyExc_ValueError,
"mapform argument must be callable" );
13641 arg2 = (
char *)(buf2);
13646 arg3 = (
PLFLT)(val3);
13651 arg4 = (
PLFLT)(val4);
13656 arg5 = (
PLFLT)(val5);
13661 arg6 = (
PLFLT)(val6);
13663 if ( swig_obj[6] != Py_None )
13666 if ( tmp7 == NULL )
13668 arg7 = (
PLINT *) PyArray_DATA( tmp7 );
13669 arg8 = PyArray_DIMS( tmp7 )[0];
13677 plmapline(arg1,(
char const *)arg2,arg3,arg4,arg5,arg6,(
int const *)arg7,arg8);
13700 PyObject *resultobj = 0;
13702 char *arg2 = (
char *) 0 ;
13703 char *arg3 = (
char *) 0 ;
13724 PyArrayObject *tmp8 = NULL ;
13725 PyObject *swig_obj[8] ;
13730 if ( swig_obj[0] == Py_None )
13736 if ( !PyCallable_Check( (PyObject *) swig_obj[0] ) )
13738 PyErr_SetString( PyExc_ValueError,
"mapform argument must be callable" );
13748 arg2 = (
char *)(buf2);
13753 arg3 = (
char *)(buf3);
13758 arg4 = (
PLFLT)(val4);
13763 arg5 = (
PLFLT)(val5);
13768 arg6 = (
PLFLT)(val6);
13773 arg7 = (
PLFLT)(val7);
13775 if ( swig_obj[7] != Py_None )
13778 if ( tmp8 == NULL )
13780 arg8 = (
PLINT *) PyArray_DATA( tmp8 );
13781 arg9 = PyArray_DIMS( tmp8 )[0];
13789 plmapstring(arg1,(
char const *)arg2,(
char const *)arg3,arg4,arg5,arg6,arg7,(
int const *)arg8,arg9);
13814 PyObject *resultobj = 0;
13816 char *arg2 = (
char *) 0 ;
13820 char *arg6 = (
char *) 0 ;
13848 PyObject *swig_obj[11] ;
13853 if ( swig_obj[0] == Py_None )
13859 if ( !PyCallable_Check( (PyObject *) swig_obj[0] ) )
13861 PyErr_SetString( PyExc_ValueError,
"mapform argument must be callable" );
13871 arg2 = (
char *)(buf2);
13876 arg3 = (
PLFLT)(val3);
13881 arg4 = (
PLFLT)(val4);
13886 arg5 = (
PLFLT)(val5);
13891 arg6 = (
char *)(buf6);
13896 arg7 = (
PLFLT)(val7);
13901 arg8 = (
PLFLT)(val8);
13906 arg9 = (
PLFLT)(val9);
13911 arg10 = (
PLFLT)(val10);
13916 arg11 = (
PLINT)(val11);
13917 plmaptex(arg1,(
char const *)arg2,arg3,arg4,arg5,(
char const *)arg6,arg7,arg8,arg9,arg10,arg11);
13936 PyObject *resultobj = 0;
13938 char *arg2 = (
char *) 0 ;
13956 PyArrayObject *tmp7 = NULL ;
13957 PyObject *swig_obj[7] ;
13962 if ( swig_obj[0] == Py_None )
13968 if ( !PyCallable_Check( (PyObject *) swig_obj[0] ) )
13970 PyErr_SetString( PyExc_ValueError,
"mapform argument must be callable" );
13980 arg2 = (
char *)(buf2);
13985 arg3 = (
PLFLT)(val3);
13990 arg4 = (
PLFLT)(val4);
13995 arg5 = (
PLFLT)(val5);
14000 arg6 = (
PLFLT)(val6);
14002 if ( swig_obj[6] != Py_None )
14005 if ( tmp7 == NULL )
14007 arg7 = (
PLINT *) PyArray_DATA( tmp7 );
14008 arg8 = PyArray_DIMS( tmp7 )[0];
14016 plmapfill(arg1,(
char const *)arg2,arg3,arg4,arg5,arg6,(
int const *)arg7,arg8);
14039 PyObject *resultobj = 0;
14059 PyObject *swig_obj[7] ;
14064 if ( swig_obj[0] == Py_None )
14070 if ( !PyCallable_Check( (PyObject *) swig_obj[0] ) )
14072 PyErr_SetString( PyExc_ValueError,
"mapform argument must be callable" );
14082 arg2 = (
PLFLT)(val2);
14087 arg3 = (
PLFLT)(val3);
14092 arg4 = (
PLFLT)(val4);
14097 arg5 = (
PLFLT)(val5);
14102 arg6 = (
PLFLT)(val6);
14107 arg7 = (
PLFLT)(val7);
14123 PyObject *resultobj = 0;
14137 PyArrayObject *tmp1 = NULL ;
14158 PyObject *swig_obj[11] ;
14164 if ( tmp1 == NULL )
14166 Xlen = arg2 = PyArray_DIMS( tmp1 )[0];
14167 Ylen = arg3 = PyArray_DIMS( tmp1 )[1];
14169 arg1 = (
PLFLT **) malloc(
sizeof (
PLFLT* ) * (size_t) arg2 );
14170 for ( i = 0; i < arg2; i++ )
14171 arg1[i] = ( (
PLFLT *) PyArray_DATA( tmp1 ) + i * size );
14177 arg4 = (
PLFLT)(val4);
14182 arg5 = (
PLFLT)(val5);
14187 arg6 = (
PLFLT)(val6);
14192 arg7 = (
PLFLT)(val7);
14197 arg8 = (
PLFLT)(val8);
14202 arg9 = (
PLFLT)(val9);
14207 arg10 = (
PLFLT)(val10);
14212 arg11 = (
PLFLT)(val11);
14217 arg12 = (
PLFLT)(val12);
14222 arg13 = (
PLFLT)(val13);
14223 plimage((
double const **)arg1,arg2,arg3,arg4,arg5,arg6,arg7,arg8,arg9,arg10,arg11,arg12,arg13);
14240 PyObject *resultobj = 0;
14254 PyArrayObject *tmp1 = NULL ;
14271 PyObject *swig_obj[11] ;
14284 if ( tmp1 == NULL )
14286 Xlen = arg2 = PyArray_DIMS( tmp1 )[0];
14287 Ylen = arg3 = PyArray_DIMS( tmp1 )[1];
14289 arg1 = (
PLFLT **) malloc(
sizeof (
PLFLT* ) * (size_t) arg2 );
14290 for ( i = 0; i < arg2; i++ )
14291 arg1[i] = ( (
PLFLT *) PyArray_DATA( tmp1 ) + i * size );
14297 arg4 = (
PLFLT)(val4);
14302 arg5 = (
PLFLT)(val5);
14307 arg6 = (
PLFLT)(val6);
14312 arg7 = (
PLFLT)(val7);
14317 arg8 = (
PLFLT)(val8);
14322 arg9 = (
PLFLT)(val9);
14327 arg10 = (
PLFLT)(val10);
14332 arg11 = (
PLFLT)(val11);
14336 if ( swig_obj[9] == Py_None )
14342 if ( !PyCallable_Check( (PyObject *) swig_obj[9] ) )
14344 PyErr_SetString( PyExc_ValueError,
"pltr argument must be callable" );
14351 if (swig_obj[10]) {
14353 if ( swig_obj[10] == Py_None )
14361 plimagefr((
double const **)arg1,arg2,arg3,arg4,arg5,arg6,arg7,arg8,arg9,arg10,arg11,arg12,arg13);
14390 PyObject *resultobj = 0;
14402 PyObject *resultobj = 0;
14414 PyObject *resultobj = 0;
14415 char *arg1 = (
char *) 0 ;
14416 char *arg2 = (
char *) 0 ;
14423 PyObject *swig_obj[2] ;
14430 arg1 = (
char *)(buf1);
14435 arg2 = (
char *)(buf2);
14436 plSetUsage((
char const *)arg1,(
char const *)arg2);
14449 PyObject *resultobj = 0;
14461 PyObject *resultobj = 0;
14467 PyArrayObject *tmp1 = NULL ;
14472 PyObject *swig_obj[1] ;
14477 swig_obj[0] = args;
14481 if ( tmp1 == NULL )
14483 Xlen = arg2 = PyArray_DIMS( tmp1 )[0];
14484 Ylen = arg3 = PyArray_DIMS( tmp1 )[1];
14486 arg1 = (
PLFLT **) malloc(
sizeof (
PLFLT* ) * (size_t) arg2 );
14487 for ( i = 0; i < arg2; i++ )
14488 arg1[i] = ( (
PLFLT *) PyArray_DATA( tmp1 ) + i * size );
14519 PyObject *resultobj = 0;
14523 PyObject *swig_obj[1] ;
14527 swig_obj[0] = args;
14576 "Set format of numerical label for contours\n"
14580 " Set format of numerical label for contours.\n"
14582 " Redacted form: pl_setcontlabelformat(lexp, sigdig)\n"
14584 " This function is used example 9.\n"
14590 "pl_setcontlabelformat(lexp, sigdig)\n"
14594 " lexp (PLINT, input) : If the contour numerical label is greater\n"
14595 " than 10^(lexp) or less than 10^(-lexp), then the exponential\n"
14596 " format is used. Default value of lexp is 4.\n"
14598 " sigdig (PLINT, input) : Number of significant digits. Default\n"
14603 "Set parameters of contour labelling other than format of numerical label\n"
14607 " Set parameters of contour labelling other than those handled by\n"
14608 " pl_setcontlabelformat.\n"
14610 " Redacted form: pl_setcontlabelparam(offset, size, spacing, active)\n"
14612 " This function is used in example 9.\n"
14618 "pl_setcontlabelparam(offset, size, spacing, active)\n"
14622 " offset (PLFLT, input) : Offset of label from contour line (if set\n"
14623 " to 0.0, labels are printed on the lines). Default value is 0.006.\n"
14625 " size (PLFLT, input) : Font height for contour labels (normalized).\n"
14626 " Default value is 0.3.\n"
14628 " spacing (PLFLT, input) : Spacing parameter for contour labels.\n"
14629 " Default value is 0.1.\n"
14631 " active (PLINT, input) : Activate labels. Set to 1 if you want\n"
14632 " contour labels on. Default is off (0).\n"
14636 "Advance the (sub-)page\n"
14640 " Advances to the next subpage if sub=0, performing a page advance if\n"
14641 " there are no remaining subpages on the current page. If subpages\n"
14642 " aren't being used, pladv(0) will always advance the page. If page>0,\n"
14643 " PLplot switches to the specified subpage. Note that this allows you\n"
14644 " to overwrite a plot on the specified subpage; if this is not what you\n"
14645 " intended, use pleop followed by plbop to first advance the page. This\n"
14646 " routine is called automatically (with page=0) by plenv, but if plenv\n"
14647 " is not used, pladv must be called after initializing PLplot but before\n"
14648 " defining the viewport.\n"
14650 " Redacted form: pladv(page)\n"
14652 " This function is used in examples 1, 2, 4, 6-12, 14-18, 20, 21, 23-27,\n"
14663 " page (PLINT, input) : Specifies the subpage number (starting from 1\n"
14664 " in the top left corner and increasing along the rows) to which to\n"
14665 " advance. Set to zero to advance to the next subpage (or to the\n"
14666 " next page if subpages are not being used).\n"
14670 "Draw a circular or elliptical arc\n"
14674 " Draw a possibly filled arc centered at x, y with semimajor axis a and\n"
14675 " semiminor axis b, starting at angle1 and ending at angle2.\n"
14677 " Redacted form: General: plarc(x, y, a, b, angle1, angle2, rotate,\n"
14681 " This function is used in examples 3 and 27.\n"
14687 "plarc(x, y, a, b, angle1, angle2, rotate, fill)\n"
14691 " x (PLFLT, input) : X coordinate of arc center.\n"
14693 " y (PLFLT, input) : Y coordinate of arc center.\n"
14695 " a (PLFLT, input) : Length of the semimajor axis of the arc.\n"
14697 " b (PLFLT, input) : Length of the semiminor axis of the arc.\n"
14699 " angle1 (PLFLT, input) : Starting angle of the arc relative to the\n"
14700 " semimajor axis.\n"
14702 " angle2 (PLFLT, input) : Ending angle of the arc relative to the\n"
14703 " semimajor axis.\n"
14705 " rotate (PLFLT, input) : Angle of the semimajor axis relative to the\n"
14708 " fill (PLBOOL, input) : Draw a filled arc.\n"
14712 "Draw a box with axes, etc. with arbitrary origin\n"
14716 " Draws a box around the currently defined viewport with arbitrary\n"
14717 " world-coordinate origin specified by x0 and y0 and labels it with\n"
14718 " world coordinate values appropriate to the window. Thus plaxes should\n"
14719 " only be called after defining both viewport and window. The ascii\n"
14720 " character strings xopt and yopt specify how the box should be drawn as\n"
14721 " described below. If ticks and/or subticks are to be drawn for a\n"
14722 " particular axis, the tick intervals and number of subintervals may be\n"
14723 " specified explicitly, or they may be defaulted by setting the\n"
14724 " appropriate arguments to zero.\n"
14726 " Redacted form: General: plaxes(x0, y0, xopt, xtick, nxsub, yopt,\n"
14730 " This function is not used in any examples.\n"
14736 "plaxes(x0, y0, xopt, xtick, nxsub, yopt, ytick, nysub)\n"
14740 " x0 (PLFLT, input) : World X coordinate of origin.\n"
14742 " y0 (PLFLT, input) : World Y coordinate of origin.\n"
14744 " xopt (PLCHAR_VECTOR, input) : An ascii character string specifying\n"
14745 " options for the x axis. The string can include any combination of\n"
14746 " the following letters (upper or lower case) in any order: a: Draws\n"
14747 " axis, X-axis is horizontal line (y=0), and Y-axis is vertical line\n"
14749 " b: Draws bottom (X) or left (Y) edge of frame.\n"
14750 " c: Draws top (X) or right (Y) edge of frame.\n"
14751 " d: Plot labels as date / time. Values are assumed to be\n"
14752 " seconds since the epoch (as used by gmtime).\n"
14753 " f: Always use fixed point numeric labels.\n"
14754 " g: Draws a grid at the major tick interval.\n"
14755 " h: Draws a grid at the minor tick interval.\n"
14756 " i: Inverts tick marks, so they are drawn outwards, rather than\n"
14758 " l: Labels axis logarithmically. This only affects the labels,\n"
14759 " not the data, and so it is necessary to compute the logarithms\n"
14760 " of data points before passing them to any of the drawing\n"
14762 " m: Writes numeric labels at major tick intervals in the\n"
14763 " unconventional location (above box for X, right of box for Y).\n"
14764 " n: Writes numeric labels at major tick intervals in the\n"
14765 " conventional location (below box for X, left of box for Y).\n"
14766 " o: Use custom labelling function to generate axis label text.\n"
14767 " The custom labelling function can be defined with the\n"
14768 " plslabelfunc command.\n"
14769 " s: Enables subticks between major ticks, only valid if t is\n"
14770 " also specified.\n"
14771 " t: Draws major ticks.\n"
14772 " u: Exactly like \"b\" except don't draw edge line.\n"
14773 " w: Exactly like \"c\" except don't draw edge line.\n"
14774 " x: Exactly like \"t\" (including the side effect of the\n"
14775 " numerical labels for the major ticks) except exclude drawing\n"
14776 " the major and minor tick marks.\n"
14779 " xtick (PLFLT, input) : World coordinate interval between major\n"
14780 " ticks on the x axis. If it is set to zero, PLplot automatically\n"
14781 " generates a suitable tick interval.\n"
14783 " nxsub (PLINT, input) : Number of subintervals between major x axis\n"
14784 " ticks for minor ticks. If it is set to zero, PLplot automatically\n"
14785 " generates a suitable minor tick interval.\n"
14787 " yopt (PLCHAR_VECTOR, input) : An ascii character string specifying\n"
14788 " options for the y axis. The string can include any combination of\n"
14789 " the letters defined above for xopt, and in addition may contain:\n"
14790 " v: Write numeric labels for the y axis parallel to the base of the\n"
14791 " graph, rather than parallel to the axis.\n"
14794 " ytick (PLFLT, input) : World coordinate interval between major\n"
14795 " ticks on the y axis. If it is set to zero, PLplot automatically\n"
14796 " generates a suitable tick interval.\n"
14798 " nysub (PLINT, input) : Number of subintervals between major y axis\n"
14799 " ticks for minor ticks. If it is set to zero, PLplot automatically\n"
14800 " generates a suitable minor tick interval.\n"
14804 "Plot a histogram from binned data\n"
14808 " Plots a histogram consisting of nbin bins. The value associated with\n"
14809 " the i'th bin is placed in x[i], and the number of points in the bin is\n"
14810 " placed in y[i]. For proper operation, the values in x[i] must form a\n"
14811 " strictly increasing sequence. By default, x[i] is the left-hand edge\n"
14812 " of the i'th bin. If opt=PL_BIN_CENTRED is used, the bin boundaries are\n"
14813 " placed midway between the values in the x vector. Also see plhist for\n"
14814 " drawing histograms from unbinned data.\n"
14816 " Redacted form: General: plbin(x, y, opt)\n"
14817 " Python: plbin(nbin, x, y, opt)\n"
14820 " This function is not used in any examples.\n"
14826 "plbin(nbin, x, y, opt)\n"
14830 " nbin (PLINT, input) : Number of bins (i.e., number of values in x\n"
14831 " and y vectors.)\n"
14833 " x (PLFLT_VECTOR, input) : A vector containing values associated\n"
14834 " with bins. These must form a strictly increasing sequence.\n"
14836 " y (PLFLT_VECTOR, input) : A vector containing a number which is\n"
14837 " proportional to the number of points in each bin. This is a PLFLT\n"
14838 " (instead of PLINT) vector so as to allow histograms of\n"
14839 " probabilities, etc.\n"
14841 " opt (PLINT, input) : Is a combination of several flags:\n"
14842 " opt=PL_BIN_DEFAULT: The x represent the lower bin boundaries, the\n"
14843 " outer bins are expanded to fill up the entire x-axis and bins of\n"
14844 " zero height are simply drawn.\n"
14845 " opt=PL_BIN_CENTRED|...: The bin boundaries are to be midway\n"
14846 " between the x values. If the values in x are equally spaced,\n"
14847 " the values are the center values of the bins.\n"
14848 " opt=PL_BIN_NOEXPAND|...: The outer bins are drawn with equal\n"
14849 " size as the ones inside.\n"
14850 " opt=PL_BIN_NOEMPTY|...: Bins with zero height are not drawn\n"
14851 " (there is a gap for such bins).\n"
14855 "Calculate broken-down time from continuous time for the current stream\n"
14859 " Calculate broken-down time; year, month, day, hour, min, sec; from\n"
14860 " continuous time, ctime for the current stream. This function is the\n"
14861 " inverse of plctime.\n"
14863 " The PLplot definition of broken-down time is a calendar time that\n"
14864 " completely ignores all time zone offsets, i.e., it is the user's\n"
14865 " responsibility to apply those offsets (if so desired) before using the\n"
14866 " PLplot time API. By default broken-down time is defined using the\n"
14867 " proleptic Gregorian calendar without the insertion of leap seconds and\n"
14868 " continuous time is defined as the number of seconds since the Unix\n"
14869 " epoch of 1970-01-01T00:00:00Z. However, other definitions of\n"
14870 " broken-down and continuous time are possible, see plconfigtime.\n"
14872 " Redacted form: General: plbtime(year, month, day, hour, min, sec,\n"
14876 " This function is used in example 29.\n"
14882 "plbtime(year, month, day, hour, min, sec, ctime)\n"
14886 " year (PLINT_NC_SCALAR, output) : Returned value of years with\n"
14887 " positive values corresponding to CE (i.e., 1 = 1 CE, etc.) and\n"
14888 " non-negative values corresponding to BCE (e.g., 0 = 1 BCE, -1 = 2\n"
14891 " month (PLINT_NC_SCALAR, output) : Returned value of month within\n"
14892 " the year in the range from 0 (January) to 11 (December).\n"
14894 " day (PLINT_NC_SCALAR, output) : Returned value of day within the\n"
14895 " month in the range from 1 to 31.\n"
14897 " hour (PLINT_NC_SCALAR, output) : Returned value of hour within the\n"
14898 " day in the range from 0 to 23.\n"
14900 " min (PLINT_NC_SCALAR, output) : Returned value of minute within the\n"
14901 " hour in the range from 0 to 59\n"
14903 " sec (PLFLT_NC_SCALAR, output) : Returned value of second within the\n"
14904 " minute in range from 0. to 60.\n"
14906 " ctime (PLFLT, input) : Continuous time from which the broken-down\n"
14907 " time is calculated.\n"
14911 "Begin a new page\n"
14915 " Begins a new page. For a file driver, the output file is opened if\n"
14916 " necessary. Advancing the page via pleop and plbop is useful when a\n"
14917 " page break is desired at a particular point when plotting to subpages.\n"
14918 " Another use for pleop and plbop is when plotting pages to different\n"
14919 " files, since you can manually set the file name by calling plsfnam\n"
14920 " after the call to pleop. (In fact some drivers may only support a\n"
14921 " single page per file, making this a necessity.) One way to handle\n"
14922 " this case automatically is to page advance via pladv, but enable\n"
14923 " familying (see plsfam) with a small limit on the file size so that a\n"
14924 " new family member file will be created on each page break.\n"
14926 " Redacted form: plbop()\n"
14928 " This function is used in examples 2 and 20.\n"
14938 "Draw a box with axes, etc\n"
14942 " Draws a box around the currently defined viewport, and labels it with\n"
14943 " world coordinate values appropriate to the window. Thus plbox should\n"
14944 " only be called after defining both viewport and window. The ascii\n"
14945 " character strings xopt and yopt specify how the box should be drawn as\n"
14946 " described below. If ticks and/or subticks are to be drawn for a\n"
14947 " particular axis, the tick intervals and number of subintervals may be\n"
14948 " specified explicitly, or they may be defaulted by setting the\n"
14949 " appropriate arguments to zero.\n"
14951 " Redacted form: General: plbox(xopt, xtick, nxsub, yopt, ytick, nysub)\n"
14954 " This function is used in examples 1, 2, 4, 6, 6-12, 14-18, 21, 23-26,\n"
14961 "plbox(xopt, xtick, nxsub, yopt, ytick, nysub)\n"
14965 " xopt (PLCHAR_VECTOR, input) : An ascii character string specifying\n"
14966 " options for the x axis. The string can include any combination of\n"
14967 " the following letters (upper or lower case) in any order: a: Draws\n"
14968 " axis, X-axis is horizontal line (y=0), and Y-axis is vertical line\n"
14970 " b: Draws bottom (X) or left (Y) edge of frame.\n"
14971 " c: Draws top (X) or right (Y) edge of frame.\n"
14972 " d: Plot labels as date / time. Values are assumed to be\n"
14973 " seconds since the epoch (as used by gmtime).\n"
14974 " f: Always use fixed point numeric labels.\n"
14975 " g: Draws a grid at the major tick interval.\n"
14976 " h: Draws a grid at the minor tick interval.\n"
14977 " i: Inverts tick marks, so they are drawn outwards, rather than\n"
14979 " l: Labels axis logarithmically. This only affects the labels,\n"
14980 " not the data, and so it is necessary to compute the logarithms\n"
14981 " of data points before passing them to any of the drawing\n"
14983 " m: Writes numeric labels at major tick intervals in the\n"
14984 " unconventional location (above box for X, right of box for Y).\n"
14985 " n: Writes numeric labels at major tick intervals in the\n"
14986 " conventional location (below box for X, left of box for Y).\n"
14987 " o: Use custom labelling function to generate axis label text.\n"
14988 " The custom labelling function can be defined with the\n"
14989 " plslabelfunc command.\n"
14990 " s: Enables subticks between major ticks, only valid if t is\n"
14991 " also specified.\n"
14992 " t: Draws major ticks.\n"
14993 " u: Exactly like \"b\" except don't draw edge line.\n"
14994 " w: Exactly like \"c\" except don't draw edge line.\n"
14995 " x: Exactly like \"t\" (including the side effect of the\n"
14996 " numerical labels for the major ticks) except exclude drawing\n"
14997 " the major and minor tick marks.\n"
15000 " xtick (PLFLT, input) : World coordinate interval between major\n"
15001 " ticks on the x axis. If it is set to zero, PLplot automatically\n"
15002 " generates a suitable tick interval.\n"
15004 " nxsub (PLINT, input) : Number of subintervals between major x axis\n"
15005 " ticks for minor ticks. If it is set to zero, PLplot automatically\n"
15006 " generates a suitable minor tick interval.\n"
15008 " yopt (PLCHAR_VECTOR, input) : An ascii character string specifying\n"
15009 " options for the y axis. The string can include any combination of\n"
15010 " the letters defined above for xopt, and in addition may contain:\n"
15011 " v: Write numeric labels for the y axis parallel to the base of the\n"
15012 " graph, rather than parallel to the axis.\n"
15015 " ytick (PLFLT, input) : World coordinate interval between major\n"
15016 " ticks on the y axis. If it is set to zero, PLplot automatically\n"
15017 " generates a suitable tick interval.\n"
15019 " nysub (PLINT, input) : Number of subintervals between major y axis\n"
15020 " ticks for minor ticks. If it is set to zero, PLplot automatically\n"
15021 " generates a suitable minor tick interval.\n"
15025 "Draw a box with axes, etc, in 3-d\n"
15029 " Draws axes, numeric and text labels for a three-dimensional surface\n"
15030 " plot. For a more complete description of three-dimensional plotting\n"
15031 " see the PLplot documentation.\n"
15033 " Redacted form: General: plbox3(xopt, xlabel, xtick, nxsub, yopt,\n"
15034 " ylabel, ytick, nysub, zopt, zlabel, ztick, nzsub)\n"
15037 " This function is used in examples 8, 11, 18, and 21.\n"
15043 "plbox3(xopt, xlabel, xtick, nxsub, yopt, ylabel, ytick, nysub, zopt, zlabel, ztick, nzsub)\n"
15047 " xopt (PLCHAR_VECTOR, input) : An ascii character string specifying\n"
15048 " options for the x axis. The string can include any combination of\n"
15049 " the following letters (upper or lower case) in any order: b: Draws\n"
15050 " axis at base, at height z=\n"
15051 " zmin where zmin is defined by call to plw3d. This character must be\n"
15052 " specified in order to use any of the other options.\n"
15053 " d: Plot labels as date / time. Values are assumed to be\n"
15054 " seconds since the epoch (as used by gmtime).\n"
15055 " f: Always use fixed point numeric labels.\n"
15056 " i: Inverts tick marks, so they are drawn downwards, rather\n"
15058 " l: Labels axis logarithmically. This only affects the labels,\n"
15059 " not the data, and so it is necessary to compute the logarithms\n"
15060 " of data points before passing them to any of the drawing\n"
15062 " n: Writes numeric labels at major tick intervals.\n"
15063 " o: Use custom labelling function to generate axis label text.\n"
15064 " The custom labelling function can be defined with the\n"
15065 " plslabelfunc command.\n"
15066 " s: Enables subticks between major ticks, only valid if t is\n"
15067 " also specified.\n"
15068 " t: Draws major ticks.\n"
15069 " u: If this is specified, the text label for the axis is\n"
15070 " written under the axis.\n"
15073 " xlabel (PLCHAR_VECTOR, input) : A UTF-8 character string specifying\n"
15074 " the text label for the x axis. It is only drawn if u is in the\n"
15077 " xtick (PLFLT, input) : World coordinate interval between major\n"
15078 " ticks on the x axis. If it is set to zero, PLplot automatically\n"
15079 " generates a suitable tick interval.\n"
15081 " nxsub (PLINT, input) : Number of subintervals between major x axis\n"
15082 " ticks for minor ticks. If it is set to zero, PLplot automatically\n"
15083 " generates a suitable minor tick interval.\n"
15085 " yopt (PLCHAR_VECTOR, input) : An ascii character string specifying\n"
15086 " options for the y axis. The string is interpreted in the same way\n"
15089 " ylabel (PLCHAR_VECTOR, input) : A UTF-8 character string specifying\n"
15090 " the text label for the y axis. It is only drawn if u is in the\n"
15093 " ytick (PLFLT, input) : World coordinate interval between major\n"
15094 " ticks on the y axis. If it is set to zero, PLplot automatically\n"
15095 " generates a suitable tick interval.\n"
15097 " nysub (PLINT, input) : Number of subintervals between major y axis\n"
15098 " ticks for minor ticks. If it is set to zero, PLplot automatically\n"
15099 " generates a suitable minor tick interval.\n"
15101 " zopt (PLCHAR_VECTOR, input) : An ascii character string specifying\n"
15102 " options for the z axis. The string can include any combination of\n"
15103 " the following letters (upper or lower case) in any order: b: Draws\n"
15104 " z axis to the left of the surface plot.\n"
15105 " c: Draws z axis to the right of the surface plot.\n"
15106 " d: Draws grid lines parallel to the x-y plane behind the\n"
15107 " figure. These lines are not drawn until after plot3d or\n"
15108 " plmesh are called because of the need for hidden line removal.\n"
15109 " e: Plot labels as date / time. Values are assumed to be\n"
15110 " seconds since the epoch (as used by gmtime). Note this\n"
15111 " suboption is interpreted the same as the d suboption for xopt\n"
15112 " and yopt, but it has to be identified as e for zopt since d\n"
15113 " has already been used for the different purpose above.\n"
15114 " f: Always use fixed point numeric labels.\n"
15115 " i: Inverts tick marks, so they are drawn away from the center.\n"
15116 " l: Labels axis logarithmically. This only affects the labels,\n"
15117 " not the data, and so it is necessary to compute the logarithms\n"
15118 " of data points before passing them to any of the drawing\n"
15120 " m: Writes numeric labels at major tick intervals on the\n"
15121 " right-hand z axis.\n"
15122 " n: Writes numeric labels at major tick intervals on the\n"
15123 " left-hand z axis.\n"
15124 " o: Use custom labelling function to generate axis label text.\n"
15125 " The custom labelling function can be defined with the\n"
15126 " plslabelfunc command.\n"
15127 " s: Enables subticks between major ticks, only valid if t is\n"
15128 " also specified.\n"
15129 " t: Draws major ticks.\n"
15130 " u: If this is specified, the text label is written beside the\n"
15131 " left-hand axis.\n"
15132 " v: If this is specified, the text label is written beside the\n"
15133 " right-hand axis.\n"
15136 " zlabel (PLCHAR_VECTOR, input) : A UTF-8 character string specifying\n"
15137 " the text label for the z axis. It is only drawn if u or v are in\n"
15138 " the zopt string.\n"
15140 " ztick (PLFLT, input) : World coordinate interval between major\n"
15141 " ticks on the z axis. If it is set to zero, PLplot automatically\n"
15142 " generates a suitable tick interval.\n"
15144 " nzsub (PLINT, input) : Number of subintervals between major z axis\n"
15145 " ticks for minor ticks. If it is set to zero, PLplot automatically\n"
15146 " generates a suitable minor tick interval.\n"
15150 "Calculate world coordinates and corresponding window index from relative device coordinates\n"
15154 " Calculate world coordinates, wx and wy, and corresponding window index\n"
15155 " from relative device coordinates, rx and ry.\n"
15157 " Redacted form: General: plcalc_world(rx, ry, wx, wy, window)\n"
15160 " This function is used in example 31.\n"
15166 "plcalc_world(rx, ry, wx, wy, window)\n"
15170 " rx (PLFLT, input) : Input relative device coordinate (0.0-1.0) for\n"
15171 " the x coordinate.\n"
15173 " ry (PLFLT, input) : Input relative device coordinate (0.0-1.0) for\n"
15174 " the y coordinate.\n"
15176 " wx (PLFLT_NC_SCALAR, output) : Returned value of the x world\n"
15177 " coordinate corresponding to the relative device coordinates rx and\n"
15180 " wy (PLFLT_NC_SCALAR, output) : Returned value of the y world\n"
15181 " coordinate corresponding to the relative device coordinates rx and\n"
15184 " window (PLINT_NC_SCALAR, output) : Returned value of the last\n"
15185 " defined window index that corresponds to the input relative device\n"
15186 " coordinates (and the returned world coordinates). To give some\n"
15187 " background on the window index, for each page the initial window\n"
15188 " index is set to zero, and each time plwind is called within the\n"
15189 " page, world and device coordinates are stored for the window and\n"
15190 " the window index is incremented. Thus, for a simple page layout\n"
15191 " with non-overlapping viewports and one window per viewport, window\n"
15192 " corresponds to the viewport index (in the order which the\n"
15193 " viewport/windows were created) of the only viewport/window\n"
15194 " corresponding to rx and ry. However, for more complicated layouts\n"
15195 " with potentially overlapping viewports and possibly more than one\n"
15196 " window (set of world coordinates) per viewport, window and the\n"
15197 " corresponding output world coordinates corresponds to the last\n"
15198 " window created that fulfills the criterion that the relative\n"
15199 " device coordinates are inside it. Finally, in all cases where the\n"
15200 " input relative device coordinates are not inside any\n"
15201 " viewport/window, then the returned value of the last defined\n"
15202 " window index is set to -1.\n"
15206 "Clear current (sub)page\n"
15210 " Clears the current page, effectively erasing everything that have been\n"
15211 " drawn. This command only works with interactive drivers; if the\n"
15212 " driver does not support this, the page is filled with the background\n"
15213 " color in use. If the current page is divided into subpages, only the\n"
15214 " current subpage is erased. The nth subpage can be selected with\n"
15217 " Redacted form: General: plclear()\n"
15220 " This function is not used in any examples.\n"
15230 "Set color, cmap0\n"
15234 " Sets the color index for cmap0 (see the PLplot documentation).\n"
15236 " Redacted form: plcol0(icol0)\n"
15238 " This function is used in examples 1-9, 11-16, 18-27, and 29.\n"
15248 " icol0 (PLINT, input) : Integer representing the color. The\n"
15249 " defaults at present are (these may change):\n"
15250 " 0 black (default background)\n"
15251 " 1 red (default foreground)\n"
15267 " Use plscmap0 to change the entire cmap0 color palette and plscol0 to\n"
15268 " change an individual color in the cmap0 color palette.\n"
15272 "Set color, cmap1\n"
15276 " Sets the color for cmap1 (see the PLplot documentation).\n"
15278 " Redacted form: plcol1(col1)\n"
15280 " This function is used in examples 12 and 21.\n"
15290 " col1 (PLFLT, input) : This value must be in the range (0.0-1.0) and\n"
15291 " is mapped to color using the continuous cmap1 palette which by\n"
15292 " default ranges from blue to the background color to red. The\n"
15293 " cmap1 palette can also be straightforwardly changed by the user\n"
15294 " with plscmap1 or plscmap1l.\n"
15298 "Configure the transformation between continuous and broken-down time for the current stream\n"
15302 " Configure the transformation between continuous and broken-down time\n"
15303 " for the current stream. This transformation is used by both plbtime\n"
15306 " Redacted form: General: plconfigtime(scale, offset1, offset2,\n"
15307 " ccontrol, ifbtime_offset, year, month, day, hour, min, sec)\n"
15310 " This function is used in example 29.\n"
15316 "plconfigtime(scale, offset1, offset2, ccontrol, ifbtime_offset, year, month, day, hour, min, sec)\n"
15320 " scale (PLFLT, input) : The number of days per continuous time unit.\n"
15321 " As a special case, if\n"
15322 " scale is 0., then all other arguments are ignored, and the result (the\n"
15323 " default used by PLplot) is the equivalent of a call to\n"
15324 " plconfigtime(1./86400., 0., 0., 0x0, 1, 1970, 0, 1, 0, 0, 0.).\n"
15325 " That is, for this special case broken-down time is calculated with\n"
15326 " the proleptic Gregorian calendar with no leap seconds inserted,\n"
15327 " and the continuous time is defined as the number of seconds since\n"
15328 " the Unix epoch of 1970-01-01T00:00:00Z.\n"
15330 " offset1 (PLFLT, input) : If\n"
15331 " ifbtime_offset is true, the parameters\n"
15333 " offset2 are completely ignored. Otherwise, the sum of these parameters\n"
15334 " (with units in days) specify the epoch of the continuous time\n"
15335 " relative to the MJD epoch corresponding to the Gregorian calendar\n"
15336 " date of 1858-11-17T00:00:00Z or JD = 2400000.5. Two PLFLT numbers\n"
15337 " are used to specify the origin to allow users (by specifying\n"
15338 " offset1 as an integer that can be exactly represented by a\n"
15339 " floating-point variable and specifying\n"
15340 " offset2 as a number in the range from 0. to 1) the chance to minimize\n"
15341 " the numerical errors of the continuous time representation.\n"
15343 " offset2 (PLFLT, input) : See documentation of\n"
15346 " ccontrol (PLINT, input) : ccontrol contains bits controlling the\n"
15347 " transformation. If the 0x1 bit is set, then the proleptic Julian\n"
15348 " calendar is used for broken-down time rather than the proleptic\n"
15349 " Gregorian calendar. If the 0x2 bit is set, then leap seconds that\n"
15350 " have been historically used to define UTC are inserted into the\n"
15351 " broken-down time. Other possibilities for additional control bits\n"
15352 " for ccontrol exist such as making the historical time corrections\n"
15353 " in the broken-down time corresponding to ET (ephemeris time) or\n"
15354 " making the (slightly non-constant) corrections from international\n"
15355 " atomic time (TAI) to what astronomers define as terrestrial time\n"
15356 " (TT). But those additional possibilities have not been\n"
15357 " implemented yet in the qsastime library (one of the PLplot utility\n"
15360 " ifbtime_offset (PLBOOL, input) : ifbtime_offset controls how the\n"
15361 " epoch of the continuous time scale is specified by the user. If\n"
15362 " ifbtime_offset is false, then\n"
15364 " offset2 are used to specify the epoch, and the following broken-down\n"
15365 " time parameters are completely ignored. If\n"
15366 " ifbtime_offset is true, then\n"
15368 " offset2 are completely ignored, and the following broken-down time\n"
15369 " parameters are used to specify the epoch.\n"
15371 " year (PLINT, input) : Year of epoch.\n"
15373 " month (PLINT, input) : Month of epoch in range from 0 (January) to\n"
15374 " 11 (December).\n"
15376 " day (PLINT, input) : Day of epoch in range from 1 to 31.\n"
15378 " hour (PLINT, input) : Hour of epoch in range from 0 to 23\n"
15380 " min (PLINT, input) : Minute of epoch in range from 0 to 59.\n"
15382 " sec (PLFLT, input) : Second of epoch in range from 0. to 60.\n"
15390 " Draws a contour plot of the data in f[\n"
15392 " ny], using the nlevel contour levels specified by clevel. Only the\n"
15393 " region of the matrix from kx to lx and from ky to ly is plotted out\n"
15394 " where all these index ranges are interpreted as one-based for\n"
15395 " historical reasons. A transformation routine pointed to by pltr with\n"
15396 " a generic pointer pltr_data for additional data required by the\n"
15397 " transformation routine is used to map indices within the matrix to the\n"
15398 " world coordinates.\n"
15400 " Redacted form: plcont(f, kx, lx, ky, ly, clevel, pltr, pltr_data)\n"
15401 " where (see above discussion) the pltr, pltr_data callback arguments\n"
15402 " are sometimes replaced by a tr vector with 6 elements; xg and yg\n"
15403 " vectors; or xg and yg matrices.\n"
15405 " This function is used in examples 9, 14, 16, and 22.\n"
15411 "plcont(f, nx, ny, kx, lx, ky, ly, clevel, nlevel, pltr, pltr_data)\n"
15415 " f (PLFLT_MATRIX, input) : A matrix containing data to be contoured.\n"
15417 " nx, ny (PLINT, input) : The dimensions of the matrix f.\n"
15419 " kx, lx (PLINT, input) : Range of x indices to consider where 0 <=\n"
15420 " kx-1 < lx-1 < nx. Values of kx and lx are one-based rather than\n"
15421 " zero-based for historical backwards-compatibility reasons.\n"
15423 " ky, ly (PLINT, input) : Range of y indices to consider where 0 <=\n"
15424 " ky-1 < ly-1 < ny. Values of ky and ly are one-based rather than\n"
15425 " zero-based for historical backwards-compatibility reasons.\n"
15427 " clevel (PLFLT_VECTOR, input) : A vector specifying the levels at\n"
15428 " which to draw contours.\n"
15430 " nlevel (PLINT, input) : Number of contour levels to draw.\n"
15432 " pltr (PLTRANSFORM_callback, input) : A callback function that\n"
15433 " defines the transformation between the zero-based indices of the\n"
15434 " matrix f and the world coordinates.For the C case, transformation\n"
15435 " functions are provided in the PLplot library: pltr0 for the\n"
15436 " identity mapping, and pltr1 and pltr2 for arbitrary mappings\n"
15437 " respectively defined by vectors and matrices. In addition, C\n"
15438 " callback routines for the transformation can be supplied by the\n"
15439 " user such as the mypltr function in examples/c/x09c.c which\n"
15440 " provides a general linear transformation between index coordinates\n"
15441 " and world coordinates.For languages other than C you should\n"
15442 " consult the PLplot documentation for the details concerning how\n"
15443 " PLTRANSFORM_callback arguments are interfaced. However, in\n"
15444 " general, a particular pattern of callback-associated arguments\n"
15445 " such as a tr vector with 6 elements; xg and yg vectors; or xg and\n"
15446 " yg matrices are respectively interfaced to a linear-transformation\n"
15447 " routine similar to the above mypltr function; pltr1; and pltr2.\n"
15448 " Furthermore, some of our more sophisticated bindings (see, e.g.,\n"
15449 " the PLplot documentation) support native language callbacks for\n"
15450 " handling index to world-coordinate transformations. Examples of\n"
15451 " these various approaches are given in examples/<language>x09*,\n"
15452 " examples/<language>x16*, examples/<language>x20*,\n"
15453 " examples/<language>x21*, and examples/<language>x22*, for all our\n"
15454 " supported languages.\n"
15456 " pltr_data (PLPointer, input) : Extra parameter to help pass\n"
15457 " information to pltr0, pltr1, pltr2, or whatever callback routine\n"
15458 " that is externally supplied.\n"
15462 "Calculate continuous time from broken-down time for the current stream\n"
15466 " Calculate continuous time, ctime, from broken-down time for the\n"
15467 " current stream. The broken-down\n"
15468 " time is specified by the following parameters: year, month, day, hour,\n"
15469 " min, and sec. This function is the inverse of plbtime.\n"
15471 " The PLplot definition of broken-down time is a calendar time that\n"
15472 " completely ignores all time zone offsets, i.e., it is the user's\n"
15473 " responsibility to apply those offsets (if so desired) before using the\n"
15474 " PLplot time API. By default broken-down time is defined using the\n"
15475 " proleptic Gregorian calendar without the insertion of leap seconds and\n"
15476 " continuous time is defined as the number of seconds since the Unix\n"
15477 " epoch of 1970-01-01T00:00:00Z. However, other definitions of\n"
15478 " broken-down and continuous time are possible, see plconfigtime which\n"
15479 " specifies that transformation for the current stream.\n"
15481 " Redacted form: General: plctime(year, month, day, hour, min, sec,\n"
15485 " This function is used in example 29.\n"
15491 "plctime(year, month, day, hour, min, sec, ctime)\n"
15495 " year (PLINT, input) : Input year.\n"
15497 " month (PLINT, input) : Input month in range from 0 (January) to 11\n"
15500 " day (PLINT, input) : Input day in range from 1 to 31.\n"
15502 " hour (PLINT, input) : Input hour in range from 0 to 23\n"
15504 " min (PLINT, input) : Input minute in range from 0 to 59.\n"
15506 " sec (PLFLT, input) : Input second in range from 0. to 60.\n"
15508 " ctime (PLFLT_NC_SCALAR, output) : Returned value of the continuous\n"
15509 " time calculated from the broken-down time specified by the\n"
15510 " previous parameters.\n"
15514 "Copy state parameters from the reference stream to the current stream\n"
15518 " Copies state parameters from the reference stream to the current\n"
15519 " stream. Tell driver interface to map device coordinates unless flags\n"
15522 " This function is used for making save files of selected plots (e.g.\n"
15523 " from the TK driver). After initializing, you can get a copy of the\n"
15524 " current plot to the specified device by switching to this stream and\n"
15525 " issuing a plcpstrm and a plreplot, with calls to plbop and pleop as\n"
15526 " appropriate. The plot buffer must have previously been enabled (done\n"
15527 " automatically by some display drivers, such as X).\n"
15529 " Redacted form: plcpstrm(iplsr, flags)\n"
15531 " This function is used in example 1,20.\n"
15537 "plcpstrm(iplsr, flags)\n"
15541 " iplsr (PLINT, input) : Number of reference stream.\n"
15543 " flags (PLBOOL, input) : If flags is set to true the device\n"
15544 " coordinates are not copied from the reference to current stream.\n"
15548 "End plotting session\n"
15552 " Ends a plotting session, tidies up all the output files, switches\n"
15553 " interactive devices back into text mode and frees up any memory that\n"
15554 " was allocated. Must be called before end of program.\n"
15556 " By default, PLplot's interactive devices (Xwin, TK, etc.) go into a\n"
15557 " wait state after a call to plend or other functions which trigger the\n"
15558 " end of a plot page. To avoid this, use the plspause function.\n"
15560 " Redacted form: plend()\n"
15562 " This function is used in all of the examples.\n"
15572 "End plotting session for current stream\n"
15576 " Ends a plotting session for the current output stream only. See\n"
15577 " plsstrm for more info.\n"
15579 " Redacted form: plend1()\n"
15581 " This function is used in examples 1 and 20.\n"
15591 "Set up standard window and draw box\n"
15595 " Sets up plotter environment for simple graphs by calling pladv and\n"
15596 " setting up viewport and window to sensible default values. plenv\n"
15597 " leaves a standard margin (left-hand margin of eight character heights,\n"
15598 " and a margin around the other three sides of five character heights)\n"
15599 " around most graphs for axis labels and a title. When these defaults\n"
15600 " are not suitable, use the individual routines plvpas, plvpor, or\n"
15601 " plvasp for setting up the viewport, plwind for defining the window,\n"
15602 " and plbox for drawing the box.\n"
15604 " Redacted form: plenv(xmin, xmax, ymin, ymax, just, axis)\n"
15606 " This function is used in example 1,3,9,13,14,19-22,29.\n"
15612 "plenv(xmin, xmax, ymin, ymax, just, axis)\n"
15616 " xmin (PLFLT, input) : Value of x at left-hand edge of window (in\n"
15617 " world coordinates).\n"
15619 " xmax (PLFLT, input) : Value of x at right-hand edge of window (in\n"
15620 " world coordinates).\n"
15622 " ymin (PLFLT, input) : Value of y at bottom edge of window (in world\n"
15625 " ymax (PLFLT, input) : Value of y at top edge of window (in world\n"
15628 " just (PLINT, input) : Controls how the axes will be scaled: -1: the\n"
15629 " scales will not be set, the user must set up the scale before\n"
15630 " calling plenv using plsvpa, plvasp or other.\n"
15631 " 0: the x and y axes are scaled independently to use as much of\n"
15632 " the screen as possible.\n"
15633 " 1: the scales of the x and y axes are made equal.\n"
15634 " 2: the axis of the x and y axes are made equal, and the plot\n"
15635 " box will be square.\n"
15638 " axis (PLINT, input) : Controls drawing of the box around the plot:\n"
15639 " -2: draw no box, no tick marks, no numeric tick labels, no axes.\n"
15640 " -1: draw box only.\n"
15641 " 0: draw box, ticks, and numeric tick labels.\n"
15642 " 1: also draw coordinate axes at x=0 and y=0.\n"
15643 " 2: also draw a grid at major tick positions in both\n"
15645 " 3: also draw a grid at minor tick positions in both\n"
15647 " 10: same as 0 except logarithmic x tick marks. (The x data\n"
15648 " have to be converted to logarithms separately.)\n"
15649 " 11: same as 1 except logarithmic x tick marks. (The x data\n"
15650 " have to be converted to logarithms separately.)\n"
15651 " 12: same as 2 except logarithmic x tick marks. (The x data\n"
15652 " have to be converted to logarithms separately.)\n"
15653 " 13: same as 3 except logarithmic x tick marks. (The x data\n"
15654 " have to be converted to logarithms separately.)\n"
15655 " 20: same as 0 except logarithmic y tick marks. (The y data\n"
15656 " have to be converted to logarithms separately.)\n"
15657 " 21: same as 1 except logarithmic y tick marks. (The y data\n"
15658 " have to be converted to logarithms separately.)\n"
15659 " 22: same as 2 except logarithmic y tick marks. (The y data\n"
15660 " have to be converted to logarithms separately.)\n"
15661 " 23: same as 3 except logarithmic y tick marks. (The y data\n"
15662 " have to be converted to logarithms separately.)\n"
15663 " 30: same as 0 except logarithmic x and y tick marks. (The x\n"
15664 " and y data have to be converted to logarithms separately.)\n"
15665 " 31: same as 1 except logarithmic x and y tick marks. (The x\n"
15666 " and y data have to be converted to logarithms separately.)\n"
15667 " 32: same as 2 except logarithmic x and y tick marks. (The x\n"
15668 " and y data have to be converted to logarithms separately.)\n"
15669 " 33: same as 3 except logarithmic x and y tick marks. (The x\n"
15670 " and y data have to be converted to logarithms separately.)\n"
15671 " 40: same as 0 except date / time x labels.\n"
15672 " 41: same as 1 except date / time x labels.\n"
15673 " 42: same as 2 except date / time x labels.\n"
15674 " 43: same as 3 except date / time x labels.\n"
15675 " 50: same as 0 except date / time y labels.\n"
15676 " 51: same as 1 except date / time y labels.\n"
15677 " 52: same as 2 except date / time y labels.\n"
15678 " 53: same as 3 except date / time y labels.\n"
15679 " 60: same as 0 except date / time x and y labels.\n"
15680 " 61: same as 1 except date / time x and y labels.\n"
15681 " 62: same as 2 except date / time x and y labels.\n"
15682 " 63: same as 3 except date / time x and y labels.\n"
15683 " 70: same as 0 except custom x and y labels.\n"
15684 " 71: same as 1 except custom x and y labels.\n"
15685 " 72: same as 2 except custom x and y labels.\n"
15686 " 73: same as 3 except custom x and y labels.\n"
15690 "Same as plenv but if in multiplot mode does not advance the subpage, instead clears it\n"
15694 " Sets up plotter environment for simple graphs by calling pladv and\n"
15695 " setting up viewport and window to sensible default values. plenv0\n"
15696 " leaves a standard margin (left-hand margin of eight character heights,\n"
15697 " and a margin around the other three sides of five character heights)\n"
15698 " around most graphs for axis labels and a title. When these defaults\n"
15699 " are not suitable, use the individual routines plvpas, plvpor, or\n"
15700 " plvasp for setting up the viewport, plwind for defining the window,\n"
15701 " and plbox for drawing the box.\n"
15703 " Redacted form: plenv0(xmin, xmax, ymin, ymax, just, axis)\n"
15705 " This function is used in example 21.\n"
15711 "plenv0(xmin, xmax, ymin, ymax, just, axis)\n"
15715 " xmin (PLFLT, input) : Value of x at left-hand edge of window (in\n"
15716 " world coordinates).\n"
15718 " xmax (PLFLT, input) : Value of x at right-hand edge of window (in\n"
15719 " world coordinates).\n"
15721 " ymin (PLFLT, input) : Value of y at bottom edge of window (in world\n"
15724 " ymax (PLFLT, input) : Value of y at top edge of window (in world\n"
15727 " just (PLINT, input) : Controls how the axes will be scaled: -1: the\n"
15728 " scales will not be set, the user must set up the scale before\n"
15729 " calling plenv0 using plsvpa, plvasp or other.\n"
15730 " 0: the x and y axes are scaled independently to use as much of\n"
15731 " the screen as possible.\n"
15732 " 1: the scales of the x and y axes are made equal.\n"
15733 " 2: the axis of the x and y axes are made equal, and the plot\n"
15734 " box will be square.\n"
15737 " axis (PLINT, input) : Controls drawing of the box around the plot:\n"
15738 " -2: draw no box, no tick marks, no numeric tick labels, no axes.\n"
15739 " -1: draw box only.\n"
15740 " 0: draw box, ticks, and numeric tick labels.\n"
15741 " 1: also draw coordinate axes at x=0 and y=0.\n"
15742 " 2: also draw a grid at major tick positions in both\n"
15744 " 3: also draw a grid at minor tick positions in both\n"
15746 " 10: same as 0 except logarithmic x tick marks. (The x data\n"
15747 " have to be converted to logarithms separately.)\n"
15748 " 11: same as 1 except logarithmic x tick marks. (The x data\n"
15749 " have to be converted to logarithms separately.)\n"
15750 " 12: same as 2 except logarithmic x tick marks. (The x data\n"
15751 " have to be converted to logarithms separately.)\n"
15752 " 13: same as 3 except logarithmic x tick marks. (The x data\n"
15753 " have to be converted to logarithms separately.)\n"
15754 " 20: same as 0 except logarithmic y tick marks. (The y data\n"
15755 " have to be converted to logarithms separately.)\n"
15756 " 21: same as 1 except logarithmic y tick marks. (The y data\n"
15757 " have to be converted to logarithms separately.)\n"
15758 " 22: same as 2 except logarithmic y tick marks. (The y data\n"
15759 " have to be converted to logarithms separately.)\n"
15760 " 23: same as 3 except logarithmic y tick marks. (The y data\n"
15761 " have to be converted to logarithms separately.)\n"
15762 " 30: same as 0 except logarithmic x and y tick marks. (The x\n"
15763 " and y data have to be converted to logarithms separately.)\n"
15764 " 31: same as 1 except logarithmic x and y tick marks. (The x\n"
15765 " and y data have to be converted to logarithms separately.)\n"
15766 " 32: same as 2 except logarithmic x and y tick marks. (The x\n"
15767 " and y data have to be converted to logarithms separately.)\n"
15768 " 33: same as 3 except logarithmic x and y tick marks. (The x\n"
15769 " and y data have to be converted to logarithms separately.)\n"
15770 " 40: same as 0 except date / time x labels.\n"
15771 " 41: same as 1 except date / time x labels.\n"
15772 " 42: same as 2 except date / time x labels.\n"
15773 " 43: same as 3 except date / time x labels.\n"
15774 " 50: same as 0 except date / time y labels.\n"
15775 " 51: same as 1 except date / time y labels.\n"
15776 " 52: same as 2 except date / time y labels.\n"
15777 " 53: same as 3 except date / time y labels.\n"
15778 " 60: same as 0 except date / time x and y labels.\n"
15779 " 61: same as 1 except date / time x and y labels.\n"
15780 " 62: same as 2 except date / time x and y labels.\n"
15781 " 63: same as 3 except date / time x and y labels.\n"
15782 " 70: same as 0 except custom x and y labels.\n"
15783 " 71: same as 1 except custom x and y labels.\n"
15784 " 72: same as 2 except custom x and y labels.\n"
15785 " 73: same as 3 except custom x and y labels.\n"
15789 "Eject current page\n"
15793 " Clears the graphics screen of an interactive device, or ejects a page\n"
15794 " on a plotter. See plbop for more information.\n"
15796 " Redacted form: pleop()\n"
15798 " This function is used in example 2,14.\n"
15808 "Draw error bars in x direction\n"
15812 " Draws a set of n error bars in x direction, the i'th error bar\n"
15813 " extending from xmin[i] to xmax[i] at y coordinate y[i]. The terminals\n"
15814 " of the error bars are of length equal to the minor tick length\n"
15815 " (settable using plsmin).\n"
15817 " Redacted form: General: plerrx(xmin, ymax, y)\n"
15820 " This function is used in example 29.\n"
15826 "plerrx(n, xmin, xmax, y)\n"
15830 " n (PLINT, input) : Number of error bars to draw.\n"
15832 " xmin (PLFLT_VECTOR, input) : A vector containing the x coordinates\n"
15833 " of the left-hand endpoints of the error bars.\n"
15835 " xmax (PLFLT_VECTOR, input) : A vector containing the x coordinates\n"
15836 " of the right-hand endpoints of the error bars.\n"
15838 " y (PLFLT_VECTOR, input) : A vector containing the y coordinates of\n"
15839 " the error bars.\n"
15843 "Draw error bars in the y direction\n"
15847 " Draws a set of n error bars in the y direction, the i'th error bar\n"
15848 " extending from ymin[i] to ymax[i] at x coordinate x[i]. The terminals\n"
15849 " of the error bars are of length equal to the minor tick length\n"
15850 " (settable using plsmin).\n"
15852 " Redacted form: General: plerry(x, ymin, ymax)\n"
15855 " This function is used in example 29.\n"
15861 "plerry(n, x, ymin, ymax)\n"
15865 " n (PLINT, input) : Number of error bars to draw.\n"
15867 " x (PLFLT_VECTOR, input) : A vector containing the x coordinates of\n"
15868 " the error bars.\n"
15870 " ymin (PLFLT_VECTOR, input) : A vector containing the y coordinates\n"
15871 " of the lower endpoints of the error bars.\n"
15873 " ymax (PLFLT_VECTOR, input) : A vector containing the y coordinates\n"
15874 " of the upper endpoints of the error bars.\n"
15878 "Advance to the next family file on the next new page\n"
15882 " Advance to the next family file on the next new page.\n"
15884 " Redacted form: plfamadv()\n"
15886 " This function is not used in any examples.\n"
15896 "Draw filled polygon\n"
15900 " Fills the polygon defined by the n points (\n"
15902 " y[i]) using the pattern defined by plpsty or plpat. The default fill\n"
15903 " style is a solid fill. The routine will automatically close the\n"
15904 " polygon between the last and first vertices. If multiple closed\n"
15905 " polygons are passed in x and y then plfill will fill in between them.\n"
15907 " Redacted form: plfill(x,y)\n"
15909 " This function is used in examples 12, 13, 15, 16, 21, 24, and 25.\n"
15915 "plfill(n, x, y)\n"
15919 " n (PLINT, input) : Number of vertices in polygon.\n"
15921 " x (PLFLT_VECTOR, input) : A vector containing the x coordinates of\n"
15924 " y (PLFLT_VECTOR, input) : A vector containing the y coordinates of\n"
15929 "Draw filled polygon in 3D\n"
15933 " Fills the 3D polygon defined by the n points in the x, y, and z\n"
15934 " vectors using the pattern defined by plpsty or plpat. The routine\n"
15935 " will automatically close the polygon between the last and first\n"
15936 " vertices. If multiple closed polygons are passed in x, y, and z then\n"
15937 " plfill3 will fill in between them.\n"
15939 " Redacted form: General: plfill3(x, y, z)\n"
15942 " This function is used in example 15.\n"
15948 "plfill3(n, x, y, z)\n"
15952 " n (PLINT, input) : Number of vertices in polygon.\n"
15954 " x (PLFLT_VECTOR, input) : A vector containing the x coordinates of\n"
15957 " y (PLFLT_VECTOR, input) : A vector containing the y coordinates of\n"
15960 " z (PLFLT_VECTOR, input) : A vector containing the z coordinates of\n"
15965 "Draw linear gradient inside polygon\n"
15969 " Draw a linear gradient using cmap1 inside the polygon defined by the n\n"
15972 " y[i]). Interpretation of the polygon is the same as for plfill. The\n"
15973 " polygon coordinates and the gradient angle are all expressed in world\n"
15974 " coordinates. The angle from the x axis for both the rotated\n"
15975 " coordinate system and the gradient vector is specified by angle. The\n"
15976 " magnitude of the gradient vector is the difference between the maximum\n"
15977 " and minimum values of x for the vertices in the rotated coordinate\n"
15978 " system. The origin of the gradient vector can be interpreted as being\n"
15979 " anywhere on the line corresponding to the minimum x value for the\n"
15980 " vertices in the rotated coordinate system. The distance along the\n"
15981 " gradient vector is linearly transformed to the independent variable of\n"
15982 " color map 1 which ranges from 0. at the tail of the gradient vector to\n"
15983 " 1. at the head of the gradient vector. What is drawn is the RGBA\n"
15984 " color corresponding to the independent variable of cmap1. For more\n"
15985 " information about cmap1 (see the PLplot documentation).\n"
15987 " Redacted form: plgradient(x,y,angle)\n"
15989 " This function is used in examples 25 and 30.\n"
15995 "plgradient(n, x, y, angle)\n"
15999 " n (PLINT, input) : Number of vertices in polygon.\n"
16001 " x (PLFLT_VECTOR, input) : A vector containing the x coordinates of\n"
16004 " y (PLFLT_VECTOR, input) : A vector containing the y coordinates of\n"
16007 " angle (PLFLT, input) : Angle (degrees) of gradient vector from x\n"
16012 "Flushes the output stream\n"
16016 " Flushes the output stream. Use sparingly, if at all.\n"
16018 " Redacted form: plflush()\n"
16020 " This function is used in examples 1 and 14.\n"
16034 " Sets the font used for subsequent text and symbols. For devices that\n"
16035 " still use Hershey fonts this routine has no effect unless the Hershey\n"
16036 " fonts with extended character set are loaded (see plfontld). For\n"
16037 " unicode-aware devices that use system fonts instead of Hershey fonts,\n"
16038 " this routine calls the plsfci routine with argument set up\n"
16039 " appropriately for the various cases below. However, this method of\n"
16040 " specifying the font for unicode-aware devices is deprecated, and the\n"
16041 " much more flexible method of calling plsfont directly is recommended\n"
16042 " instead (where plsfont provides a user-friendly interface to plsfci),\n"
16044 " Redacted form: plfont(ifont)\n"
16046 " This function is used in examples 1, 2, 4, 7, 13, 24, and 26.\n"
16056 " ifont (PLINT, input) : Specifies the font: 1: Sans serif font\n"
16057 " (simplest and fastest)\n"
16059 " 3: Italic font\n"
16060 " 4: Script font\n"
16064 "Load Hershey fonts\n"
16068 " Loads the Hershey fonts used for text and symbols. This routine may\n"
16069 " be called before or after initializing PLplot. If not explicitly\n"
16070 " called before PLplot initialization, then by default that\n"
16071 " initialization loads Hershey fonts with the extended character set.\n"
16072 " This routine only has a practical effect for devices that still use\n"
16073 " Hershey fonts (as opposed to modern devices that use unicode-aware\n"
16074 " system fonts instead of Hershey fonts).\n"
16076 " Redacted form: plfontld(fnt)\n"
16078 " This function is used in examples 1 and 7.\n"
16088 " fnt (PLINT, input) : Specifies the type of Hershey fonts to load.\n"
16089 " A zero value specifies Hershey fonts with the standard character\n"
16090 " set and a non-zero value (the default assumed if plfontld is never\n"
16091 " called) specifies Hershey fonts with the extended character set.\n"
16095 "Get character default height and current (scaled) height\n"
16099 " Get character default height and current (scaled) height.\n"
16101 " Redacted form: plgchr(p_def, p_ht)\n"
16103 " This function is used in example 23.\n"
16109 "plgchr(p_def, p_ht)\n"
16113 " p_def (PLFLT_NC_SCALAR, output) : Returned value of the default\n"
16114 " character height (mm).\n"
16116 " p_ht (PLFLT_NC_SCALAR, output) : Returned value of the scaled\n"
16117 " character height (mm).\n"
16121 "Returns 8-bit RGB values for given color index from cmap0\n"
16125 " Returns 8-bit RGB values (0-255) for given color from cmap0 (see the\n"
16126 " PLplot documentation). Values are negative if an invalid color id is\n"
16129 " Redacted form: plgcol0(icol0, r, g, b)\n"
16131 " This function is used in example 2.\n"
16137 "plgcol0(icol0, r, g, b)\n"
16141 " icol0 (PLINT, input) : Index of desired cmap0 color.\n"
16143 " r (PLINT_NC_SCALAR, output) : Returned value of the 8-bit red\n"
16146 " g (PLINT_NC_SCALAR, output) : Returned value of the 8-bit green\n"
16149 " b (PLINT_NC_SCALAR, output) : Returned value of the 8-bit blue\n"
16154 "Returns 8-bit RGB values and PLFLT alpha transparency value for given color index from cmap0\n"
16158 " Returns 8-bit RGB values (0-255) and PLFLT alpha transparency value\n"
16159 " (0.0-1.0) for given color from cmap0 (see the PLplot documentation).\n"
16160 " Values are negative if an invalid color id is given.\n"
16162 " Redacted form: plgcola(r, g, b)\n"
16164 " This function is used in example 30.\n"
16170 "plgcol0a(icol0, r, g, b, alpha)\n"
16174 " icol0 (PLINT, input) : Index of desired cmap0 color.\n"
16176 " r (PLINT_NC_SCALAR, output) : Returned value of the red intensity\n"
16177 " in the range from 0 to 255.\n"
16179 " g (PLINT_NC_SCALAR, output) : Returned value of the green intensity\n"
16180 " in the range from 0 to 255.\n"
16182 " b (PLINT_NC_SCALAR, output) : Returned value of the blue intensity\n"
16183 " in the range from 0 to 255.\n"
16185 " alpha (PLFLT_NC_SCALAR, output) : Returned value of the alpha\n"
16186 " transparency in the range from (0.0-1.0).\n"
16190 "Returns the background color (cmap0[0]) by 8-bit RGB value\n"
16194 " Returns the background color (cmap0[0]) by 8-bit RGB value.\n"
16196 " Redacted form: plgcolbg(r, g, b)\n"
16198 " This function is used in example 31.\n"
16204 "plgcolbg(r, g, b)\n"
16208 " r (PLINT_NC_SCALAR, output) : Returned value of the red intensity\n"
16209 " in the range from 0 to 255.\n"
16211 " g (PLINT_NC_SCALAR, output) : Returned value of the green intensity\n"
16212 " in the range from 0 to 255.\n"
16214 " b (PLINT_NC_SCALAR, output) : Returned value of the blue intensity\n"
16215 " in the range from 0 to 255.\n"
16219 "Returns the background color (cmap0[0]) by 8-bit RGB value and PLFLT alpha transparency value\n"
16223 " Returns the background color (cmap0[0]) by 8-bit RGB value and PLFLT\n"
16224 " alpha transparency value.\n"
16226 " This function is used in example 31.\n"
16232 "plgcolbga(r, g, b, alpha)\n"
16236 " r (PLINT_NC_SCALAR, output) : Returned value of the red intensity\n"
16237 " in the range from 0 to 255.\n"
16239 " g (PLINT_NC_SCALAR, output) : Returned value of the green intensity\n"
16240 " in the range from 0 to 255.\n"
16242 " b (PLINT_NC_SCALAR, output) : Returned value of the blue intensity\n"
16243 " in the range from 0 to 255.\n"
16245 " alpha (PLFLT_NC_SCALAR, output) : Returned value of the alpha\n"
16246 " transparency in the range (0.0-1.0).\n"
16250 "Get the current device-compression setting\n"
16254 " Get the current device-compression setting. This parameter is only\n"
16255 " used for drivers that provide compression.\n"
16257 " Redacted form: plgcompression(compression)\n"
16259 " This function is used in example 31.\n"
16265 "plgcompression(compression)\n"
16269 " compression (PLINT_NC_SCALAR, output) : Returned value of the\n"
16270 " compression setting for the current device.\n"
16274 "Get the current device (keyword) name\n"
16278 " Get the current device (keyword) name. Note: you must have allocated\n"
16279 " space for this (80 characters is safe).\n"
16281 " Redacted form: plgdev(p_dev)\n"
16283 " This function is used in example 14.\n"
16293 " p_dev (PLCHAR_NC_VECTOR, output) : Returned ascii character string\n"
16294 " (with preallocated length of 80 characters or more) containing the\n"
16295 " device (keyword) name.\n"
16299 "Get parameters that define current device-space window\n"
16303 " Get relative margin width, aspect ratio, and relative justification\n"
16304 " that define current device-space window. If plsdidev has not been\n"
16305 " called the default values pointed to by p_mar, p_aspect, p_jx, and\n"
16306 " p_jy will all be 0.\n"
16308 " Redacted form: plgdidev(p_mar, p_aspect, p_jx, p_jy)\n"
16310 " This function is used in example 31.\n"
16316 "plgdidev(p_mar, p_aspect, p_jx, p_jy)\n"
16320 " p_mar (PLFLT_NC_SCALAR, output) : Returned value of the relative\n"
16323 " p_aspect (PLFLT_NC_SCALAR, output) : Returned value of the aspect\n"
16326 " p_jx (PLFLT_NC_SCALAR, output) : Returned value of the relative\n"
16327 " justification in x.\n"
16329 " p_jy (PLFLT_NC_SCALAR, output) : Returned value of the relative\n"
16330 " justification in y.\n"
16334 "Get plot orientation\n"
16338 " Get plot orientation parameter which is multiplied by 90 degrees to\n"
16339 " obtain the angle of rotation. Note, arbitrary rotation parameters\n"
16340 " such as 0.2 (corresponding to 18 degrees) are possible, but the usual\n"
16341 " values for the rotation parameter are 0., 1., 2., and 3. corresponding\n"
16342 " to 0 degrees (landscape mode), 90 degrees (portrait mode), 180 degrees\n"
16343 " (seascape mode), and 270 degrees (upside-down mode). If plsdiori has\n"
16344 " not been called the default value pointed to by p_rot will be 0.\n"
16346 " Redacted form: plgdiori(p_rot)\n"
16348 " This function is not used in any examples.\n"
16354 "plgdiori(p_rot)\n"
16358 " p_rot (PLFLT_NC_SCALAR, output) : Returned value of the orientation\n"
16363 "Get parameters that define current plot-space window\n"
16367 " Get relative minima and maxima that define current plot-space window.\n"
16368 " If plsdiplt has not been called the default values pointed to by\n"
16369 " p_xmin, p_ymin, p_xmax, and p_ymax will be 0., 0., 1., and 1.\n"
16371 " Redacted form: plgdiplt(p_xmin, p_ymin, p_xmax, p_ymax)\n"
16373 " This function is used in example 31.\n"
16379 "plgdiplt(p_xmin, p_ymin, p_xmax, p_ymax)\n"
16383 " p_xmin (PLFLT_NC_SCALAR, output) : Returned value of the relative\n"
16386 " p_ymin (PLFLT_NC_SCALAR, output) : Returned value of the relative\n"
16389 " p_xmax (PLFLT_NC_SCALAR, output) : Returned value of the relative\n"
16392 " p_ymax (PLFLT_NC_SCALAR, output) : Returned value of the relative\n"
16397 "Get family file parameters\n"
16401 " Gets information about current family file, if familying is enabled.\n"
16402 " See the PLplot documentation for more information.\n"
16404 " Redacted form: plgfam(p_fam, p_num, p_bmax)\n"
16406 " This function is used in examples 14 and 31.\n"
16412 "plgfam(p_fam, p_num, p_bmax)\n"
16416 " p_fam (PLINT_NC_SCALAR, output) : Returned value of the current\n"
16417 " family flag value. If nonzero, familying is enabled for the\n"
16418 " current device.\n"
16420 " p_num (PLINT_NC_SCALAR, output) : Returned value of the current\n"
16421 " family file number.\n"
16423 " p_bmax (PLINT_NC_SCALAR, output) : Returned value of the maximum\n"
16424 " file size (in bytes) for a family file.\n"
16428 "Get FCI (font characterization integer)\n"
16432 " Gets information about the current font using the FCI approach. See\n"
16433 " the PLplot documentation for more information.\n"
16435 " Redacted form: plgfci(p_fci)\n"
16437 " This function is used in example 23.\n"
16447 " p_fci (PLUNICODE_NC_SCALAR, output) : Returned value of the current\n"
16452 "Get output file name\n"
16456 " Gets the current output file name, if applicable.\n"
16458 " Redacted form: plgfnam(fnam)\n"
16460 " This function is used in example 31.\n"
16470 " fnam (PLCHAR_NC_VECTOR, output) : Returned ascii character string\n"
16471 " (with preallocated length of 80 characters or more) containing the\n"
16476 "Get family, style and weight of the current font\n"
16480 " Gets information about current font. See the PLplot documentation for\n"
16481 " more information on font selection.\n"
16483 " Redacted form: plgfont(p_family, p_style, p_weight)\n"
16485 " This function is used in example 23.\n"
16491 "plgfont(p_family, p_style, p_weight)\n"
16495 " p_family (PLINT_NC_SCALAR, output) : Returned value of the current\n"
16496 " font family. The available values are given by the PL_FCI_*\n"
16497 " constants in plplot.h. Current options are PL_FCI_SANS,\n"
16498 " PL_FCI_SERIF, PL_FCI_MONO, PL_FCI_SCRIPT and PL_FCI_SYMBOL. If\n"
16499 " p_family is NULL then the font family is not returned.\n"
16501 " p_style (PLINT_NC_SCALAR, output) : Returned value of the current\n"
16502 " font style. The available values are given by the PL_FCI_*\n"
16503 " constants in plplot.h. Current options are PL_FCI_UPRIGHT,\n"
16504 " PL_FCI_ITALIC and PL_FCI_OBLIQUE. If p_style is NULL then the font\n"
16505 " style is not returned.\n"
16507 " p_weight (PLINT_NC_SCALAR, output) : Returned value of the current\n"
16508 " font weight. The available values are given by the PL_FCI_*\n"
16509 " constants in plplot.h. Current options are PL_FCI_MEDIUM and\n"
16510 " PL_FCI_BOLD. If p_weight is NULL then the font weight is not\n"
16515 "Get the (current) run level\n"
16519 " Get the (current) run level. Valid settings are: 0, uninitialized\n"
16520 " 1, initialized\n"
16521 " 2, viewport defined\n"
16522 " 3, world coordinates defined\n"
16525 " Redacted form: plglevel(p_level)\n"
16527 " This function is used in example 31.\n"
16533 "plglevel(p_level)\n"
16537 " p_level (PLINT_NC_SCALAR, output) : Returned value of the run\n"
16542 "Get page parameters\n"
16546 " Gets the current page configuration. The length and offset values are\n"
16547 " expressed in units that are specific to the current driver. For\n"
16548 " instance: screen drivers will usually interpret them as number of\n"
16549 " pixels, whereas printer drivers will usually use mm.\n"
16551 " Redacted form: plgpage(p_xp, p_yp, p_xleng, p_yleng, p_xoff, p_yoff)\n"
16553 " This function is used in examples 14 and 31.\n"
16559 "plgpage(p_xp, p_yp, p_xleng, p_yleng, p_xoff, p_yoff)\n"
16563 " p_xp (PLFLT_NC_SCALAR, output) : Returned value of the number of\n"
16564 " pixels/inch (DPI) in x.\n"
16566 " p_yp (PLFLT_NC_SCALAR, output) : Returned value of the number of\n"
16567 " pixels/inch (DPI) in y.\n"
16569 " p_xleng (PLINT_NC_SCALAR, output) : Returned value of the x page\n"
16572 " p_yleng (PLINT_NC_SCALAR, output) : Returned value of the y page\n"
16575 " p_xoff (PLINT_NC_SCALAR, output) : Returned value of the x page\n"
16578 " p_yoff (PLINT_NC_SCALAR, output) : Returned value of the y page\n"
16583 "Switch to graphics screen\n"
16587 " Sets an interactive device to graphics mode, used in conjunction with\n"
16588 " pltext to allow graphics and text to be interspersed. On a device\n"
16589 " which supports separate text and graphics windows, this command causes\n"
16590 " control to be switched to the graphics window. If already in graphics\n"
16591 " mode, this command is ignored. It is also ignored on devices which\n"
16592 " only support a single window or use a different method for shifting\n"
16593 " focus. See also pltext.\n"
16595 " Redacted form: plgra()\n"
16597 " This function is used in example 1.\n"
16607 "Grid data from irregularly sampled data\n"
16611 " Real world data is frequently irregularly sampled, but PLplot 3D plots\n"
16612 " require data organized as a grid, i.e., with x sample point values\n"
16613 " independent of y coordinate and vice versa. This function takes\n"
16614 " irregularly sampled data from the x[npts], y[npts], and z[npts]\n"
16615 " vectors; reads the desired grid location from the input vectors\n"
16616 " xg[nptsx] and yg[nptsy]; and returns the interpolated result on that\n"
16617 " grid using the output matrix zg[nptsx][nptsy]. The algorithm used to\n"
16618 " interpolate the data to the grid is specified with the argument type\n"
16619 " which can have one parameter specified in argument data.\n"
16621 " Redacted form: General: plgriddata(x, y, z, xg, yg, zg, type, data)\n"
16622 " Python: zg=plgriddata(x, y, z, xg, yg, type, data)\n"
16625 " This function is used in example 21.\n"
16631 "plgriddata(x, y, z, npts, xg, nptsx, yg, nptsy, zg, type, data)\n"
16635 " x (PLFLT_VECTOR, input) : The input x vector.\n"
16637 " y (PLFLT_VECTOR, input) : The input y vector.\n"
16639 " z (PLFLT_VECTOR, input) : The input z vector. Each triple x[i],\n"
16640 " y[i], z[i] represents one data sample coordinate.\n"
16642 " npts (PLINT, input) : The number of data samples in the x, y and z\n"
16645 " xg (PLFLT_VECTOR, input) : A vector that specifies the grid spacing\n"
16646 " in the x direction. Usually xg has nptsx equally spaced values\n"
16647 " from the minimum to the maximum values of the x input vector.\n"
16649 " nptsx (PLINT, input) : The number of points in the xg vector.\n"
16651 " yg (PLFLT_VECTOR, input) : A vector that specifies the grid spacing\n"
16652 " in the y direction. Similar to the xg parameter.\n"
16654 " nptsy (PLINT, input) : The number of points in the yg vector.\n"
16656 " zg (PLFLT_NC_MATRIX, output) : The matrix of interpolated results\n"
16657 " where data lies in the grid specified by xg and yg. Therefore the\n"
16658 " zg matrix must be dimensioned\n"
16662 " type (PLINT, input) : The type of grid interpolation algorithm to\n"
16663 " use, which can be: GRID_CSA: Bivariate Cubic Spline approximation\n"
16664 " GRID_DTLI: Delaunay Triangulation Linear Interpolation\n"
16665 " GRID_NNI: Natural Neighbors Interpolation\n"
16666 " GRID_NNIDW: Nearest Neighbors Inverse Distance Weighted\n"
16667 " GRID_NNLI: Nearest Neighbors Linear Interpolation\n"
16668 " GRID_NNAIDW: Nearest Neighbors Around Inverse Distance\n"
16670 " For details of the algorithms read the source file plgridd.c.\n"
16672 " data (PLFLT, input) : Some gridding algorithms require extra data,\n"
16673 " which can be specified through this argument. Currently, for\n"
16674 " algorithm: GRID_NNIDW, data specifies the number of neighbors to\n"
16675 " use, the lower the value, the noisier (more local) the\n"
16676 " approximation is.\n"
16677 " GRID_NNLI, data specifies what a thin triangle is, in the\n"
16678 " range [1. .. 2.]. High values enable the usage of very thin\n"
16679 " triangles for interpolation, possibly resulting in error in\n"
16680 " the approximation.\n"
16681 " GRID_NNI, only weights greater than data will be accepted. If\n"
16682 " 0, all weights will be accepted.\n"
16686 "Get current subpage parameters\n"
16690 " Gets the size of the current subpage in millimeters measured from the\n"
16691 " bottom left hand corner of the output device page or screen. Can be\n"
16692 " used in conjunction with plsvpa for setting the size of a viewport in\n"
16693 " absolute coordinates (millimeters).\n"
16695 " Redacted form: plgspa(xmin, xmax, ymin, ymax)\n"
16697 " This function is used in example 23.\n"
16703 "plgspa(xmin, xmax, ymin, ymax)\n"
16707 " xmin (PLFLT_NC_SCALAR, output) : Returned value of the position of\n"
16708 " the left hand edge of the subpage in millimeters.\n"
16710 " xmax (PLFLT_NC_SCALAR, output) : Returned value of the position of\n"
16711 " the right hand edge of the subpage in millimeters.\n"
16713 " ymin (PLFLT_NC_SCALAR, output) : Returned value of the position of\n"
16714 " the bottom edge of the subpage in millimeters.\n"
16716 " ymax (PLFLT_NC_SCALAR, output) : Returned value of the position of\n"
16717 " the top edge of the subpage in millimeters.\n"
16721 "Get current stream number\n"
16725 " Gets the number of the current output stream. See also plsstrm.\n"
16727 " Redacted form: plgstrm(p_strm)\n"
16729 " This function is used in example 1,20.\n"
16735 "plgstrm(p_strm)\n"
16739 " p_strm (PLINT_NC_SCALAR, output) : Returned value of the current\n"
16744 "Get the current library version number\n"
16748 " Get the current library version number. Note: you must have allocated\n"
16749 " space for this (80 characters is safe).\n"
16751 " Redacted form: plgver(p_ver)\n"
16753 " This function is used in example 1.\n"
16763 " p_ver (PLCHAR_NC_VECTOR, output) : Returned ascii character string\n"
16764 " (with preallocated length of 80 characters or more) containing the\n"
16765 " PLplot version number.\n"
16769 "Get viewport limits in normalized device coordinates\n"
16773 " Get viewport limits in normalized device coordinates.\n"
16775 " Redacted form: General: plgvpd(p_xmin, p_xmax, p_ymin, p_ymax)\n"
16778 " This function is used in example 31.\n"
16784 "plgvpd(p_xmin, p_xmax, p_ymin, p_ymax)\n"
16788 " p_xmin (PLFLT_NC_SCALAR, output) : Returned value of the lower\n"
16789 " viewport limit of the normalized device coordinate in x.\n"
16791 " p_xmax (PLFLT_NC_SCALAR, output) : Returned value of the upper\n"
16792 " viewport limit of the normalized device coordinate in x.\n"
16794 " p_ymin (PLFLT_NC_SCALAR, output) : Returned value of the lower\n"
16795 " viewport limit of the normalized device coordinate in y.\n"
16797 " p_ymax (PLFLT_NC_SCALAR, output) : Returned value of the upper\n"
16798 " viewport limit of the normalized device coordinate in y.\n"
16802 "Get viewport limits in world coordinates\n"
16806 " Get viewport limits in world coordinates.\n"
16808 " Redacted form: General: plgvpw(p_xmin, p_xmax, p_ymin, p_ymax)\n"
16811 " This function is used in example 31.\n"
16817 "plgvpw(p_xmin, p_xmax, p_ymin, p_ymax)\n"
16821 " p_xmin (PLFLT_NC_SCALAR, output) : Returned value of the lower\n"
16822 " viewport limit of the world coordinate in x.\n"
16824 " p_xmax (PLFLT_NC_SCALAR, output) : Returned value of the upper\n"
16825 " viewport limit of the world coordinate in x.\n"
16827 " p_ymin (PLFLT_NC_SCALAR, output) : Returned value of the lower\n"
16828 " viewport limit of the world coordinate in y.\n"
16830 " p_ymax (PLFLT_NC_SCALAR, output) : Returned value of the upper\n"
16831 " viewport limit of the world coordinate in y.\n"
16835 "Get x axis parameters\n"
16839 " Returns current values of the p_digmax and p_digits flags for the x\n"
16840 " axis. p_digits is updated after the plot is drawn, so this routine\n"
16841 " should only be called after the call to plbox (or plbox3) is complete.\n"
16842 " See the PLplot documentation for more information.\n"
16844 " Redacted form: plgxax(p_digmax, p_digits)\n"
16846 " This function is used in example 31.\n"
16852 "plgxax(p_digmax, p_digits)\n"
16856 " p_digmax (PLINT_NC_SCALAR, output) : Returned value of the maximum\n"
16857 " number of digits for the x axis. If nonzero, the printed label\n"
16858 " has been switched to a floating-point representation when the\n"
16859 " number of digits exceeds this value.\n"
16861 " p_digits (PLINT_NC_SCALAR, output) : Returned value of the actual\n"
16862 " number of digits for the numeric labels (x axis) from the last\n"
16867 "Get y axis parameters\n"
16871 " Identical to plgxax, except that arguments are flags for y axis. See\n"
16872 " the description of plgxax for more detail.\n"
16874 " Redacted form: plgyax(p_digmax, p_digits)\n"
16876 " This function is used in example 31.\n"
16882 "plgyax(p_digmax, p_digits)\n"
16886 " p_digmax (PLINT_NC_SCALAR, output) : Returned value of the maximum\n"
16887 " number of digits for the y axis. If nonzero, the printed label\n"
16888 " has been switched to a floating-point representation when the\n"
16889 " number of digits exceeds this value.\n"
16891 " p_digits (PLINT_NC_SCALAR, output) : Returned value of the actual\n"
16892 " number of digits for the numeric labels (y axis) from the last\n"
16897 "Get z axis parameters\n"
16901 " Identical to plgxax, except that arguments are flags for z axis. See\n"
16902 " the description of plgxax for more detail.\n"
16904 " Redacted form: plgzax(p_digmax, p_digits)\n"
16906 " This function is used in example 31.\n"
16912 "plgzax(p_digmax, p_digits)\n"
16916 " p_digmax (PLINT_NC_SCALAR, output) : Returned value of the maximum\n"
16917 " number of digits for the z axis. If nonzero, the printed label\n"
16918 " has been switched to a floating-point representation when the\n"
16919 " number of digits exceeds this value.\n"
16921 " p_digits (PLINT_NC_SCALAR, output) : Returned value of the actual\n"
16922 " number of digits for the numeric labels (z axis) from the last\n"
16927 "Plot a histogram from unbinned data\n"
16931 " Plots a histogram from n data points stored in the data vector. This\n"
16932 " routine bins the data into nbin bins equally spaced between datmin and\n"
16933 " datmax, and calls plbin to draw the resulting histogram. Parameter\n"
16934 " opt allows, among other things, the histogram either to be plotted in\n"
16935 " an existing window or causes plhist to call plenv with suitable limits\n"
16936 " before plotting the histogram.\n"
16938 " Redacted form: plhist(data, datmin, datmax, nbin, opt)\n"
16940 " This function is used in example 5.\n"
16946 "plhist(n, data, datmin, datmax, nbin, opt)\n"
16950 " n (PLINT, input) : Number of data points.\n"
16952 " data (PLFLT_VECTOR, input) : A vector containing the values of the\n"
16953 " n data points.\n"
16955 " datmin (PLFLT, input) : Left-hand edge of lowest-valued bin.\n"
16957 " datmax (PLFLT, input) : Right-hand edge of highest-valued bin.\n"
16959 " nbin (PLINT, input) : Number of (equal-sized) bins into which to\n"
16960 " divide the interval xmin to xmax.\n"
16962 " opt (PLINT, input) : Is a combination of several flags:\n"
16963 " opt=PL_HIST_DEFAULT: The axes are automatically rescaled to fit\n"
16964 " the histogram data, the outer bins are expanded to fill up the\n"
16965 " entire x-axis, data outside the given extremes are assigned to the\n"
16966 " outer bins and bins of zero height are simply drawn.\n"
16967 " opt=PL_HIST_NOSCALING|...: The existing axes are not rescaled\n"
16968 " to fit the histogram data, without this flag, plenv is called\n"
16969 " to set the world coordinates.\n"
16970 " opt=PL_HIST_IGNORE_OUTLIERS|...: Data outside the given\n"
16971 " extremes are not taken into account. This option should\n"
16972 " probably be combined with opt=PL_HIST_NOEXPAND|..., so as to\n"
16973 " properly present the data.\n"
16974 " opt=PL_HIST_NOEXPAND|...: The outer bins are drawn with equal\n"
16975 " size as the ones inside.\n"
16976 " opt=PL_HIST_NOEMPTY|...: Bins with zero height are not drawn\n"
16977 " (there is a gap for such bins).\n"
16981 "Convert HLS color to RGB\n"
16985 " Convert HLS color coordinates to RGB.\n"
16987 " Redacted form: General: plhlsrgb(h, l, s, p_r, p_g, p_b)\n"
16990 " This function is used in example 2.\n"
16996 "plhlsrgb(h, l, s, p_r, p_g, p_b)\n"
17000 " h (PLFLT, input) : Hue in degrees (0.0-360.0) on the color\n"
17003 " l (PLFLT, input) : Lightness expressed as a fraction (0.0-1.0) of\n"
17004 " the axis of the color cylinder.\n"
17006 " s (PLFLT, input) : Saturation expressed as a fraction (0.0-1.0) of\n"
17007 " the radius of the color cylinder.\n"
17009 " p_r (PLFLT_NC_SCALAR, output) : Returned value of the red intensity\n"
17010 " (0.0-1.0) of the color.\n"
17012 " p_g (PLFLT_NC_SCALAR, output) : Returned value of the green\n"
17013 " intensity (0.0-1.0) of the color.\n"
17015 " p_b (PLFLT_NC_SCALAR, output) : Returned value of the blue\n"
17016 " intensity (0.0-1.0) of the color.\n"
17020 "Initialize PLplot\n"
17024 " Initializing the plotting package. The program prompts for the device\n"
17025 " keyword or number of the desired output device. Hitting a RETURN in\n"
17026 " response to the prompt is the same as selecting the first device.\n"
17027 " plinit will issue no prompt if either the device was specified\n"
17028 " previously (via command line flag, the plsetopt function, or the\n"
17029 " plsdev function), or if only one device is enabled when PLplot is\n"
17030 " installed. If subpages have been specified, the output device is\n"
17031 " divided into nx by ny subpages, each of which may be used\n"
17032 " independently. If plinit is called again during a program, the\n"
17033 " previously opened file will be closed. The subroutine pladv is used\n"
17034 " to advance from one subpage to the next.\n"
17036 " Redacted form: plinit()\n"
17038 " This function is used in all of the examples.\n"
17048 "Draw a line between two points\n"
17052 " Joins the point (\n"
17058 " Redacted form: pljoin(x1,y1,x2,y2)\n"
17060 " This function is used in examples 3 and 14.\n"
17066 "pljoin(x1, y1, x2, y2)\n"
17070 " x1 (PLFLT, input) : x coordinate of first point.\n"
17072 " y1 (PLFLT, input) : y coordinate of first point.\n"
17074 " x2 (PLFLT, input) : x coordinate of second point.\n"
17076 " y2 (PLFLT, input) : y coordinate of second point.\n"
17080 "Simple routine to write labels\n"
17084 " Routine for writing simple labels. Use plmtex for more complex labels.\n"
17086 " Redacted form: pllab(xlabel, ylabel, tlabel)\n"
17088 " This function is used in examples 1, 5, 9, 12, 14-16, 20-22, and 29.\n"
17094 "pllab(xlabel, ylabel, tlabel)\n"
17098 " xlabel (PLCHAR_VECTOR, input) : A UTF-8 character string specifying\n"
17099 " the label for the x axis.\n"
17101 " ylabel (PLCHAR_VECTOR, input) : A UTF-8 character string specifying\n"
17102 " the label for the y axis.\n"
17104 " tlabel (PLCHAR_VECTOR, input) : A UTF-8 character string specifying\n"
17105 " the title of the plot.\n"
17109 "Plot legend using discretely annotated filled boxes, lines, and/or lines of symbols\n"
17113 " Routine for creating a discrete plot legend with a plotted filled box,\n"
17114 " line, and/or line of symbols for each annotated legend entry. (See\n"
17115 " plcolorbar for similar functionality for creating continuous color\n"
17116 " bars.) The arguments of pllegend provide control over the location\n"
17117 " and size of the legend as well as the location and characteristics of\n"
17118 " the elements (most of which are optional) within that legend. The\n"
17119 " resulting legend is clipped at the boundaries of the current subpage.\n"
17120 " (N.B. the adopted coordinate system used for some of the parameters is\n"
17121 " defined in the documentation of the position parameter.)\n"
17123 " Redacted form: pllegend(p_legend_width, p_legend_height, opt,\n"
17124 " position, x, y, plot_width, bg_color, bb_color, bb_style, nrow,\n"
17125 " ncolumn, opt_array, text_offset, text_scale, text_spacing,\n"
17126 " test_justification, text_colors, text, box_colors, box_patterns,\n"
17127 " box_scales, box_line_widths, line_colors, line_styles, line_widths,\n"
17128 " symbol_colors, symbol_scales, symbol_numbers, symbols)\n"
17130 " This function is used in examples 4, 26, and 33.\n"
17136 "pllegend(p_legend_width, p_legend_height, opt, position, x, y, plot_width, bg_color, bb_color, bb_style, nrow, ncolumn, nlegend, opt_array, text_offset, text_scale, text_spacing, test_justification, text_colors, text, box_colors, box_patterns, box_scales, box_line_widths, line_colors, line_styles, line_widths, symbol_colors, symbol_scales, symbol_numbers, symbols)\n"
17140 " p_legend_width (PLFLT_NC_SCALAR, output) : Returned value of the\n"
17141 " legend width in adopted coordinates. This quantity is calculated\n"
17142 " from plot_width, text_offset, ncolumn (possibly modified inside\n"
17143 " the routine depending on nlegend and nrow), and the length\n"
17144 " (calculated internally) of the longest text string.\n"
17146 " p_legend_height (PLFLT_NC_SCALAR, output) : Returned value of the\n"
17147 " legend height in adopted coordinates. This quantity is calculated\n"
17148 " from text_scale, text_spacing, and nrow (possibly modified inside\n"
17149 " the routine depending on nlegend and nrow).\n"
17151 " opt (PLINT, input) : opt contains bits controlling the overall\n"
17152 " legend. If the PL_LEGEND_TEXT_LEFT bit is set, put the text area\n"
17153 " on the left of the legend and the plotted area on the right.\n"
17154 " Otherwise, put the text area on the right of the legend and the\n"
17155 " plotted area on the left. If the PL_LEGEND_BACKGROUND bit is set,\n"
17156 " plot a (semitransparent) background for the legend. If the\n"
17157 " PL_LEGEND_BOUNDING_BOX bit is set, plot a bounding box for the\n"
17158 " legend. If the PL_LEGEND_ROW_MAJOR bit is set and (both of the\n"
17159 " possibly internally transformed) nrow > 1 and ncolumn > 1, then\n"
17160 " plot the resulting array of legend entries in row-major order.\n"
17161 " Otherwise, plot the legend entries in column-major order.\n"
17163 " position (PLINT, input) : position contains bits which control the\n"
17164 " overall position of the legend and the definition of the adopted\n"
17165 " coordinates used for positions just like what is done for the\n"
17166 " position argument for plcolorbar. However, note that the defaults\n"
17167 " for the position bits (see below) are different than the\n"
17168 " plcolorbar case. The combination of the PL_POSITION_LEFT,\n"
17169 " PL_POSITION_RIGHT, PL_POSITION_TOP, PL_POSITION_BOTTOM,\n"
17170 " PL_POSITION_INSIDE, and PL_POSITION_OUTSIDE bits specifies one of\n"
17171 " the 16 possible standard positions (the 4 corners and centers of\n"
17172 " the 4 sides for both the inside and outside cases) of the legend\n"
17173 " relative to the adopted coordinate system. The corner positions\n"
17174 " are specified by the appropriate combination of two of the\n"
17175 " PL_POSITION_LEFT, PL_POSITION_RIGHT, PL_POSITION_TOP, and\n"
17176 " PL_POSITION_BOTTOM bits while the sides are specified by a single\n"
17177 " value of one of those bits. The adopted coordinates are\n"
17178 " normalized viewport coordinates if the PL_POSITION_VIEWPORT bit is\n"
17179 " set or normalized subpage coordinates if the PL_POSITION_SUBPAGE\n"
17180 " bit is set. Default position bits: If none of PL_POSITION_LEFT,\n"
17181 " PL_POSITION_RIGHT, PL_POSITION_TOP, or PL_POSITION_BOTTOM are set,\n"
17182 " then use the combination of PL_POSITION_RIGHT and PL_POSITION_TOP.\n"
17183 " If neither of PL_POSITION_INSIDE or PL_POSITION_OUTSIDE is set,\n"
17184 " use PL_POSITION_INSIDE. If neither of PL_POSITION_VIEWPORT or\n"
17185 " PL_POSITION_SUBPAGE is set, use PL_POSITION_VIEWPORT.\n"
17187 " x (PLFLT, input) : X offset of the legend position in adopted\n"
17188 " coordinates from the specified standard position of the legend.\n"
17189 " For positive x, the direction of motion away from the standard\n"
17190 " position is inward/outward from the standard corner positions or\n"
17191 " standard left or right positions if the\n"
17192 " PL_POSITION_INSIDE/PL_POSITION_OUTSIDE bit is set in position.\n"
17193 " For the standard top or bottom positions, the direction of motion\n"
17194 " is toward positive X.\n"
17196 " y (PLFLT, input) : Y offset of the legend position in adopted\n"
17197 " coordinates from the specified standard position of the legend.\n"
17198 " For positive y, the direction of motion away from the standard\n"
17199 " position is inward/outward from the standard corner positions or\n"
17200 " standard top or bottom positions if the\n"
17201 " PL_POSITION_INSIDE/PL_POSITION_OUTSIDE bit is set in position. For\n"
17202 " the standard left or right positions, the direction of motion is\n"
17203 " toward positive Y.\n"
17205 " plot_width (PLFLT, input) : Horizontal width in adopted coordinates\n"
17206 " of the plot area (where the colored boxes, lines, and/or lines of\n"
17207 " symbols are drawn) of the legend.\n"
17209 " bg_color (PLINT, input) : The cmap0 color of the background for the\n"
17210 " legend (PL_LEGEND_BACKGROUND).\n"
17212 " bb_color (PLINT, input) : The cmap0 color of the bounding-box line\n"
17213 " for the legend (PL_LEGEND_BOUNDING_BOX).\n"
17215 " bb_style (PLINT, input) : The pllsty style number for the\n"
17216 " bounding-box line for the legend (PL_LEGEND_BACKGROUND).\n"
17218 " nrow (PLINT, input) : The number of rows in the matrix used to\n"
17220 " nlegend legend entries. For internal transformations of\n"
17221 " nrow, see further remarks under\n"
17224 " ncolumn (PLINT, input) : The number of columns in the matrix used\n"
17226 " nlegend legend entries. For internal transformations of\n"
17227 " ncolumn, see further remarks under\n"
17230 " nlegend (PLINT, input) : Number of legend entries. The above\n"
17232 " ncolumn values are transformed internally to be consistent with\n"
17233 " nlegend. If either\n"
17235 " ncolumn is non-positive it is replaced by 1. If the resulting product\n"
17238 " ncolumn is less than\n"
17239 " nlegend, the smaller of the two (or\n"
17242 " ncolumn) is increased so the product is >=\n"
17243 " nlegend. Thus, for example, the common\n"
17245 " ncolumn = 0 case is transformed internally to\n"
17248 " ncolumn = 1; i.e., the usual case of a legend rendered as a single\n"
17251 " opt_array (PLINT_VECTOR, input) : A vector of\n"
17252 " nlegend values of options to control each individual plotted area\n"
17253 " corresponding to a legend entry. If the\n"
17254 " PL_LEGEND_NONE bit is set, then nothing is plotted in the plotted\n"
17256 " PL_LEGEND_COLOR_BOX,\n"
17257 " PL_LEGEND_LINE, and/or\n"
17258 " PL_LEGEND_SYMBOL bits are set, the area corresponding to a legend\n"
17259 " entry is plotted with a colored box; a line; and/or a line of\n"
17262 " text_offset (PLFLT, input) : Offset of the text area from the plot\n"
17263 " area in units of character width.\n"
17265 " text_scale (PLFLT, input) : Character height scale for text\n"
17268 " text_spacing (PLFLT, input) : Vertical spacing in units of the\n"
17269 " character height from one legend entry to the next.\n"
17271 " text_justification (PLFLT, input) : Justification parameter used\n"
17272 " for text justification. The most common values of\n"
17273 " text_justification are 0., 0.5, or 1. corresponding to a text that\n"
17274 " is left justified, centred, or right justified within the text\n"
17275 " area, but other values are allowed as well.\n"
17277 " text_colors (PLINT_VECTOR, input) : A vector containing\n"
17278 " nlegend cmap0 text colors.\n"
17280 " text (PLCHAR_MATRIX, input) : A vector of\n"
17281 " nlegend UTF-8 character strings containing the legend annotations.\n"
17283 " box_colors (PLINT_VECTOR, input) : A vector containing\n"
17284 " nlegend cmap0 colors for the discrete colored boxes (\n"
17285 " PL_LEGEND_COLOR_BOX).\n"
17287 " box_patterns (PLINT_VECTOR, input) : A vector containing\n"
17288 " nlegend patterns (plpsty indices) for the discrete colored boxes (\n"
17289 " PL_LEGEND_COLOR_BOX).\n"
17291 " box_scales (PLFLT_VECTOR, input) : A vector containing\n"
17292 " nlegend scales (units of fraction of character height) for the height\n"
17293 " of the discrete colored boxes (\n"
17294 " PL_LEGEND_COLOR_BOX).\n"
17296 " box_line_widths (PLFLT_VECTOR, input) : A vector containing\n"
17297 " nlegend line widths for the patterns specified by box_patterns (\n"
17298 " PL_LEGEND_COLOR_BOX).\n"
17300 " line_colors (PLINT_VECTOR, input) : A vector containing\n"
17301 " nlegend cmap0 line colors (\n"
17302 " PL_LEGEND_LINE).\n"
17304 " line_styles (PLINT_VECTOR, input) : A vector containing\n"
17305 " nlegend line styles (plsty indices) (\n"
17306 " PL_LEGEND_LINE).\n"
17308 " line_widths (PLFLT_VECTOR, input) : A vector containing\n"
17309 " nlegend line widths (\n"
17310 " PL_LEGEND_LINE).\n"
17312 " symbol_colors (PLINT_VECTOR, input) : A vector containing\n"
17313 " nlegend cmap0 symbol colors (\n"
17314 " PL_LEGEND_SYMBOL).\n"
17316 " symbol_scales (PLFLT_VECTOR, input) : A vector containing\n"
17317 " nlegend scale values for the symbol height (\n"
17318 " PL_LEGEND_SYMBOL).\n"
17320 " symbol_numbers (PLINT_VECTOR, input) : A vector containing\n"
17321 " nlegend numbers of symbols to be drawn across the width of the plotted\n"
17323 " PL_LEGEND_SYMBOL).\n"
17325 " symbols (PLCHAR_MATRIX, input) : A vector of\n"
17326 " nlegend UTF-8 character strings containing the legend symbols. (\n"
17327 " PL_LEGEND_SYMBOL).\n"
17331 "Plot color bar for image, shade or gradient plots\n"
17335 " Routine for creating a continuous color bar for image, shade, or\n"
17336 " gradient plots. (See pllegend for similar functionality for creating\n"
17337 " legends with discrete elements). The arguments of plcolorbar provide\n"
17338 " control over the location and size of the color bar as well as the\n"
17339 " location and characteristics of the elements (most of which are\n"
17340 " optional) within that color bar. The resulting color bar is clipped\n"
17341 " at the boundaries of the current subpage. (N.B. the adopted coordinate\n"
17342 " system used for some of the parameters is defined in the documentation\n"
17343 " of the position parameter.)\n"
17345 " Redacted form: plcolorbar(p_colorbar_width, p_colorbar_height, opt,\n"
17346 " position, x, y, x_length, y_length, bg_color, bb_color, bb_style,\n"
17347 " low_cap_color, high_cap_color, cont_color, cont_width, label_opts,\n"
17348 " labels, axis_opts, ticks, sub_ticks, values)\n"
17350 " This function is used in examples 16 and 33.\n"
17356 "plcolorbar(p_colorbar_width, p_colorbar_height, opt, position, x, y, x_length, y_length, bg_color, bb_color, bb_style, low_cap_color, high_cap_color, cont_color, cont_width, n_labels, label_opts, labels, naxes, axis_opts, ticks, sub_ticks, n_values, values)\n"
17360 " p_colorbar_width (PLFLT_NC_SCALAR, output) : Returned value of the\n"
17361 " labelled and decorated color bar width in adopted coordinates.\n"
17363 " p_colorbar_height (PLFLT_NC_SCALAR, output) : Returned value of the\n"
17364 " labelled and decorated color bar height in adopted coordinates.\n"
17366 " opt (PLINT, input) : opt contains bits controlling the overall\n"
17367 " color bar. The orientation (direction of the maximum value) of\n"
17368 " the color bar is specified with PL_ORIENT_RIGHT, PL_ORIENT_TOP,\n"
17369 " PL_ORIENT_LEFT, or PL_ORIENT_BOTTOM. If none of these bits are\n"
17370 " specified, the default orientation is toward the top if the\n"
17371 " colorbar is placed on the left or right of the viewport or toward\n"
17372 " the right if the colorbar is placed on the top or bottom of the\n"
17373 " viewport. If the PL_COLORBAR_BACKGROUND bit is set, plot a\n"
17374 " (semitransparent) background for the color bar. If the\n"
17375 " PL_COLORBAR_BOUNDING_BOX bit is set, plot a bounding box for the\n"
17376 " color bar. The type of color bar must be specified with one of\n"
17377 " PL_COLORBAR_IMAGE, PL_COLORBAR_SHADE, or PL_COLORBAR_GRADIENT. If\n"
17378 " more than one of those bits is set only the first one in the above\n"
17379 " list is honored. The position of the (optional) label/title can be\n"
17380 " specified with PL_LABEL_RIGHT, PL_LABEL_TOP, PL_LABEL_LEFT, or\n"
17381 " PL_LABEL_BOTTOM. If no label position bit is set then no label\n"
17382 " will be drawn. If more than one of this list of bits is specified,\n"
17383 " only the first one on the list is honored. End-caps for the color\n"
17384 " bar can added with PL_COLORBAR_CAP_LOW and PL_COLORBAR_CAP_HIGH.\n"
17385 " If a particular color bar cap option is not specified then no cap\n"
17386 " will be drawn for that end. As a special case for\n"
17387 " PL_COLORBAR_SHADE, the option PL_COLORBAR_SHADE_LABEL can be\n"
17388 " specified. If this option is provided then any tick marks and tick\n"
17389 " labels will be placed at the breaks between shaded segments. TODO:\n"
17390 " This should be expanded to support custom placement of tick marks\n"
17391 " and tick labels at custom value locations for any color bar type.\n"
17393 " position (PLINT, input) : position contains bits which control the\n"
17394 " overall position of the color bar and the definition of the\n"
17395 " adopted coordinates used for positions just like what is done for\n"
17396 " the position argument for pllegend. However, note that the\n"
17397 " defaults for the position bits (see below) are different than the\n"
17398 " pllegend case. The combination of the PL_POSITION_LEFT,\n"
17399 " PL_POSITION_RIGHT, PL_POSITION_TOP, PL_POSITION_BOTTOM,\n"
17400 " PL_POSITION_INSIDE, and PL_POSITION_OUTSIDE bits specifies one of\n"
17401 " the 16 possible standard positions (the 4 corners and centers of\n"
17402 " the 4 sides for both the inside and outside cases) of the color\n"
17403 " bar relative to the adopted coordinate system. The corner\n"
17404 " positions are specified by the appropriate combination of two of\n"
17405 " the PL_POSITION_LEFT, PL_POSITION_RIGHT, PL_POSITION_TOP, and\n"
17406 " PL_POSITION_BOTTOM bits while the sides are specified by a single\n"
17407 " value of one of those bits. The adopted coordinates are\n"
17408 " normalized viewport coordinates if the PL_POSITION_VIEWPORT bit is\n"
17409 " set or normalized subpage coordinates if the PL_POSITION_SUBPAGE\n"
17410 " bit is set. Default position bits: If none of PL_POSITION_LEFT,\n"
17411 " PL_POSITION_RIGHT, PL_POSITION_TOP, or PL_POSITION_BOTTOM are set,\n"
17412 " then use PL_POSITION_RIGHT. If neither of PL_POSITION_INSIDE or\n"
17413 " PL_POSITION_OUTSIDE is set, use PL_POSITION_OUTSIDE. If neither of\n"
17414 " PL_POSITION_VIEWPORT or PL_POSITION_SUBPAGE is set, use\n"
17415 " PL_POSITION_VIEWPORT.\n"
17417 " x (PLFLT, input) : X offset of the color bar position in adopted\n"
17418 " coordinates from the specified standard position of the color bar.\n"
17419 " For positive x, the direction of motion away from the standard\n"
17420 " position is inward/outward from the standard corner positions or\n"
17421 " standard left or right positions if the\n"
17422 " PL_POSITION_INSIDE/PL_POSITION_OUTSIDE bit is set in position.\n"
17423 " For the standard top or bottom positions, the direction of motion\n"
17424 " is toward positive X.\n"
17426 " y (PLFLT, input) : Y offset of the color bar position in adopted\n"
17427 " coordinates from the specified standard position of the color bar.\n"
17428 " For positive y, the direction of motion away from the standard\n"
17429 " position is inward/outward from the standard corner positions or\n"
17430 " standard top or bottom positions if the\n"
17431 " PL_POSITION_INSIDE/PL_POSITION_OUTSIDE bit is set in position.\n"
17432 " For the standard left or right positions, the direction of motion\n"
17433 " is toward positive Y.\n"
17435 " x_length (PLFLT, input) : Length of the body of the color bar in\n"
17436 " the X direction in adopted coordinates.\n"
17438 " y_length (PLFLT, input) : Length of the body of the color bar in\n"
17439 " the Y direction in adopted coordinates.\n"
17441 " bg_color (PLINT, input) : The cmap0 color of the background for the\n"
17442 " color bar (PL_COLORBAR_BACKGROUND).\n"
17444 " bb_color (PLINT, input) : The cmap0 color of the bounding-box line\n"
17445 " for the color bar (PL_COLORBAR_BOUNDING_BOX).\n"
17447 " bb_style (PLINT, input) : The pllsty style number for the\n"
17448 " bounding-box line for the color bar (PL_COLORBAR_BACKGROUND).\n"
17450 " low_cap_color (PLFLT, input) : The cmap1 color of the low-end color\n"
17451 " bar cap, if it is drawn (PL_COLORBAR_CAP_LOW).\n"
17453 " high_cap_color (PLFLT, input) : The cmap1 color of the high-end\n"
17454 " color bar cap, if it is drawn (PL_COLORBAR_CAP_HIGH).\n"
17456 " cont_color (PLINT, input) : The cmap0 contour color for\n"
17457 " PL_COLORBAR_SHADE plots. This is passed directly to plshades, so\n"
17458 " it will be interpreted according to the design of plshades.\n"
17460 " cont_width (PLFLT, input) : Contour width for PL_COLORBAR_SHADE\n"
17461 " plots. This is passed directly to plshades, so it will be\n"
17462 " interpreted according to the design of plshades.\n"
17464 " n_labels (PLINT, input) : Number of labels to place around the\n"
17467 " label_opts (PLINT_VECTOR, input) : A vector of options for each of\n"
17468 " n_labels labels.\n"
17470 " labels (PLCHAR_MATRIX, input) : A vector of\n"
17471 " n_labels UTF-8 character strings containing the labels for the color\n"
17472 " bar. Ignored if no label position is specified with one of the\n"
17473 " PL_COLORBAR_LABEL_RIGHT, PL_COLORBAR_LABEL_TOP,\n"
17474 " PL_COLORBAR_LABEL_LEFT, or PL_COLORBAR_LABEL_BOTTOM bits in the\n"
17475 " corresponding label_opts field.\n"
17477 " n_axes (PLINT, input) : Number of axis definitions provided. This\n"
17478 " value must be greater than 0. It is typically 1 (numerical axis\n"
17479 " labels are provided for one of the long edges of the color bar),\n"
17480 " but it can be larger if multiple numerical axis labels for the\n"
17481 " long edges of the color bar are desired.\n"
17483 " axis_opts (PLCHAR_MATRIX, input) : A vector of\n"
17484 " n_axes ascii character strings containing options (interpreted as for\n"
17485 " plbox) for the color bar's axis definitions.\n"
17487 " ticks (PLFLT_VECTOR, input) : A vector of n_axes values of the\n"
17488 " spacing of the major tick marks (interpreted as for plbox) for the\n"
17489 " color bar's axis definitions.\n"
17491 " sub_ticks (PLINT_VECTOR, input) : A vector of n_axes values of the\n"
17492 " number of subticks (interpreted as for plbox) for the color bar's\n"
17493 " axis definitions.\n"
17495 " n_values (PLINT_VECTOR, input) : A vector containing the number of\n"
17496 " elements in each of the n_axes rows of the values matrix.\n"
17498 " values (PLFLT_MATRIX, input) : A matrix containing the numeric\n"
17499 " values for the data range represented by the color bar. For a row\n"
17500 " index of i_axis (where 0 < i_axis < n_axes), the number of\n"
17501 " elements in the row is specified by n_values[i_axis]. For\n"
17502 " PL_COLORBAR_IMAGE and PL_COLORBAR_GRADIENT the number of elements\n"
17503 " is 2, and the corresponding row elements of the values matrix are\n"
17504 " the minimum and maximum value represented by the colorbar. For\n"
17505 " PL_COLORBAR_SHADE, the number and values of the elements of a row\n"
17506 " of the values matrix is interpreted the same as the nlevel and\n"
17507 " clevel arguments of plshades.\n"
17511 "Sets the 3D position of the light source\n"
17515 " Sets the 3D position of the light source for use with plsurf3d and\n"
17518 " Redacted form: pllightsource(x, y, z)\n"
17520 " This function is used in example 8.\n"
17526 "pllightsource(x, y, z)\n"
17530 " x (PLFLT, input) : X-coordinate of the light source.\n"
17532 " y (PLFLT, input) : Y-coordinate of the light source.\n"
17534 " z (PLFLT, input) : Z-coordinate of the light source.\n"
17542 " Draws line defined by n points in x and y.\n"
17544 " Redacted form: plline(x, y)\n"
17546 " This function is used in examples 1, 3, 4, 9, 12-14, 16, 18, 20, 22,\n"
17547 " 25-27, and 29.\n"
17553 "plline(n, x, y)\n"
17557 " n (PLINT, input) : Number of points defining line.\n"
17559 " x (PLFLT_VECTOR, input) : A vector containing the x coordinates of\n"
17562 " y (PLFLT_VECTOR, input) : A vector containing the y coordinates of\n"
17567 "Draw a line in 3 space\n"
17571 " Draws line in 3 space defined by n points in x, y, and z. You must\n"
17572 " first set up the viewport, the 2d viewing window (in world\n"
17573 " coordinates), and the 3d normalized coordinate box. See x18c.c for\n"
17576 " Redacted form: plline3(x, y, z)\n"
17578 " This function is used in example 18.\n"
17584 "plline3(n, x, y, z)\n"
17588 " n (PLINT, input) : Number of points defining line.\n"
17590 " x (PLFLT_VECTOR, input) : A vector containing the x coordinates of\n"
17593 " y (PLFLT_VECTOR, input) : A vector containing the y coordinates of\n"
17596 " z (PLFLT_VECTOR, input) : A vector containing the z coordinates of\n"
17601 "Select line style\n"
17605 " This sets the line style according to one of eight predefined patterns\n"
17606 " (also see plstyl).\n"
17608 " Redacted form: pllsty(lin)\n"
17610 " This function is used in examples 9, 12, 22, and 25.\n"
17620 " lin (PLINT, input) : Integer value between 1 and 8. Line style 1 is\n"
17621 " a continuous line, line style 2 is a line with short dashes and\n"
17622 " gaps, line style 3 is a line with long dashes and gaps, line style\n"
17623 " 4 has long dashes and short gaps and so on.\n"
17627 "Plot surface mesh\n"
17631 " Plots a surface mesh within the environment set up by plw3d. The\n"
17632 " surface is defined by the matrix z[\n"
17634 " ny] , the point z[i][j] being the value of the function at (\n"
17636 " y[j]). Note that the points in vectors x and y do not need to be\n"
17637 " equally spaced, but must be stored in ascending order. The parameter\n"
17638 " opt controls the way in which the surface is displayed. For further\n"
17639 " details see the PLplot documentation.\n"
17641 " Redacted form: plmesh(x, y, z, opt)\n"
17643 " This function is used in example 11.\n"
17649 "plmesh(x, y, z, nx, ny, opt)\n"
17653 " x (PLFLT_VECTOR, input) : A vector containing the x coordinates at\n"
17654 " which the function is evaluated.\n"
17656 " y (PLFLT_VECTOR, input) : A vector containing the y coordinates at\n"
17657 " which the function is evaluated.\n"
17659 " z (PLFLT_MATRIX, input) : A matrix containing function values to\n"
17660 " plot. Should have dimensions of\n"
17664 " nx (PLINT, input) : Number of x values at which function has been\n"
17667 " ny (PLINT, input) : Number of y values at which function has been\n"
17670 " opt (PLINT, input) : Determines the way in which the surface is\n"
17671 " represented: opt=DRAW_LINEX : Lines are drawn showing z as a\n"
17672 " function of x for each value of y[j] .\n"
17673 " opt=DRAW_LINEY : Lines are drawn showing z as a function of y\n"
17674 " for each value of x[i] .\n"
17675 " opt=DRAW_LINEXY : Network of lines is drawn connecting points\n"
17676 " at which function is defined.\n"
17680 "Magnitude colored plot surface mesh with contour\n"
17684 " A more powerful form of plmesh: the surface mesh can be colored\n"
17685 " accordingly to the current z value being plotted, a contour plot can\n"
17686 " be drawn at the base XY plane, and a curtain can be drawn between the\n"
17687 " plotted function border and the base XY plane.\n"
17689 " Redacted form: plmeshc(x, y, z, opt, clevel)\n"
17691 " This function is used in example 11.\n"
17697 "plmeshc(x, y, z, nx, ny, opt, clevel, nlevel)\n"
17701 " x (PLFLT_VECTOR, input) : A vector containing the x coordinates at\n"
17702 " which the function is evaluated.\n"
17704 " y (PLFLT_VECTOR, input) : A vector containing the y coordinates at\n"
17705 " which the function is evaluated.\n"
17707 " z (PLFLT_MATRIX, input) : A matrix containing function values to\n"
17708 " plot. Should have dimensions of\n"
17712 " nx (PLINT, input) : Number of x values at which function is\n"
17715 " ny (PLINT, input) : Number of y values at which function is\n"
17718 " opt (PLINT, input) : Determines the way in which the surface is\n"
17719 " represented. To specify more than one option just add the options,\n"
17720 " e.g. DRAW_LINEXY + MAG_COLOR opt=DRAW_LINEX : Lines are drawn\n"
17721 " showing z as a function of x for each value of y[j] .\n"
17722 " opt=DRAW_LINEY : Lines are drawn showing z as a function of y\n"
17723 " for each value of x[i] .\n"
17724 " opt=DRAW_LINEXY : Network of lines is drawn connecting points\n"
17725 " at which function is defined.\n"
17726 " opt=MAG_COLOR : Each line in the mesh is colored according to\n"
17727 " the z value being plotted. The color is used from the current\n"
17729 " opt=BASE_CONT : A contour plot is drawn at the base XY plane\n"
17730 " using parameters\n"
17733 " opt=DRAW_SIDES : draws a curtain between the base XY plane and\n"
17734 " the borders of the plotted function.\n"
17737 " clevel (PLFLT_VECTOR, input) : A vector containing the contour\n"
17740 " nlevel (PLINT, input) : Number of elements in the clevel vector.\n"
17744 "Creates a new stream and makes it the default\n"
17748 " Creates a new stream and makes it the default. Differs from using\n"
17749 " plsstrm, in that a free stream number is found, and returned.\n"
17750 " Unfortunately, I have to start at stream 1 and work upward, since\n"
17751 " stream 0 is preallocated. One of the big flaws in the PLplot API is\n"
17752 " that no initial, library-opening call is required. So stream 0 must\n"
17753 " be preallocated, and there is no simple way of determining whether it\n"
17754 " is already in use or not.\n"
17756 " Redacted form: plmkstrm(p_strm)\n"
17758 " This function is used in examples 1 and 20.\n"
17764 "plmkstrm(p_strm)\n"
17768 " p_strm (PLINT_NC_SCALAR, output) : Returned value of the stream\n"
17769 " number of the created stream.\n"
17773 "Write text relative to viewport boundaries\n"
17777 " Writes text at a specified position relative to the viewport\n"
17778 " boundaries. Text may be written inside or outside the viewport, but\n"
17779 " is clipped at the subpage boundaries. The reference point of a string\n"
17780 " lies along a line passing through the string at half the height of a\n"
17781 " capital letter. The position of the reference point along this line\n"
17782 " is determined by just, and the position of the reference point\n"
17783 " relative to the viewport is set by disp and pos.\n"
17785 " Redacted form: General: plmtex(side, disp, pos, just, text)\n"
17788 " This function is used in examples 3, 4, 6-8, 11, 12, 14, 18, 23, and\n"
17795 "plmtex(side, disp, pos, just, text)\n"
17799 " side (PLCHAR_VECTOR, input) : An ascii character string specifying\n"
17800 " the side of the viewport along which the text is to be written.\n"
17801 " The string must be one of: b: Bottom of viewport, text written\n"
17802 " parallel to edge.\n"
17803 " bv: Bottom of viewport, text written at right angles to edge.\n"
17804 " l: Left of viewport, text written parallel to edge.\n"
17805 " lv: Left of viewport, text written at right angles to edge.\n"
17806 " r: Right of viewport, text written parallel to edge.\n"
17807 " rv: Right of viewport, text written at right angles to edge.\n"
17808 " t: Top of viewport, text written parallel to edge.\n"
17809 " tv: Top of viewport, text written at right angles to edge.\n"
17812 " disp (PLFLT, input) : Position of the reference point of string,\n"
17813 " measured outwards from the specified viewport edge in units of the\n"
17814 " current character height. Use negative disp to write within the\n"
17817 " pos (PLFLT, input) : Position of the reference point of string\n"
17818 " along the specified edge, expressed as a fraction of the length of\n"
17821 " just (PLFLT, input) : Specifies the position of the string relative\n"
17822 " to its reference point. If just=0. , the reference point is at\n"
17823 " the left and if just=1. , it is at the right of the string. Other\n"
17824 " values of just give intermediate justifications.\n"
17826 " text (PLCHAR_VECTOR, input) : A UTF-8 character string to be\n"
17831 "Write text relative to viewport boundaries in 3D plots\n"
17835 " Writes text at a specified position relative to the viewport\n"
17836 " boundaries. Text may be written inside or outside the viewport, but\n"
17837 " is clipped at the subpage boundaries. The reference point of a string\n"
17838 " lies along a line passing through the string at half the height of a\n"
17839 " capital letter. The position of the reference point along this line\n"
17840 " is determined by just, and the position of the reference point\n"
17841 " relative to the viewport is set by disp and pos.\n"
17843 " Redacted form: plmtex3(side, disp, pos, just, text)\n"
17845 " This function is used in example 28.\n"
17851 "plmtex3(side, disp, pos, just, text)\n"
17855 " side (PLCHAR_VECTOR, input) : An ascii character string specifying\n"
17856 " the side of the viewport along which the text is to be written.\n"
17857 " The string should contain one or more of the following characters:\n"
17858 " [xyz][ps][v]. Only one label is drawn at a time, i.e. xyp will\n"
17859 " only label the X axis, not both the X and Y axes. x: Label the X\n"
17861 " y: Label the Y axis.\n"
17862 " z: Label the Z axis.\n"
17863 " p: Label the primary axis. For Z this is the leftmost Z axis.\n"
17864 " For X it is the axis that starts at y-min. For Y it is the\n"
17865 " axis that starts at x-min.\n"
17866 " s: Label the secondary axis.\n"
17867 " v: Draw the text perpendicular to the axis.\n"
17870 " disp (PLFLT, input) : Position of the reference point of string,\n"
17871 " measured outwards from the specified viewport edge in units of the\n"
17872 " current character height. Use negative disp to write within the\n"
17875 " pos (PLFLT, input) : Position of the reference point of string\n"
17876 " along the specified edge, expressed as a fraction of the length of\n"
17879 " just (PLFLT, input) : Specifies the position of the string relative\n"
17880 " to its reference point. If just=0. , the reference point is at\n"
17881 " the left and if just=1. , it is at the right of the string. Other\n"
17882 " values of just give intermediate justifications.\n"
17884 " text (PLCHAR_VECTOR, input) : A UTF-8 character string to be\n"
17889 "Plot 3-d surface plot\n"
17893 " Plots a three-dimensional surface plot within the environment set up\n"
17894 " by plw3d. The surface is defined by the matrix z[\n"
17896 " ny] , the point z[i][j] being the value of the function at (\n"
17898 " y[j]). Note that the points in vectors x and y do not need to be\n"
17899 " equally spaced, but must be stored in ascending order. The parameter\n"
17900 " opt controls the way in which the surface is displayed. For further\n"
17901 " details see the PLplot documentation. The only difference between\n"
17902 " plmesh and plot3d is that plmesh draws the bottom side of the surface,\n"
17903 " while plot3d only draws the surface as viewed from the top.\n"
17905 " Redacted form: plot3d(x, y, z, opt, side)\n"
17907 " This function is used in examples 11 and 21.\n"
17913 "plot3d(x, y, z, nx, ny, opt, side)\n"
17917 " x (PLFLT_VECTOR, input) : A vector containing the x coordinates at\n"
17918 " which the function is evaluated.\n"
17920 " y (PLFLT_VECTOR, input) : A vector containing the y coordinates at\n"
17921 " which the function is evaluated.\n"
17923 " z (PLFLT_MATRIX, input) : A matrix containing function values to\n"
17924 " plot. Should have dimensions of\n"
17928 " nx (PLINT, input) : Number of x values at which function is\n"
17931 " ny (PLINT, input) : Number of y values at which function is\n"
17934 " opt (PLINT, input) : Determines the way in which the surface is\n"
17935 " represented: opt=DRAW_LINEX : Lines are drawn showing z as a\n"
17936 " function of x for each value of y[j] .\n"
17937 " opt=DRAW_LINEY : Lines are drawn showing z as a function of y\n"
17938 " for each value of x[i] .\n"
17939 " opt=DRAW_LINEXY : Network of lines is drawn connecting points\n"
17940 " at which function is defined.\n"
17943 " side (PLBOOL, input) : Flag to indicate whether or not ``sides''\n"
17944 " should be draw on the figure. If side is true sides are drawn,\n"
17945 " otherwise no sides are drawn.\n"
17949 "Magnitude colored plot surface with contour\n"
17953 " Aside from dropping the\n"
17954 " side functionality this is a more powerful form of plot3d: the surface\n"
17955 " mesh can be colored accordingly to the current z value being plotted,\n"
17956 " a contour plot can be drawn at the base XY plane, and a curtain can be\n"
17957 " drawn between the plotted function border and the base XY plane. The\n"
17958 " arguments are identical to those of plmeshc. The only difference\n"
17959 " between plmeshc and plot3dc is that plmeshc draws the bottom side of\n"
17960 " the surface, while plot3dc only draws the surface as viewed from the\n"
17963 " Redacted form: General: plot3dc(x, y, z, opt, clevel)\n"
17966 " This function is used in example 21.\n"
17972 "plot3dc(x, y, z, nx, ny, opt, clevel, nlevel)\n"
17976 " x (PLFLT_VECTOR, input) : A vector containing the x coordinates at\n"
17977 " which the function is evaluated.\n"
17979 " y (PLFLT_VECTOR, input) : A vector containing the y coordinates at\n"
17980 " which the function is evaluated.\n"
17982 " z (PLFLT_MATRIX, input) : A matrix containing function values to\n"
17983 " plot. Should have dimensions of\n"
17987 " nx (PLINT, input) : Number of x values at which function is\n"
17990 " ny (PLINT, input) : Number of y values at which function is\n"
17993 " opt (PLINT, input) : Determines the way in which the surface is\n"
17994 " represented. To specify more than one option just add the options,\n"
17995 " e.g. DRAW_LINEXY + MAG_COLOR opt=DRAW_LINEX : Lines are drawn\n"
17996 " showing z as a function of x for each value of y[j] .\n"
17997 " opt=DRAW_LINEY : Lines are drawn showing z as a function of y\n"
17998 " for each value of x[i] .\n"
17999 " opt=DRAW_LINEXY : Network of lines is drawn connecting points\n"
18000 " at which function is defined.\n"
18001 " opt=MAG_COLOR : Each line in the mesh is colored according to\n"
18002 " the z value being plotted. The color is used from the current\n"
18004 " opt=BASE_CONT : A contour plot is drawn at the base XY plane\n"
18005 " using parameters\n"
18008 " opt=DRAW_SIDES : draws a curtain between the base XY plane and\n"
18009 " the borders of the plotted function.\n"
18012 " clevel (PLFLT_VECTOR, input) : A vector containing the contour\n"
18015 " nlevel (PLINT, input) : Number of elements in the clevel vector.\n"
18019 "Magnitude colored plot surface with contour for z[x][y] with y index limits\n"
18023 " When the implementation is completed this variant of plot3dc (see that\n"
18024 " function's documentation for more details) should be suitable for the\n"
18025 " case where the area of the x, y coordinate grid where z is defined can\n"
18026 " be non-rectangular. The implementation is incomplete so the last 4\n"
18027 " parameters of plot3dcl; indexxmin, indexxmax, indexymin, and\n"
18028 " indexymax; are currently ignored and the functionality is otherwise\n"
18029 " identical to that of plot3dc.\n"
18031 " Redacted form: General: plot3dcl(x, y, z, opt, clevel, indexxmin,\n"
18032 " indexymin, indexymax)\n"
18035 " This function is not used in any example.\n"
18041 "plot3dcl(x, y, z, nx, ny, opt, clevel, nlevel, indexxmin, indexxmax, indexymin, indexymax)\n"
18045 " x (PLFLT_VECTOR, input) : A vector containing the x coordinates at\n"
18046 " which the function is evaluated.\n"
18048 " y (PLFLT_VECTOR, input) : A vector containing the y coordinates at\n"
18049 " which the function is evaluated.\n"
18051 " z (PLFLT_MATRIX, input) : A matrix containing function values to\n"
18052 " plot. Should have dimensions of\n"
18056 " nx (PLINT, input) : Number of x values at which the function is\n"
18059 " ny (PLINT, input) : Number of y values at which the function is\n"
18062 " opt (PLINT, input) : Determines the way in which the surface is\n"
18063 " represented. To specify more than one option just add the options,\n"
18064 " e.g. DRAW_LINEXY + MAG_COLOR opt=DRAW_LINEX : Lines are drawn\n"
18065 " showing z as a function of x for each value of y[j] .\n"
18066 " opt=DRAW_LINEY : Lines are drawn showing z as a function of y\n"
18067 " for each value of x[i] .\n"
18068 " opt=DRAW_LINEXY : Network of lines is drawn connecting points\n"
18069 " at which function is defined.\n"
18070 " opt=MAG_COLOR : Each line in the mesh is colored according to\n"
18071 " the z value being plotted. The color is used from the current\n"
18073 " opt=BASE_CONT : A contour plot is drawn at the base XY plane\n"
18074 " using parameters\n"
18077 " opt=DRAW_SIDES : draws a curtain between the base XY plane and\n"
18078 " the borders of the plotted function.\n"
18081 " clevel (PLFLT_VECTOR, input) : A vector containing the contour\n"
18084 " nlevel (PLINT, input) : Number of elements in the clevel vector.\n"
18086 " indexxmin (PLINT, input) : The index value (which must be ≥ 0) that\n"
18087 " corresponds to the first x index where z is defined.\n"
18089 " indexxmax (PLINT, input) : The index value (which must be ≤ nx)\n"
18090 " which corresponds (by convention) to one more than the last x\n"
18091 " index value where z is defined.\n"
18093 " indexymin (PLINT_VECTOR, input) : A vector containing y index\n"
18094 " values which all must be ≥ 0. These values are the first y index\n"
18095 " where z is defined for a particular x index in the range from\n"
18096 " indexxmin to indexxmax - 1. The dimension of indexymin is\n"
18099 " indexymax (PLINT_VECTOR, input) : A vector containing y index\n"
18100 " values which all must be ≤ ny. These values correspond (by\n"
18101 " convention) to one more than the last y index where z is defined\n"
18102 " for a particular x index in the range from indexxmin to indexxmax\n"
18103 " - 1. The dimension of indexymax is indexxmax.\n"
18107 "Plot shaded 3-d surface plot\n"
18111 " Plots a three-dimensional shaded surface plot within the environment\n"
18112 " set up by plw3d. The surface is defined by the two-dimensional matrix\n"
18115 " ny], the point z[i][j] being the value of the function at (\n"
18117 " y[j]). Note that the points in vectors x and y do not need to be\n"
18118 " equally spaced, but must be stored in ascending order. For further\n"
18119 " details see the PLplot documentation.\n"
18121 " Redacted form: plsurf3d(x, y, z, opt, clevel)\n"
18123 " This function is not used in any examples.\n"
18129 "plsurf3d(x, y, z, nx, ny, opt, clevel, nlevel)\n"
18133 " x (PLFLT_VECTOR, input) : A vector containing the x coordinates at\n"
18134 " which the function is evaluated.\n"
18136 " y (PLFLT_VECTOR, input) : A vector containing the y coordinates at\n"
18137 " which the function is evaluated.\n"
18139 " z (PLFLT_MATRIX, input) : A matrix containing function values to\n"
18140 " plot. Should have dimensions of\n"
18144 " nx (PLINT, input) : Number of x values at which function is\n"
18147 " ny (PLINT, input) : Number of y values at which function is\n"
18150 " opt (PLINT, input) : Determines the way in which the surface is\n"
18151 " represented. To specify more than one option just add the options,\n"
18152 " e.g. FACETED + SURF_CONT opt=FACETED : Network of lines is drawn\n"
18153 " connecting points at which function is defined.\n"
18154 " opt=BASE_CONT : A contour plot is drawn at the base XY plane\n"
18155 " using parameters\n"
18158 " opt=SURF_CONT : A contour plot is drawn at the surface plane\n"
18159 " using parameters\n"
18162 " opt=DRAW_SIDES : draws a curtain between the base XY plane and\n"
18163 " the borders of the plotted function.\n"
18164 " opt=MAG_COLOR : the surface is colored according to the value\n"
18165 " of Z; if MAG_COLOR is not used, then the surface is colored\n"
18166 " according to the intensity of the reflected light in the\n"
18167 " surface from a light source whose position is set using\n"
18168 " pllightsource.\n"
18171 " clevel (PLFLT_VECTOR, input) : A vector containing the contour\n"
18174 " nlevel (PLINT, input) : Number of elements in the clevel vector.\n"
18178 "Plot shaded 3-d surface plot for z[x][y] with y index limits\n"
18182 " This variant of plsurf3d (see that function's documentation for more\n"
18183 " details) should be suitable for the case where the area of the x, y\n"
18184 " coordinate grid where z is defined can be non-rectangular. The limits\n"
18185 " of that grid are provided by the parameters indexxmin, indexxmax,\n"
18186 " indexymin, and indexymax.\n"
18188 " Redacted form: plsurf3dl(x, y, z, opt, clevel, indexxmin, indexymin,\n"
18191 " This function is used in example 8.\n"
18197 "plsurf3dl(x, y, z, nx, ny, opt, clevel, nlevel, indexxmin, indexxmax, indexymin, indexymax)\n"
18201 " x (PLFLT_VECTOR, input) : A vector containing the x coordinates at\n"
18202 " which the function is evaluated.\n"
18204 " y (PLFLT_VECTOR, input) : A vector containing the y coordinates at\n"
18205 " which the function is evaluated.\n"
18207 " z (PLFLT_MATRIX, input) : A matrix containing function values to\n"
18208 " plot. Should have dimensions of\n"
18212 " nx (PLINT, input) : Number of x values at which function is\n"
18215 " ny (PLINT, input) : Number of y values at which function is\n"
18218 " opt (PLINT, input) : Determines the way in which the surface is\n"
18219 " represented. To specify more than one option just add the options,\n"
18220 " e.g. FACETED + SURF_CONT opt=FACETED : Network of lines is drawn\n"
18221 " connecting points at which function is defined.\n"
18222 " opt=BASE_CONT : A contour plot is drawn at the base XY plane\n"
18223 " using parameters\n"
18226 " opt=SURF_CONT : A contour plot is drawn at the surface plane\n"
18227 " using parameters\n"
18230 " opt=DRAW_SIDES : draws a curtain between the base XY plane and\n"
18231 " the borders of the plotted function.\n"
18232 " opt=MAG_COLOR : the surface is colored according to the value\n"
18233 " of Z; if MAG_COLOR is not used, then the surface is colored\n"
18234 " according to the intensity of the reflected light in the\n"
18235 " surface from a light source whose position is set using\n"
18236 " pllightsource.\n"
18239 " clevel (PLFLT_VECTOR, input) : A vector containing the contour\n"
18242 " nlevel (PLINT, input) : Number of elements in the clevel vector.\n"
18244 " indexxmin (PLINT, input) : The index value (which must be ≥ 0) that\n"
18245 " corresponds to the first x index where z is defined.\n"
18247 " indexxmax (PLINT, input) : The index value (which must be ≤ nx)\n"
18248 " which corresponds (by convention) to one more than the last x\n"
18249 " index value where z is defined.\n"
18251 " indexymin (PLINT_VECTOR, input) : A vector containing the y index\n"
18252 " values which all must be ≥ 0. These values are the first y index\n"
18253 " where z is defined for a particular x index in the range from\n"
18254 " indexxmin to indexxmax - 1. The dimension of indexymin is\n"
18257 " indexymax (PLINT_VECTOR, input) : A vector containing the y index\n"
18258 " values which all must be ≤ ny. These values correspond (by\n"
18259 " convention) to one more than the last y index where z is defined\n"
18260 " for a particular x index in the range from indexxmin to indexxmax\n"
18261 " - 1. The dimension of indexymax is indexxmax.\n"
18265 "Parse command-line arguments\n"
18269 " Parse command-line arguments.\n"
18271 " plparseopts removes all recognized flags (decreasing argc\n"
18272 " accordingly), so that invalid input may be readily detected. It can\n"
18273 " also be used to process user command line flags. The user can merge\n"
18274 " an option table of type PLOptionTable into the internal option table\n"
18275 " info structure using plMergeOpts. Or, the user can specify that ONLY\n"
18276 " the external table(s) be parsed by calling plClearOpts before\n"
18279 " The default action taken by plparseopts is as follows:\n"
18280 " Returns with an error if an unrecognized option or badly formed\n"
18281 " option-value pair are encountered.\n"
18282 " Returns immediately (return code 0) when the first non-option command\n"
18283 " line argument is found.\n"
18284 " Returns with the return code of the option handler, if one was called.\n"
18286 " Deletes command line arguments from argv list as they are found, and\n"
18287 " decrements argc accordingly.\n"
18288 " Does not show \"invisible\" options in usage or help messages.\n"
18289 " Assumes the program name is contained in argv[0].\n"
18291 " These behaviors may be controlled through the\n"
18292 " mode argument.\n"
18294 " Redacted form: General: plparseopts(argv, mode)\n"
18297 " This function is used in all of the examples.\n"
18303 "PLINT plparseopts(p_argc, argv, mode)\n"
18307 " p_argc (int *, input/output) : Number of arguments.\n"
18309 " argv (PLCHAR_NC_MATRIX, input/output) : A vector of character\n"
18310 " strings containing *p_argc command-line arguments.\n"
18312 " mode (PLINT, input) : Parsing mode with the following\n"
18313 " possibilities: PL_PARSE_FULL (1) -- Full parsing of command line\n"
18314 " and all error messages enabled, including program exit when an\n"
18315 " error occurs. Anything on the command line that isn't recognized\n"
18316 " as a valid option or option argument is flagged as an error.\n"
18317 " PL_PARSE_QUIET (2) -- Turns off all output except in the case\n"
18319 " PL_PARSE_NODELETE (4) -- Turns off deletion of processed\n"
18321 " PL_PARSE_SHOWALL (8) -- Show invisible options\n"
18322 " PL_PARSE_NOPROGRAM (32) -- Specified if argv[0] is NOT a\n"
18323 " pointer to the program name.\n"
18324 " PL_PARSE_NODASH (64) -- Set if leading dash is NOT required.\n"
18325 " PL_PARSE_SKIP (128) -- Set to quietly skip over any\n"
18326 " unrecognized arguments.\n"
18330 "Set area line fill pattern\n"
18334 " Sets the area line fill pattern to be used, e.g., for calls to plfill.\n"
18335 " The pattern consists of 1 or 2 sets of parallel lines with specified\n"
18336 " inclinations and spacings. The arguments to this routine are the\n"
18337 " number of sets to use (1 or 2) followed by two vectors (with 1 or 2\n"
18338 " elements) specifying the inclinations in tenths of a degree and the\n"
18339 " spacing in micrometers. (See also plpsty)\n"
18341 " Redacted form: General: plpat(inc, del)\n"
18344 " This function is used in example 15.\n"
18350 "plpat(nlin, inc, del)\n"
18354 " nlin (PLINT, input) : Number of sets of lines making up the\n"
18355 " pattern, either 1 or 2.\n"
18357 " inc (PLINT_VECTOR, input) : A vector containing nlin values of the\n"
18358 " inclination in tenths of a degree. (Should be between -900 and\n"
18361 " del (PLINT_VECTOR, input) : A vector containing nlin values of the\n"
18362 " spacing in micrometers between the lines making up the pattern.\n"
18366 "Draw a line between two points, accounting for coordinate transforms\n"
18370 " Joins the point (\n"
18374 " y2) . If a global coordinate transform is defined then the line is\n"
18375 " broken in to n segments to approximate the path. If no transform is\n"
18376 " defined then this simply acts like a call to pljoin.\n"
18378 " Redacted form: plpath(n,x1,y1,x2,y2)\n"
18380 " This function is used in example 22.\n"
18386 "plpath(n, x1, y1, x2, y2)\n"
18390 " n (PLINT, input) : number of points to use to approximate the path.\n"
18392 " x1 (PLFLT, input) : x coordinate of first point.\n"
18394 " y1 (PLFLT, input) : y coordinate of first point.\n"
18396 " x2 (PLFLT, input) : x coordinate of second point.\n"
18398 " y2 (PLFLT, input) : y coordinate of second point.\n"
18402 "Plot a glyph at the specified points\n"
18406 " Plot a glyph at the specified points. (This function is largely\n"
18407 " superseded by plstring which gives access to many[!] more glyphs.)\n"
18408 " code=-1 means try to just draw a point. Right now it's just a move\n"
18409 " and a draw at the same place. Not ideal, since a sufficiently\n"
18410 " intelligent output device may optimize it away, or there may be faster\n"
18411 " ways of doing it. This is OK for now, though, and offers a 4X speedup\n"
18412 " over drawing a Hershey font \"point\" (which is actually diamond shaped\n"
18413 " and therefore takes 4 strokes to draw). If 0 < code < 32, then a\n"
18414 " useful (but small subset) of Hershey symbols is plotted. If 32 <=\n"
18415 " code <= 127 the corresponding printable ASCII character is plotted.\n"
18417 " Redacted form: plpoin(x, y, code)\n"
18419 " This function is used in examples 1, 6, 14, and 29.\n"
18425 "plpoin(n, x, y, code)\n"
18429 " n (PLINT, input) : Number of points in the x and y vectors.\n"
18431 " x (PLFLT_VECTOR, input) : A vector containing the x coordinates of\n"
18434 " y (PLFLT_VECTOR, input) : A vector containing the y coordinates of\n"
18437 " code (PLINT, input) : Hershey symbol code (in \"ascii-indexed\" form\n"
18438 " with -1 <= code <= 127) corresponding to a glyph to be plotted at\n"
18439 " each of the n points.\n"
18443 "Plot a glyph at the specified 3D points\n"
18447 " Plot a glyph at the specified 3D points. (This function is largely\n"
18448 " superseded by plstring3 which gives access to many[!] more glyphs.)\n"
18449 " Set up the call to this function similar to what is done for plline3.\n"
18450 " code=-1 means try to just draw a point. Right now it's just a move\n"
18451 " and a draw at the same place. Not ideal, since a sufficiently\n"
18452 " intelligent output device may optimize it away, or there may be faster\n"
18453 " ways of doing it. This is OK for now, though, and offers a 4X speedup\n"
18454 " over drawing a Hershey font \"point\" (which is actually diamond shaped\n"
18455 " and therefore takes 4 strokes to draw). If 0 < code < 32, then a\n"
18456 " useful (but small subset) of Hershey symbols is plotted. If 32 <=\n"
18457 " code <= 127 the corresponding printable ASCII character is plotted.\n"
18459 " Redacted form: plpoin3(x, y, z, code)\n"
18461 " This function is not used in any example.\n"
18467 "plpoin3(n, x, y, z, code)\n"
18471 " n (PLINT, input) : Number of points in the x and y vectors.\n"
18473 " x (PLFLT_VECTOR, input) : A vector containing the x coordinates of\n"
18476 " y (PLFLT_VECTOR, input) : A vector containing the y coordinates of\n"
18479 " z (PLFLT_VECTOR, input) : A vector containing the z coordinates of\n"
18482 " code (PLINT, input) : Hershey symbol code (in \"ascii-indexed\" form\n"
18483 " with -1 <= code <= 127) corresponding to a glyph to be plotted at\n"
18484 " each of the n points.\n"
18488 "Draw a polygon in 3 space\n"
18492 " Draws a polygon in 3 space defined by n points in x, y, and z. Setup\n"
18493 " like plline3, but differs from that function in that plpoly3 attempts\n"
18494 " to determine if the polygon is viewable depending on the order of the\n"
18495 " points within the vector and the value of ifcc. If the back of\n"
18496 " polygon is facing the viewer, then it isn't drawn. If this isn't what\n"
18497 " you want, then use plline3 instead.\n"
18499 " The points are assumed to be in a plane, and the directionality of the\n"
18500 " plane is determined from the first three points. Additional points do\n"
18501 " not have to lie on the plane defined by the first three, but if they\n"
18502 " do not, then the determination of visibility obviously can't be 100%\n"
18503 " accurate... So if you're 3 space polygons are too far from planar,\n"
18504 " consider breaking them into smaller polygons. 3 points define a plane\n"
18507 " Bugs: If one of the first two segments is of zero length, or if they\n"
18508 " are co-linear, the calculation of visibility has a 50/50 chance of\n"
18509 " being correct. Avoid such situations :-). See x18c.c for an example\n"
18510 " of this problem. (Search for 20.1).\n"
18512 " Redacted form: plpoly3(x, y, z, code)\n"
18514 " This function is used in example 18.\n"
18520 "plpoly3(n, x, y, z, draw, ifcc)\n"
18524 " n (PLINT, input) : Number of points defining line.\n"
18526 " x (PLFLT_VECTOR, input) : A vector containing\n"
18527 " n x coordinates of points.\n"
18529 " y (PLFLT_VECTOR, input) : A vector containing\n"
18530 " n y coordinates of points.\n"
18532 " z (PLFLT_VECTOR, input) : A vector containing\n"
18533 " n z coordinates of points.\n"
18535 " draw (PLBOOL_VECTOR, input) : A vector containing\n"
18536 " n-1 Boolean values which control drawing the segments of the polygon.\n"
18537 " If draw[i] is true, then the polygon segment from index [i] to\n"
18538 " [i+1] is drawn, otherwise, not.\n"
18540 " ifcc (PLBOOL, input) : If ifcc is true the directionality of the\n"
18541 " polygon is determined by assuming the points are laid out in a\n"
18542 " counter-clockwise order. Otherwise, the directionality of the\n"
18543 " polygon is determined by assuming the points are laid out in a\n"
18544 " clockwise order.\n"
18548 "Set precision in numeric labels\n"
18552 " Sets the number of places after the decimal point in numeric labels.\n"
18554 " Redacted form: plprec(setp, prec)\n"
18556 " This function is used in example 29.\n"
18562 "plprec(setp, prec)\n"
18566 " setp (PLINT, input) : If setp is equal to 0 then PLplot\n"
18567 " automatically determines the number of places to use after the\n"
18568 " decimal point in numeric labels (like those used to label axes).\n"
18569 " If setp is 1 then prec sets the number of places.\n"
18571 " prec (PLINT, input) : The number of characters to draw after the\n"
18572 " decimal point in numeric labels.\n"
18576 "Select area fill pattern\n"
18581 " patt is zero or less use either a hardware solid fill if the drivers\n"
18582 " have that capability (virtually all do) or fall back to a software\n"
18583 " emulation of a solid fill using the eighth area line fill pattern. If\n"
18585 " patt <= 8, then select one of eight predefined area line fill patterns\n"
18586 " to use (see plpat if you desire other patterns).\n"
18588 " Redacted form: plpsty(patt)\n"
18590 " This function is used in examples 12, 13, 15, 16, and 25.\n"
18600 " patt (PLINT, input) : The desired pattern index. If\n"
18601 " patt is zero or less, then a solid fill is (normally, see qualifiers\n"
18602 " above) used. For\n"
18603 " patt in the range from 1 to 8 and assuming the driver has not supplied\n"
18604 " line fill capability itself (most deliberately do not so that line\n"
18605 " fill patterns look identical for those drivers), the patterns\n"
18606 " consist of (1) horizontal lines, (2) vertical lines, (3) lines at\n"
18607 " 45 degrees, (4) lines at -45 degrees, (5) lines at 30 degrees, (6)\n"
18608 " lines at -30 degrees, (7) both vertical and horizontal lines, and\n"
18609 " (8) lines at both 45 degrees and -45 degrees.\n"
18613 "Write text inside the viewport\n"
18617 " Writes text at a specified position and inclination within the\n"
18618 " viewport. Text is clipped at the viewport boundaries. The reference\n"
18619 " point of a string lies along a line passing through the string at half\n"
18620 " the height of a capital letter. The position of the reference point\n"
18621 " along this line is determined by just, the reference point is placed\n"
18622 " at world coordinates (\n"
18624 " y) within the viewport. The inclination of the string is specified\n"
18625 " in terms of differences of world coordinates making it easy to write\n"
18626 " text parallel to a line in a graph.\n"
18628 " Redacted form: plptex(x, y, dx, dy, just, text)\n"
18630 " This function is used in example 2-4,10,12-14,20,23,24,26.\n"
18636 "plptex(x, y, dx, dy, just, text)\n"
18640 " x (PLFLT, input) : x coordinate of reference point of string.\n"
18642 " y (PLFLT, input) : y coordinate of reference point of string.\n"
18644 " dx (PLFLT, input) : Together with dy, this specifies the\n"
18645 " inclination of the string. The baseline of the string is parallel\n"
18646 " to a line joining (\n"
18654 " dy (PLFLT, input) : Together with dx, this specifies the\n"
18655 " inclination of the string.\n"
18657 " just (PLFLT, input) : Specifies the position of the string relative\n"
18658 " to its reference point. If just=0. , the reference point is at\n"
18659 " the left and if just=1. , it is at the right of the string. Other\n"
18660 " values of just give intermediate justifications.\n"
18662 " text (PLCHAR_VECTOR, input) : A UTF-8 character string to be\n"
18667 "Write text inside the viewport of a 3D plot\n"
18671 " Writes text at a specified position and inclination and with a\n"
18672 " specified shear within the viewport. Text is clipped at the viewport\n"
18673 " boundaries. The reference point of a string lies along a line passing\n"
18674 " through the string at half the height of a capital letter. The\n"
18675 " position of the reference point along this line is determined by just,\n"
18676 " and the reference point is placed at world coordinates (\n"
18679 " wz) within the viewport. The inclination and shear of the string is\n"
18680 " specified in terms of differences of world coordinates making it easy\n"
18681 " to write text parallel to a line in a graph.\n"
18683 " Redacted form: plptex3(x, y, z, dx, dy, dz, sx, sy, sz, just, text)\n"
18685 " This function is used in example 28.\n"
18691 "plptex3(wx, wy, wz, dx, dy, dz, sx, sy, sz, just, text)\n"
18695 " wx (PLFLT, input) : x world coordinate of reference point of\n"
18698 " wy (PLFLT, input) : y world coordinate of reference point of\n"
18701 " wz (PLFLT, input) : z world coordinate of reference point of\n"
18704 " dx (PLFLT, input) : Together with dy and\n"
18705 " dz , this specifies the inclination of the string. The baseline of\n"
18706 " the string is parallel to a line joining (\n"
18717 " dy (PLFLT, input) : Together with dx and\n"
18718 " dz, this specifies the inclination of the string.\n"
18720 " dz (PLFLT, input) : Together with dx and\n"
18721 " dy, this specifies the inclination of the string.\n"
18723 " sx (PLFLT, input) : Together with sy and\n"
18724 " sz , this specifies the shear of the string. The string is sheared so\n"
18725 " that the characters are vertically parallel to a line joining (\n"
18736 " sz = 0.) then the text is not sheared.\n"
18738 " sy (PLFLT, input) : Together with sx and\n"
18739 " sz, this specifies shear of the string.\n"
18741 " sz (PLFLT, input) : Together with sx and\n"
18742 " sy, this specifies shear of the string.\n"
18744 " just (PLFLT, input) : Specifies the position of the string relative\n"
18745 " to its reference point. If just=0. , the reference point is at\n"
18746 " the left and if just=1. , it is at the right of the string. Other\n"
18747 " values of just give intermediate justifications.\n"
18749 " text (PLCHAR_VECTOR, input) : A UTF-8 character string to be\n"
18754 "Random number generator returning a real random number in the range [0,1]\n"
18758 " Random number generator returning a real random number in the range\n"
18759 " [0,1]. The generator is based on the Mersenne Twister. Most languages\n"
18760 " / compilers provide their own random number generator, and so this is\n"
18761 " provided purely for convenience and to give a consistent random number\n"
18762 " generator across all languages supported by PLplot. This is\n"
18763 " particularly useful for comparing results from the test suite of\n"
18766 " Redacted form: plrandd()\n"
18768 " This function is used in examples 17 and 21.\n"
18778 "Replays contents of plot buffer to current device/file\n"
18782 " Replays contents of plot buffer to current device/file.\n"
18784 " Redacted form: plreplot()\n"
18786 " This function is used in example 1,20.\n"
18796 "Convert RGB color to HLS\n"
18800 " Convert RGB color coordinates to HLS\n"
18802 " Redacted form: General: plrgbhls(r, g, b, p_h, p_l, p_s)\n"
18805 " This function is used in example 2.\n"
18811 "plrgbhls(r, g, b, p_h, p_l, p_s)\n"
18815 " r (PLFLT, input) : Red intensity (0.0-1.0) of the color.\n"
18817 " g (PLFLT, input) : Green intensity (0.0-1.0) of the color.\n"
18819 " b (PLFLT, input) : Blue intensity (0.0-1.0) of the color.\n"
18821 " p_h (PLFLT_NC_SCALAR, output) : Returned value of the hue in\n"
18822 " degrees (0.0-360.0) on the color cylinder.\n"
18824 " p_l (PLFLT_NC_SCALAR, output) : Returned value of the lightness\n"
18825 " expressed as a fraction (0.0-1.0) of the axis of the color\n"
18828 " p_s (PLFLT_NC_SCALAR, output) : Returned value of the saturation\n"
18829 " expressed as a fraction (0.0-1.0) of the radius of the color\n"
18834 "Set character size\n"
18838 " This sets up the size of all subsequent characters drawn. The actual\n"
18839 " height of a character is the product of the default character size and\n"
18840 " a scaling factor.\n"
18842 " Redacted form: plschr(def, scale)\n"
18844 " This function is used in examples 2, 13, 23, and 24.\n"
18850 "plschr(def, scale)\n"
18854 " def (PLFLT, input) : The default height of a character in\n"
18855 " millimeters, should be set to zero if the default height is to\n"
18856 " remain unchanged. For rasterized drivers the dx and dy values\n"
18857 " specified in plspage are used to convert from mm to pixels (note\n"
18858 " the different unit systems used). This dpi aware scaling is not\n"
18859 " implemented for all drivers yet.\n"
18861 " scale (PLFLT, input) : Scale factor to be applied to default to get\n"
18862 " actual character height.\n"
18866 "Set cmap0 colors by 8-bit RGB values\n"
18870 " Set cmap0 colors using 8-bit RGB values (see the PLplot\n"
18871 " documentation). This sets the entire color map -- only as many colors\n"
18872 " as specified will be allocated.\n"
18874 " Redacted form: plscmap0(r, g, b)\n"
18876 " This function is used in examples 2 and 24.\n"
18882 "plscmap0(r, g, b, ncol0)\n"
18886 " r (PLINT_VECTOR, input) : A vector containing unsigned 8-bit\n"
18887 " integers (0-255) representing the degree of red in the color.\n"
18889 " g (PLINT_VECTOR, input) : A vector containing unsigned 8-bit\n"
18890 " integers (0-255) representing the degree of green in the color.\n"
18892 " b (PLINT_VECTOR, input) : A vector containing unsigned 8-bit\n"
18893 " integers (0-255) representing the degree of blue in the color.\n"
18895 " ncol0 (PLINT, input) : Number of items in the r, g, and b vectors.\n"
18899 "Set cmap0 colors by 8-bit RGB values and PLFLT alpha transparency value\n"
18903 " Set cmap0 colors using 8-bit RGB values (see the PLplot documentation)\n"
18904 " and PLFLT alpha transparency value. This sets the entire color map --\n"
18905 " only as many colors as specified will be allocated.\n"
18907 " Redacted form: plscmap0a(r, g, b, alpha)\n"
18909 " This function is used in examples 30.\n"
18915 "plscmap0a(r, g, b, alpha, ncol0)\n"
18919 " r (PLINT_VECTOR, input) : A vector containing unsigned 8-bit\n"
18920 " integers (0-255) representing the degree of red in the color.\n"
18922 " g (PLINT_VECTOR, input) : A vector containing unsigned 8-bit\n"
18923 " integers (0-255) representing the degree of green in the color.\n"
18925 " b (PLINT_VECTOR, input) : A vector containing unsigned 8-bit\n"
18926 " integers (0-255) representing the degree of blue in the color.\n"
18928 " alpha (PLFLT_VECTOR, input) : A vector containing values (0.0-1.0)\n"
18929 " representing the alpha transparency of the color.\n"
18931 " ncol0 (PLINT, input) : Number of items in the r, g, b, and alpha\n"
18936 "Set number of colors in cmap0\n"
18940 " Set number of colors in cmap0 (see the PLplot documentation). Allocate\n"
18941 " (or reallocate) cmap0, and fill with default values for those colors\n"
18942 " not previously allocated. The first 16 default colors are given in\n"
18943 " the plcol0 documentation. For larger indices the default color is\n"
18946 " The drivers are not guaranteed to support more than 16 colors.\n"
18948 " Redacted form: plscmap0n(ncol0)\n"
18950 " This function is used in examples 15, 16, and 24.\n"
18956 "plscmap0n(ncol0)\n"
18960 " ncol0 (PLINT, input) : Number of colors that will be allocated in\n"
18961 " the cmap0 palette. If this number is zero or less, then the value\n"
18962 " from the previous call to plscmap0n is used and if there is no\n"
18963 " previous call, then a default value is used.\n"
18967 "Set opaque RGB cmap1 colors values\n"
18971 " Set opaque cmap1 colors (see the PLplot documentation) using RGB\n"
18972 " vector values. This function also sets the number of cmap1 colors.\n"
18973 " N.B. Continuous cmap1 colors are indexed with a floating-point index\n"
18974 " in the range from 0.0-1.0 which is linearly transformed (e.g., by\n"
18975 " plcol1) to an integer index of these RGB vectors in the range from 0\n"
18977 " ncol1-1. So in order for this continuous color model to work\n"
18978 " properly, it is the responsibility of the user of plscmap1 to insure\n"
18979 " that these RGB vectors are continuous functions of their integer\n"
18982 " Redacted form: plscmap1(r, g, b)\n"
18984 " This function is used in example 31.\n"
18990 "plscmap1(r, g, b, ncol1)\n"
18994 " r (PLINT_VECTOR, input) : A vector that represents (using unsigned\n"
18995 " 8-bit integers in the range from 0-255) the degree of red in the\n"
18996 " color as a continuous function of the integer index of the vector.\n"
18998 " g (PLINT_VECTOR, input) : A vector that represents (using unsigned\n"
18999 " 8-bit integers in the range from 0-255) the degree of green in the\n"
19000 " color as a continuous function of the integer index of the vector.\n"
19002 " b (PLINT_VECTOR, input) : A vector that represents (using unsigned\n"
19003 " 8-bit integers in the range from 0-255) the degree of blue in the\n"
19004 " color as a continuous function of the integer index of the vector.\n"
19006 " ncol1 (PLINT, input) : Number of items in the r, g, and b vectors.\n"
19010 "Set semitransparent cmap1 RGBA colors.\n"
19014 " Set semitransparent cmap1 colors (see the PLplot documentation) using\n"
19015 " RGBA vector values. This function also sets the number of cmap1\n"
19016 " colors. N.B. Continuous cmap1 colors are indexed with a\n"
19017 " floating-point index in the range from 0.0-1.0 which is linearly\n"
19018 " transformed (e.g., by plcol1) to an integer index of these RGBA\n"
19019 " vectors in the range from 0 to\n"
19020 " ncol1-1. So in order for this continuous color model to work\n"
19021 " properly, it is the responsibility of the user of plscmap1 to insure\n"
19022 " that these RGBA vectors are continuous functions of their integer\n"
19025 " Redacted form: plscmap1a(r, g, b, alpha)\n"
19027 " This function is used in example 31.\n"
19033 "plscmap1a(r, g, b, alpha, ncol1)\n"
19037 " r (PLINT_VECTOR, input) : A vector that represents (using unsigned\n"
19038 " 8-bit integers in the range from 0-255) the degree of red in the\n"
19039 " color as a continuous function of the integer index of the vector.\n"
19041 " g (PLINT_VECTOR, input) : A vector that represents (using unsigned\n"
19042 " 8-bit integers in the range from 0-255) the degree of green in the\n"
19043 " color as a continuous function of the integer index of the vector.\n"
19045 " b (PLINT_VECTOR, input) : A vector that represents (using unsigned\n"
19046 " 8-bit integers in the range from 0-255) the degree of blue in the\n"
19047 " color as a continuous function of the integer index of the vector.\n"
19049 " alpha (PLFLT_VECTOR, input) : A vector that represents (using PLFLT\n"
19050 " values in the range from 0.0-1.0 where 0.0 corresponds to\n"
19051 " completely transparent and 1.0 corresponds to completely opaque)\n"
19052 " the alpha transparency of the color as a continuous function of\n"
19053 " the integer index of the vector.\n"
19055 " ncol1 (PLINT, input) : Number of items in the r, g, b, and alpha\n"
19060 "Set cmap1 colors using a piece-wise linear relationship\n"
19064 " Set cmap1 colors using a piece-wise linear relationship between the\n"
19065 " cmap1 intensity index (0.0-1.0) and position in HLS or RGB color space\n"
19066 " (see the PLplot documentation). May be called at any time.\n"
19068 " The idea here is to specify a number of control points that define the\n"
19069 " mapping between input cmap1 intensity indices and HLS or RGB. Between\n"
19070 " these points, linear interpolation is used which gives a smooth\n"
19071 " variation of color with intensity index. Any number of control points\n"
19072 " may be specified, located at arbitrary positions, although typically 2\n"
19073 " - 4 are enough. Another way of stating this is that we are traversing\n"
19074 " a given number of lines through HLS or RGB space as we move through\n"
19075 " cmap1 intensity indices. The control points at the minimum and\n"
19076 " maximum position (0 and 1) must always be specified. By adding more\n"
19077 " control points you can get more variation. One good technique for\n"
19078 " plotting functions that vary about some expected average is to use an\n"
19079 " additional 2 control points in the center (position ~= 0.5) that are\n"
19080 " the same lightness as the background (typically white for paper\n"
19081 " output, black for crt), and same hue as the boundary control points.\n"
19082 " This allows the highs and lows to be very easily distinguished.\n"
19084 " Each control point must specify the cmap1 intensity index and the\n"
19085 " associated three coordinates in HLS or RGB space. The first point\n"
19086 " must correspond to position = 0, and the last to position = 1.\n"
19088 " If RGB colors are provided then the interpolation takes place in RGB\n"
19089 " space and is trivial. However if HLS colors are provided then, because\n"
19090 " of the circular nature of the color wheel for the hue coordinate, the\n"
19091 " interpolation could be performed in either direction around the color\n"
19092 " wheel. The default behaviour is for the hue to be linearly\n"
19093 " interpolated ignoring this circular property of hue. So for example,\n"
19094 " the hues 0 (red) and 240 (blue) will get interpolated via yellow,\n"
19095 " green and cyan. If instead you wish to interpolate the other way\n"
19096 " around the color wheel you have two options. You may provide hues\n"
19097 " outside the range [0, 360), so by using a hue of -120 for blue or 360\n"
19098 " for red the interpolation will proceed via magenta. Alternatively you\n"
19099 " can utilise the alt_hue_path variable to reverse the direction of\n"
19100 " interpolation if you need to provide hues within the [0-360) range.\n"
19102 " Examples of interpolation Huealt_hue_pathcolor scheme[120\n"
19103 " 240]falsegreen-cyan-blue[240 120]falseblue-cyan-green[120\n"
19104 " -120]falsegreen-yellow-red-magenta-blue[240\n"
19105 " 480]falseblue-magenta-red-yellow-green[120\n"
19106 " 240]truegreen-yellow-red-magenta-blue[240\n"
19107 " 120]trueblue-magenta-red-yellow-green\n"
19109 " Bounds on coordinatesRGBR[0, 1]magnitudeRGBG[0, 1]magnitudeRGBB[0,\n"
19110 " 1]magnitudeHLShue[0, 360]degreesHLSlightness[0,\n"
19111 " 1]magnitudeHLSsaturation[0, 1]magnitude\n"
19113 " Redacted form: plscmap1l(itype, intensity, coord1, coord2, coord3,\n"
19116 " This function is used in examples 8, 11, 12, 15, 20, and 21.\n"
19122 "plscmap1l(itype, npts, intensity, coord1, coord2, coord3, alt_hue_path)\n"
19126 " itype (PLBOOL, input) : true: RGB, false: HLS.\n"
19128 " npts (PLINT, input) : number of control points\n"
19130 " intensity (PLFLT_VECTOR, input) : A vector containing the cmap1\n"
19131 " intensity index (0.0-1.0) in ascending order for each control\n"
19134 " coord1 (PLFLT_VECTOR, input) : A vector containing the first\n"
19135 " coordinate (H or R) for each control point.\n"
19137 " coord2 (PLFLT_VECTOR, input) : A vector containing the second\n"
19138 " coordinate (L or G) for each control point.\n"
19140 " coord3 (PLFLT_VECTOR, input) : A vector containing the third\n"
19141 " coordinate (S or B) for each control point.\n"
19143 " alt_hue_path (PLBOOL_VECTOR, input) : A vector (with\n"
19144 " npts - 1 elements), each containing either true to use the reversed\n"
19145 " HLS interpolation or false to use the regular HLS interpolation.\n"
19146 " (alt_hue_path[i] refers to the interpolation interval between the\n"
19147 " i and i + 1 control points). This parameter is not used for RGB\n"
19149 " itype = true).\n"
19153 "Set cmap1 colors and alpha transparency using a piece-wise linear relationship\n"
19157 " This is a variant of plscmap1l that supports alpha channel\n"
19158 " transparency. It sets cmap1 colors using a piece-wise linear\n"
19159 " relationship between cmap1 intensity index (0.0-1.0) and position in\n"
19160 " HLS or RGB color space (see the PLplot documentation) with alpha\n"
19161 " transparency value (0.0-1.0). It may be called at any time.\n"
19163 " Redacted form: plscmap1la(itype, intensity, coord1, coord2, coord3,\n"
19164 " alpha, alt_hue_path)\n"
19166 " This function is used in example 30.\n"
19172 "plscmap1la(itype, npts, intensity, coord1, coord2, coord3, alpha, alt_hue_path)\n"
19176 " itype (PLBOOL, input) : true: RGB, false: HLS.\n"
19178 " npts (PLINT, input) : number of control points.\n"
19180 " intensity (PLFLT_VECTOR, input) : A vector containing the cmap1\n"
19181 " intensity index (0.0-1.0) in ascending order for each control\n"
19184 " coord1 (PLFLT_VECTOR, input) : A vector containing the first\n"
19185 " coordinate (H or R) for each control point.\n"
19187 " coord2 (PLFLT_VECTOR, input) : A vector containing the second\n"
19188 " coordinate (L or G) for each control point.\n"
19190 " coord3 (PLFLT_VECTOR, input) : A vector containing the third\n"
19191 " coordinate (S or B) for each control point.\n"
19193 " alpha (PLFLT_VECTOR, input) : A vector containing the alpha\n"
19194 " transparency value (0.0-1.0) for each control point.\n"
19196 " alt_hue_path (PLBOOL_VECTOR, input) : A vector (with\n"
19197 " npts - 1 elements) containing the alternative interpolation method\n"
19198 " Boolean value for each control point interval. (alt_hue_path[i]\n"
19199 " refers to the interpolation interval between the i and i + 1\n"
19200 " control points).\n"
19204 "Set number of colors in cmap1\n"
19208 " Set number of colors in cmap1, (re-)allocate cmap1, and set default\n"
19209 " values if this is the first allocation (see the PLplot documentation).\n"
19211 " Redacted form: plscmap1n(ncol1)\n"
19213 " This function is used in examples 8, 11, 20, and 21.\n"
19219 "plscmap1n(ncol1)\n"
19223 " ncol1 (PLINT, input) : Number of colors that will be allocated in\n"
19224 " the cmap1 palette. If this number is zero or less, then the value\n"
19225 " from the previous call to plscmap1n is used and if there is no\n"
19226 " previous call, then a default value is used.\n"
19230 "Set the cmap1 argument range for continuous color plots\n"
19234 " Set the cmap1 argument range for continuous color plots that\n"
19235 " corresponds to the range of data values. The maximum range\n"
19236 " corresponding to the entire cmap1 palette is 0.0-1.0, and the smaller\n"
19237 " the cmap1 argument range that is specified with this routine, the\n"
19238 " smaller the subset of the cmap1 color palette that is used to\n"
19239 " represent the continuous data being plotted. If\n"
19240 " min_color is greater than\n"
19242 " max_color is greater than 1.0 or\n"
19243 " min_color is less than 0.0 then no change is made to the cmap1\n"
19244 " argument range. (Use plgcmap1_range to get the cmap1 argument range.)\n"
19246 " Redacted form: plscmap1_range(min_color, max_color)\n"
19248 " This function is currently used in example 33.\n"
19254 "plscmap1_range(min_color, max_color)\n"
19258 " min_color (PLFLT, input) : The minimum cmap1 argument. If less\n"
19259 " than 0.0, then 0.0 is used instead.\n"
19261 " max_color (PLFLT, input) : The maximum cmap1 argument. If greater\n"
19262 " than 1.0, then 1.0 is used instead.\n"
19266 "Get the cmap1 argument range for continuous color plots\n"
19270 " Get the cmap1 argument range for continuous color plots. (Use\n"
19271 " plscmap1_range to set the cmap1 argument range.)\n"
19273 " Redacted form: plgcmap1_range(min_color, max_color)\n"
19275 " This function is currently not used in any example.\n"
19281 "plgcmap1_range(min_color, max_color)\n"
19285 " min_color (PLFLT_NC_SCALAR, output) : Returned value of the current\n"
19286 " minimum cmap1 argument.\n"
19288 " max_color (PLFLT_NC_SCALAR, output) : Returned value of the current\n"
19289 " maximum cmap1 argument.\n"
19293 "Set 8-bit RGB values for given cmap0 color index\n"
19297 " Set 8-bit RGB values for given cmap0 (see the PLplot documentation)\n"
19298 " index. Overwrites the previous color value for the given index and,\n"
19299 " thus, does not result in any additional allocation of space for\n"
19302 " Redacted form: plscol0(icol0, r, g, b)\n"
19304 " This function is used in any example 31.\n"
19310 "plscol0(icol0, r, g, b)\n"
19314 " icol0 (PLINT, input) : Color index. Must be less than the maximum\n"
19315 " number of colors (which is set by default, by plscmap0n, or even\n"
19318 " r (PLINT, input) : Unsigned 8-bit integer (0-255) representing the\n"
19319 " degree of red in the color.\n"
19321 " g (PLINT, input) : Unsigned 8-bit integer (0-255) representing the\n"
19322 " degree of green in the color.\n"
19324 " b (PLINT, input) : Unsigned 8-bit integer (0-255) representing the\n"
19325 " degree of blue in the color.\n"
19329 "Set 8-bit RGB values and PLFLT alpha transparency value for given cmap0 color index\n"
19333 " Set 8-bit RGB value and PLFLT alpha transparency value for given cmap0\n"
19334 " (see the PLplot documentation) index. Overwrites the previous color\n"
19335 " value for the given index and, thus, does not result in any additional\n"
19336 " allocation of space for colors.\n"
19338 " This function is used in example 30.\n"
19344 "plscol0a(icol0, r, g, b, alpha)\n"
19348 " icol0 (PLINT, input) : Color index. Must be less than the maximum\n"
19349 " number of colors (which is set by default, by plscmap0n, or even\n"
19352 " r (PLINT, input) : Unsigned 8-bit integer (0-255) representing the\n"
19353 " degree of red in the color.\n"
19355 " g (PLINT, input) : Unsigned 8-bit integer (0-255) representing the\n"
19356 " degree of green in the color.\n"
19358 " b (PLINT, input) : Unsigned 8-bit integer (0-255) representing the\n"
19359 " degree of blue in the color.\n"
19361 " alpha (PLFLT, input) : Value of the alpha transparency in the range\n"
19366 "Set the background color by 8-bit RGB value\n"
19370 " Set the background color (color 0 in cmap0) by 8-bit RGB value (see\n"
19371 " the PLplot documentation).\n"
19373 " Redacted form: plscolbg(r, g, b)\n"
19375 " This function is used in examples 15 and 31.\n"
19381 "plscolbg(r, g, b)\n"
19385 " r (PLINT, input) : Unsigned 8-bit integer (0-255) representing the\n"
19386 " degree of red in the color.\n"
19388 " g (PLINT, input) : Unsigned 8-bit integer (0-255) representing the\n"
19389 " degree of green in the color.\n"
19391 " b (PLINT, input) : Unsigned 8-bit integer (0-255) representing the\n"
19392 " degree of blue in the color.\n"
19396 "Set the background color by 8-bit RGB value and PLFLT alpha transparency value.\n"
19400 " Set the background color (color 0 in cmap0) by 8-bit RGB value and\n"
19401 " PLFLT alpha transparency value (see the PLplot documentation).\n"
19403 " This function is used in example 31.\n"
19409 "plscolbga(r, g, b, alpha)\n"
19413 " r (PLINT, input) : Unsigned 8-bit integer (0-255) representing the\n"
19414 " degree of red in the color.\n"
19416 " g (PLINT, input) : Unsigned 8-bit integer (0-255) representing the\n"
19417 " degree of green in the color.\n"
19419 " b (PLINT, input) : Unsigned 8-bit integer (0-255) representing the\n"
19420 " degree of blue in the color.\n"
19422 " alpha (PLFLT, input) : Value of the alpha transparency in the range\n"
19427 "Used to globally turn color output on/off\n"
19431 " Used to globally turn color output on/off for those drivers/devices\n"
19432 " that support it.\n"
19434 " Redacted form: plscolor(color)\n"
19436 " This function is used in example 31.\n"
19442 "plscolor(color)\n"
19446 " color (PLINT, input) : Color flag (Boolean). If zero, color is\n"
19447 " turned off. If non-zero, color is turned on.\n"
19451 "Set device-compression level\n"
19455 " Set device-compression level. Only used for drivers that provide\n"
19456 " compression. This function, if used, should be invoked before a call\n"
19459 " Redacted form: plscompression(compression)\n"
19461 " This function is used in example 31.\n"
19467 "plscompression(compression)\n"
19471 " compression (PLINT, input) : The desired compression level. This is\n"
19472 " a device-dependent value. Currently only the jpeg and png devices\n"
19473 " use these values. For jpeg value is the jpeg quality which should\n"
19474 " normally be in the range 0-95. Higher values denote higher quality\n"
19475 " and hence larger image sizes. For png values are in the range -1\n"
19476 " to 99. Values of 0-9 are taken as the compression level for zlib.\n"
19477 " A value of -1 denotes the default zlib compression level. Values\n"
19478 " in the range 10-99 are divided by 10 and then used as the zlib\n"
19479 " compression level. Higher compression levels correspond to greater\n"
19480 " compression and small file sizes at the expense of more\n"
19485 "Set the device (keyword) name\n"
19489 " Set the device (keyword) name.\n"
19491 " Redacted form: plsdev(devname)\n"
19493 " This function is used in examples 1, 14, and 20.\n"
19499 "plsdev(devname)\n"
19503 " devname (PLCHAR_VECTOR, input) : An ascii character string\n"
19504 " containing the device name keyword of the required output device.\n"
19506 " devname is NULL or if the first character of the string is a ``?'',\n"
19507 " the normal (prompted) start up is used.\n"
19511 "Set parameters that define current device-space window\n"
19515 " Set relative margin width, aspect ratio, and relative justification\n"
19516 " that define current device-space window. If you want to just use the\n"
19517 " previous value for any of these, just pass in the magic value\n"
19518 " PL_NOTSET. It is unlikely that one should ever need to change the\n"
19519 " aspect ratio but it's in there for completeness. If plsdidev is not\n"
19520 " called the default values of mar, jx, and jy are all 0. aspect is set\n"
19521 " to a device-specific value.\n"
19523 " Redacted form: plsdidev(mar, aspect, jx, jy)\n"
19525 " This function is used in example 31.\n"
19531 "plsdidev(mar, aspect, jx, jy)\n"
19535 " mar (PLFLT, input) : Relative margin width.\n"
19537 " aspect (PLFLT, input) : Aspect ratio.\n"
19539 " jx (PLFLT, input) : Relative justification in x. Value must lie in\n"
19540 " the range -0.5 to 0.5.\n"
19542 " jy (PLFLT, input) : Relative justification in y. Value must lie in\n"
19543 " the range -0.5 to 0.5.\n"
19547 "Set up transformation from metafile coordinates\n"
19551 " Set up transformation from metafile coordinates. The size of the plot\n"
19552 " is scaled so as to preserve aspect ratio. This isn't intended to be a\n"
19553 " general-purpose facility just yet (not sure why the user would need\n"
19556 " Redacted form: plsdimap(dimxmin, dimxmax, dimymin, dimymax, dimxpmm,\n"
19559 " This function is not used in any examples.\n"
19565 "plsdimap(dimxmin, dimxmax, dimymin, dimymax, dimxpmm, dimypmm)\n"
19569 " dimxmin (PLINT, input) : NEEDS DOCUMENTATION\n"
19571 " dimxmax (PLINT, input) : NEEDS DOCUMENTATION\n"
19573 " dimymin (PLINT, input) : NEEDS DOCUMENTATION\n"
19575 " dimymax (PLINT, input) : NEEDS DOCUMENTATION\n"
19577 " dimxpmm (PLFLT, input) : NEEDS DOCUMENTATION\n"
19579 " dimypmm (PLFLT, input) : NEEDS DOCUMENTATION\n"
19583 "Set plot orientation\n"
19587 " Set plot orientation parameter which is multiplied by 90 degrees to\n"
19588 " obtain the angle of rotation. Note, arbitrary rotation parameters\n"
19589 " such as 0.2 (corresponding to 18 degrees) are possible, but the usual\n"
19590 " values for the rotation parameter are 0., 1., 2., and 3. corresponding\n"
19591 " to 0 degrees (landscape mode), 90 degrees (portrait mode), 180 degrees\n"
19592 " (seascape mode), and 270 degrees (upside-down mode). If plsdiori is\n"
19593 " not called the default value of rot is 0.\n"
19595 " N.B. aspect ratio is unaffected by calls to plsdiori. So you will\n"
19596 " probably want to change the aspect ratio to a value suitable for the\n"
19597 " plot orientation using a call to plsdidev or the command-line options\n"
19598 " -a or -freeaspect. For more documentation of those options see the\n"
19599 " PLplot documentation. Such command-line options can be set internally\n"
19600 " using plsetopt or set directly using the command line and parsed using\n"
19601 " a call to plparseopts.\n"
19603 " Redacted form: plsdiori(rot)\n"
19605 " This function is not used in any examples.\n"
19615 " rot (PLFLT, input) : Plot orientation parameter.\n"
19619 "Set parameters that define current plot-space window\n"
19623 " Set relative minima and maxima that define the current plot-space\n"
19624 " window. If plsdiplt is not called the default values of xmin, ymin,\n"
19625 " xmax, and ymax are 0., 0., 1., and 1.\n"
19627 " Redacted form: plsdiplt(xmin, ymin, xmax, ymax)\n"
19629 " This function is used in example 31.\n"
19635 "plsdiplt(xmin, ymin, xmax, ymax)\n"
19639 " xmin (PLFLT, input) : Relative minimum in x.\n"
19641 " ymin (PLFLT, input) : Relative minimum in y.\n"
19643 " xmax (PLFLT, input) : Relative maximum in x.\n"
19645 " ymax (PLFLT, input) : Relative maximum in y.\n"
19649 "Set parameters incrementally (zoom mode) that define current plot-space window\n"
19653 " Set relative minima and maxima incrementally (zoom mode) that define\n"
19654 " the current plot-space window. This function has the same effect as\n"
19655 " plsdiplt if that function has not been previously called. Otherwise,\n"
19656 " this function implements zoom mode using the transformation min_used =\n"
19657 " old_min + old_length*min and max_used = old_min + old_length*max for\n"
19658 " each axis. For example, if min = 0.05 and max = 0.95 for each axis,\n"
19659 " repeated calls to plsdiplz will zoom in by 10 per cent for each call.\n"
19661 " Redacted form: plsdiplz(xmin, ymin, xmax, ymax)\n"
19663 " This function is used in example 31.\n"
19669 "plsdiplz(xmin, ymin, xmax, ymax)\n"
19673 " xmin (PLFLT, input) : Relative (incremental) minimum in x.\n"
19675 " ymin (PLFLT, input) : Relative (incremental) minimum in y.\n"
19677 " xmax (PLFLT, input) : Relative (incremental) maximum in x.\n"
19679 " ymax (PLFLT, input) : Relative (incremental) maximum in y.\n"
19683 "Set seed for internal random number generator.\n"
19687 " Set the seed for the internal random number generator. See plrandd for\n"
19688 " further details.\n"
19690 " Redacted form: plseed(seed)\n"
19692 " This function is used in example 21.\n"
19702 " seed (unsigned int, input) : Seed for random number generator.\n"
19706 "Set the escape character for text strings\n"
19710 " Set the escape character for text strings. From C (in contrast to\n"
19711 " Fortran, see plsescfortran) you pass esc as a character. Only selected\n"
19712 " characters are allowed to prevent the user from shooting himself in\n"
19713 " the foot (For example, a \\ isn't allowed since it conflicts with C's\n"
19714 " use of backslash as a character escape). Here are the allowed escape\n"
19715 " characters and their corresponding decimal ASCII values: !, ASCII 33\n"
19726 " Redacted form: General: plsesc(esc)\n"
19729 " This function is used in example 29.\n"
19739 " esc (char, input) : Escape character.\n"
19743 "Set any command-line option\n"
19747 " Set any command-line option internally from a program before it\n"
19748 " invokes plinit. opt is the name of the command-line option and optarg\n"
19749 " is the corresponding command-line option argument.\n"
19751 " This function returns 0 on success.\n"
19753 " Redacted form: plsetopt(opt, optarg)\n"
19755 " This function is used in example 14.\n"
19761 "PLINT plsetopt(opt, optarg)\n"
19765 " opt (PLCHAR_VECTOR, input) : An ascii character string containing\n"
19766 " the command-line option.\n"
19768 " optarg (PLCHAR_VECTOR, input) : An ascii character string\n"
19769 " containing the argument of the command-line option.\n"
19773 "Set family file parameters\n"
19777 " Sets variables dealing with output file familying. Does nothing if\n"
19778 " familying not supported by the driver. This routine, if used, must be\n"
19779 " called before initializing PLplot. See the PLplot documentation for\n"
19780 " more information.\n"
19782 " Redacted form: plsfam(fam, num, bmax)\n"
19784 " This function is used in examples 14 and 31.\n"
19790 "plsfam(fam, num, bmax)\n"
19794 " fam (PLINT, input) : Family flag (Boolean). If nonzero, familying\n"
19797 " num (PLINT, input) : Current family file number.\n"
19799 " bmax (PLINT, input) : Maximum file size (in bytes) for a family\n"
19804 "Set FCI (font characterization integer)\n"
19808 " Sets font characteristics to be used at the start of the next string\n"
19809 " using the FCI approach. See the PLplot documentation for more\n"
19810 " information. Note, plsfont (which calls plsfci internally) provides a\n"
19811 " more user-friendly API for setting the font characterisitics.\n"
19813 " Redacted form: General: plsfci(fci)\n"
19816 " This function is used in example 23.\n"
19826 " fci (PLUNICODE, input) : PLUNICODE (unsigned 32-bit integer) value\n"
19831 "Set output file name\n"
19835 " Sets the current output file name, if applicable. If the file name\n"
19836 " has not been specified and is required by the driver, the user will be\n"
19837 " prompted for it. If using the X-windows output driver, this sets the\n"
19838 " display name. This routine, if used, must be called before\n"
19839 " initializing PLplot.\n"
19841 " Redacted form: plsfnam(fnam)\n"
19843 " This function is used in examples 1 and 20.\n"
19853 " fnam (PLCHAR_VECTOR, input) : An ascii character string containing\n"
19854 " the file name.\n"
19858 "Set family, style and weight of the current font\n"
19862 " Sets the current font. See the PLplot documentation for more\n"
19863 " information on font selection.\n"
19865 " Redacted form: plsfont(family, style, weight)\n"
19867 " This function is used in example 23.\n"
19873 "plsfont(family, style, weight)\n"
19877 " family (PLINT, input) : Font family to select for the current font.\n"
19878 " The available values are given by the PL_FCI_* constants in\n"
19879 " plplot.h. Current options are PL_FCI_SANS, PL_FCI_SERIF,\n"
19880 " PL_FCI_MONO, PL_FCI_SCRIPT and PL_FCI_SYMBOL. A negative value\n"
19881 " signifies that the font family should not be altered.\n"
19883 " style (PLINT, input) : Font style to select for the current font.\n"
19884 " The available values are given by the PL_FCI_* constants in\n"
19885 " plplot.h. Current options are PL_FCI_UPRIGHT, PL_FCI_ITALIC and\n"
19886 " PL_FCI_OBLIQUE. A negative value signifies that the font style\n"
19887 " should not be altered.\n"
19889 " weight (PLINT, input) : Font weight to select for the current font.\n"
19890 " The available values are given by the PL_FCI_* constants in\n"
19891 " plplot.h. Current options are PL_FCI_MEDIUM and PL_FCI_BOLD. A\n"
19892 " negative value signifies that the font weight should not be\n"
19897 "Shade regions on the basis of value\n"
19901 " Shade regions on the basis of value. This is the high-level routine\n"
19902 " for making continuous color shaded plots with cmap1 while plshade\n"
19903 " should be used to plot individual shaded regions using either cmap0 or\n"
19904 " cmap1. examples/;<language>/x16* shows how to use plshades for each of\n"
19905 " our supported languages.\n"
19907 " Redacted form: General: plshades(a, defined, xmin, xmax, ymin, ymax,\n"
19908 " clevel, fill_width, cont_color, cont_width, fill, rectangular, pltr,\n"
19912 " This function is used in examples 16, 21, and 22.\n"
19918 "plshades(a, nx, ny, defined, xmin, xmax, ymin, ymax, clevel, nlevel, fill_width, cont_color, cont_width, fill, rectangular, pltr, pltr_data)\n"
19922 " a (PLFLT_MATRIX, input) : A matrix containing function values to\n"
19923 " plot. Should have dimensions of\n"
19927 " nx (PLINT, input) : First dimension of matrix \"a\".\n"
19929 " ny (PLINT, input) : Second dimension of matrix \"a\".\n"
19931 " defined (PLDEFINED_callback, input) : Callback function specifying\n"
19932 " the region that should be plotted in the shade plot. This\n"
19933 " function accepts x and y coordinates as input arguments and must\n"
19934 " return 1 if the point is to be included in the shade plot and 0\n"
19935 " otherwise. If you want to plot the entire shade plot (the usual\n"
19936 " case), this argument should be set to NULL.\n"
19938 " xmin, xmax, ymin, ymax (PLFLT, input) : See the discussion of\n"
19939 " pltr below for how these arguments are used (only for the special case\n"
19940 " when the callback function\n"
19941 " pltr is not supplied).\n"
19943 " clevel (PLFLT_VECTOR, input) : A vector containing the data levels\n"
19944 " corresponding to the edges of each shaded region that will be\n"
19945 " plotted by this function. To work properly the levels should be\n"
19948 " nlevel (PLINT, input) : Number of shades plus 1 (i.e., the number\n"
19949 " of shade edge values in clevel).\n"
19951 " fill_width (PLFLT, input) : Defines the line width used by the fill\n"
19954 " cont_color (PLINT, input) : Defines cmap0 pen color used for\n"
19955 " contours defining edges of shaded regions. The pen color is only\n"
19956 " temporary set for the contour drawing. Set this value to zero or\n"
19957 " less if no shade edge contours are wanted.\n"
19959 " cont_width (PLFLT, input) : Defines line width used for contours\n"
19960 " defining edges of shaded regions. This value may not be honored\n"
19961 " by all drivers. The pen width is only temporary set for the\n"
19962 " contour drawing. Set this value to zero or less if no shade edge\n"
19963 " contours are wanted.\n"
19965 " fill (PLFILL_callback, input) : Callback routine used to fill the\n"
19966 " region. Use plfill for this purpose.\n"
19968 " rectangular (PLBOOL, input) : Set rectangular to true if rectangles\n"
19969 " map to rectangles after coordinate transformation with pltrl.\n"
19970 " Otherwise, set rectangular to false. If rectangular is set to\n"
19971 " true, plshade tries to save time by filling large rectangles.\n"
19972 " This optimization fails if the coordinate transformation distorts\n"
19973 " the shape of rectangles. For example a plot in polar coordinates\n"
19974 " has to have rectangular set to false.\n"
19976 " pltr (PLTRANSFORM_callback, input) : A callback function that\n"
19977 " defines the transformation between the zero-based indices of the\n"
19978 " matrix a and world coordinates. If\n"
19979 " pltr is not supplied (e.g., is set to NULL in the C case), then the x\n"
19980 " indices of a are mapped to the range\n"
19982 " xmax and the y indices of a are mapped to the range\n"
19984 " ymax.For the C case, transformation functions are provided in the\n"
19985 " PLplot library: pltr0 for the identity mapping, and pltr1 and\n"
19986 " pltr2 for arbitrary mappings respectively defined by vectors and\n"
19987 " matrices. In addition, C callback routines for the transformation\n"
19988 " can be supplied by the user such as the mypltr function in\n"
19989 " examples/c/x09c.c which provides a general linear transformation\n"
19990 " between index coordinates and world coordinates.For languages\n"
19991 " other than C you should consult the PLplot documentation for the\n"
19992 " details concerning how PLTRANSFORM_callback arguments are\n"
19993 " interfaced. However, in general, a particular pattern of\n"
19994 " callback-associated arguments such as a tr vector with 6 elements;\n"
19995 " xg and yg vectors; or xg and yg matrices are respectively\n"
19996 " interfaced to a linear-transformation routine similar to the above\n"
19997 " mypltr function; pltr1; and pltr2. Furthermore, some of our more\n"
19998 " sophisticated bindings (see, e.g., the PLplot documentation)\n"
19999 " support native language callbacks for handling index to\n"
20000 " world-coordinate transformations. Examples of these various\n"
20001 " approaches are given in examples/<language>x09*,\n"
20002 " examples/<language>x16*, examples/<language>x20*,\n"
20003 " examples/<language>x21*, and examples/<language>x22*, for all our\n"
20004 " supported languages.\n"
20006 " pltr_data (PLPointer, input) : Extra parameter to help pass\n"
20007 " information to pltr0, pltr1, pltr2, or whatever routine that is\n"
20008 " externally supplied.\n"
20012 "Shade individual region on the basis of value\n"
20016 " Shade individual region on the basis of value. Use plshades if you\n"
20017 " want to shade a number of contiguous regions using continuous colors.\n"
20018 " In particular the edge contours are treated properly in plshades. If\n"
20019 " you attempt to do contiguous regions with plshade the contours at the\n"
20020 " edge of the shade are partially obliterated by subsequent plots of\n"
20021 " contiguous shaded regions.\n"
20023 " Redacted form: General: plshade(a, defined, xmin, xmax, ymin, ymax,\n"
20024 " shade_min, shade_max, sh_cmap, sh_color, sh_width, min_color,\n"
20025 " min_width, max_color, max_width, fill, rectangular, pltr, pltr_data)\n"
20028 " This function is used in example 15.\n"
20034 "plshade(a, nx, ny, defined, xmin, xmax, ymin, ymax, shade_min, shade_max, sh_cmap, sh_color, sh_width, min_color, min_width, max_color, max_width, fill, rectangular, pltr, pltr_data)\n"
20038 " a (PLFLT_MATRIX, input) : A matrix containing function values to\n"
20039 " plot. Should have dimensions of\n"
20043 " nx (PLINT, input) : First dimension of the matrix \"a\".\n"
20045 " ny (PLINT, input) : Second dimension of the matrix \"a\".\n"
20047 " defined (PLDEFINED_callback, input) : Callback function specifying\n"
20048 " the region that should be plotted in the shade plot. This\n"
20049 " function accepts x and y coordinates as input arguments and must\n"
20050 " return 1 if the point is to be included in the shade plot and 0\n"
20051 " otherwise. If you want to plot the entire shade plot (the usual\n"
20052 " case), this argument should be set to NULL.\n"
20054 " xmin, xmax, ymin, ymax (PLFLT, input) : See the discussion of\n"
20055 " pltr below for how these arguments are used (only for the special case\n"
20056 " when the callback function\n"
20057 " pltr is not supplied).\n"
20059 " shade_min (PLFLT, input) : Defines the lower end of the interval to\n"
20060 " be shaded. If shade_max <= shade_min, plshade does nothing.\n"
20062 " shade_max (PLFLT, input) : Defines the upper end of the interval to\n"
20063 " be shaded. If shade_max <= shade_min, plshade does nothing.\n"
20065 " sh_cmap (PLINT, input) : Defines color map. If sh_cmap=0, then\n"
20066 " sh_color is interpreted as a cmap0 (integer) index. If sh_cmap=1,\n"
20067 " then sh_color is interpreted as a cmap1 argument in the range\n"
20070 " sh_color (PLFLT, input) : Defines color map index with integer\n"
20071 " value if cmap0 or value in range (0.0-1.0) if cmap1.\n"
20073 " sh_width (PLFLT, input) : Defines width used by the fill pattern.\n"
20075 " min_color (PLINT, input) : Defines pen color, width used by the\n"
20076 " boundary of shaded region. The min values are used for the\n"
20077 " shade_min boundary, and the max values are used on the shade_max\n"
20078 " boundary. Set color and width to zero for no plotted boundaries.\n"
20080 " min_width (PLFLT, input) : Defines pen color, width used by the\n"
20081 " boundary of shaded region. The min values are used for the\n"
20082 " shade_min boundary, and the max values are used on the shade_max\n"
20083 " boundary. Set color and width to zero for no plotted boundaries.\n"
20085 " max_color (PLINT, input) : Defines pen color, width used by the\n"
20086 " boundary of shaded region. The min values are used for the\n"
20087 " shade_min boundary, and the max values are used on the shade_max\n"
20088 " boundary. Set color and width to zero for no plotted boundaries.\n"
20090 " max_width (PLFLT, input) : Defines pen color, width used by the\n"
20091 " boundary of shaded region. The min values are used for the\n"
20092 " shade_min boundary, and the max values are used on the shade_max\n"
20093 " boundary. Set color and width to zero for no plotted boundaries.\n"
20095 " fill (PLFILL_callback, input) : Routine used to fill the region.\n"
20096 " Use plfill. Future version of PLplot may have other fill\n"
20099 " rectangular (PLBOOL, input) : Set rectangular to true if rectangles\n"
20100 " map to rectangles after coordinate transformation with pltrl.\n"
20101 " Otherwise, set rectangular to false. If rectangular is set to\n"
20102 " true, plshade tries to save time by filling large rectangles.\n"
20103 " This optimization fails if the coordinate transformation distorts\n"
20104 " the shape of rectangles. For example a plot in polar coordinates\n"
20105 " has to have rectangular set to false.\n"
20107 " pltr (PLTRANSFORM_callback, input) : A callback function that\n"
20108 " defines the transformation between the zero-based indices of the\n"
20109 " matrix a and world coordinates. If\n"
20110 " pltr is not supplied (e.g., is set to NULL in the C case), then the x\n"
20111 " indices of a are mapped to the range\n"
20113 " xmax and the y indices of a are mapped to the range\n"
20115 " ymax.For the C case, transformation functions are provided in the\n"
20116 " PLplot library: pltr0 for the identity mapping, and pltr1 and\n"
20117 " pltr2 for arbitrary mappings respectively defined by vectors and\n"
20118 " matrices. In addition, C callback routines for the transformation\n"
20119 " can be supplied by the user such as the mypltr function in\n"
20120 " examples/c/x09c.c which provides a general linear transformation\n"
20121 " between index coordinates and world coordinates.For languages\n"
20122 " other than C you should consult the PLplot documentation for the\n"
20123 " details concerning how PLTRANSFORM_callback arguments are\n"
20124 " interfaced. However, in general, a particular pattern of\n"
20125 " callback-associated arguments such as a tr vector with 6 elements;\n"
20126 " xg and yg vectors; or xg and yg matrices are respectively\n"
20127 " interfaced to a linear-transformation routine similar to the above\n"
20128 " mypltr function; pltr1; and pltr2. Furthermore, some of our more\n"
20129 " sophisticated bindings (see, e.g., the PLplot documentation)\n"
20130 " support native language callbacks for handling index to\n"
20131 " world-coordinate transformations. Examples of these various\n"
20132 " approaches are given in examples/<language>x09*,\n"
20133 " examples/<language>x16*, examples/<language>x20*,\n"
20134 " examples/<language>x21*, and examples/<language>x22*, for all our\n"
20135 " supported languages.\n"
20137 " pltr_data (PLPointer, input) : Extra parameter to help pass\n"
20138 " information to pltr0, pltr1, pltr2, or whatever routine that is\n"
20139 " externally supplied.\n"
20143 "Assign a function to use for generating custom axis labels\n"
20147 " This function allows a user to provide their own function to provide\n"
20148 " axis label text. The user function is given the numeric value for a\n"
20149 " point on an axis and returns a string label to correspond with that\n"
20150 " value. Custom axis labels can be enabled by passing appropriate\n"
20151 " arguments to plenv, plbox, plbox3 and similar functions.\n"
20153 " This function is used in example 19.\n"
20159 "plslabelfunc(label_func, label_data)\n"
20163 " label_func (PLLABEL_FUNC_callback, input) : This is the custom\n"
20164 " label function. In order to reset to the default labelling, set\n"
20165 " this to NULL. The labelling function parameters are, in order:\n"
20166 " axis: This indicates which axis a label is being requested for.\n"
20167 " The value will be one of PL_X_AXIS, PL_Y_AXIS or PL_Z_AXIS.\n"
20169 " value: This is the value along the axis which is being labelled.\n"
20171 " label_text: The string representation of the label value.\n"
20173 " length: The maximum length in characters allowed for label_text.\n"
20176 " label_data (PLPointer, input) : This parameter may be used to pass\n"
20177 " data to the label_func function.\n"
20181 "Set length of major ticks\n"
20185 " This sets up the length of the major ticks. The actual length is the\n"
20186 " product of the default length and a scaling factor as for character\n"
20189 " Redacted form: plsmaj(def, scale)\n"
20191 " This function is used in example 29.\n"
20197 "plsmaj(def, scale)\n"
20201 " def (PLFLT, input) : The default length of a major tick in\n"
20202 " millimeters, should be set to zero if the default length is to\n"
20203 " remain unchanged.\n"
20205 " scale (PLFLT, input) : Scale factor to be applied to default to get\n"
20206 " actual tick length.\n"
20210 "Set the memory area to be plotted (RGB)\n"
20214 " Set the memory area to be plotted (with the mem or memcairo driver) as\n"
20215 " the dev member of the stream structure. Also set the number of pixels\n"
20216 " in the memory passed in\n"
20217 " plotmem, which is a block of memory\n"
20219 " maxx by 3 bytes long, say: 480 x 640 x 3 (Y, X, RGB)\n"
20221 " This memory will have to be freed by the user!\n"
20223 " Redacted form: plsmem(maxx, maxy, plotmem)\n"
20225 " This function is not used in any examples.\n"
20231 "plsmem(maxx, maxy, plotmem)\n"
20235 " maxx (PLINT, input) : Size of memory area in the X coordinate.\n"
20237 " maxy (PLINT, input) : Size of memory area in the Y coordinate.\n"
20239 " plotmem (PLPointer, input) : Pointer to the beginning of a\n"
20240 " user-supplied writeable memory area.\n"
20244 "Set the memory area to be plotted (RGBA)\n"
20248 " Set the memory area to be plotted (with the memcairo driver) as the\n"
20249 " dev member of the stream structure. Also set the number of pixels in\n"
20250 " the memory passed in\n"
20251 " plotmem, which is a block of memory\n"
20253 " maxx by 4 bytes long, say: 480 x 640 x 4 (Y, X, RGBA)\n"
20255 " This memory will have to be freed by the user!\n"
20257 " Redacted form: plsmema(maxx, maxy, plotmem)\n"
20259 " This function is not used in any examples.\n"
20265 "plsmema(maxx, maxy, plotmem)\n"
20269 " maxx (PLINT, input) : Size of memory area in the X coordinate.\n"
20271 " maxy (PLINT, input) : Size of memory area in the Y coordinate.\n"
20273 " plotmem (PLPointer, input) : Pointer to the beginning of a\n"
20274 " user-supplied writeable memory area.\n"
20278 "Set length of minor ticks\n"
20282 " This sets up the length of the minor ticks and the length of the\n"
20283 " terminals on error bars. The actual length is the product of the\n"
20284 " default length and a scaling factor as for character height.\n"
20286 " Redacted form: plsmin(def, scale)\n"
20288 " This function is used in example 29.\n"
20294 "plsmin(def, scale)\n"
20298 " def (PLFLT, input) : The default length of a minor tick in\n"
20299 " millimeters, should be set to zero if the default length is to\n"
20300 " remain unchanged.\n"
20302 " scale (PLFLT, input) : Scale factor to be applied to default to get\n"
20303 " actual tick length.\n"
20307 "Set orientation\n"
20311 " Set integer plot orientation parameter. This function is identical to\n"
20312 " plsdiori except for the type of the argument, and should be used in\n"
20313 " the same way. See the documentation of plsdiori for details.\n"
20315 " Redacted form: plsori(ori)\n"
20317 " This function is used in example 3.\n"
20327 " ori (PLINT, input) : Orientation value (0 for landscape, 1 for\n"
20328 " portrait, etc.) The value is multiplied by 90 degrees to get the\n"
20333 "Set page parameters\n"
20337 " Sets the page configuration (optional). If an individual parameter is\n"
20338 " zero then that parameter value is not updated. Not all parameters are\n"
20339 " recognized by all drivers and the interpretation is device-dependent.\n"
20340 " The X-window driver uses the length and offset parameters to determine\n"
20341 " the window size and location. The length and offset values are\n"
20342 " expressed in units that are specific to the current driver. For\n"
20343 " instance: screen drivers will usually interpret them as number of\n"
20344 " pixels, whereas printer drivers will usually use mm.\n"
20346 " This routine, if used, must be called before initializing PLplot. It\n"
20347 " may be called at later times for interactive drivers to change only\n"
20348 " the dpi for subsequent redraws which you can force via a call to\n"
20349 " plreplot. If this function is not called then the page size defaults\n"
20350 " to landscape A4 for drivers which use real world page sizes and 744\n"
20351 " pixels wide by 538 pixels high for raster drivers. The default value\n"
20352 " for dx and dy is 90 pixels per inch for raster drivers.\n"
20356 " Redacted form: plspage(xp, yp, xleng, yleng, xoff, yoff)\n"
20358 " This function is used in examples 14 and 31.\n"
20364 "plspage(xp, yp, xleng, yleng, xoff, yoff)\n"
20368 " xp (PLFLT, input) : Number of pixels per inch (DPI), x. Used only\n"
20369 " by raster drivers, ignored by drivers which use \"real world\" units\n"
20372 " yp (PLFLT, input) : Number of pixels per inch (DPI), y. Used only\n"
20373 " by raster drivers, ignored by drivers which use \"real world\" units\n"
20376 " xleng (PLINT, input) : Page length, x.\n"
20378 " yleng (PLINT, input) : Page length, y.\n"
20380 " xoff (PLINT, input) : Page offset, x.\n"
20382 " yoff (PLINT, input) : Page offset, y.\n"
20386 "Set the cmap0 palette using the specified cmap0*.pal format file\n"
20390 " Set the cmap0 palette using the specified cmap0*.pal format file.\n"
20392 " Redacted form: plspal0(filename)\n"
20394 " This function is in example 16.\n"
20400 "plspal0(filename)\n"
20404 " filename (PLCHAR_VECTOR, input) : An ascii character string\n"
20405 " containing the name of the cmap0*.pal file. If this string is\n"
20406 " empty, use the default cmap0*.pal file.\n"
20410 "Set the cmap1 palette using the specified cmap1*.pal format file\n"
20414 " Set the cmap1 palette using the specified cmap1*.pal format file.\n"
20416 " Redacted form: plspal1(filename, interpolate)\n"
20418 " This function is used in example 16.\n"
20424 "plspal1(filename, interpolate)\n"
20428 " filename (PLCHAR_VECTOR, input) : An ascii character string\n"
20429 " containing the name of the cmap1*.pal file. If this string is\n"
20430 " empty, use the default cmap1*.pal file.\n"
20432 " interpolate (PLBOOL, input) : If this parameter is true, the\n"
20433 " columns containing the intensity index, r, g, b, alpha and\n"
20434 " alt_hue_path in the cmap1*.pal file are used to set the cmap1\n"
20435 " palette with a call to plscmap1la. (The cmap1*.pal header contains\n"
20436 " a flag which controls whether the r, g, b data sent to plscmap1la\n"
20437 " are interpreted as HLS or RGB.) If this parameter is false, the\n"
20438 " intensity index and alt_hue_path columns are ignored and the r, g,\n"
20439 " b (interpreted as RGB), and alpha columns of the cmap1*.pal file\n"
20440 " are used instead to set the cmap1 palette directly with a call to\n"
20445 "Set the pause (on end-of-page) status\n"
20449 " Set the pause (on end-of-page) status.\n"
20451 " Redacted form: plspause(pause)\n"
20453 " This function is in examples 14,20.\n"
20459 "plspause(pause)\n"
20463 " pause (PLBOOL, input) : If pause is true there will be a pause on\n"
20464 " end-of-page for those drivers which support this. Otherwise there\n"
20469 "Set current output stream\n"
20473 " Sets the number of the current output stream. The stream number\n"
20474 " defaults to 0 unless changed by this routine. The first use of this\n"
20475 " routine must be followed by a call initializing PLplot (e.g. plstar).\n"
20477 " Redacted form: plsstrm(strm)\n"
20479 " This function is examples 1,14,20.\n"
20489 " strm (PLINT, input) : The current stream number.\n"
20493 "Set the number of subpages in x and y\n"
20497 " Set the number of subpages in x and y.\n"
20499 " Redacted form: plssub(nx, ny)\n"
20501 " This function is examples 1,2,14,21,25,27.\n"
20511 " nx (PLINT, input) : Number of windows in x direction (i.e., number\n"
20512 " of window columns).\n"
20514 " ny (PLINT, input) : Number of windows in y direction (i.e., number\n"
20515 " of window rows).\n"
20519 "Set symbol size\n"
20523 " This sets up the size of all subsequent symbols drawn by plpoin and\n"
20524 " plsym. The actual height of a symbol is the product of the default\n"
20525 " symbol size and a scaling factor as for the character height.\n"
20527 " Redacted form: plssym(def, scale)\n"
20529 " This function is used in example 29.\n"
20535 "plssym(def, scale)\n"
20539 " def (PLFLT, input) : The default height of a symbol in millimeters,\n"
20540 " should be set to zero if the default height is to remain\n"
20543 " scale (PLFLT, input) : Scale factor to be applied to default to get\n"
20544 " actual symbol height.\n"
20552 " Initializing the plotting package. The program prompts for the device\n"
20553 " keyword or number of the desired output device. Hitting a RETURN in\n"
20554 " response to the prompt is the same as selecting the first device. If\n"
20555 " only one device is enabled when PLplot is installed, plstar will issue\n"
20556 " no prompt. The output device is divided into nx by ny subpages, each\n"
20557 " of which may be used independently. The subroutine pladv is used to\n"
20558 " advance from one subpage to the next.\n"
20560 " Redacted form: plstar(nx, ny)\n"
20562 " This function is used in example 1.\n"
20572 " nx (PLINT, input) : Number of subpages to divide output page in the\n"
20575 " ny (PLINT, input) : Number of subpages to divide output page in the\n"
20584 " Alternative to plstar for initializing the plotting package. The\n"
20585 " device name keyword for the desired output device must be supplied as\n"
20586 " an argument. These keywords are the same as those printed out by\n"
20587 " plstar. If the requested device is not available, or if the input\n"
20588 " string is empty or begins with ``?'', the prompted start up of plstar\n"
20589 " is used. This routine also divides the output device page into nx by\n"
20590 " ny subpages, each of which may be used independently. The subroutine\n"
20591 " pladv is used to advance from one subpage to the next.\n"
20593 " Redacted form: General: plstart(devname, nx, ny)\n"
20596 " This function is not used in any examples.\n"
20602 "plstart(devname, nx, ny)\n"
20606 " devname (PLCHAR_VECTOR, input) : An ascii character string\n"
20607 " containing the device name keyword of the required output device.\n"
20609 " devname is NULL or if the first character of the string is a ``?'',\n"
20610 " the normal (prompted) start up is used.\n"
20612 " nx (PLINT, input) : Number of subpages to divide output page in the\n"
20615 " ny (PLINT, input) : Number of subpages to divide output page in the\n"
20620 "Set a global coordinate transform function\n"
20624 " This function can be used to define a coordinate transformation which\n"
20625 " affects all elements drawn within the current plot window. The\n"
20626 " coordinate_transform callback function is similar to that provided for\n"
20627 " the plmap and plmeridians functions. The coordinate_transform_data\n"
20628 " parameter may be used to pass extra data to coordinate_transform.\n"
20630 " Redacted form: General: plstransform(coordinate_transform,\n"
20631 " coordinate_transform_data)\n"
20634 " This function is used in examples 19 and 22.\n"
20640 "plstransform(coordinate_transform, coordinate_transform_data)\n"
20644 " coordinate_transform (PLTRANSFORM_callback, input) : A callback\n"
20645 " function that defines the transformation from the input (x, y)\n"
20646 " world coordinates to new PLplot world coordinates. If\n"
20647 " coordinate_transform is not supplied (e.g., is set to NULL in the C\n"
20648 " case), then no transform is applied.\n"
20650 " coordinate_transform_data (PLPointer, input) : Optional extra data\n"
20652 " coordinate_transform.\n"
20656 "Plot a glyph at the specified points\n"
20660 " Plot a glyph at the specified points. (Supersedes plpoin and plsym\n"
20661 " because many[!] more glyphs are accessible with plstring.) The glyph\n"
20662 " is specified with a PLplot user string. Note that the user string is\n"
20663 " not actually limited to one glyph so it is possible (but not normally\n"
20664 " useful) to plot more than one glyph at the specified points with this\n"
20665 " function. As with plmtex and plptex, the user string can contain FCI\n"
20666 " escapes to determine the font, UTF-8 code to determine the glyph or\n"
20667 " else PLplot escapes for Hershey or unicode text to determine the\n"
20670 " Redacted form: plstring(x, y, string)\n"
20672 " This function is used in examples 4, 21 and 26.\n"
20678 "plstring(n, x, y, string)\n"
20682 " n (PLINT, input) : Number of points in the x and y vectors.\n"
20684 " x (PLFLT_VECTOR, input) : A vector containing the x coordinates of\n"
20687 " y (PLFLT_VECTOR, input) : A vector containing the y coordinates of\n"
20690 " string (PLCHAR_VECTOR, input) : A UTF-8 character string containing\n"
20691 " the glyph(s) to be plotted at each of the n points.\n"
20695 "Plot a glyph at the specified 3D points\n"
20699 " Plot a glyph at the specified 3D points. (Supersedes plpoin3 because\n"
20700 " many[!] more glyphs are accessible with plstring3.) Set up the call to\n"
20701 " this function similar to what is done for plline3. The glyph is\n"
20702 " specified with a PLplot user string. Note that the user string is not\n"
20703 " actually limited to one glyph so it is possible (but not normally\n"
20704 " useful) to plot more than one glyph at the specified points with this\n"
20705 " function. As with plmtex and plptex, the user string can contain FCI\n"
20706 " escapes to determine the font, UTF-8 code to determine the glyph or\n"
20707 " else PLplot escapes for Hershey or unicode text to determine the\n"
20710 " Redacted form: plstring3(x, y, z, string)\n"
20712 " This function is used in example 18.\n"
20718 "plstring3(n, x, y, z, string)\n"
20722 " n (PLINT, input) : Number of points in the x, y, and z vectors.\n"
20724 " x (PLFLT_VECTOR, input) : A vector containing the x coordinates of\n"
20727 " y (PLFLT_VECTOR, input) : A vector containing the y coordinates of\n"
20730 " z (PLFLT_VECTOR, input) : A vector containing the z coordinates of\n"
20733 " string (PLCHAR_VECTOR, input) : A UTF-8 character string containing\n"
20734 " the glyph(s) to be plotted at each of the n points. points.\n"
20738 "Add a point to a strip chart\n"
20742 " Add a point to a given pen of a given strip chart. There is no need\n"
20743 " for all pens to have the same number of points or to be equally\n"
20744 " sampled in the x coordinate. Allocates memory and rescales as\n"
20747 " Redacted form: plstripa(id, pen, x, y)\n"
20749 " This function is used in example 17.\n"
20755 "plstripa(id, pen, x, y)\n"
20759 " id (PLINT, input) : Identification number of the strip chart (set\n"
20760 " up in plstripc).\n"
20762 " pen (PLINT, input) : Pen number (ranges from 0 to 3).\n"
20764 " x (PLFLT, input) : X coordinate of point to plot.\n"
20766 " y (PLFLT, input) : Y coordinate of point to plot.\n"
20770 "Create a 4-pen strip chart\n"
20774 " Create a 4-pen strip chart, to be used afterwards by plstripa\n"
20776 " Redacted form: General: plstripc(id, xspec, yspec, xmin, xmax, xjump,\n"
20777 " ymin, ymax, xlpos, ylpos, y_ascl, acc, colbox, collab, colline,\n"
20778 " styline, legline, labx, laby, labz)\n"
20781 " This function is used in example 17.\n"
20787 "plstripc(id, xspec, yspec, xmin, xmax, xjump, ymin, ymax, xlpos, ylpos, y_ascl, acc, colbox, collab, colline, styline, legline[], labx, laby, labtop)\n"
20791 " id (PLINT_NC_SCALAR, output) : Returned value of the identification\n"
20792 " number of the strip chart to use on plstripa and plstripd.\n"
20794 " xspec (PLCHAR_VECTOR, input) : An ascii character string containing\n"
20795 " the x-axis specification as in plbox.\n"
20797 " yspec (PLCHAR_VECTOR, input) : An ascii character string containing\n"
20798 " the y-axis specification as in plbox.\n"
20800 " xmin (PLFLT, input) : Initial coordinates of plot box; they will\n"
20801 " change as data are added.\n"
20803 " xmax (PLFLT, input) : Initial coordinates of plot box; they will\n"
20804 " change as data are added.\n"
20806 " xjump (PLFLT, input) : When x attains xmax, the length of the plot\n"
20807 " is multiplied by the factor (1 +\n"
20810 " ymin (PLFLT, input) : Initial coordinates of plot box; they will\n"
20811 " change as data are added.\n"
20813 " ymax (PLFLT, input) : Initial coordinates of plot box; they will\n"
20814 " change as data are added.\n"
20816 " xlpos (PLFLT, input) : X legend box position (range from 0 to 1).\n"
20818 " ylpos (PLFLT, input) : Y legend box position (range from 0 to 1).\n"
20820 " y_ascl (PLBOOL, input) : Autoscale y between x jumps if y_ascl is\n"
20821 " true, otherwise not.\n"
20823 " acc (PLBOOL, input) : Accumulate strip plot if acc is true,\n"
20824 " otherwise slide display.\n"
20826 " colbox (PLINT, input) : Plot box color index (cmap0).\n"
20828 " collab (PLINT, input) : Legend color index (cmap0).\n"
20830 " colline (PLINT_VECTOR, input) : A vector containing the cmap0 color\n"
20831 " indices for the 4 pens.\n"
20833 " styline (PLINT_VECTOR, input) : A vector containing the line style\n"
20834 " indices for the 4 pens.\n"
20836 " legline (PLCHAR_MATRIX, input) : A vector of UTF-8 character\n"
20837 " strings containing legends for the 4 pens.\n"
20839 " labx (PLCHAR_VECTOR, input) : A UTF-8 character string containing\n"
20840 " the label for the x axis.\n"
20842 " laby (PLCHAR_VECTOR, input) : A UTF-8 character string containing\n"
20843 " the label for the y axis.\n"
20845 " labtop (PLCHAR_VECTOR, input) : A UTF-8 character string containing\n"
20846 " the plot title.\n"
20850 "Deletes and releases memory used by a strip chart\n"
20854 " Deletes and releases memory used by a strip chart.\n"
20856 " Redacted form: plstripd(id)\n"
20858 " This function is used in example 17.\n"
20868 " id (PLINT, input) : Identification number of strip chart to delete.\n"
20876 " This sets up the line style for all lines subsequently drawn. A line\n"
20877 " consists of segments in which the pen is alternately down and up. The\n"
20878 " lengths of these segments are passed in the vectors mark and space\n"
20879 " respectively. The number of mark-space pairs is specified by nms. In\n"
20880 " order to return the line style to the default continuous line, plstyl\n"
20881 " should be called with nms =0 .(see also pllsty)\n"
20883 " Redacted form: plstyl(mark, space)\n"
20885 " This function is used in examples 1, 9, and 14.\n"
20891 "plstyl(nms, mark, space)\n"
20895 " nms (PLINT, input) : The number of mark and space elements in a\n"
20896 " line. Thus a simple broken line can be obtained by setting nms=1\n"
20897 " . A continuous line is specified by setting nms=0 .\n"
20899 " mark (PLINT_VECTOR, input) : A vector containing the lengths of the\n"
20900 " segments during which the pen is down, measured in micrometers.\n"
20902 " space (PLINT_VECTOR, input) : A vector containing the lengths of\n"
20903 " the segments during which the pen is up, measured in micrometers.\n"
20907 "Set arrow style for vector plots\n"
20911 " Set the style for the arrow used by plvect to plot vectors.\n"
20913 " Redacted form: plsvect(arrowx, arrowy, fill)\n"
20915 " This function is used in example 22.\n"
20921 "plsvect(arrowx, arrowy, npts, fill)\n"
20925 " arrowx, arrowy (PLFLT_VECTOR, input) : A pair of vectors containing\n"
20926 " the x and y points which make up the arrow. The arrow is plotted\n"
20927 " by joining these points to form a polygon. The scaling assumes\n"
20928 " that the x and y points in the arrow lie in the range -0.5 <= x,y\n"
20929 " <= 0.5. If both arrowx and arrowy are NULL then the arrow style\n"
20930 " will be reset to its default.\n"
20932 " npts (PLINT, input) : Number of points in the vectors arrowx and\n"
20935 " fill (PLBOOL, input) : If fill is true then the arrow is closed, if\n"
20936 " fill is false then the arrow is open.\n"
20940 "Specify viewport in absolute coordinates\n"
20944 " Alternate routine to plvpor for setting up the viewport. This routine\n"
20945 " should be used only if the viewport is required to have a definite\n"
20946 " size in millimeters. The routine plgspa is useful for finding out the\n"
20947 " size of the current subpage.\n"
20949 " Redacted form: plsvpa(xmin, xmax, ymin, ymax)\n"
20951 " This function is used in example 10.\n"
20957 "plsvpa(xmin, xmax, ymin, ymax)\n"
20961 " xmin (PLFLT, input) : The distance of the left-hand edge of the\n"
20962 " viewport from the left-hand edge of the subpage in millimeters.\n"
20964 " xmax (PLFLT, input) : The distance of the right-hand edge of the\n"
20965 " viewport from the left-hand edge of the subpage in millimeters.\n"
20967 " ymin (PLFLT, input) : The distance of the bottom edge of the\n"
20968 " viewport from the bottom edge of the subpage in millimeters.\n"
20970 " ymax (PLFLT, input) : The distance of the top edge of the viewport\n"
20971 " from the bottom edge of the subpage in millimeters.\n"
20975 "Set x axis parameters\n"
20979 " Sets values of the digmax and digits flags for the x axis. See the\n"
20980 " PLplot documentation for more information.\n"
20982 " Redacted form: plsxax(digmax, digits)\n"
20984 " This function is used in example 31.\n"
20990 "plsxax(digmax, digits)\n"
20994 " digmax (PLINT, input) : Variable to set the maximum number of\n"
20995 " digits for the x axis. If nonzero, the printed label will be\n"
20996 " switched to a floating-point representation when the number of\n"
20997 " digits exceeds digmax.\n"
20999 " digits (PLINT, input) : Field digits value. Currently, changing\n"
21000 " its value here has no effect since it is set only by plbox or\n"
21001 " plbox3. However, the user may obtain its value after a call to\n"
21002 " either of these functions by calling plgxax.\n"
21006 "Set y axis parameters\n"
21010 " Identical to plsxax, except that arguments are flags for y axis. See\n"
21011 " the description of plsxax for more detail.\n"
21013 " Redacted form: plsyax(digmax, digits)\n"
21015 " This function is used in examples 1, 14, and 31.\n"
21021 "plsyax(digmax, digits)\n"
21025 " digmax (PLINT, input) : Variable to set the maximum number of\n"
21026 " digits for the y axis. If nonzero, the printed label will be\n"
21027 " switched to a floating-point representation when the number of\n"
21028 " digits exceeds digmax.\n"
21030 " digits (PLINT, input) : Field digits value. Currently, changing\n"
21031 " its value here has no effect since it is set only by plbox or\n"
21032 " plbox3. However, the user may obtain its value after a call to\n"
21033 " either of these functions by calling plgyax.\n"
21037 "Plot a glyph at the specified points\n"
21041 " Plot a glyph at the specified points. (This function is largely\n"
21042 " superseded by plstring which gives access to many[!] more glyphs.)\n"
21044 " Redacted form: plsym(x, y, code)\n"
21046 " This function is used in example 7.\n"
21052 "plsym(n, x, y, code)\n"
21056 " n (PLINT, input) : Number of points in the x and y vectors.\n"
21058 " x (PLFLT_VECTOR, input) : A vector containing the x coordinates of\n"
21061 " y (PLFLT_VECTOR, input) : A vector containing the y coordinates of\n"
21064 " code (PLINT, input) : Hershey symbol code corresponding to a glyph\n"
21065 " to be plotted at each of the n points.\n"
21069 "Set z axis parameters\n"
21073 " Identical to plsxax, except that arguments are flags for z axis. See\n"
21074 " the description of plsxax for more detail.\n"
21076 " Redacted form: plszax(digmax, digits)\n"
21078 " This function is used in example 31.\n"
21084 "plszax(digmax, digits)\n"
21088 " digmax (PLINT, input) : Variable to set the maximum number of\n"
21089 " digits for the z axis. If nonzero, the printed label will be\n"
21090 " switched to a floating-point representation when the number of\n"
21091 " digits exceeds digmax.\n"
21093 " digits (PLINT, input) : Field digits value. Currently, changing\n"
21094 " its value here has no effect since it is set only by plbox or\n"
21095 " plbox3. However, the user may obtain its value after a call to\n"
21096 " either of these functions by calling plgzax.\n"
21100 "Switch to text screen\n"
21104 " Sets an interactive device to text mode, used in conjunction with\n"
21105 " plgra to allow graphics and text to be interspersed. On a device\n"
21106 " which supports separate text and graphics windows, this command causes\n"
21107 " control to be switched to the text window. This can be useful for\n"
21108 " printing diagnostic messages or getting user input, which would\n"
21109 " otherwise interfere with the plots. The program must switch back to\n"
21110 " the graphics window before issuing plot commands, as the text (or\n"
21111 " console) device will probably become quite confused otherwise. If\n"
21112 " already in text mode, this command is ignored. It is also ignored on\n"
21113 " devices which only support a single window or use a different method\n"
21114 " for shifting focus (see also plgra).\n"
21116 " Redacted form: pltext()\n"
21118 " This function is used in example 1.\n"
21128 "Set format for date / time labels\n"
21132 " Sets the format for date / time labels. To enable date / time format\n"
21133 " labels see the options to plbox, plbox3, and plenv.\n"
21135 " Redacted form: pltimefmt(fmt)\n"
21137 " This function is used in example 29.\n"
21147 " fmt (PLCHAR_VECTOR, input) : An ascii character string which is\n"
21148 " interpreted similarly to the format specifier of typical system\n"
21149 " strftime routines except that PLplot ignores locale and also\n"
21150 " supplies some useful extensions in the context of plotting. All\n"
21151 " text in the string is printed as-is other than conversion\n"
21152 " specifications which take the form of a '%' character followed by\n"
21153 " further conversion specification character. The conversion\n"
21154 " specifications which are similar to those provided by system\n"
21155 " strftime routines are the following: %a: The abbreviated (English)\n"
21157 " %A: The full (English) weekday name.\n"
21158 " %b: The abbreviated (English) month name.\n"
21159 " %B: The full (English) month name.\n"
21160 " %c: Equivalent to %a %b %d %T %Y (non-ISO).\n"
21161 " %C: The century number (year/100) as a 2-digit integer.\n"
21162 " %d: The day of the month as a decimal number (range 01 to 31).\n"
21163 " %D: Equivalent to %m/%d/%y (non-ISO).\n"
21164 " %e: Like %d, but a leading zero is replaced by a space.\n"
21165 " %F: Equivalent to %Y-%m-%d (the ISO 8601 date format).\n"
21166 " %h: Equivalent to %b.\n"
21167 " %H: The hour as a decimal number using a 24-hour clock (range\n"
21169 " %I: The hour as a decimal number using a 12-hour clock (range\n"
21171 " %j: The day of the year as a decimal number (range 001 to\n"
21173 " %k: The hour (24-hour clock) as a decimal number (range 0 to\n"
21174 " 23); single digits are preceded by a blank. (See also %H.)\n"
21175 " %l: The hour (12-hour clock) as a decimal number (range 1 to\n"
21176 " 12); single digits are preceded by a blank. (See also %I.)\n"
21177 " %m: The month as a decimal number (range 01 to 12).\n"
21178 " %M: The minute as a decimal number (range 00 to 59).\n"
21179 " %n: A newline character.\n"
21180 " %p: Either \"AM\" or \"PM\" according to the given time value.\n"
21181 " Noon is treated as \"PM\" and midnight as \"AM\".\n"
21182 " %r: Equivalent to %I:%M:%S %p.\n"
21183 " %R: The time in 24-hour notation (%H:%M). For a version\n"
21184 " including the seconds, see %T below.\n"
21185 " %s: The number of seconds since the Epoch, 1970-01-01 00:00:00\n"
21187 " %S: The second as a decimal number (range 00 to 60). (The\n"
21188 " range is up to 60 to allow for occasional leap seconds.)\n"
21189 " %t: A tab character.\n"
21190 " %T: The time in 24-hour notation (%H:%M:%S).\n"
21191 " %u: The day of the week as a decimal, range 1 to 7, Monday\n"
21192 " being 1. See also %w.\n"
21193 " %U: The week number of the current year as a decimal number,\n"
21194 " range 00 to 53, starting with the first Sunday as the first\n"
21195 " day of week 01. See also %V and %W.\n"
21196 " %v: Equivalent to %e-%b-%Y.\n"
21197 " %V: The ISO 8601 week number of the current year as a decimal\n"
21198 " number, range 01 to 53, where week 1 is the first week that\n"
21199 " has at least 4 days in the new year. See also %U and %W.\n"
21200 " %w: The day of the week as a decimal, range 0 to 6, Sunday\n"
21201 " being 0. See also %u.\n"
21202 " %W: The week number of the current year as a decimal number,\n"
21203 " range 00 to 53, starting with the first Monday as the first\n"
21204 " day of week 01.\n"
21205 " %x: Equivalent to %a %b %d %Y.\n"
21206 " %X: Equivalent to %T.\n"
21207 " %y: The year as a decimal number without a century (range 00\n"
21209 " %Y: The year as a decimal number including a century.\n"
21210 " %z: The UTC time-zone string = \"+0000\".\n"
21211 " %Z: The UTC time-zone abbreviation = \"UTC\".\n"
21212 " %+: The UTC date and time in default format of the Unix date\n"
21213 " command which is equivalent to %a %b %d %T %Z %Y.\n"
21214 " %%: A literal \"%\" character.\n"
21215 " The conversion specifications which are extensions to those normally\n"
21216 " provided by system strftime routines are the following: %(0-9):\n"
21217 " The fractional part of the seconds field (including leading\n"
21218 " decimal point) to the specified accuracy. Thus %S%3 would give\n"
21219 " seconds to millisecond accuracy (00.000).\n"
21220 " %.: The fractional part of the seconds field (including\n"
21221 " leading decimal point) to the maximum available accuracy. Thus\n"
21222 " %S%. would give seconds with fractional part up to 9 decimal\n"
21223 " places if available.\n"
21227 "Specify viewport using aspect ratio only\n"
21231 " Selects the largest viewport with the given aspect ratio within the\n"
21232 " subpage that leaves a standard margin (left-hand margin of eight\n"
21233 " character heights, and a margin around the other three sides of five\n"
21234 " character heights).\n"
21236 " Redacted form: plvasp(aspect)\n"
21238 " This function is used in example 13.\n"
21248 " aspect (PLFLT, input) : Ratio of length of y axis to length of x\n"
21249 " axis of resulting viewport.\n"
21257 " Draws a plot of vector data contained in the matrices (\n"
21263 " ny]) . The scaling factor for the vectors is given by scale. A\n"
21264 " transformation routine pointed to by pltr with a pointer pltr_data for\n"
21265 " additional data required by the transformation routine to map indices\n"
21266 " within the matrices to the world coordinates. The style of the vector\n"
21267 " arrow may be set using plsvect.\n"
21269 " Redacted form: plvect(u, v, scale, pltr, pltr_data) where (see above\n"
21270 " discussion) the pltr, pltr_data callback arguments are sometimes\n"
21271 " replaced by a tr vector with 6 elements, or xg and yg array arguments\n"
21272 " with either one or two dimensions.\n"
21274 " This function is used in example 22.\n"
21280 "plvect(u, v, nx, ny, scale, pltr, pltr_data)\n"
21284 " u, v (PLFLT_MATRIX, input) : A pair of matrices containing the x\n"
21285 " and y components of the vector data to be plotted.\n"
21287 " nx, ny (PLINT, input) : Dimensions of the matrices u and v.\n"
21289 " scale (PLFLT, input) : Parameter to control the scaling factor of\n"
21290 " the vectors for plotting. If scale = 0 then the scaling factor is\n"
21291 " automatically calculated for the data. If scale < 0 then the\n"
21292 " scaling factor is automatically calculated for the data and then\n"
21293 " multiplied by -\n"
21294 " scale. If scale > 0 then the scaling factor is set to scale.\n"
21296 " pltr (PLTRANSFORM_callback, input) : A callback function that\n"
21297 " defines the transformation between the zero-based indices of the\n"
21298 " matrices u and v and world coordinates.For the C case,\n"
21299 " transformation functions are provided in the PLplot library: pltr0\n"
21300 " for the identity mapping, and pltr1 and pltr2 for arbitrary\n"
21301 " mappings respectively defined by vectors and matrices. In\n"
21302 " addition, C callback routines for the transformation can be\n"
21303 " supplied by the user such as the mypltr function in\n"
21304 " examples/c/x09c.c which provides a general linear transformation\n"
21305 " between index coordinates and world coordinates.For languages\n"
21306 " other than C you should consult the PLplot documentation for the\n"
21307 " details concerning how PLTRANSFORM_callback arguments are\n"
21308 " interfaced. However, in general, a particular pattern of\n"
21309 " callback-associated arguments such as a tr vector with 6 elements;\n"
21310 " xg and yg vectors; or xg and yg matrices are respectively\n"
21311 " interfaced to a linear-transformation routine similar to the above\n"
21312 " mypltr function; pltr1; and pltr2. Furthermore, some of our more\n"
21313 " sophisticated bindings (see, e.g., the PLplot documentation)\n"
21314 " support native language callbacks for handling index to\n"
21315 " world-coordinate transformations. Examples of these various\n"
21316 " approaches are given in examples/<language>x09*,\n"
21317 " examples/<language>x16*, examples/<language>x20*,\n"
21318 " examples/<language>x21*, and examples/<language>x22*, for all our\n"
21319 " supported languages.\n"
21321 " pltr_data (PLPointer, input) : Extra parameter to help pass\n"
21322 " information to pltr0, pltr1, pltr2, or whatever callback routine\n"
21323 " that is externally supplied.\n"
21327 "Specify viewport using coordinates and aspect ratio\n"
21331 " Device-independent routine for setting up the viewport. The viewport\n"
21332 " is chosen to be the largest with the given aspect ratio that fits\n"
21333 " within the specified region (in terms of normalized subpage\n"
21334 " coordinates). This routine is functionally equivalent to plvpor when\n"
21335 " a ``natural'' aspect ratio (0.0) is chosen. Unlike plvasp, this\n"
21336 " routine reserves no extra space at the edges for labels.\n"
21338 " Redacted form: plvpas(xmin, xmax, ymin, ymax, aspect)\n"
21340 " This function is used in example 9.\n"
21346 "plvpas(xmin, xmax, ymin, ymax, aspect)\n"
21350 " xmin (PLFLT, input) : The normalized subpage coordinate of the\n"
21351 " left-hand edge of the viewport.\n"
21353 " xmax (PLFLT, input) : The normalized subpage coordinate of the\n"
21354 " right-hand edge of the viewport.\n"
21356 " ymin (PLFLT, input) : The normalized subpage coordinate of the\n"
21357 " bottom edge of the viewport.\n"
21359 " ymax (PLFLT, input) : The normalized subpage coordinate of the top\n"
21360 " edge of the viewport.\n"
21362 " aspect (PLFLT, input) : Ratio of length of y axis to length of x\n"
21367 "Specify viewport using normalized subpage coordinates\n"
21371 " Device-independent routine for setting up the viewport. This defines\n"
21372 " the viewport in terms of normalized subpage coordinates which run from\n"
21373 " 0.0 to 1.0 (left to right and bottom to top) along each edge of the\n"
21374 " current subpage. Use the alternate routine plsvpa in order to create\n"
21375 " a viewport of a definite size.\n"
21377 " Redacted form: plvpor(xmin, xmax, ymin, ymax)\n"
21379 " This function is used in examples 2, 6-8, 10, 11, 15, 16, 18, 21, 23,\n"
21380 " 24, 26, 27, and 31.\n"
21386 "plvpor(xmin, xmax, ymin, ymax)\n"
21390 " xmin (PLFLT, input) : The normalized subpage coordinate of the\n"
21391 " left-hand edge of the viewport.\n"
21393 " xmax (PLFLT, input) : The normalized subpage coordinate of the\n"
21394 " right-hand edge of the viewport.\n"
21396 " ymin (PLFLT, input) : The normalized subpage coordinate of the\n"
21397 " bottom edge of the viewport.\n"
21399 " ymax (PLFLT, input) : The normalized subpage coordinate of the top\n"
21400 " edge of the viewport.\n"
21404 "Select standard viewport\n"
21408 " Selects the largest viewport within the subpage that leaves a standard\n"
21409 " margin (left-hand margin of eight character heights, and a margin\n"
21410 " around the other three sides of five character heights).\n"
21412 " Redacted form: plvsta()\n"
21414 " This function is used in examples 1, 12, 14, 17, 25, and 29.\n"
21424 "Configure the transformations required for projecting a 3D surface on a 2D window\n"
21428 " Configure the transformations required for projecting a 3D surface on\n"
21429 " an existing 2D window. Those transformations (see the PLplot\n"
21430 " documentation) are done to a rectangular cuboid enclosing the 3D\n"
21431 " surface which has its limits expressed in 3D world coordinates and\n"
21432 " also normalized 3D coordinates (used for interpreting the altitude and\n"
21433 " azimuth of the viewing angle). The transformations consist of the\n"
21434 " linear transform from 3D world coordinates to normalized 3D\n"
21435 " coordinates, and the 3D rotation of normalized coordinates required to\n"
21436 " align the pole of the new 3D coordinate system with the viewing\n"
21437 " direction specified by altitude and azimuth so that x and y of the\n"
21438 " surface elements in that transformed coordinate system are the\n"
21439 " projection of the 3D surface with given viewing direction on the 2D\n"
21442 " The enclosing rectangular cuboid for the surface plot is defined by\n"
21443 " xmin, xmax, ymin, ymax, zmin and zmax in 3D world coordinates. It is\n"
21444 " mapped into the same rectangular cuboid with normalized 3D coordinate\n"
21445 " sizes of basex by basey by height so that xmin maps to -\n"
21446 " basex/2, xmax maps to basex/2, ymin maps to -\n"
21447 " basey/2, ymax maps to basey/2, zmin maps to 0 and zmax maps to height.\n"
21448 " The resulting rectangular cuboid in normalized coordinates is then\n"
21449 " viewed by an observer at altitude alt and azimuth az. This routine\n"
21450 " must be called before plbox3 or any of the 3D surface plotting\n"
21451 " routines; plmesh, plmeshc, plot3d, plot3dc, plot3dcl, plsurf3d,\n"
21452 " plsurf3dl or plfill3.\n"
21454 " Redacted form: plw3d(basex, basey, height, xmin, xmax, ymin, ymax,\n"
21455 " zmin, zmax, alt, az)\n"
21457 " This function is examples 8, 11, 18, and 21.\n"
21463 "plw3d(basex, basey, height, xmin, xmax, ymin, ymax, zmin, zmax, alt, az)\n"
21467 " basex (PLFLT, input) : The normalized x coordinate size of the\n"
21468 " rectangular cuboid.\n"
21470 " basey (PLFLT, input) : The normalized y coordinate size of the\n"
21471 " rectangular cuboid.\n"
21473 " height (PLFLT, input) : The normalized z coordinate size of the\n"
21474 " rectangular cuboid.\n"
21476 " xmin (PLFLT, input) : The minimum x world coordinate of the\n"
21477 " rectangular cuboid.\n"
21479 " xmax (PLFLT, input) : The maximum x world coordinate of the\n"
21480 " rectangular cuboid.\n"
21482 " ymin (PLFLT, input) : The minimum y world coordinate of the\n"
21483 " rectangular cuboid.\n"
21485 " ymax (PLFLT, input) : The maximum y world coordinate of the\n"
21486 " rectangular cuboid.\n"
21488 " zmin (PLFLT, input) : The minimum z world coordinate of the\n"
21489 " rectangular cuboid.\n"
21491 " zmax (PLFLT, input) : The maximum z world coordinate of the\n"
21492 " rectangular cuboid.\n"
21494 " alt (PLFLT, input) : The viewing altitude in degrees above the xy\n"
21495 " plane of the rectangular cuboid in normalized coordinates.\n"
21497 " az (PLFLT, input) : The viewing azimuth in degrees of the\n"
21498 " rectangular cuboid in normalized coordinates. When az=0, the\n"
21499 " observer is looking face onto the zx plane of the rectangular\n"
21500 " cuboid in normalized coordinates, and as az is increased, the\n"
21501 " observer moves clockwise around that cuboid when viewed from above\n"
21510 " Sets the pen width.\n"
21512 " Redacted form: plwidth(width)\n"
21514 " This function is used in examples 1 and 2.\n"
21524 " width (PLFLT, input) : The desired pen width. If width is negative\n"
21525 " or the same as the previous value no action is taken. width = 0.\n"
21526 " should be interpreted as as the minimum valid pen width for the\n"
21527 " device. The interpretation of positive width values is also\n"
21528 " device dependent.\n"
21536 " Specify the window, i.e., the world coordinates of the edges of the\n"
21539 " Redacted form: plwind(xmin, xmax, ymin, ymax)\n"
21541 " This function is used in examples 1, 2, 4, 6-12, 14-16, 18, 21, 23-27,\n"
21548 "plwind(xmin, xmax, ymin, ymax)\n"
21552 " xmin (PLFLT, input) : The world x coordinate of the left-hand edge\n"
21553 " of the viewport.\n"
21555 " xmax (PLFLT, input) : The world x coordinate of the right-hand edge\n"
21556 " of the viewport.\n"
21558 " ymin (PLFLT, input) : The world y coordinate of the bottom edge of\n"
21561 " ymax (PLFLT, input) : The world y coordinate of the top edge of the\n"
21566 "Enter or leave xor mode\n"
21570 " Enter (when mode is true) or leave (when mode is false) xor mode for\n"
21571 " those drivers (e.g., the xwin driver) that support it. Enables\n"
21572 " erasing plots by drawing twice the same line, symbol, etc. If driver\n"
21573 " is not capable of xor operation it returns a status of false.\n"
21575 " Redacted form: plxormod(mode, status)\n"
21577 " This function is used in examples 1 and 20.\n"
21583 "plxormod(mode, status)\n"
21587 " mode (PLBOOL, input) : mode is true means enter xor mode and mode\n"
21588 " is false means leave xor mode.\n"
21590 " status (PLBOOL_NC_SCALAR, output) : Returned value of the status.\n"
21591 " modestatus of true (false) means driver is capable (incapable) of\n"
21596 "Plot continental outline or shapefile data in world coordinates\n"
21600 " Plots continental outlines or shapefile data in world coordinates. A\n"
21601 " demonstration of how to use this function to create different\n"
21602 " projections can be found in examples/c/x19c. PLplot is provided with\n"
21603 " basic coastal outlines and USA state borders. To use the map\n"
21604 " functionality PLplot must be compiled with the shapelib library.\n"
21605 " Shapefiles have become a popular standard for geographical data and\n"
21606 " data in this format can be easily found from a number of online\n"
21607 " sources. Shapefile data is actually provided as three or more files\n"
21608 " with the same filename, but different extensions. The .shp and .shx\n"
21609 " files are required for plotting Shapefile data with PLplot.\n"
21611 " PLplot currently supports the point, multipoint, polyline and polygon\n"
21612 " objects within shapefiles. However holes in polygons are not\n"
21613 " supported. When plmap is used the type of object is derived from the\n"
21614 " shapefile, if you wish to override the type then use one of the other\n"
21615 " plmap variants. The built in maps have line data only.\n"
21617 " Redacted form: plmap(mapform, name, minx, maxx, miny, maxy)\n"
21619 " This function is used in example 19.\n"
21625 "plmap(mapform, name, minx, maxx, miny, maxy)\n"
21629 " mapform (PLMAPFORM_callback, input) : A user supplied function to\n"
21630 " transform the original map data coordinates to a new coordinate\n"
21631 " system. The PLplot-supplied map data is provided as latitudes and\n"
21632 " longitudes; other Shapefile data may be provided in other\n"
21633 " coordinate systems as can be found in their .prj plain text files.\n"
21634 " For example, by using this transform we can change from a\n"
21635 " longitude, latitude coordinate to a polar stereographic\n"
21636 " projection. Initially, x[0]..[n-1] are the original x coordinates\n"
21637 " (longitudes for the PLplot-supplied data) and y[0]..y[n-1] are the\n"
21638 " corresponding y coordinates (latitudes for the PLplot supplied\n"
21639 " data). After the call to mapform(), x[] and y[] should be\n"
21640 " replaced by the corresponding plot coordinates. If no transform is\n"
21641 " desired, mapform can be replaced by NULL.\n"
21643 " name (PLCHAR_VECTOR, input) : An ascii character string specifying\n"
21644 " the type of map plotted. This is either one of the PLplot built-in\n"
21645 " maps or the file name of a set of Shapefile files without the file\n"
21646 " extensions. For the PLplot built-in maps the possible values are:\n"
21647 " \"globe\" -- continental outlines\n"
21648 " \"usa\" -- USA and state boundaries\n"
21649 " \"cglobe\" -- continental outlines and countries\n"
21650 " \"usaglobe\" -- USA, state boundaries and continental outlines\n"
21653 " minx (PLFLT, input) : The minimum x value of map elements to be\n"
21654 " drawn. The units must match the shapefile (built in maps are\n"
21655 " degrees lat/lon). Objects in the file which do not encroach on the\n"
21656 " box defined by minx, maxx, miny, maxy will not be rendered. But\n"
21657 " note this is simply an optimisation, not a clipping so for objects\n"
21658 " with some points inside the box and some points outside the box\n"
21659 " all the points will be rendered. These parameters also define\n"
21660 " latitude and longitude wrapping for shapefiles using these units.\n"
21661 " Longitude points will be wrapped by integer multiples of 360\n"
21662 " degrees to place them in the box. This allows the same data to be\n"
21663 " used on plots from -180-180 or 0-360 longitude ranges. In fact if\n"
21664 " you plot from -180-540 you will get two cycles of data drawn. The\n"
21665 " value of minx must be less than the value of maxx. Passing in a\n"
21666 " nan, max/-max floating point number or +/-infinity will case the\n"
21667 " bounding box from the shapefile to be used.\n"
21669 " maxx (PLFLT, input) : The maximum x value of map elements to be\n"
21670 " drawn - see minx.\n"
21672 " miny (PLFLT, input) : The minimum y value of map elements to be\n"
21673 " drawn - see minx.\n"
21675 " maxy (PLFLT, input) : The maximum y value of map elements to be\n"
21676 " drawn - see minx.\n"
21680 "Plot all or a subset of Shapefile data using lines in world coordinates\n"
21684 " Plot all or a subset of Shapefile data using lines in world\n"
21685 " coordinates. Our 19th standard example demonstrates how to use this\n"
21686 " function. This function plots data from a Shapefile using lines as in\n"
21687 " plmap, however it also has the option of also only drawing specified\n"
21688 " elements from the Shapefile. The vector of indices of the required\n"
21689 " elements are passed as a function argument. The Shapefile data should\n"
21690 " include a metadata file (extension.dbf) listing all items within the\n"
21691 " Shapefile. This file can be opened by most popular spreadsheet\n"
21692 " programs and can be used to decide which indices to pass to this\n"
21695 " Redacted form: plmapline(mapform, name, minx, maxx, miny, maxy,\n"
21698 " This function is used in example 19.\n"
21704 "plmapline(mapform, name, minx, maxx, miny, maxy, plotentries, nplotentries)\n"
21708 " mapform (PLMAPFORM_callback, input) : A user supplied function to\n"
21709 " transform the coordinates given in the shapefile into a plot\n"
21710 " coordinate system. By using this transform, we can change from a\n"
21711 " longitude, latitude coordinate to a polar stereographic project,\n"
21712 " for example. Initially, x[0]..[n-1] are the longitudes and\n"
21713 " y[0]..y[n-1] are the corresponding latitudes. After the call to\n"
21714 " mapform(), x[] and y[] should be replaced by the corresponding\n"
21715 " plot coordinates. If no transform is desired, mapform can be\n"
21716 " replaced by NULL.\n"
21718 " name (PLCHAR_VECTOR, input) : An ascii character string specifying\n"
21719 " the file name of a set of Shapefile files without the file\n"
21722 " minx (PLFLT, input) : The minimum x value to be plotted. This must\n"
21723 " be in the same units as used by the Shapefile. You could use a\n"
21724 " very large negative number to plot everything, but you can improve\n"
21725 " performance by limiting the area drawn. The units must match those\n"
21726 " of the Shapefile projection, which may be for example longitude or\n"
21727 " distance. The value of minx must be less than the value of maxx.\n"
21729 " maxx (PLFLT, input) : The maximum x value to be plotted. You could\n"
21730 " use a very large number to plot everything, but you can improve\n"
21731 " performance by limiting the area drawn.\n"
21733 " miny (PLFLT, input) : The minimum y value to be plotted. This must\n"
21734 " be in the same units as used by the Shapefile. You could use a\n"
21735 " very large negative number to plot everything, but you can improve\n"
21736 " performance by limiting the area drawn. The units must match those\n"
21737 " of the Shapefile projection, which may be for example latitude or\n"
21738 " distance. The value of miny must be less than the value of maxy.\n"
21740 " maxy (PLFLT, input) : The maximum y value to be plotted. You could\n"
21741 " use a very large number to plot everything, but you can improve\n"
21742 " performance by limiting the area drawn.\n"
21744 " plotentries (PLINT_VECTOR, input) : A vector containing the\n"
21745 " zero-based indices of the Shapefile elements which will be drawn.\n"
21747 " plotentries to NULL will plot all elements of the Shapefile.\n"
21749 " nplotentries (PLINT, input) : The number of items in\n"
21750 " plotentries. Ignored if\n"
21751 " plotentries is NULL.\n"
21755 "Plot all or a subset of Shapefile data using strings or points in world coordinates\n"
21759 " As per plmapline, however the items are plotted as strings or points\n"
21760 " in the same way as plstring.\n"
21762 " Redacted form: plmapstring(mapform, name, string, minx, maxx, miny,\n"
21763 " maxy, plotentries)\n"
21765 " This function is not used in any examples.\n"
21771 "plmapstring(mapform, name, string, minx, maxx, miny, maxy, plotentries, nplotentries)\n"
21775 " mapform (PLMAPFORM_callback, input) : A user supplied function to\n"
21776 " transform the coordinates given in the shapefile into a plot\n"
21777 " coordinate system. By using this transform, we can change from a\n"
21778 " longitude, latitude coordinate to a polar stereographic project,\n"
21779 " for example. Initially, x[0]..[n-1] are the longitudes and\n"
21780 " y[0]..y[n-1] are the corresponding latitudes. After the call to\n"
21781 " mapform(), x[] and y[] should be replaced by the corresponding\n"
21782 " plot coordinates. If no transform is desired, mapform can be\n"
21783 " replaced by NULL.\n"
21785 " name (PLCHAR_VECTOR, input) : An ascii character string specifying\n"
21786 " the file name of a set of Shapefile files without the file\n"
21789 " string (PLCHAR_VECTOR, input) : A UTF-8 character string to be\n"
21792 " minx (PLFLT, input) : The minimum x value to be plotted. This must\n"
21793 " be in the same units as used by the Shapefile. You could use a\n"
21794 " very large negative number to plot everything, but you can improve\n"
21795 " performance by limiting the area drawn. The units must match those\n"
21796 " of the Shapefile projection, which may be for example longitude or\n"
21797 " distance. The value of minx must be less than the value of maxx.\n"
21799 " maxx (PLFLT, input) : The maximum x value to be plotted. You could\n"
21800 " use a very large number to plot everything, but you can improve\n"
21801 " performance by limiting the area drawn.\n"
21803 " miny (PLFLT, input) : The minimum y value to be plotted. This must\n"
21804 " be in the same units as used by the Shapefile. You could use a\n"
21805 " very large negative number to plot everything, but you can improve\n"
21806 " performance by limiting the area drawn. The units must match those\n"
21807 " of the Shapefile projection, which may be for example latitude or\n"
21808 " distance. The value of miny must be less than the value of maxy.\n"
21810 " maxy (PLFLT, input) : The maximum y value to be plotted. You could\n"
21811 " use a very large number to plot everything, but you can improve\n"
21812 " performance by limiting the area drawn.\n"
21814 " plotentries (PLINT_VECTOR, input) : A vector containing the\n"
21815 " zero-based indices of the Shapefile elements which will be drawn.\n"
21817 " plotentries to NULL will plot all elements of the Shapefile.\n"
21819 " nplotentries (PLINT, input) : The number of items in\n"
21820 " plotentries. Ignored if\n"
21821 " plotentries is NULL.\n"
21825 "Draw text at points defined by Shapefile data in world coordinates\n"
21829 " As per plmapline, however the items are plotted as text in the same\n"
21830 " way as plptex.\n"
21832 " Redacted form: plmaptex(mapform, name, dx, dy, just, text, minx, maxx,\n"
21833 " miny, maxy, plotentry)\n"
21835 " This function is used in example 19.\n"
21841 "plmaptex(mapform, name, dx, dy, just, text, minx, maxx, miny, maxy, plotentry)\n"
21845 " mapform (PLMAPFORM_callback, input) : A user supplied function to\n"
21846 " transform the coordinates given in the shapefile into a plot\n"
21847 " coordinate system. By using this transform, we can change from a\n"
21848 " longitude, latitude coordinate to a polar stereographic project,\n"
21849 " for example. Initially, x[0]..[n-1] are the longitudes and\n"
21850 " y[0]..y[n-1] are the corresponding latitudes. After the call to\n"
21851 " mapform(), x[] and y[] should be replaced by the corresponding\n"
21852 " plot coordinates. If no transform is desired, mapform can be\n"
21853 " replaced by NULL.\n"
21855 " name (PLCHAR_VECTOR, input) : An ascii character string specifying\n"
21856 " the file name of a set of Shapefile files without the file\n"
21859 " dx (PLFLT, input) : Used to define the slope of the texts which is\n"
21862 " dy (PLFLT, input) : Used to define the slope of the texts which is\n"
21865 " just (PLFLT, input) : Set the justification of the text. The value\n"
21866 " given will be the fraction of the distance along the string that\n"
21867 " sits at the given point. 0.0 gives left aligned text, 0.5 gives\n"
21868 " centralized text and 1.0 gives right aligned text.\n"
21870 " text (PLCHAR_VECTOR, input) : A UTF-8 character string to be drawn.\n"
21872 " minx (PLFLT, input) : The minimum x value to be plotted. This must\n"
21873 " be in the same units as used by the Shapefile. You could use a\n"
21874 " very large negative number to plot everything, but you can improve\n"
21875 " performance by limiting the area drawn. The units must match those\n"
21876 " of the Shapefile projection, which may be for example longitude or\n"
21877 " distance. The value of minx must be less than the value of maxx.\n"
21879 " maxx (PLFLT, input) : The maximum x value to be plotted. You could\n"
21880 " use a very large number to plot everything, but you can improve\n"
21881 " performance by limiting the area drawn.\n"
21883 " miny (PLFLT, input) : The minimum y value to be plotted. This must\n"
21884 " be in the same units as used by the Shapefile. You could use a\n"
21885 " very large negative number to plot everything, but you can improve\n"
21886 " performance by limiting the area drawn. The units must match those\n"
21887 " of the Shapefile projection, which may be for example latitude or\n"
21888 " distance. The value of miny must be less than the value of maxy.\n"
21890 " maxy (PLFLT, input) : The maximum y value to be plotted. You could\n"
21891 " use a very large number to plot everything, but you can improve\n"
21892 " performance by limiting the area drawn.\n"
21894 " plotentry (PLINT, input) : An integer indicating which text string\n"
21895 " of the Shapefile (zero indexed) will be drawn.\n"
21899 "Plot all or a subset of Shapefile data, filling the polygons\n"
21903 " As per plmapline, however the items are filled in the same way as\n"
21906 " Redacted form: plmapfill(mapform, name, minx, maxx, miny, maxy,\n"
21909 " This function is used in example 19.\n"
21915 "plmapfill(mapform, name, minx, maxx, miny, maxy, plotentries, nplotentries)\n"
21919 " mapform (PLMAPFORM_callback, input) : A user supplied function to\n"
21920 " transform the coordinates given in the shapefile into a plot\n"
21921 " coordinate system. By using this transform, we can change from a\n"
21922 " longitude, latitude coordinate to a polar stereographic project,\n"
21923 " for example. Initially, x[0]..[n-1] are the longitudes and\n"
21924 " y[0]..y[n-1] are the corresponding latitudes. After the call to\n"
21925 " mapform(), x[] and y[] should be replaced by the corresponding\n"
21926 " plot coordinates. If no transform is desired, mapform can be\n"
21927 " replaced by NULL.\n"
21929 " name (PLCHAR_VECTOR, input) : An ascii character string specifying\n"
21930 " the file name of a set of Shapefile files without the file\n"
21933 " minx (PLFLT, input) : The minimum x value to be plotted. This must\n"
21934 " be in the same units as used by the Shapefile. You could use a\n"
21935 " very large negative number to plot everything, but you can improve\n"
21936 " performance by limiting the area drawn. The units must match those\n"
21937 " of the Shapefile projection, which may be for example longitude or\n"
21938 " distance. The value of minx must be less than the value of maxx.\n"
21940 " maxx (PLFLT, input) : The maximum x value to be plotted. You could\n"
21941 " use a very large number to plot everything, but you can improve\n"
21942 " performance by limiting the area drawn.\n"
21944 " miny (PLFLT, input) : The minimum y value to be plotted. This must\n"
21945 " be in the same units as used by the Shapefile. You could use a\n"
21946 " very large negative number to plot everything, but you can improve\n"
21947 " performance by limiting the area drawn. The units must match those\n"
21948 " of the Shapefile projection, which may be for example latitude or\n"
21949 " distance. The value of miny must be less than the value of maxy.\n"
21951 " maxy (PLFLT, input) : The maximum y value to be plotted. You could\n"
21952 " use a very large number to plot everything, but you can improve\n"
21953 " performance by limiting the area drawn.\n"
21955 " plotentries (PLINT_VECTOR, input) : A vector containing the\n"
21956 " zero-based indices of the Shapefile elements which will be drawn.\n"
21958 " plotentries to NULL will plot all elements of the Shapefile.\n"
21960 " nplotentries (PLINT, input) : The number of items in\n"
21961 " plotentries. Ignored if\n"
21962 " plotentries is NULL.\n"
21966 "Plot latitude and longitude lines\n"
21970 " Displays latitude and longitude on the current plot. The lines are\n"
21971 " plotted in the current color and line style.\n"
21973 " Redacted form: plmeridians(mapform, dlong, dlat, minlong, maxlong,\n"
21974 " minlat, maxlat)\n"
21976 " This function is used in example 19.\n"
21982 "plmeridians(mapform, dlong, dlat, minlong, maxlong, minlat, maxlat)\n"
21986 " mapform (PLMAPFORM_callback, input) : A user supplied function to\n"
21987 " transform the coordinate longitudes and latitudes to a plot\n"
21988 " coordinate system. By using this transform, we can change from a\n"
21989 " longitude, latitude coordinate to a polar stereographic project,\n"
21990 " for example. Initially, x[0]..[n-1] are the longitudes and\n"
21991 " y[0]..y[n-1] are the corresponding latitudes. After the call to\n"
21992 " mapform(), x[] and y[] should be replaced by the corresponding\n"
21993 " plot coordinates. If no transform is desired, mapform can be\n"
21994 " replaced by NULL.\n"
21996 " dlong (PLFLT, input) : The interval in degrees at which the\n"
21997 " longitude lines are to be plotted.\n"
21999 " dlat (PLFLT, input) : The interval in degrees at which the latitude\n"
22000 " lines are to be plotted.\n"
22002 " minlong (PLFLT, input) : The value of the longitude on the left\n"
22003 " side of the plot. The value of minlong must be less than the value\n"
22004 " of maxlong, and the quantity maxlong-minlong must be less than or\n"
22007 " maxlong (PLFLT, input) : The value of the longitude on the right\n"
22008 " side of the plot.\n"
22010 " minlat (PLFLT, input) : The minimum latitude to be plotted on the\n"
22011 " background. One can always use -90.0 as the boundary outside the\n"
22012 " plot window will be automatically eliminated. However, the\n"
22013 " program will be faster if one can reduce the size of the\n"
22014 " background plotted.\n"
22016 " maxlat (PLFLT, input) : The maximum latitudes to be plotted on the\n"
22017 " background. One can always use 90.0 as the boundary outside the\n"
22018 " plot window will be automatically eliminated.\n"
22022 "Plot a 2D matrix using cmap1 with automatic color adjustment\n"
22026 " Plot a 2D matrix using the cmap1 palette. The color scale is\n"
22027 " automatically adjusted to use the maximum and minimum values in idata\n"
22028 " as valuemin and valuemax in a call to plimagefr.\n"
22030 " Redacted form: General: plimage(idata, xmin, xmax, ymin, ymax, zmin,\n"
22031 " zmax, Dxmin, Dxmax, Dymin, Dymax)\n"
22034 " This function is used in example 20.\n"
22040 "plimage(idata, nx, ny, xmin, xmax, ymin, ymax, zmin, zmax, Dxmin, Dxmax, Dymin, Dymax)\n"
22044 " idata (PLFLT_MATRIX, input) : A matrix containing function values\n"
22045 " to plot. Should have dimensions of\n"
22049 " nx, ny (PLINT, input) : Dimensions of idata\n"
22051 " xmin, xmax, ymin, ymax (PLFLT, input) : The x and y index ranges\n"
22052 " are linearly transformed to these world coordinate ranges such\n"
22053 " that idata[0][0] corresponds to (xmin, ymin) and idata[nx - 1][ny\n"
22054 " - 1] corresponds to (xmax, ymax).\n"
22056 " zmin, zmax (PLFLT, input) : Only data between zmin and zmax\n"
22057 " (inclusive) will be plotted.\n"
22059 " Dxmin, Dxmax, Dymin, Dymax (PLFLT, input) : Plot only the window of\n"
22060 " points whose plot coordinates fall inside the window of (Dxmin,\n"
22061 " Dymin) to (Dxmax, Dymax).\n"
22065 "Plot a 2D matrix using cmap1\n"
22069 " Plot a 2D matrix using cmap1.\n"
22071 " Redacted form: General: plimagefr(idata, xmin, xmax, ymin, ymax, zmin,\n"
22072 " zmax, valuemin, valuemax, pltr, pltr_data)\n"
22075 " This function is used in example 20.\n"
22081 "plimagefr(idata, nx, ny, xmin, xmax, ymin, ymax, zmin, zmax, valuemin, valuemax, pltr, pltr_data)\n"
22085 " idata (PLFLT_MATRIX, input) : A matrix of values (intensities) to\n"
22086 " plot. Should have dimensions of\n"
22090 " nx, ny (PLINT, input) : Dimensions of idata\n"
22092 " xmin, xmax, ymin, ymax (PLFLT, input) : See the discussion of\n"
22093 " pltr below for how these arguments are used (only for the special case\n"
22094 " when the callback function\n"
22095 " pltr is not supplied).\n"
22097 " zmin, zmax (PLFLT, input) : Only data between zmin and zmax\n"
22098 " (inclusive) will be plotted.\n"
22100 " valuemin, valuemax (PLFLT, input) : The minimum and maximum data\n"
22101 " values to use for value to color mappings. A datum equal to or\n"
22102 " less than valuemin will be plotted with color 0.0, while a datum\n"
22103 " equal to or greater than valuemax will be plotted with color 1.0.\n"
22104 " Data between valuemin and valuemax map linearly to colors in the\n"
22105 " range (0.0-1.0).\n"
22107 " pltr (PLTRANSFORM_callback, input) : A callback function that\n"
22108 " defines the transformation between the zero-based indices of the\n"
22109 " matrix idata and world coordinates. If\n"
22110 " pltr is not supplied (e.g., is set to NULL in the C case), then the x\n"
22111 " indices of idata are mapped to the range\n"
22113 " xmax and the y indices of idata are mapped to the range\n"
22115 " ymax.For the C case, transformation functions are provided in the\n"
22116 " PLplot library: pltr0 for the identity mapping, and pltr1 and\n"
22117 " pltr2 for arbitrary mappings respectively defined by vectors and\n"
22118 " matrices. In addition, C callback routines for the transformation\n"
22119 " can be supplied by the user such as the mypltr function in\n"
22120 " examples/c/x09c.c which provides a general linear transformation\n"
22121 " between index coordinates and world coordinates.For languages\n"
22122 " other than C you should consult the PLplot documentation for the\n"
22123 " details concerning how PLTRANSFORM_callback arguments are\n"
22124 " interfaced. However, in general, a particular pattern of\n"
22125 " callback-associated arguments such as a tr vector with 6 elements;\n"
22126 " xg and yg vectors; or xg and yg matrices are respectively\n"
22127 " interfaced to a linear-transformation routine similar to the above\n"
22128 " mypltr function; pltr1; and pltr2. Furthermore, some of our more\n"
22129 " sophisticated bindings (see, e.g., the PLplot documentation)\n"
22130 " support native language callbacks for handling index to\n"
22131 " world-coordinate transformations. Examples of these various\n"
22132 " approaches are given in examples/<language>x09*,\n"
22133 " examples/<language>x16*, examples/<language>x20*,\n"
22134 " examples/<language>x21*, and examples/<language>x22*, for all our\n"
22135 " supported languages.\n"
22137 " pltr_data (PLPointer, input) : Extra parameter to help pass\n"
22138 " information to pltr0, pltr1, pltr2, or whatever routine is\n"
22139 " externally supplied.\n"
22148 "Wait for graphics input event and translate to world coordinates.\n"
22152 " Wait for graphics input event and translate to world coordinates.\n"
22153 " Returns 0 if no translation to world coordinates is possible.\n"
22155 " This function returns 1 on success and 0 if no translation to world\n"
22156 " coordinates is possible.\n"
22158 " Redacted form: plGetCursor(gin)\n"
22160 " This function is used in examples 1 and 20.\n"
22166 "PLINT plGetCursor(gin)\n"
22170 " gin (PLGraphicsIn *, output) : Pointer to PLGraphicsIn structure\n"
22171 " which will contain the output. The structure is not allocated by\n"
22172 " the routine and must exist before the function is called.\n"
22175 { NULL, NULL, 0, NULL }
22179 { NULL, NULL, 0, NULL }
22253 {0, 0, 0, 0.0, 0, 0}};
22307 #define SWIGRUNTIME_DEBUG
22330 if (!module_head) {
22343 }
while (iter!= module_head);
22354 if (init == 0)
return;
22357 #ifdef SWIGRUNTIME_DEBUG
22358 printf(
"SWIG_InitializeModule: size %lu\n", (
unsigned long)
swig_module.
size);
22365 #ifdef SWIGRUNTIME_DEBUG
22375 #ifdef SWIGRUNTIME_DEBUG
22376 printf(
"SWIG_InitializeModule: found type %s\n", type->
name);
22380 #ifdef SWIGRUNTIME_DEBUG
22381 printf(
"SWIG_InitializeModule: found and overwrite type %s \n", type->
name);
22390 while (cast->
type) {
22393 #ifdef SWIGRUNTIME_DEBUG
22394 printf(
"SWIG_InitializeModule: look cast %s\n", cast->
type->
name);
22398 #ifdef SWIGRUNTIME_DEBUG
22399 if (ret) printf(
"SWIG_InitializeModule: found cast %s\n", ret->
name);
22404 #ifdef SWIGRUNTIME_DEBUG
22405 printf(
"SWIG_InitializeModule: skip old type %s\n", ret->
name);
22412 #ifdef SWIGRUNTIME_DEBUG
22413 if (ocast) printf(
"SWIG_InitializeModule: skip old cast %s\n", ret->
name);
22415 if (!ocast) ret = 0;
22420 #ifdef SWIGRUNTIME_DEBUG
22421 printf(
"SWIG_InitializeModule: adding cast %s\n", cast->
type->
name);
22436 #ifdef SWIGRUNTIME_DEBUG
22437 printf(
"**** SWIG_InitializeModule: Cast List ******\n");
22442 while (cast->
type) {
22443 printf(
"SWIG_InitializeModule: cast type %s\n", cast->
type->
name);
22447 printf(
"---- Total casts: %d\n",j);
22449 printf(
"**** SWIG_InitializeModule: Cast List ******\n");
22462 static int init_run = 0;
22464 if (init_run)
return;
22475 equiv = equiv->
next;
22496 #define SWIG_newvarlink() SWIG_Python_newvarlink()
22497 #define SWIG_addvarlink(p, name, get_attr, set_attr) SWIG_Python_addvarlink(p, name, get_attr, set_attr)
22498 #define SWIG_InstallConstants(d, constants) SWIG_Python_InstallConstants(d, constants)
22506 PyObject *(*get_attr)(void);
22518 #if PY_VERSION_HEX >= 0x03000000
22519 return PyUnicode_InternFromString(
"<Swig global variables>");
22521 return PyString_FromString(
"<Swig global variables>");
22527 #if PY_VERSION_HEX >= 0x03000000
22528 PyObject *str = PyUnicode_InternFromString(
"(");
22532 for (var = v->
vars; var; var=var->
next) {
22533 tail = PyUnicode_FromString(var->
name);
22534 joined = PyUnicode_Concat(str,
tail);
22539 tail = PyUnicode_InternFromString(
", ");
22540 joined = PyUnicode_Concat(str,
tail);
22546 tail = PyUnicode_InternFromString(
")");
22547 joined = PyUnicode_Concat(str,
tail);
22552 PyObject *str = PyString_FromString(
"(");
22554 for (var = v->
vars; var; var=var->
next) {
22555 PyString_ConcatAndDel(&str,PyString_FromString(var->
name));
22556 if (var->
next) PyString_ConcatAndDel(&str,PyString_FromString(
", "));
22558 PyString_ConcatAndDel(&str,PyString_FromString(
")"));
22576 PyObject *res = NULL;
22579 if (strcmp(var->
name,n) == 0) {
22585 if (res == NULL && !PyErr_Occurred()) {
22586 PyErr_Format(PyExc_AttributeError,
"Unknown C global variable '%s'", n);
22596 if (strcmp(var->
name,n) == 0) {
22602 if (res == 1 && !PyErr_Occurred()) {
22603 PyErr_Format(PyExc_AttributeError,
"Unknown C global variable '%s'", n);
22610 static char varlink__doc__[] =
"Swig var link object";
22611 static PyTypeObject varlink_type;
22612 static int type_init = 0;
22614 const PyTypeObject tmp = {
22615 #if PY_VERSION_HEX >= 0x03000000
22616 PyVarObject_HEAD_INIT(NULL, 0)
22618 PyObject_HEAD_INIT(NULL)
22645 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
22648 #if PY_VERSION_HEX >= 0x03040000
22651 #ifdef COUNT_ALLOCS
22659 varlink_type = tmp;
22661 if (PyType_Ready(&varlink_type) < 0)
22664 return &varlink_type;
22674 return ((PyObject*) result);
22682 size_t size = strlen(
name)+1;
22683 gv->
name = (
char *)malloc(size);
22696 static PyObject *globals = 0;
22712 for (i = 0; constants[i].
type; ++i) {
22713 switch(constants[i].type) {
22718 obj =
SWIG_NewPackedObj(constants[i].pvalue, constants[i].lvalue, *(constants[i].ptype));
22725 PyDict_SetItemString(d, constants[i].
name, obj);
22741 for (i = 0; methods[i].ml_name; ++i) {
22742 const char *c = methods[i].ml_doc;
22744 c = strstr(c,
"swig_ptr: ");
22748 const char *
name = c + 10;
22749 for (j = 0; const_table[j].
type; ++j) {
22750 if (strncmp(const_table[j].
name,
name,
22751 strlen(const_table[j].
name)) == 0) {
22752 ci = &(const_table[j]);
22759 size_t shift = (ci->
ptype) - types;
22761 size_t ldoc = (c - methods[i].ml_doc);
22762 size_t lptr = strlen(ty->
name)+2*
sizeof(
void*)+2;
22763 char *ndoc = (
char*)malloc(ldoc + lptr + 10);
22766 memcpy(buff, methods[i].ml_doc, ldoc);
22768 memcpy(buff,
"swig_ptr: ", 10);
22771 methods[i].ml_doc = ndoc;
22809 if (PyCFunction_Check(func)) {
22810 PyCFunctionObject *funcobj = (PyCFunctionObject *)func;
22813 func = PyCFunction_NewEx(ml, funcobj->m_self, funcobj->m_module);
22815 #if PY_VERSION_HEX >= 0x03000000
22816 return PyInstanceMethod_New(func);
22818 return PyMethod_New(func, NULL, NULL);
22828 if (PyCFunction_Check(func)) {
22829 PyCFunctionObject *funcobj = (PyCFunctionObject *)func;
22832 func = PyCFunction_NewEx(ml, funcobj->m_self, funcobj->m_module);
22834 return PyStaticMethod_New(func);
22850 #if PY_VERSION_HEX >= 0x03000000
22856 PyObject *m, *d, *md, *globals;
22858 #if PY_VERSION_HEX >= 0x03000000
22859 static struct PyModuleDef SWIG_module = {
22860 PyModuleDef_HEAD_INIT,
22872 #if defined(SWIGPYTHON_BUILTIN)
22874 0, 0, 0, 0, 0, 0, 0
22876 static PyGetSetDef this_getset_def = {
22877 (
char *)
"this", &SwigPyBuiltin_ThisClosure, NULL, NULL, NULL
22879 static SwigPyGetSet thisown_getset_closure = {
22883 static PyGetSetDef thisown_getset_def = {
22884 (
char *)
"thisown", SwigPyBuiltin_GetterClosure, SwigPyBuiltin_SetterClosure, NULL, &thisown_getset_closure
22886 PyTypeObject *builtin_pytype;
22887 int builtin_base_count;
22890 PyGetSetDescrObject *static_getset;
22891 PyTypeObject *metatype;
22892 PyTypeObject *swigpyobject;
22894 PyObject *public_interface, *public_symbol;
22895 PyObject *this_descr;
22896 PyObject *thisown_descr;
22897 PyObject *
self = 0;
22900 (void)builtin_pytype;
22901 (void)builtin_base_count;
22902 (void)builtin_basetype;
22904 (void)static_getset;
22908 metatype = SwigPyObjectType();
22918 #ifndef SWIGPYTHON_BUILTIN
22925 #if PY_VERSION_HEX >= 0x03000000
22926 m = PyModule_Create(&SWIG_module);
22931 md = d = PyModule_GetDict(m);
22936 #ifdef SWIGPYTHON_BUILTIN
22940 assert(SwigPyObject_stype);
22943 SwigPyObject_stype->
clientdata = &SwigPyObject_clientdata;
22944 SwigPyObject_clientdata.
pytype = swigpyobject;
22945 }
else if (swigpyobject->tp_basicsize != cd->
pytype->tp_basicsize) {
22946 PyErr_SetString(PyExc_RuntimeError,
"Import error: attempted to load two incompatible swig-generated modules.");
22947 # if PY_VERSION_HEX >= 0x03000000
22960 (void)thisown_descr;
22962 public_interface = PyList_New(0);
22964 (void)public_symbol;
22966 PyDict_SetItemString(md,
"__all__", public_interface);
22967 Py_DECREF(public_interface);
22969 SwigPyBuiltin_AddPublicSymbol(public_interface,
SwigMethods[i].ml_name);
23164 #if PY_VERSION_HEX >= 0x03000000