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.