1This file presents the complete list of rules for arrays sizes that 2are enforced in a user-friendly way for the Fortran bindings by 3emitting a warning message when these rules are not followed. These 4rules were derived from the rules implied for our swig-generated 5bindings in bindings/swig-support/plplotcapi.i (i.e., anything to do 6with a "Ck" argument such as the Array and ArrayCk arguments). 7 8plbin( x, y, center ) 9-- x and y must have identical sizes; 10 11plcolorbar(colorbar_width, colorbar_height, 12 opt, position, x, y, 13 x_length, y_length, bg_color, bb_color, bb_style, 14 low_cap_color, high_cap_color, 15 cont_color, cont_width, 16 label_opts, labels, 17 axis_opts, ticks, sub_ticks, n_values, values ) 18-- label_opts and labels must have identical sizes and axis_opts, 19 ticks, sub_ticks, nvalues, and the first dimension of values must 20 have identical sizes. 21 22plerrx( xmin, xmax, y ) 23-- xmin, xmax, and y must have identical sizes; 24 25plerry( x, ymin, ymax ) 26-- x, ymin, and ymax must have identical sizes; 27 28plfill3( x, y, z ) 29-- x, y, and z must have identical sizes; 30 31plfill( x, y ) 32-- x and y must have identical sizes; 33 34plgradient( x, y, angle ) 35-- x and y must have identical sizes; 36 37plgriddata( x, y, z, xg, yg, zg, type, data ) 38-- x, y, and z must have identical sizes, and the first dimension of z 39 must be identical with the size of xg, and the second dimension 40 of z must be identical with the size of yg; 41 42pllegend( legend_width, legend_height, 43 opt, position, x, y, 44 plot_width, bg_color, bb_color, bb_style, 45 nrow, ncolumn, opt_array, 46 text_offset, text_scale, text_spacing, 47 text_justification, text_colors, text, 48 box_colors, box_patterns, box_scales, box_line_widths, 49 line_colors, line_styles, line_widths, 50 symbol_colors, symbol_scales, symbol_numbers, symbols ) 51-- opt_array, text_colors, text, box_colors, box_patterns, box_scales, 52 box_line_widths, line_colors, line_styles, line_widths, 53 symbol_colors, symbol_scales, symbol_numbers and symbols must all 54 have the same sizes; 55 56plmesh( x, y, z, opt ) 57-- The size of x must be identical with the size of the first 58 dimension of z and the size of y must be identical with the size of 59 the second dimension of z; 60 61plmeshc( x, y, z, opt, clevel ) 62-- The size of x must be identical with the size of the first 63 dimension of z and the size of y must be identical with the size of 64 the second dimension of z; 65 66plot3d( x, y, z, opt, side) 67-- The size of x must be identical with the size of the first 68 dimension of z and the size of y must be identical with the size of 69 the second dimension of z; 70 71plot3dc( x, y, z, opt, clevel ) 72-- The size of x must be identical with the size of the first 73 dimension of z and the size of y must be identical with the size of 74 the second dimension of z; 75 76plot3dcl( x, y, z, opt, clevel, indexxmin, indexymin, indexymax ) 77-- The size of x must be identical with the size of the first 78 dimension of z, the size of y must be identical with the size of 79 the second dimension of z, and indexymin and indexymax must have 80 identical sizes; 81 82plpat( inc, del ) 83-- inc and del must have identical sizes; 84 85plpoin3( x, y, z, code ) 86-- x, y, and z must have identical sizes; 87 88plpoin( x, y, code ) 89-- x and y must have identical sizes; 90 91plpoly3( x, y, z, draw, ifcc ) 92-- x, y, and z must have identical sizes and the size of draw 93 must be one less than the size of x, y, and z; 94 95plscmap0( r, g, b ) 96-- r, g, and b must have identical sizes; 97 98plscmap0a( r, g, b, a ) 99-- r, g, b, and a must have identical sizes; 100 101plscmap1( r, g, b ) 102-- r, g, and b must have identical sizes; 103 104plscmap1a( r, g, b, a ) 105-- r, g, b, and a must have identical sizes; 106 107plscmap1la_impl( rgbtype, intensity, coord1, coord2, coord3, alpha, alt_hue_path) 108-- intensity, coord1, coord2, coord3, and alpha must have identical 109 sizes and the size of alt_hue_path must be one less than the size 110 of intensity, coord1, coord2, coord3, and alpha; 111 112plscmap1l_impl( rgbtype, intensity, coord1, coord2, coord3, alt_hue_path) 113-- intensity, coord1, coord2, and coord3 must have identical sizes and 114 the size of alt_hue_path must be one less than the size of 115 intensity, coord1, coord2, and coord3; 116 117plstring3( x, y, z, string ) 118-- x, y, and z must have identical sizes; 119 120plstring( x, y, string ) 121-- x and y must have identical sizes; 122 123plstripc( id, xspec, yspec, xmin, xmax, xjump, ymin, ymax, 124 xlpos, ylpos, y_ascl, acc, colbox, collab, 125 colline, styline, legline, labx, laby, labtop ) 126-- colline, styline, and legline must all have sizes of 4. 127 128plsurf3d( x, y, z, opt, clevel ) 129-- The size of x must be identical with the size of the first 130 dimension of z and the size of y must be identical with the size of 131 the second dimension of z; 132 133plsurf3dl( x, y, z, opt, clevel, indexxmin, indexymin, indexymax ) 134-- The size of x must be identical with the size of the first 135 dimension of z, the size of y must be identical with the size of 136 the second dimension of z, and indexymin and indexymax must have 137 identical sizes; 138 139plsvect( arrowx, arrowy, fill ) 140-- arrowx and arrowy must have identical sizes; 141 142plsym( x, y, code ) 143-- x and y must have identical sizes; 144 145plvect( u, v, scale ) 146plvect( u, v, scale, xg1, yg1 ) 147plvect( u, v, scale, xg2, yg2 ) 148plvect( u, v, scale, tr ) 149-- u and v must have identical sizes for their first dimension and identical 150 sizes for their second dimension, the xg1 size must be identical to the 151 size of the first dimension of u and v, the yg1 size must be identical 152 to the size of the second dimension of u and v, and xg2 and yg2 must 153 have first dimension sizes that are identical to the sizes of the first 154 dimension of u and v, and second dimension sizes that are identical to the 155 sizes of the second dimension of u and v.