corrade-nucleus-nucleons – Blame information for rev 20

Subversion Repositories:
Rev:
Rev Author Line No. Line
20 office 1 /**
2 * @license Highcharts JS v5.0.12 (2017-05-24)
3 *
4 * 3D features for Highcharts JS
5 *
6 * @license: www.highcharts.com/license
7 */
8 'use strict';
9 (function(factory) {
10 if (typeof module === 'object' && module.exports) {
11 module.exports = factory;
12 } else {
13 factory(Highcharts);
14 }
15 }(function(Highcharts) {
16 (function(H) {
17 /**
18 * (c) 2010-2017 Torstein Honsi
19 *
20 * License: www.highcharts.com/license
21 */
22 /**
23 * Mathematical Functionility
24 */
25 var deg2rad = H.deg2rad,
26 pick = H.pick;
27 /**
28 * Apply 3-D rotation
29 * Euler Angles (XYZ): cosA = cos(Alfa|Roll), cosB = cos(Beta|Pitch), cosG = cos(Gamma|Yaw)
30 *
31 * Composite rotation:
32 * | cosB * cosG | cosB * sinG | -sinB |
33 * | sinA * sinB * cosG - cosA * sinG | sinA * sinB * sinG + cosA * cosG | sinA * cosB |
34 * | cosA * sinB * cosG + sinA * sinG | cosA * sinB * sinG - sinA * cosG | cosA * cosB |
35 *
36 * Now, Gamma/Yaw is not used (angle=0), so we assume cosG = 1 and sinG = 0, so we get:
37 * | cosB | 0 | - sinB |
38 * | sinA * sinB | cosA | sinA * cosB |
39 * | cosA * sinB | - sinA | cosA * cosB |
40 *
41 * But in browsers, y is reversed, so we get sinA => -sinA. The general result is:
42 * | cosB | 0 | - sinB | | x | | px |
43 * | - sinA * sinB | cosA | - sinA * cosB | x | y | = | py |
44 * | cosA * sinB | sinA | cosA * cosB | | z | | pz |
45 */
46 function rotate3D(x, y, z, angles) {
47 return {
48 x: angles.cosB * x - angles.sinB * z,
49 y: -angles.sinA * angles.sinB * x + angles.cosA * y - angles.cosB * angles.sinA * z,
50 z: angles.cosA * angles.sinB * x + angles.sinA * y + angles.cosA * angles.cosB * z
51 };
52 }
53  
54 function perspective3D(coordinate, origin, distance) {
55 var projection = ((distance > 0) && (distance < Number.POSITIVE_INFINITY)) ? distance / (coordinate.z + origin.z + distance) : 1;
56 return {
57 x: coordinate.x * projection,
58 y: coordinate.y * projection
59 };
60 }
61  
62 /**
63 * Transforms a given array of points according to the angles in chart.options.
64 * Parameters:
65 * - points: the array of points
66 * - chart: the chart
67 * - insidePlotArea: wether to verifiy the points are inside the plotArea
68 * Returns:
69 * - an array of transformed points
70 */
71 H.perspective = function(points, chart, insidePlotArea) {
72 var options3d = chart.options.chart.options3d,
73 inverted = insidePlotArea ? chart.inverted : false,
74 origin = {
75 x: chart.plotWidth / 2,
76 y: chart.plotHeight / 2,
77 z: options3d.depth / 2,
78 vd: pick(options3d.depth, 1) * pick(options3d.viewDistance, 0)
79 },
80 scale = chart.scale3d || 1,
81 beta = deg2rad * options3d.beta * (inverted ? -1 : 1),
82 alpha = deg2rad * options3d.alpha * (inverted ? -1 : 1),
83 angles = {
84 cosA: Math.cos(alpha),
85 cosB: Math.cos(-beta),
86 sinA: Math.sin(alpha),
87 sinB: Math.sin(-beta)
88 };
89  
90 if (!insidePlotArea) {
91 origin.x += chart.plotLeft;
92 origin.y += chart.plotTop;
93 }
94  
95 // Transform each point
96 return H.map(points, function(point) {
97 var rotated = rotate3D(
98 (inverted ? point.y : point.x) - origin.x,
99 (inverted ? point.x : point.y) - origin.y,
100 (point.z || 0) - origin.z,
101 angles
102 ),
103 coordinate = perspective3D(rotated, origin, origin.vd); // Apply perspective
104  
105 // Apply translation
106 coordinate.x = coordinate.x * scale + origin.x;
107 coordinate.y = coordinate.y * scale + origin.y;
108 coordinate.z = rotated.z * scale + origin.z;
109  
110 return {
111 x: (inverted ? coordinate.y : coordinate.x),
112 y: (inverted ? coordinate.x : coordinate.y),
113 z: coordinate.z
114 };
115 });
116 };
117  
118 /**
119 * Calculate a distance from camera to points - made for calculating zIndex of scatter points.
120 * Parameters:
121 * - coordinates: The coordinates of the specific point
122 * - chart: the chart
123 * Returns:
124 * - a distance from camera to point
125 */
126 H.pointCameraDistance = function(coordinates, chart) {
127 var options3d = chart.options.chart.options3d,
128 cameraPosition = {
129 x: chart.plotWidth / 2,
130 y: chart.plotHeight / 2,
131 z: pick(options3d.depth, 1) * pick(options3d.viewDistance, 0) + options3d.depth
132 },
133 distance = Math.sqrt(Math.pow(cameraPosition.x - coordinates.plotX, 2) + Math.pow(cameraPosition.y - coordinates.plotY, 2) + Math.pow(cameraPosition.z - coordinates.plotZ, 2));
134 return distance;
135 };
136  
137 /**
138 * Calculate area of a 2D polygon using Shoelace algorithm
139 * http://en.wikipedia.org/wiki/Shoelace_formula
140 */
141 H.shapeArea = function(vertexes) {
142 var area = 0,
143 i,
144 j;
145 for (i = 0; i < vertexes.length; i++) {
146 j = (i + 1) % vertexes.length;
147 area += vertexes[i].x * vertexes[j].y - vertexes[j].x * vertexes[i].y;
148 }
149 return area / 2;
150 };
151  
152 /**
153 * Calculate area of a 3D polygon after perspective projection
154 */
155 H.shapeArea3d = function(vertexes, chart, insidePlotArea) {
156 return H.shapeArea(H.perspective(vertexes, chart, insidePlotArea));
157 };
158  
159  
160 }(Highcharts));
161 (function(H) {
162 /**
163 * (c) 2010-2017 Torstein Honsi
164 *
165 * License: www.highcharts.com/license
166 */
167 var cos = Math.cos,
168 PI = Math.PI,
169 sin = Math.sin;
170  
171  
172 var animObject = H.animObject,
173 charts = H.charts,
174 color = H.color,
175 defined = H.defined,
176 deg2rad = H.deg2rad,
177 each = H.each,
178 extend = H.extend,
179 inArray = H.inArray,
180 map = H.map,
181 merge = H.merge,
182 perspective = H.perspective,
183 pick = H.pick,
184 SVGElement = H.SVGElement,
185 SVGRenderer = H.SVGRenderer,
186 wrap = H.wrap;
187 /***
188 EXTENSION TO THE SVG-RENDERER TO ENABLE 3D SHAPES
189 ***/
190 ////// HELPER METHODS //////
191  
192 var dFactor = (4 * (Math.sqrt(2) - 1) / 3) / (PI / 2);
193  
194 /** Method to construct a curved path
195 * Can 'wrap' around more then 180 degrees
196 */
197 function curveTo(cx, cy, rx, ry, start, end, dx, dy) {
198 var result = [],
199 arcAngle = end - start;
200 if ((end > start) && (end - start > Math.PI / 2 + 0.0001)) {
201 result = result.concat(curveTo(cx, cy, rx, ry, start, start + (Math.PI / 2), dx, dy));
202 result = result.concat(curveTo(cx, cy, rx, ry, start + (Math.PI / 2), end, dx, dy));
203 return result;
204 }
205 if ((end < start) && (start - end > Math.PI / 2 + 0.0001)) {
206 result = result.concat(curveTo(cx, cy, rx, ry, start, start - (Math.PI / 2), dx, dy));
207 result = result.concat(curveTo(cx, cy, rx, ry, start - (Math.PI / 2), end, dx, dy));
208 return result;
209 }
210 return [
211 'C',
212 cx + (rx * Math.cos(start)) - ((rx * dFactor * arcAngle) * Math.sin(start)) + dx,
213 cy + (ry * Math.sin(start)) + ((ry * dFactor * arcAngle) * Math.cos(start)) + dy,
214 cx + (rx * Math.cos(end)) + ((rx * dFactor * arcAngle) * Math.sin(end)) + dx,
215 cy + (ry * Math.sin(end)) - ((ry * dFactor * arcAngle) * Math.cos(end)) + dy,
216  
217 cx + (rx * Math.cos(end)) + dx,
218 cy + (ry * Math.sin(end)) + dy
219 ];
220 }
221  
222  
223  
224 SVGRenderer.prototype.toLinePath = function(points, closed) {
225 var result = [];
226  
227 // Put "L x y" for each point
228 each(points, function(point) {
229 result.push('L', point.x, point.y);
230 });
231  
232 if (points.length) {
233 // Set the first element to M
234 result[0] = 'M';
235  
236 // If it is a closed line, add Z
237 if (closed) {
238 result.push('Z');
239 }
240 }
241  
242 return result;
243 };
244  
245 SVGRenderer.prototype.toLineSegments = function(points) {
246 var result = [];
247  
248 var m = true;
249 each(points, function(point) {
250 result.push(m ? 'M' : 'L', point.x, point.y);
251 m = !m;
252 });
253  
254 return result;
255 };
256  
257 /**
258 * A 3-D Face is defined by it's 3D vertexes, and is only
259 * visible if it's vertexes are counter-clockwise (Back-face culling).
260 * It is used as a polyhedron Element
261 */
262 SVGRenderer.prototype.face3d = function(args) {
263 var renderer = this,
264 ret = this.createElement('path');
265 ret.vertexes = [];
266 ret.insidePlotArea = false;
267 ret.enabled = true;
268  
269 wrap(ret, 'attr', function(proceed, hash) {
270 if (typeof hash === 'object' &&
271 (defined(hash.enabled) || defined(hash.vertexes) || defined(hash.insidePlotArea))) {
272 this.enabled = pick(hash.enabled, this.enabled);
273 this.vertexes = pick(hash.vertexes, this.vertexes);
274 this.insidePlotArea = pick(hash.insidePlotArea, this.insidePlotArea);
275 delete hash.enabled;
276 delete hash.vertexes;
277 delete hash.insidePlotArea;
278  
279 var chart = charts[renderer.chartIndex],
280 vertexes2d = perspective(this.vertexes, chart, this.insidePlotArea),
281 path = renderer.toLinePath(vertexes2d, true),
282 area = H.shapeArea(vertexes2d),
283 visibility = (this.enabled && area > 0) ? 'visible' : 'hidden';
284  
285 hash.d = path;
286 hash.visibility = visibility;
287 }
288 return proceed.apply(this, [].slice.call(arguments, 1));
289 });
290  
291 wrap(ret, 'animate', function(proceed, params) {
292 if (typeof params === 'object' &&
293 (defined(params.enabled) || defined(params.vertexes) || defined(params.insidePlotArea))) {
294 this.enabled = pick(params.enabled, this.enabled);
295 this.vertexes = pick(params.vertexes, this.vertexes);
296 this.insidePlotArea = pick(params.insidePlotArea, this.insidePlotArea);
297 delete params.enabled;
298 delete params.vertexes;
299 delete params.insidePlotArea;
300  
301 var chart = charts[renderer.chartIndex],
302 vertexes2d = perspective(this.vertexes, chart, this.insidePlotArea),
303 path = renderer.toLinePath(vertexes2d, true),
304 area = H.shapeArea(vertexes2d),
305 visibility = (this.enabled && area > 0) ? 'visible' : 'hidden';
306  
307 params.d = path;
308 this.attr('visibility', visibility);
309 }
310  
311 return proceed.apply(this, [].slice.call(arguments, 1));
312 });
313  
314 return ret.attr(args);
315 };
316  
317 /**
318 * A Polyhedron is a handy way of defining a group of 3-D faces.
319 * It's only attribute is `faces`, an array of attributes of each one of it's Face3D instances.
320 */
321 SVGRenderer.prototype.polyhedron = function(args) {
322 var renderer = this,
323 result = this.g(),
324 destroy = result.destroy;
325  
326  
327 result.attr({
328 'stroke-linejoin': 'round'
329 });
330  
331  
332 result.faces = [];
333  
334  
335 // destroy all children
336 result.destroy = function() {
337 for (var i = 0; i < result.faces.length; i++) {
338 < result.faces.length; i++) { result.faces[i].destroy();
339 < result.faces.length; i++) { }
340 < result.faces.length; i++) { return destroy.call(this);
341 < result.faces.length; i++) { };
342  
343 < result.faces.length; i++) { wrap(result, 'attr', function(proceed, hash, val, complete, continueAnimation) {
344 < result.faces.length; i++) { if (typeof hash === 'object' && defined(hash.faces)) {
345 < result.faces.length; i++) { while (result.faces.length > hash.faces.length) {
346 < result.faces.length; i++) { result.faces.pop().destroy();
347 < result.faces.length; i++) { }
348 < result.faces.length; i++) { while (result.faces.length < hash.faces.length) {
349 < result.faces.length; i++) {< hash.faces.length) { result.faces.push(renderer.face3d().add(result));
350 < result.faces.length; i++) {< hash.faces.length) { }
351 < result.faces.length; i++) {< hash.faces.length) { for (var i = 0; i < hash.faces.length; i++) {
352 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) { result.faces[i].attr(hash.faces[i], null, complete, continueAnimation);
353 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) { }
354 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) { delete hash.faces;
355 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) { }
356 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) { return proceed.apply(this, [].slice.call(arguments, 1));
357 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) { });
358  
359 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) { wrap(result, 'animate', function(proceed, params, duration, complete) {
360 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) { if (params && params.faces) {
361 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) { while (result.faces.length > params.faces.length) {
362 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) { result.faces.pop().destroy();
363 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) { }
364 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) { while (result.faces.length < params.faces.length) {
365 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) { result.faces.push(renderer.face3d().add(result));
366 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) { }
367 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) { for (var i = 0; i < params.faces.length; i++) {
368 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { result.faces[i].animate(params.faces[i], duration, complete);
369 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { }
370 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { delete params.faces;
371 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { }
372 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { return proceed.apply(this, [].slice.call(arguments, 1));
373 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { });
374  
375 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { return result.attr(args);
376 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { };
377  
378 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { ////// CUBOIDS //////
379 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { SVGRenderer.prototype.cuboid = function(shapeArgs) {
380  
381 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { var result = this.g(),
382 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { destroy = result.destroy,
383 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { paths = this.cuboidPath(shapeArgs);
384  
385  
386 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { result.attr({
387 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { 'stroke-linejoin': 'round'
388 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { });
389  
390  
391 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { // create the 3 sides
392 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { result.front = this.path(paths[0]).attr({
393 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { 'class': 'highcharts-3d-front'
394 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { }).add(result); // Front, top and side are never overlapping in our case so it is redundant to set zIndex of every element.
395 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { result.top = this.path(paths[1]).attr({
396 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { 'class': 'highcharts-3d-top'
397 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { }).add(result);
398 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { result.side = this.path(paths[2]).attr({
399 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { 'class': 'highcharts-3d-side'
400 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { }).add(result);
401  
402 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { // apply the fill everywhere, the top a bit brighter, the side a bit darker
403 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { result.fillSetter = function(fill) {
404 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { this.front.attr({
405 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { fill: fill
406 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { });
407 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { this.top.attr({
408 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { fill: color(fill).brighten(0.1).get()
409 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { });
410 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { this.side.attr({
411 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { fill: color(fill).brighten(-0.1).get()
412 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { });
413  
414 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { this.color = fill;
415 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { return this;
416 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { };
417  
418 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { // apply opacaity everywhere
419 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { result.opacitySetter = function(opacity) {
420 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { this.front.attr({
421 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { opacity: opacity
422 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { });
423 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { this.top.attr({
424 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { opacity: opacity
425 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { });
426 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { this.side.attr({
427 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { opacity: opacity
428 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { });
429 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { return this;
430 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { };
431  
432 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { result.attr = function(args, val) {
433  
434 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { // Resolve setting attributes by string name
435 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { if (typeof args === 'string' && typeof val !== 'undefined') {
436 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { var key = args;
437 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { args = {};
438 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { args[key] = val;
439 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { }
440  
441 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { if (args.shapeArgs || defined(args.x)) {
442 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { var shapeArgs = args.shapeArgs || args;
443 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { var paths = this.renderer.cuboidPath(shapeArgs);
444 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { this.front.attr({
445 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { d: paths[0]
446 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { });
447 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { this.top.attr({
448 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { d: paths[1]
449 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { });
450 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { this.side.attr({
451 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { d: paths[2]
452 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { });
453 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { } else {
454 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { return H.SVGElement.prototype.attr.call(this, args); // getter returns value
455 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { }
456  
457 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { return this;
458 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { };
459  
460 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { result.animate = function(args, duration, complete) {
461 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { if (defined(args.x) && defined(args.y)) {
462 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { var paths = this.renderer.cuboidPath(args);
463 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { this.front.animate({
464 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { d: paths[0]
465 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { }, duration, complete);
466 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { this.top.animate({
467 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { d: paths[1]
468 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { }, duration, complete);
469 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { this.side.animate({
470 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { d: paths[2]
471 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { }, duration, complete);
472 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { this.attr({
473 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { zIndex: -paths[3] // #4774
474 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { });
475 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { } else if (args.opacity) {
476 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { this.front.animate(args, duration, complete);
477 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { this.top.animate(args, duration, complete);
478 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { this.side.animate(args, duration, complete);
479 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { } else {
480 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { SVGElement.prototype.animate.call(this, args, duration, complete);
481 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { }
482 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { return this;
483 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { };
484  
485 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { // destroy all children
486 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { result.destroy = function() {
487 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { this.front.destroy();
488 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { this.top.destroy();
489 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { this.side.destroy();
490  
491 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { return destroy.call(this);
492 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { };
493  
494 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { // Apply the Z index to the cuboid group
495 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { result.attr({
496 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { zIndex: -paths[3]
497 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { });
498  
499 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { return result;
500 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { };
501  
502 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { /**
503 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { * Generates a cuboid
504 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { */
505 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { H.SVGRenderer.prototype.cuboidPath = function(shapeArgs) {
506 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { var x = shapeArgs.x,
507 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { y = shapeArgs.y,
508 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { z = shapeArgs.z,
509 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { h = shapeArgs.height,
510 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { w = shapeArgs.width,
511 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { d = shapeArgs.depth,
512 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { chart = charts[this.chartIndex],
513 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { front,
514 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { back,
515 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { top,
516 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { bottom,
517 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { left,
518 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { right,
519 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { shape,
520 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { path1,
521 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { path2,
522 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { path3,
523 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { isFront,
524 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { isTop,
525 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { isRight,
526 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { options3d = chart.options.chart.options3d,
527 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { alpha = options3d.alpha,
528 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { // Priority for x axis is the biggest,
529 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { // because of x direction has biggest influence on zIndex
530 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { incrementX = 10000,
531 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { // y axis has the smallest priority in case of our charts
532 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { // (needs to be set because of stacking)
533 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { incrementY = 10,
534 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { incrementZ = 100,
535 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { zIndex = 0;
536  
537 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { // The 8 corners of the cube
538 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { var pArr = [{
539 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { x: x,
540 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { y: y,
541 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { z: z
542 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { }, {
543 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { x: x + w,
544 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { y: y,
545 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { z: z
546 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { }, {
547 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { x: x + w,
548 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { y: y + h,
549 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { z: z
550 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { }, {
551 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { x: x,
552 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { y: y + h,
553 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { z: z
554 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { }, {
555 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { x: x,
556 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { y: y + h,
557 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { z: z + d
558 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { }, {
559 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { x: x + w,
560 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { y: y + h,
561 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { z: z + d
562 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { }, {
563 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { x: x + w,
564 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { y: y,
565 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { z: z + d
566 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { }, {
567 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { x: x,
568 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { y: y,
569 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { z: z + d
570 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { }];
571  
572 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { // apply perspective
573 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { pArr = perspective(pArr, chart, shapeArgs.insidePlotArea);
574  
575 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { // helper method to decide which side is visible
576 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { function mapPath(i) {
577 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { return pArr[i];
578 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { }
579  
580 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { /*
581 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { * First value - path with specific side
582 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { * Second value - added information about side for later calculations.
583 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { * Possible second values are 0 for path1, 1 for path2 and -1 for no path choosed.
584 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { */
585 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { var pickShape = function(path1, path2) {
586 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { var ret = [
587 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { [], -1
588 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { ];
589 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { path1 = map(path1, mapPath);
590 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { path2 = map(path2, mapPath);
591 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { if (H.shapeArea(path1) < 0) {
592 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { ret = [path1, 0];
593 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { } else if (H.shapeArea(path2) < 0) {
594 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { ret = [path2, 1];
595 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { }
596 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { return ret;
597 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { };
598  
599 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { // front or back
600 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { front = [3, 2, 1, 0];
601 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { back = [7, 6, 5, 4];
602 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { shape = pickShape(front, back);
603 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { path1 = shape[0];
604 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { isFront = shape[1];
605  
606  
607 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { // top or bottom
608 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { top = [1, 6, 7, 0];
609 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { bottom = [4, 5, 2, 3];
610 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { shape = pickShape(top, bottom);
611 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { path2 = shape[0];
612 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { isTop = shape[1];
613  
614 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { // side
615 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { right = [1, 2, 5, 6];
616 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { left = [0, 7, 4, 3];
617 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { shape = pickShape(right, left);
618 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { path3 = shape[0];
619 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { isRight = shape[1];
620  
621 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { /*
622 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { * New block used for calculating zIndex. It is basing on X, Y and Z position of specific columns.
623 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { * All zIndexes (for X, Y and Z values) are added to the final zIndex, where every value has different priority.
624 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { * The biggest priority is in X and Z directions, the lowest index is for stacked columns (Y direction and the same X and Z positions).
625 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { * Big differents between priorities is made because we need to ensure that even for big changes in Y and Z parameters
626 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { * all columns will be drawn correctly.
627 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { */
628  
629 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { if (isRight === 1) {
630 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { zIndex += incrementX * (1000 - x);
631 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { } else if (!isRight) {
632 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { zIndex += incrementX * x;
633 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { }
634  
635 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { zIndex += incrementY * (!isTop ||
636 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { (alpha >= 0 && alpha <= 180 || alpha < 360 && alpha > 357.5) ? // Numbers checked empirically
637 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { chart.plotHeight - y : 10 + y
638 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { );
639  
640 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { if (isFront === 1) {
641 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { zIndex += incrementZ * (z);
642 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { } else if (!isFront) {
643 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { zIndex += incrementZ * (1000 - z);
644 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { }
645  
646 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { zIndex = -Math.round(zIndex);
647  
648 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { return [
649 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { this.toLinePath(path1, true),
650 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { this.toLinePath(path2, true),
651 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { this.toLinePath(path3, true),
652 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { zIndex
653 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { ]; // #4774
654 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { };
655  
656 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { ////// SECTORS //////
657 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { H.SVGRenderer.prototype.arc3d = function(attribs) {
658  
659 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { var wrapper = this.g(),
660 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { renderer = wrapper.renderer,
661 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { customAttribs = ['x', 'y', 'r', 'innerR', 'start', 'end'];
662  
663 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { /**
664 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { * Get custom attributes. Don't mutate the original object and return an object with only custom attr.
665 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { */
666 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { function suckOutCustom(params) {
667 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { var hasCA = false,
668 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { ca = {};
669  
670 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { params = merge(params); // Don't mutate the original object
671  
672 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { for (var key in params) {
673 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { if (inArray(key, customAttribs) !== -1) {
674 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { ca[key] = params[key];
675 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { delete params[key];
676 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { hasCA = true;
677 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { }
678 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { }
679 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { return hasCA ? ca : false;
680 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { }
681  
682 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { attribs = merge(attribs);
683  
684 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { attribs.alpha *= deg2rad;
685 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { attribs.beta *= deg2rad;
686  
687 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { // Create the different sub sections of the shape
688 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { wrapper.top = renderer.path();
689 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { wrapper.side1 = renderer.path();
690 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { wrapper.side2 = renderer.path();
691 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { wrapper.inn = renderer.path();
692 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { wrapper.out = renderer.path();
693  
694 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { /**
695 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { * Add all faces
696 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { */
697 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { wrapper.onAdd = function() {
698 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { var parent = wrapper.parentGroup,
699 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { className = wrapper.attr('class');
700 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { wrapper.top.add(wrapper);
701  
702 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { // These faces are added outside the wrapper group because the z index
703 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { // relates to neighbour elements as well
704 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { each(['out', 'inn', 'side1', 'side2'], function(face) {
705 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { wrapper[face]
706 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { .addClass(className + ' highcharts-3d-side')
707 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { .add(parent);
708 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { });
709 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { };
710  
711 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { /**
712 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { * Compute the transformed paths and set them to the composite shapes
713 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { */
714 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { wrapper.setPaths = function(attribs) {
715  
716 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { var paths = wrapper.renderer.arc3dPath(attribs),
717 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { zIndex = paths.zTop * 100;
718  
719 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { wrapper.attribs = attribs;
720  
721 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { wrapper.top.attr({
722 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { d: paths.top,
723 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { zIndex: paths.zTop
724 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { });
725 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { wrapper.inn.attr({
726 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { d: paths.inn,
727 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { zIndex: paths.zInn
728 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { });
729 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { wrapper.out.attr({
730 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { d: paths.out,
731 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { zIndex: paths.zOut
732 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { });
733 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { wrapper.side1.attr({
734 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { d: paths.side1,
735 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { zIndex: paths.zSide1
736 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { });
737 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { wrapper.side2.attr({
738 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { d: paths.side2,
739 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { zIndex: paths.zSide2
740 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { });
741  
742  
743 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { // show all children
744 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { wrapper.zIndex = zIndex;
745 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { wrapper.attr({
746 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { zIndex: zIndex
747 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { });
748  
749 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { // Set the radial gradient center the first time
750 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { if (attribs.center) {
751 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { wrapper.top.setRadialReference(attribs.center);
752 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { delete attribs.center;
753 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { }
754 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { };
755 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { wrapper.setPaths(attribs);
756  
757 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { // Apply the fill to the top and a darker shade to the sides
758 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { wrapper.fillSetter = function(value) {
759 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { var darker = color(value).brighten(-0.1).get();
760  
761 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { this.fill = value;
762  
763 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { this.side1.attr({
764 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { fill: darker
765 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { });
766 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { this.side2.attr({
767 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { fill: darker
768 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { });
769 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { this.inn.attr({
770 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { fill: darker
771 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { });
772 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { this.out.attr({
773 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { fill: darker
774 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { });
775 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { this.top.attr({
776 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { fill: value
777 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { });
778 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { return this;
779 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { };
780  
781 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { // Apply the same value to all. These properties cascade down to the children
782 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { // when set to the composite arc3d.
783 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { each(['opacity', 'translateX', 'translateY', 'visibility'], function(setter) {
784 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { wrapper[setter + 'Setter'] = function(value, key) {
785 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { wrapper[key] = value;
786 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { each(['out', 'inn', 'side1', 'side2', 'top'], function(el) {
787 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { wrapper[el].attr(key, value);
788 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { });
789 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { };
790 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { });
791  
792 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { /**
793 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { * Override attr to remove shape attributes and use those to set child paths
794 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { */
795 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { wrap(wrapper, 'attr', function(proceed, params) {
796 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { var ca;
797 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { if (typeof params === 'object') {
798 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { ca = suckOutCustom(params);
799 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { if (ca) {
800 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { extend(wrapper.attribs, ca);
801 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { wrapper.setPaths(wrapper.attribs);
802 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { }
803 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { }
804 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { return proceed.apply(this, [].slice.call(arguments, 1));
805 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { });
806  
807 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { /**
808 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { * Override the animate function by sucking out custom parameters related to the shapes directly,
809 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { * and update the shapes from the animation step.
810 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { */
811 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { wrap(wrapper, 'animate', function(proceed, params, animation, complete) {
812 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { var ca,
813 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { from = this.attribs,
814 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { to,
815 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { anim;
816  
817 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { // Attribute-line properties connected to 3D. These shouldn't have been in the
818 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { // attribs collection in the first place.
819 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { delete params.center;
820 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { delete params.z;
821 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { delete params.depth;
822 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { delete params.alpha;
823 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { delete params.beta;
824  
825 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { anim = animObject(pick(animation, this.renderer.globalAnimation));
826  
827 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { if (anim.duration) {
828 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { ca = suckOutCustom(params);
829 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { params.dummy = 1; // Params need to have a property in order for the step to run (#5765)
830  
831 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { if (ca) {
832 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { to = ca;
833 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { anim.step = function(a, fx) {
834 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { function interpolate(key) {
835 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { return from[key] + (pick(to[key], from[key]) - from[key]) * fx.pos;
836 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { }
837  
838 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { if (fx.prop === 'dummy') {
839 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { fx.elem.setPaths(merge(from, {
840 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { x: interpolate('x'),
841 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { y: interpolate('y'),
842 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { r: interpolate('r'),
843 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { innerR: interpolate('innerR'),
844 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { start: interpolate('start'),
845 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { end: interpolate('end')
846 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { }));
847 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { }
848 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { };
849 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { }
850 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { animation = anim; // Only when duration (#5572)
851 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { }
852 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { return proceed.call(this, params, animation, complete);
853 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { });
854  
855 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { // destroy all children
856 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { wrapper.destroy = function() {
857 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { this.top.destroy();
858 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { this.out.destroy();
859 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { this.inn.destroy();
860 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { this.side1.destroy();
861 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { this.side2.destroy();
862  
863 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { SVGElement.prototype.destroy.call(this);
864 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { };
865 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { // hide all children
866 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { wrapper.hide = function() {
867 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { this.top.hide();
868 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { this.out.hide();
869 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { this.inn.hide();
870 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { this.side1.hide();
871 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { this.side2.hide();
872 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { };
873 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { wrapper.show = function() {
874 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { this.top.show();
875 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { this.out.show();
876 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { this.inn.show();
877 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { this.side1.show();
878 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { this.side2.show();
879 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { };
880 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { return wrapper;
881 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { };
882  
883 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { /**
884 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { * Generate the paths required to draw a 3D arc
885 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { */
886 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { SVGRenderer.prototype.arc3dPath = function(shapeArgs) {
887 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { var cx = shapeArgs.x, // x coordinate of the center
888 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { cy = shapeArgs.y, // y coordinate of the center
889 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { start = shapeArgs.start, // start angle
890 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { end = shapeArgs.end - 0.00001, // end angle
891 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { r = shapeArgs.r, // radius
892 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { ir = shapeArgs.innerR, // inner radius
893 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { d = shapeArgs.depth, // depth
894 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { alpha = shapeArgs.alpha, // alpha rotation of the chart
895 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { beta = shapeArgs.beta; // beta rotation of the chart
896  
897 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { // Derived Variables
898 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { var cs = Math.cos(start), // cosinus of the start angle
899 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { ss = Math.sin(start), // sinus of the start angle
900 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { ce = Math.cos(end), // cosinus of the end angle
901 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { se = Math.sin(end), // sinus of the end angle
902 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { rx = r * Math.cos(beta), // x-radius
903 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { ry = r * Math.cos(alpha), // y-radius
904 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { irx = ir * Math.cos(beta), // x-radius (inner)
905 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { iry = ir * Math.cos(alpha), // y-radius (inner)
906 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { dx = d * Math.sin(beta), // distance between top and bottom in x
907 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { dy = d * Math.sin(alpha); // distance between top and bottom in y
908  
909 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { // TOP
910 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { var top = ['M', cx + (rx * cs), cy + (ry * ss)];
911 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { top = top.concat(curveTo(cx, cy, rx, ry, start, end, 0, 0));
912 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { top = top.concat([
913 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { 'L', cx + (irx * ce), cy + (iry * se)
914 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { ]);
915 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { top = top.concat(curveTo(cx, cy, irx, iry, end, start, 0, 0));
916 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { top = top.concat(['Z']);
917 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { // OUTSIDE
918 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { var b = (beta > 0 ? Math.PI / 2 : 0),
919 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { a = (alpha > 0 ? 0 : Math.PI / 2);
920  
921 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { var start2 = start > -b ? start : (end > -b ? -b : start),
922 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { end2 = end < PI - a ? end : (start < PI - a ? PI - a : end),
923 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { midEnd = 2 * PI - a;
924  
925 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { // When slice goes over bottom middle, need to add both, left and right outer side.
926 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { // Additionally, when we cross right hand edge, create sharp edge. Outer shape/wall:
927 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { //
928 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { // -------
929 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { // / ^ \
930 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { // 4) / / \ \ 1)
931 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { // / / \ \
932 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { // / / \ \
933 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { // (c)=> ==== ==== <=(d)
934 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { // \ \ / /
935 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { // \ \<=(a)/ /
936 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { // \ \ / / <=(b)
937 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { // 3) \ v / 2)
938 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { // -------
939 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { //
940 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { // (a) - inner side
941 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { // (b) - outer side
942 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { // (c) - left edge (sharp)
943 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { // (d) - right edge (sharp)
944 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { // 1..n - rendering order for startAngle = 0, when set to e.g 90, order changes clockwise (1->2, 2->3, n->1) and counterclockwise for negative startAngle
945  
946 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { var out = ['M', cx + (rx * cos(start2)), cy + (ry * sin(start2))];
947 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { out = out.concat(curveTo(cx, cy, rx, ry, start2, end2, 0, 0));
948  
949 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { if (end > midEnd && start < midEnd) { // When shape is wide, it can cross both, (c) and (d) edges, when using startAngle
950 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { // Go to outer side
951 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { out = out.concat([
952 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { 'L', cx + (rx * cos(end2)) + dx, cy + (ry * sin(end2)) + dy
953 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { ]);
954 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { // Curve to the right edge of the slice (d)
955 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { out = out.concat(curveTo(cx, cy, rx, ry, end2, midEnd, dx, dy));
956 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { // Go to the inner side
957 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { out = out.concat([
958 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { 'L', cx + (rx * cos(midEnd)), cy + (ry * sin(midEnd))
959 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { ]);
960 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { // Curve to the true end of the slice
961 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { out = out.concat(curveTo(cx, cy, rx, ry, midEnd, end, 0, 0));
962 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { // Go to the outer side
963 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { out = out.concat([
964 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { 'L', cx + (rx * cos(end)) + dx, cy + (ry * sin(end)) + dy
965 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { ]);
966 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { // Go back to middle (d)
967 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { out = out.concat(curveTo(cx, cy, rx, ry, end, midEnd, dx, dy));
968 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { out = out.concat([
969 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { 'L', cx + (rx * cos(midEnd)), cy + (ry * sin(midEnd))
970 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { ]);
971 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { // Go back to the left edge
972 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { out = out.concat(curveTo(cx, cy, rx, ry, midEnd, end2, 0, 0));
973 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { } else if (end > PI - a && start < PI - a) { // But shape can cross also only (c) edge:
974 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { // Go to outer side
975 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { out = out.concat([
976 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { 'L', cx + (rx * Math.cos(end2)) + dx, cy + (ry * Math.sin(end2)) + dy
977 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { ]);
978 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { // Curve to the true end of the slice
979 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { out = out.concat(curveTo(cx, cy, rx, ry, end2, end, dx, dy));
980 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { // Go to the inner side
981 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { out = out.concat([
982 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { 'L', cx + (rx * Math.cos(end)), cy + (ry * Math.sin(end))
983 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { ]);
984 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { // Go back to the artifical end2
985 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { out = out.concat(curveTo(cx, cy, rx, ry, end, end2, 0, 0));
986 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { }
987  
988 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { out = out.concat([
989 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { 'L', cx + (rx * Math.cos(end2)) + dx, cy + (ry * Math.sin(end2)) + dy
990 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { ]);
991 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { out = out.concat(curveTo(cx, cy, rx, ry, end2, start2, dx, dy));
992 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { out = out.concat(['Z']);
993  
994 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { // INSIDE
995 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { var inn = ['M', cx + (irx * cs), cy + (iry * ss)];
996 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { inn = inn.concat(curveTo(cx, cy, irx, iry, start, end, 0, 0));
997 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { inn = inn.concat([
998 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { 'L', cx + (irx * Math.cos(end)) + dx, cy + (iry * Math.sin(end)) + dy
999 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { ]);
1000 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { inn = inn.concat(curveTo(cx, cy, irx, iry, end, start, dx, dy));
1001 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { inn = inn.concat(['Z']);
1002  
1003 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { // SIDES
1004 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { var side1 = [
1005 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { 'M', cx + (rx * cs), cy + (ry * ss),
1006 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { 'L', cx + (rx * cs) + dx, cy + (ry * ss) + dy,
1007 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { 'L', cx + (irx * cs) + dx, cy + (iry * ss) + dy,
1008 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { 'L', cx + (irx * cs), cy + (iry * ss),
1009 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { 'Z'
1010 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { ];
1011 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { var side2 = [
1012 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { 'M', cx + (rx * ce), cy + (ry * se),
1013 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { 'L', cx + (rx * ce) + dx, cy + (ry * se) + dy,
1014 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { 'L', cx + (irx * ce) + dx, cy + (iry * se) + dy,
1015 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { 'L', cx + (irx * ce), cy + (iry * se),
1016 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { 'Z'
1017 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { ];
1018  
1019 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { // correction for changed position of vanishing point caused by alpha and beta rotations
1020 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { var angleCorr = Math.atan2(dy, -dx),
1021 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { angleEnd = Math.abs(end + angleCorr),
1022 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { angleStart = Math.abs(start + angleCorr),
1023 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { angleMid = Math.abs((start + end) / 2 + angleCorr);
1024  
1025 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { // set to 0-PI range
1026 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { function toZeroPIRange(angle) {
1027 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { angle = angle % (2 * Math.PI);
1028 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { if (angle > Math.PI) {
1029 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { angle = 2 * Math.PI - angle;
1030 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { }
1031 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { return angle;
1032 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { }
1033 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { angleEnd = toZeroPIRange(angleEnd);
1034 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { angleStart = toZeroPIRange(angleStart);
1035 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { angleMid = toZeroPIRange(angleMid);
1036  
1037 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { // *1e5 is to compensate pInt in zIndexSetter
1038 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { var incPrecision = 1e5,
1039 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { a1 = angleMid * incPrecision,
1040 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { a2 = angleStart * incPrecision,
1041 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { a3 = angleEnd * incPrecision;
1042  
1043 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { return {
1044 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { top: top,
1045 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { zTop: Math.PI * incPrecision + 1, // max angle is PI, so this is allways higher
1046 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { out: out,
1047 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { zOut: Math.max(a1, a2, a3),
1048 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { inn: inn,
1049 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { zInn: Math.max(a1, a2, a3),
1050 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { side1: side1,
1051 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { zSide1: a3 * 0.99, // to keep below zOut and zInn in case of same values
1052 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { side2: side2,
1053 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { zSide2: a2 * 0.99
1054 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { };
1055 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { };
1056  
1057 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { }(Highcharts));
1058 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { (function(H) {
1059 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { /**
1060 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { * (c) 2010-2017 Torstein Honsi
1061 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { *
1062 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { * License: www.highcharts.com/license
1063 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { */
1064 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { var Chart = H.Chart,
1065 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { each = H.each,
1066 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { merge = H.merge,
1067 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { perspective = H.perspective,
1068 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { pick = H.pick,
1069 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { wrap = H.wrap;
1070  
1071 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { /***
1072 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { EXTENSION FOR 3D CHARTS
1073 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { ***/
1074 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { // Shorthand to check the is3d flag
1075 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { Chart.prototype.is3d = function() {
1076 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { return this.options.chart.options3d && this.options.chart.options3d.enabled; // #4280
1077 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { };
1078  
1079 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { Chart.prototype.propsRequireDirtyBox.push('chart.options3d');
1080 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { Chart.prototype.propsRequireUpdateSeries.push('chart.options3d');
1081  
1082 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { /**
1083 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { * Calculate scale of the 3D view. That is required to
1084 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { * fit chart's 3D projection into the actual plotting area. Reported as #4933.
1085 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { * @notice This function should ideally take the plot values instead of a chart object,
1086 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { * but since the chart object is needed for perspective it is not practical.
1087 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { * Possible to make both getScale and perspective more logical and also immutable.
1088 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { * @param {Object} chart Chart object
1089 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { * @param {Number} chart.plotLeft
1090 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { * @param {Number} chart.plotWidth
1091 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { * @param {Number} chart.plotTop
1092 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { * @param {Number} chart.plotHeight
1093 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { * @param {Number} depth The depth of the chart
1094 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { * @return {Number} The scale to fit the 3D chart into the plotting area.
1095 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { */
1096 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { function getScale(chart, depth) {
1097 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { var plotLeft = chart.plotLeft,
1098 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { plotRight = chart.plotWidth + plotLeft,
1099 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { plotTop = chart.plotTop,
1100 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { plotBottom = chart.plotHeight + plotTop,
1101 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { originX = plotLeft + chart.plotWidth / 2,
1102 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { originY = plotTop + chart.plotHeight / 2,
1103 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { bbox3d = {
1104 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { minX: Number.MAX_VALUE,
1105 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { maxX: -Number.MAX_VALUE,
1106 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { minY: Number.MAX_VALUE,
1107 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { maxY: -Number.MAX_VALUE
1108 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { },
1109 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { corners,
1110 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { scale = 1;
1111  
1112 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { // Top left corners:
1113 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { corners = [{
1114 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { x: plotLeft,
1115 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { y: plotTop,
1116 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { z: 0
1117 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { }, {
1118 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { x: plotLeft,
1119 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { y: plotTop,
1120 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { z: depth
1121 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { }];
1122  
1123 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { // Top right corners:
1124 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { each([0, 1], function(i) {
1125 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { corners.push({
1126 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { x: plotRight,
1127 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { y: corners[i].y,
1128 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { z: corners[i].z
1129 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { });
1130 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { });
1131  
1132 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { // All bottom corners:
1133 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { each([0, 1, 2, 3], function(i) {
1134 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { corners.push({
1135 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { x: corners[i].x,
1136 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { y: plotBottom,
1137 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { z: corners[i].z
1138 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { });
1139 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { });
1140  
1141 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { // Calculate 3D corners:
1142 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { corners = perspective(corners, chart, false);
1143  
1144 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { // Get bounding box of 3D element:
1145 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { each(corners, function(corner) {
1146 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { bbox3d.minX = Math.min(bbox3d.minX, corner.x);
1147 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { bbox3d.maxX = Math.max(bbox3d.maxX, corner.x);
1148 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { bbox3d.minY = Math.min(bbox3d.minY, corner.y);
1149 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { bbox3d.maxY = Math.max(bbox3d.maxY, corner.y);
1150 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { });
1151  
1152 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { // Left edge:
1153 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { if (plotLeft > bbox3d.minX) {
1154 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { scale = Math.min(scale, 1 - Math.abs((plotLeft + originX) / (bbox3d.minX + originX)) % 1);
1155 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { }
1156  
1157 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { // Right edge:
1158 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) { if (plotRight < bbox3d.maxX) {
1159 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { scale = Math.min(scale, (plotRight - originX) / (bbox3d.maxX - originX));
1160 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
1161  
1162 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { // Top edge:
1163 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (plotTop > bbox3d.minY) {
1164 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (bbox3d.minY < 0) {
1165 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { scale = Math.min(scale, (plotTop + originY) / (-bbox3d.minY + plotTop + originY));
1166 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { } else {
1167 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { scale = Math.min(scale, 1 - (plotTop + originY) / (bbox3d.minY + originY) % 1);
1168 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
1169 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
1170  
1171 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { // Bottom edge:
1172 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (plotBottom < bbox3d.maxY) {
1173 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { scale = Math.min(scale, Math.abs((plotBottom - originY) / (bbox3d.maxY - originY)));
1174 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
1175  
1176 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { return scale;
1177 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
1178  
1179  
1180  
1181 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { H.wrap(H.Chart.prototype, 'isInsidePlot', function(proceed) {
1182 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { return this.is3d() || proceed.apply(this, [].slice.call(arguments, 1));
1183 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { });
1184  
1185 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { var defaultOptions = H.getOptions();
1186 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { merge(true, defaultOptions, {
1187 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { chart: {
1188 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { options3d: {
1189 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { enabled: false,
1190 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { alpha: 0,
1191 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { beta: 0,
1192 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { depth: 100,
1193 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { fitToPlot: true,
1194 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { viewDistance: 25,
1195 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { axisLabelPosition: 'default',
1196 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { frame: {
1197 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { visible: 'default',
1198 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { size: 1,
1199 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { bottom: {},
1200 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { top: {},
1201 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { left: {},
1202 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { right: {},
1203 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { back: {},
1204 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { front: {}
1205 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
1206 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
1207 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
1208 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { });
1209  
1210  
1211  
1212 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { wrap(Chart.prototype, 'setClassName', function(proceed) {
1213 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { proceed.apply(this, [].slice.call(arguments, 1));
1214  
1215 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (this.is3d()) {
1216 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { this.container.className += ' highcharts-3d-chart';
1217 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
1218 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { });
1219  
1220 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { H.wrap(H.Chart.prototype, 'setChartSize', function(proceed) {
1221 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { var chart = this,
1222 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { options3d = chart.options.chart.options3d;
1223  
1224 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { proceed.apply(chart, [].slice.call(arguments, 1));
1225  
1226 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (chart.is3d()) {
1227 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { var inverted = chart.inverted,
1228 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { clipBox = chart.clipBox,
1229 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { margin = chart.margin,
1230 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x = inverted ? 'y' : 'x',
1231 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y = inverted ? 'x' : 'y',
1232 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { w = inverted ? 'height' : 'width',
1233 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { h = inverted ? 'width' : 'height';
1234  
1235 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { clipBox[x] = -(margin[3] || 0);
1236 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { clipBox[y] = -(margin[0] || 0);
1237 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { clipBox[w] = chart.chartWidth + (margin[3] || 0) + (margin[1] || 0);
1238 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { clipBox[h] = chart.chartHeight + (margin[0] || 0) + (margin[2] || 0);
1239  
1240 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { // Set scale, used later in perspective method():
1241 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { chart.scale3d = 1; // @notice getScale uses perspective, so scale3d has to be reset.
1242 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (options3d.fitToPlot === true) {
1243 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { chart.scale3d = getScale(chart, options3d.depth);
1244 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
1245 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
1246 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { });
1247  
1248 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { wrap(Chart.prototype, 'redraw', function(proceed) {
1249 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (this.is3d()) {
1250 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { // Set to force a redraw of all elements
1251 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { this.isDirtyBox = true;
1252 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { this.frame3d = this.get3dFrame();
1253 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
1254 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { proceed.apply(this, [].slice.call(arguments, 1));
1255 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { });
1256  
1257 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { wrap(Chart.prototype, 'render', function(proceed) {
1258 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (this.is3d()) {
1259 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { this.frame3d = this.get3dFrame();
1260 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
1261 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { proceed.apply(this, [].slice.call(arguments, 1));
1262 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { });
1263  
1264 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { // Draw the series in the reverse order (#3803, #3917)
1265 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { wrap(Chart.prototype, 'renderSeries', function(proceed) {
1266 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { var series,
1267 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { i = this.series.length;
1268  
1269 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (this.is3d()) {
1270 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { while (i--) {
1271 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { series = this.series[i];
1272 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { series.translate();
1273 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { series.render();
1274 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
1275 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { } else {
1276 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { proceed.call(this);
1277 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
1278 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { });
1279  
1280 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { wrap(Chart.prototype, 'drawChartBox', function(proceed) {
1281 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (this.is3d()) {
1282 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { var chart = this,
1283 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { renderer = chart.renderer,
1284 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { options3d = this.options.chart.options3d,
1285 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { frame = chart.get3dFrame(),
1286 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { xm = this.plotLeft,
1287 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { xp = this.plotLeft + this.plotWidth,
1288 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { ym = this.plotTop,
1289 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { yp = this.plotTop + this.plotHeight,
1290 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { zm = 0,
1291 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { zp = options3d.depth,
1292 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { xmm = xm - (frame.left.visible ? frame.left.size : 0),
1293 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { xpp = xp + (frame.right.visible ? frame.right.size : 0),
1294 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { ymm = ym - (frame.top.visible ? frame.top.size : 0),
1295 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { ypp = yp + (frame.bottom.visible ? frame.bottom.size : 0),
1296 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { zmm = zm - (frame.front.visible ? frame.front.size : 0),
1297 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { zpp = zp + (frame.back.visible ? frame.back.size : 0),
1298 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { verb = chart.hasRendered ? 'animate' : 'attr';
1299  
1300 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { this.frame3d = frame;
1301  
1302 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (!this.frameShapes) {
1303 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { this.frameShapes = {
1304 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { bottom: renderer.polyhedron().add(),
1305 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { top: renderer.polyhedron().add(),
1306 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { left: renderer.polyhedron().add(),
1307 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { right: renderer.polyhedron().add(),
1308 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { back: renderer.polyhedron().add(),
1309 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { front: renderer.polyhedron().add()
1310 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { };
1311 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
1312  
1313 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { this.frameShapes.bottom[verb]({
1314 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { 'class': 'highcharts-3d-frame highcharts-3d-frame-bottom',
1315 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { zIndex: frame.bottom.frontFacing ? -1000 : 1000,
1316 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { faces: [{ //bottom
1317 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { fill: H.color(frame.bottom.color).brighten(0.1).get(),
1318 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { vertexes: [{
1319 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xmm,
1320 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ypp,
1321 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zmm
1322 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
1323 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xpp,
1324 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ypp,
1325 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zmm
1326 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
1327 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xpp,
1328 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ypp,
1329 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zpp
1330 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
1331 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xmm,
1332 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ypp,
1333 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zpp
1334 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }],
1335 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { enabled: frame.bottom.visible
1336 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { },
1337 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { { //top
1338 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { fill: H.color(frame.bottom.color).brighten(0.1).get(),
1339 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { vertexes: [{
1340 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xm,
1341 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: yp,
1342 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zp
1343 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
1344 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xp,
1345 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: yp,
1346 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zp
1347 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
1348 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xp,
1349 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: yp,
1350 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zm
1351 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
1352 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xm,
1353 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: yp,
1354 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zm
1355 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }],
1356 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { enabled: frame.bottom.visible
1357 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { },
1358 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { { //left
1359 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { fill: H.color(frame.bottom.color).brighten(-0.1).get(),
1360 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { vertexes: [{
1361 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xmm,
1362 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ypp,
1363 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zmm
1364 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
1365 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xmm,
1366 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ypp,
1367 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zpp
1368 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
1369 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xm,
1370 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: yp,
1371 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zp
1372 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
1373 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xm,
1374 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: yp,
1375 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zm
1376 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }],
1377 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { enabled: frame.bottom.visible && !frame.left.visible
1378 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { },
1379 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { { //right
1380 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { fill: H.color(frame.bottom.color).brighten(-0.1).get(),
1381 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { vertexes: [{
1382 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xpp,
1383 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ypp,
1384 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zpp
1385 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
1386 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xpp,
1387 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ypp,
1388 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zmm
1389 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
1390 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xp,
1391 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: yp,
1392 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zm
1393 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
1394 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xp,
1395 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: yp,
1396 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zp
1397 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }],
1398 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { enabled: frame.bottom.visible && !frame.right.visible
1399 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { },
1400 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { { //front
1401 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { fill: H.color(frame.bottom.color).get(),
1402 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { vertexes: [{
1403 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xpp,
1404 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ypp,
1405 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zmm
1406 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
1407 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xmm,
1408 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ypp,
1409 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zmm
1410 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
1411 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xm,
1412 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: yp,
1413 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zm
1414 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
1415 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xp,
1416 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: yp,
1417 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zm
1418 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }],
1419 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { enabled: frame.bottom.visible && !frame.front.visible
1420 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { },
1421 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { { //back
1422 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { fill: H.color(frame.bottom.color).get(),
1423 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { vertexes: [{
1424 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xmm,
1425 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ypp,
1426 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zpp
1427 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
1428 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xpp,
1429 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ypp,
1430 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zpp
1431 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
1432 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xp,
1433 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: yp,
1434 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zp
1435 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
1436 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xm,
1437 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: yp,
1438 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zp
1439 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }],
1440 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { enabled: frame.bottom.visible && !frame.back.visible
1441 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
1442 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { ]
1443 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { });
1444 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { this.frameShapes.top[verb]({
1445 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { 'class': 'highcharts-3d-frame highcharts-3d-frame-top',
1446 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { zIndex: frame.top.frontFacing ? -1000 : 1000,
1447 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { faces: [{ //bottom
1448 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { fill: H.color(frame.top.color).brighten(0.1).get(),
1449 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { vertexes: [{
1450 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xmm,
1451 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ymm,
1452 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zpp
1453 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
1454 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xpp,
1455 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ymm,
1456 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zpp
1457 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
1458 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xpp,
1459 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ymm,
1460 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zmm
1461 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
1462 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xmm,
1463 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ymm,
1464 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zmm
1465 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }],
1466 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { enabled: frame.top.visible
1467 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { },
1468 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { { //top
1469 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { fill: H.color(frame.top.color).brighten(0.1).get(),
1470 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { vertexes: [{
1471 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xm,
1472 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ym,
1473 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zm
1474 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
1475 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xp,
1476 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ym,
1477 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zm
1478 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
1479 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xp,
1480 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ym,
1481 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zp
1482 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
1483 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xm,
1484 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ym,
1485 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zp
1486 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }],
1487 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { enabled: frame.top.visible
1488 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { },
1489 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { { //left
1490 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { fill: H.color(frame.top.color).brighten(-0.1).get(),
1491 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { vertexes: [{
1492 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xmm,
1493 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ymm,
1494 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zpp
1495 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
1496 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xmm,
1497 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ymm,
1498 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zmm
1499 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
1500 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xm,
1501 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ym,
1502 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zm
1503 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
1504 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xm,
1505 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ym,
1506 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zp
1507 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }],
1508 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { enabled: frame.top.visible && !frame.left.visible
1509 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { },
1510 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { { //right
1511 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { fill: H.color(frame.top.color).brighten(-0.1).get(),
1512 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { vertexes: [{
1513 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xpp,
1514 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ymm,
1515 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zmm
1516 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
1517 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xpp,
1518 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ymm,
1519 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zpp
1520 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
1521 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xp,
1522 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ym,
1523 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zp
1524 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
1525 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xp,
1526 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ym,
1527 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zm
1528 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }],
1529 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { enabled: frame.top.visible && !frame.right.visible
1530 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { },
1531 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { { //front
1532 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { fill: H.color(frame.top.color).get(),
1533 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { vertexes: [{
1534 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xmm,
1535 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ymm,
1536 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zmm
1537 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
1538 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xpp,
1539 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ymm,
1540 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zmm
1541 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
1542 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xp,
1543 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ym,
1544 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zm
1545 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
1546 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xm,
1547 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ym,
1548 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zm
1549 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }],
1550 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { enabled: frame.top.visible && !frame.front.visible
1551 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { },
1552 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { { //back
1553 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { fill: H.color(frame.top.color).get(),
1554 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { vertexes: [{
1555 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xpp,
1556 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ymm,
1557 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zpp
1558 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
1559 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xmm,
1560 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ymm,
1561 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zpp
1562 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
1563 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xm,
1564 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ym,
1565 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zp
1566 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
1567 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xp,
1568 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ym,
1569 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zp
1570 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }],
1571 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { enabled: frame.top.visible && !frame.back.visible
1572 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
1573 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { ]
1574 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { });
1575 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { this.frameShapes.left[verb]({
1576 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { 'class': 'highcharts-3d-frame highcharts-3d-frame-left',
1577 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { zIndex: frame.left.frontFacing ? -1000 : 1000,
1578 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { faces: [{ //bottom
1579 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { fill: H.color(frame.left.color).brighten(0.1).get(),
1580 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { vertexes: [{
1581 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xmm,
1582 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ypp,
1583 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zmm
1584 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
1585 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xm,
1586 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: yp,
1587 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zm
1588 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
1589 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xm,
1590 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: yp,
1591 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zp
1592 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
1593 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xmm,
1594 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ypp,
1595 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zpp
1596 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }],
1597 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { enabled: frame.left.visible && !frame.bottom.visible
1598 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { },
1599 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { { //top
1600 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { fill: H.color(frame.left.color).brighten(0.1).get(),
1601 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { vertexes: [{
1602 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xmm,
1603 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ymm,
1604 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zpp
1605 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
1606 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xm,
1607 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ym,
1608 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zp
1609 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
1610 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xm,
1611 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ym,
1612 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zm
1613 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
1614 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xmm,
1615 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ymm,
1616 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zmm
1617 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }],
1618 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { enabled: frame.left.visible && !frame.top.visible
1619 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { },
1620 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { { //left
1621 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { fill: H.color(frame.left.color).brighten(-0.1).get(),
1622 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { vertexes: [{
1623 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xmm,
1624 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ypp,
1625 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zpp
1626 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
1627 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xmm,
1628 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ymm,
1629 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zpp
1630 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
1631 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xmm,
1632 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ymm,
1633 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zmm
1634 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
1635 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xmm,
1636 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ypp,
1637 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zmm
1638 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }],
1639 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { enabled: frame.left.visible
1640 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { },
1641 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { { //right
1642 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { fill: H.color(frame.left.color).brighten(-0.1).get(),
1643 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { vertexes: [{
1644 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xm,
1645 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ym,
1646 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zp
1647 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
1648 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xm,
1649 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: yp,
1650 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zp
1651 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
1652 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xm,
1653 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: yp,
1654 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zm
1655 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
1656 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xm,
1657 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ym,
1658 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zm
1659 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }],
1660 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { enabled: frame.left.visible
1661 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { },
1662 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { { //front
1663 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { fill: H.color(frame.left.color).get(),
1664 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { vertexes: [{
1665 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xmm,
1666 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ypp,
1667 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zmm
1668 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
1669 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xmm,
1670 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ymm,
1671 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zmm
1672 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
1673 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xm,
1674 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ym,
1675 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zm
1676 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
1677 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xm,
1678 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: yp,
1679 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zm
1680 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }],
1681 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { enabled: frame.left.visible && !frame.front.visible
1682 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { },
1683 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { { //back
1684 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { fill: H.color(frame.left.color).get(),
1685 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { vertexes: [{
1686 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xmm,
1687 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ymm,
1688 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zpp
1689 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
1690 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xmm,
1691 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ypp,
1692 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zpp
1693 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
1694 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xm,
1695 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: yp,
1696 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zp
1697 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
1698 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xm,
1699 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ym,
1700 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zp
1701 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }],
1702 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { enabled: frame.left.visible && !frame.back.visible
1703 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
1704 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { ]
1705 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { });
1706 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { this.frameShapes.right[verb]({
1707 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { 'class': 'highcharts-3d-frame highcharts-3d-frame-right',
1708 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { zIndex: frame.right.frontFacing ? -1000 : 1000,
1709 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { faces: [{ //bottom
1710 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { fill: H.color(frame.right.color).brighten(0.1).get(),
1711 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { vertexes: [{
1712 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xpp,
1713 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ypp,
1714 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zpp
1715 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
1716 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xp,
1717 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: yp,
1718 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zp
1719 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
1720 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xp,
1721 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: yp,
1722 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zm
1723 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
1724 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xpp,
1725 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ypp,
1726 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zmm
1727 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }],
1728 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { enabled: frame.right.visible && !frame.bottom.visible
1729 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { },
1730 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { { //top
1731 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { fill: H.color(frame.right.color).brighten(0.1).get(),
1732 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { vertexes: [{
1733 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xpp,
1734 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ymm,
1735 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zmm
1736 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
1737 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xp,
1738 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ym,
1739 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zm
1740 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
1741 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xp,
1742 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ym,
1743 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zp
1744 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
1745 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xpp,
1746 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ymm,
1747 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zpp
1748 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }],
1749 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { enabled: frame.right.visible && !frame.top.visible
1750 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { },
1751 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { { //left
1752 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { fill: H.color(frame.right.color).brighten(-0.1).get(),
1753 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { vertexes: [{
1754 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xp,
1755 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ym,
1756 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zm
1757 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
1758 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xp,
1759 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: yp,
1760 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zm
1761 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
1762 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xp,
1763 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: yp,
1764 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zp
1765 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
1766 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xp,
1767 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ym,
1768 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zp
1769 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }],
1770 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { enabled: frame.right.visible
1771 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { },
1772 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { { //right
1773 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { fill: H.color(frame.right.color).brighten(-0.1).get(),
1774 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { vertexes: [{
1775 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xpp,
1776 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ypp,
1777 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zmm
1778 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
1779 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xpp,
1780 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ymm,
1781 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zmm
1782 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
1783 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xpp,
1784 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ymm,
1785 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zpp
1786 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
1787 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xpp,
1788 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ypp,
1789 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zpp
1790 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }],
1791 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { enabled: frame.right.visible
1792 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { },
1793 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { { //front
1794 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { fill: H.color(frame.right.color).get(),
1795 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { vertexes: [{
1796 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xpp,
1797 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ymm,
1798 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zmm
1799 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
1800 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xpp,
1801 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ypp,
1802 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zmm
1803 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
1804 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xp,
1805 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: yp,
1806 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zm
1807 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
1808 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xp,
1809 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ym,
1810 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zm
1811 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }],
1812 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { enabled: frame.right.visible && !frame.front.visible
1813 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { },
1814 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { { //back
1815 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { fill: H.color(frame.right.color).get(),
1816 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { vertexes: [{
1817 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xpp,
1818 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ypp,
1819 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zpp
1820 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
1821 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xpp,
1822 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ymm,
1823 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zpp
1824 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
1825 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xp,
1826 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ym,
1827 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zp
1828 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
1829 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xp,
1830 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: yp,
1831 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zp
1832 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }],
1833 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { enabled: frame.right.visible && !frame.back.visible
1834 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
1835 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { ]
1836 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { });
1837 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { this.frameShapes.back[verb]({
1838 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { 'class': 'highcharts-3d-frame highcharts-3d-frame-back',
1839 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { zIndex: frame.back.frontFacing ? -1000 : 1000,
1840 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { faces: [{ //bottom
1841 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { fill: H.color(frame.back.color).brighten(0.1).get(),
1842 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { vertexes: [{
1843 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xpp,
1844 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ypp,
1845 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zpp
1846 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
1847 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xmm,
1848 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ypp,
1849 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zpp
1850 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
1851 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xm,
1852 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: yp,
1853 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zp
1854 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
1855 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xp,
1856 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: yp,
1857 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zp
1858 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }],
1859 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { enabled: frame.back.visible && !frame.bottom.visible
1860 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { },
1861 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { { //top
1862 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { fill: H.color(frame.back.color).brighten(0.1).get(),
1863 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { vertexes: [{
1864 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xmm,
1865 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ymm,
1866 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zpp
1867 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
1868 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xpp,
1869 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ymm,
1870 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zpp
1871 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
1872 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xp,
1873 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ym,
1874 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zp
1875 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
1876 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xm,
1877 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ym,
1878 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zp
1879 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }],
1880 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { enabled: frame.back.visible && !frame.top.visible
1881 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { },
1882 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { { //left
1883 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { fill: H.color(frame.back.color).brighten(-0.1).get(),
1884 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { vertexes: [{
1885 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xmm,
1886 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ypp,
1887 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zpp
1888 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
1889 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xmm,
1890 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ymm,
1891 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zpp
1892 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
1893 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xm,
1894 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ym,
1895 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zp
1896 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
1897 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xm,
1898 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: yp,
1899 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zp
1900 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }],
1901 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { enabled: frame.back.visible && !frame.left.visible
1902 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { },
1903 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { { //right
1904 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { fill: H.color(frame.back.color).brighten(-0.1).get(),
1905 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { vertexes: [{
1906 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xpp,
1907 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ymm,
1908 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zpp
1909 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
1910 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xpp,
1911 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ypp,
1912 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zpp
1913 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
1914 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xp,
1915 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: yp,
1916 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zp
1917 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
1918 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xp,
1919 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ym,
1920 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zp
1921 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }],
1922 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { enabled: frame.back.visible && !frame.right.visible
1923 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { },
1924 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { { //front
1925 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { fill: H.color(frame.back.color).get(),
1926 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { vertexes: [{
1927 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xm,
1928 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ym,
1929 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zp
1930 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
1931 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xp,
1932 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ym,
1933 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zp
1934 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
1935 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xp,
1936 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: yp,
1937 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zp
1938 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
1939 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xm,
1940 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: yp,
1941 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zp
1942 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }],
1943 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { enabled: frame.back.visible
1944 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { },
1945 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { { //back
1946 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { fill: H.color(frame.back.color).get(),
1947 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { vertexes: [{
1948 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xmm,
1949 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ypp,
1950 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zpp
1951 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
1952 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xpp,
1953 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ypp,
1954 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zpp
1955 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
1956 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xpp,
1957 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ymm,
1958 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zpp
1959 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
1960 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xmm,
1961 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ymm,
1962 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zpp
1963 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }],
1964 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { enabled: frame.back.visible
1965 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
1966 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { ]
1967 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { });
1968 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { this.frameShapes.front[verb]({
1969 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { 'class': 'highcharts-3d-frame highcharts-3d-frame-front',
1970 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { zIndex: frame.front.frontFacing ? -1000 : 1000,
1971 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { faces: [{ //bottom
1972 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { fill: H.color(frame.front.color).brighten(0.1).get(),
1973 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { vertexes: [{
1974 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xmm,
1975 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ypp,
1976 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zmm
1977 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
1978 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xpp,
1979 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ypp,
1980 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zmm
1981 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
1982 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xp,
1983 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: yp,
1984 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zm
1985 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
1986 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xm,
1987 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: yp,
1988 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zm
1989 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }],
1990 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { enabled: frame.front.visible && !frame.bottom.visible
1991 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { },
1992 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { { //top
1993 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { fill: H.color(frame.front.color).brighten(0.1).get(),
1994 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { vertexes: [{
1995 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xpp,
1996 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ymm,
1997 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zmm
1998 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
1999 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xmm,
2000 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ymm,
2001 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zmm
2002 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
2003 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xm,
2004 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ym,
2005 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zm
2006 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
2007 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xp,
2008 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ym,
2009 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zm
2010 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }],
2011 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { enabled: frame.front.visible && !frame.top.visible
2012 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { },
2013 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { { //left
2014 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { fill: H.color(frame.front.color).brighten(-0.1).get(),
2015 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { vertexes: [{
2016 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xmm,
2017 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ymm,
2018 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zmm
2019 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
2020 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xmm,
2021 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ypp,
2022 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zmm
2023 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
2024 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xm,
2025 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: yp,
2026 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zm
2027 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
2028 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xm,
2029 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ym,
2030 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zm
2031 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }],
2032 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { enabled: frame.front.visible && !frame.left.visible
2033 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { },
2034 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { { //right
2035 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { fill: H.color(frame.front.color).brighten(-0.1).get(),
2036 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { vertexes: [{
2037 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xpp,
2038 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ypp,
2039 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zmm
2040 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
2041 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xpp,
2042 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ymm,
2043 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zmm
2044 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
2045 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xp,
2046 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ym,
2047 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zm
2048 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
2049 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xp,
2050 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: yp,
2051 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zm
2052 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }],
2053 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { enabled: frame.front.visible && !frame.right.visible
2054 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { },
2055 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { { //front
2056 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { fill: H.color(frame.front.color).get(),
2057 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { vertexes: [{
2058 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xp,
2059 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ym,
2060 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zm
2061 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
2062 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xm,
2063 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ym,
2064 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zm
2065 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
2066 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xm,
2067 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: yp,
2068 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zm
2069 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
2070 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xp,
2071 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: yp,
2072 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zm
2073 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }],
2074 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { enabled: frame.front.visible
2075 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { },
2076 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { { //back
2077 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { fill: H.color(frame.front.color).get(),
2078 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { vertexes: [{
2079 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xpp,
2080 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ypp,
2081 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zmm
2082 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
2083 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xmm,
2084 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ypp,
2085 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zmm
2086 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
2087 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xmm,
2088 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ymm,
2089 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zmm
2090 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
2091 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xpp,
2092 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ymm,
2093 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zmm
2094 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }],
2095 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { enabled: frame.front.visible
2096 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
2097 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { ]
2098 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { });
2099 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
2100  
2101 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { return proceed.apply(this, [].slice.call(arguments, 1));
2102 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { });
2103  
2104 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { Chart.prototype.retrieveStacks = function(stacking) {
2105 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { var series = this.series,
2106 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { stacks = {},
2107 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { stackNumber,
2108 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { i = 1;
2109  
2110 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { each(this.series, function(s) {
2111 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { stackNumber = pick(s.options.stack, (stacking ? 0 : series.length - 1 - s.index)); // #3841, #4532
2112 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (!stacks[stackNumber]) {
2113 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { stacks[stackNumber] = {
2114 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { series: [s],
2115 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { position: i
2116 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { };
2117 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { i++;
2118 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { } else {
2119 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { stacks[stackNumber].series.push(s);
2120 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
2121 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { });
2122  
2123 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { stacks.totalStacks = i + 1;
2124 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { return stacks;
2125 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { };
2126  
2127 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { Chart.prototype.get3dFrame = function() {
2128 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { var chart = this,
2129 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { options3d = chart.options.chart.options3d,
2130 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { frameOptions = options3d.frame,
2131 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { xm = chart.plotLeft,
2132 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { xp = chart.plotLeft + chart.plotWidth,
2133 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { ym = chart.plotTop,
2134 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { yp = chart.plotTop + chart.plotHeight,
2135 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { zm = 0,
2136 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { zp = options3d.depth,
2137 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { bottomOrientation = H.shapeArea3d([{
2138 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xm,
2139 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: yp,
2140 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zp
2141 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
2142 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xp,
2143 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: yp,
2144 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zp
2145 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
2146 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xp,
2147 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: yp,
2148 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zm
2149 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
2150 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xm,
2151 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: yp,
2152 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zm
2153 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }], chart),
2154 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { topOrientation = H.shapeArea3d([{
2155 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xm,
2156 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ym,
2157 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zm
2158 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
2159 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xp,
2160 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ym,
2161 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zm
2162 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
2163 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xp,
2164 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ym,
2165 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zp
2166 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
2167 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xm,
2168 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ym,
2169 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zp
2170 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }], chart),
2171 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { leftOrientation = H.shapeArea3d([{
2172 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xm,
2173 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ym,
2174 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zm
2175 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
2176 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xm,
2177 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ym,
2178 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zp
2179 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
2180 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xm,
2181 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: yp,
2182 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zp
2183 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
2184 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xm,
2185 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: yp,
2186 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zm
2187 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }], chart),
2188 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { rightOrientation = H.shapeArea3d([{
2189 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xp,
2190 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ym,
2191 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zp
2192 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
2193 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xp,
2194 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ym,
2195 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zm
2196 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
2197 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xp,
2198 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: yp,
2199 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zm
2200 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
2201 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xp,
2202 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: yp,
2203 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zp
2204 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }], chart),
2205 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { frontOrientation = H.shapeArea3d([{
2206 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xm,
2207 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: yp,
2208 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zm
2209 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
2210 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xp,
2211 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: yp,
2212 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zm
2213 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
2214 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xp,
2215 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ym,
2216 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zm
2217 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
2218 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xm,
2219 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ym,
2220 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zm
2221 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }], chart),
2222 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { backOrientation = H.shapeArea3d([{
2223 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xm,
2224 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ym,
2225 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zp
2226 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
2227 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xp,
2228 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ym,
2229 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zp
2230 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
2231 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xp,
2232 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: yp,
2233 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zp
2234 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, {
2235 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xm,
2236 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: yp,
2237 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zp
2238 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }], chart),
2239 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { defaultShowBottom = false,
2240 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { defaultShowTop = false,
2241 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { defaultShowLeft = false,
2242 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { defaultShowRight = false,
2243 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { defaultShowFront = false,
2244 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { defaultShowBack = true;
2245  
2246 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { // The 'default' criteria to visible faces of the frame is looking up every
2247 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { // axis to decide whenever the left/right//top/bottom sides of the frame
2248 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { // will be shown
2249 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { each([].concat(chart.xAxis, chart.yAxis, chart.zAxis), function(axis) {
2250 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (axis) {
2251 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (axis.horiz) {
2252 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (axis.opposite) {
2253 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { defaultShowTop = true;
2254 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { } else {
2255 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { defaultShowBottom = true;
2256 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
2257 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { } else {
2258 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (axis.opposite) {
2259 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { defaultShowRight = true;
2260 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { } else {
2261 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { defaultShowLeft = true;
2262 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
2263 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
2264 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
2265 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { });
2266  
2267 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { var getFaceOptions = function(sources, faceOrientation, defaultVisible) {
2268 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { var faceAttrs = ['size', 'color', 'visible'];
2269 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { var options = {};
2270 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { for (var i = 0; i < faceAttrs.length; i++) {
2271 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { var attr = faceAttrs[i];
2272 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { for (var j = 0; j < sources.length; j++) {
2273 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (typeof sources[j] === 'object') {
2274 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { var val = sources[j][attr];
2275 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (val !== undefined && val !== null) {
2276 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { options[attr] = val;
2277 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { break;
2278 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
2279 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
2280 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
2281 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
2282 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { var isVisible = defaultVisible;
2283 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (options.visible === true || options.visible === false) {
2284 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { isVisible = options.visible;
2285 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { } else if (options.visible === 'auto') {
2286 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { isVisible = faceOrientation >= 0;
2287 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
2288  
2289 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { return {
2290 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { size: pick(options.size, 1),
2291 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { color: pick(options.color, 'none'),
2292 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { frontFacing: faceOrientation > 0,
2293 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { visible: isVisible
2294 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { };
2295 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { };
2296  
2297 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { // docs @TODO: Add all frame options (left, right, top, bottom, front, back) to
2298 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { // apioptions JSDoc once the new system is up.
2299 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { var ret = {
2300 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { // FIXME: Previously, left/right, top/bottom and front/back pairs shared
2301 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { // size and color.
2302 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { // For compatibility and consistency sake, when one face have
2303 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { // size/color/visibility set, the opposite face will default to the same
2304 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { // values. Also, left/right used to be called 'side', so that's also
2305 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { // added as a fallback
2306 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { bottom: getFaceOptions(
2307 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { [frameOptions.bottom, frameOptions.top, frameOptions],
2308 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { bottomOrientation,
2309 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { defaultShowBottom
2310 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { ),
2311 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { top: getFaceOptions(
2312 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { [frameOptions.top, frameOptions.bottom, frameOptions],
2313 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { topOrientation,
2314 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { defaultShowTop
2315 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { ),
2316 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { left: getFaceOptions(
2317 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { [
2318 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { frameOptions.left,
2319 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { frameOptions.right,
2320 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { frameOptions.side,
2321 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { frameOptions
2322 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { ],
2323 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { leftOrientation,
2324 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { defaultShowLeft
2325 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { ),
2326 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { right: getFaceOptions(
2327 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { [
2328 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { frameOptions.right,
2329 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { frameOptions.left,
2330 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { frameOptions.side,
2331 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { frameOptions
2332 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { ],
2333 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { rightOrientation,
2334 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { defaultShowRight
2335 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { ),
2336 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { back: getFaceOptions(
2337 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { [frameOptions.back, frameOptions.front, frameOptions],
2338 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { backOrientation,
2339 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { defaultShowBack
2340 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { ),
2341 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { front: getFaceOptions(
2342 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { [frameOptions.front, frameOptions.back, frameOptions],
2343 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { frontOrientation,
2344 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { defaultShowFront
2345 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { )
2346 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { };
2347  
2348  
2349 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { // Decide the bast place to put axis title/labels based on the visible faces.
2350 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { // Ideally, The labels can only be on the edge between a visible face and an invisble one.
2351 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { // Also, the Y label should be one the left-most edge (right-most if opposite),
2352 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (options3d.axisLabelPosition === 'auto') {
2353 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { var isValidEdge = function(face1, face2) {
2354 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { return (face1.visible !== face2.visible) ||
2355 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { (face1.visible && face2.visible && (face1.frontFacing !== face2.frontFacing));
2356 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { };
2357  
2358 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { var yEdges = [];
2359 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (isValidEdge(ret.left, ret.front)) {
2360 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { yEdges.push({
2361 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: (ym + yp) / 2,
2362 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xm,
2363 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zm
2364 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { });
2365 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
2366 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (isValidEdge(ret.left, ret.back)) {
2367 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { yEdges.push({
2368 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: (ym + yp) / 2,
2369 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xm,
2370 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zp
2371 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { });
2372 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
2373 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (isValidEdge(ret.right, ret.front)) {
2374 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { yEdges.push({
2375 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: (ym + yp) / 2,
2376 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xp,
2377 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zm
2378 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { });
2379 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
2380 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (isValidEdge(ret.right, ret.back)) {
2381 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { yEdges.push({
2382 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: (ym + yp) / 2,
2383 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xp,
2384 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zp
2385 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { });
2386 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
2387  
2388 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { var xBottomEdges = [];
2389 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (isValidEdge(ret.bottom, ret.front)) {
2390 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { xBottomEdges.push({
2391 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: (xm + xp) / 2,
2392 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: yp,
2393 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zm
2394 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { });
2395 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
2396 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (isValidEdge(ret.bottom, ret.back)) {
2397 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { xBottomEdges.push({
2398 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: (xm + xp) / 2,
2399 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: yp,
2400 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zp
2401 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { });
2402 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
2403  
2404 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { var xTopEdges = [];
2405 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (isValidEdge(ret.top, ret.front)) {
2406 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { xTopEdges.push({
2407 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: (xm + xp) / 2,
2408 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ym,
2409 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zm
2410 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { });
2411 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
2412 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (isValidEdge(ret.top, ret.back)) {
2413 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { xTopEdges.push({
2414 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: (xm + xp) / 2,
2415 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ym,
2416 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zp
2417 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { });
2418 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
2419  
2420 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { var zBottomEdges = [];
2421 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (isValidEdge(ret.bottom, ret.left)) {
2422 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { zBottomEdges.push({
2423 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: (zm + zp) / 2,
2424 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: yp,
2425 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xm
2426 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { });
2427 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
2428 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (isValidEdge(ret.bottom, ret.right)) {
2429 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { zBottomEdges.push({
2430 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: (zm + zp) / 2,
2431 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: yp,
2432 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xp
2433 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { });
2434 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
2435  
2436 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { var zTopEdges = [];
2437 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (isValidEdge(ret.top, ret.left)) {
2438 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { zTopEdges.push({
2439 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: (zm + zp) / 2,
2440 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ym,
2441 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xm
2442 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { });
2443 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
2444 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (isValidEdge(ret.top, ret.right)) {
2445 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { zTopEdges.push({
2446 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: (zm + zp) / 2,
2447 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ym,
2448 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xp
2449 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { });
2450 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
2451  
2452 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { var pickEdge = function(edges, axis, mult) {
2453 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (edges.length === 0) {
2454 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { return null;
2455 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { } else if (edges.length === 1) {
2456 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { return edges[0];
2457 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
2458 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { var best = 0,
2459 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { projections = perspective(edges, chart, false);
2460 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { for (var i = 1; i < projections.length; i++) {
2461 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (mult * projections[i][axis] > mult * projections[best][axis]) {
2462 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { best = i;
2463 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { } else if ((mult * projections[i][axis] === mult * projections[best][axis]) && (projections[i].z < projections[best].z)) {
2464 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { best = i;
2465 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
2466 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
2467 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { return edges[best];
2468 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { };
2469 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { ret.axes = {
2470 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: {
2471 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { 'left': pickEdge(yEdges, 'x', -1),
2472 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { 'right': pickEdge(yEdges, 'x', +1)
2473 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { },
2474 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: {
2475 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { 'top': pickEdge(xTopEdges, 'y', -1),
2476 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { 'bottom': pickEdge(xBottomEdges, 'y', +1)
2477 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { },
2478 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: {
2479 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { 'top': pickEdge(zTopEdges, 'y', -1),
2480 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { 'bottom': pickEdge(zBottomEdges, 'y', +1)
2481 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
2482 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { };
2483 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { } else {
2484 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { ret.axes = {
2485 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: {
2486 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { 'left': {
2487 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xm,
2488 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zm
2489 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { },
2490 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { 'right': {
2491 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: xp,
2492 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zm
2493 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
2494 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { },
2495 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: {
2496 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { 'top': {
2497 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ym,
2498 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zm
2499 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { },
2500 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { 'bottom': {
2501 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: yp,
2502 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: zm
2503 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
2504 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { },
2505 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: {
2506 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { 'top': {
2507 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: defaultShowLeft ? xp : xm,
2508 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: ym
2509 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { },
2510 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { 'bottom': {
2511 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: defaultShowLeft ? xp : xm,
2512 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: yp
2513 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
2514 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
2515 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { };
2516 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
2517  
2518 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { return ret;
2519 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { };
2520  
2521  
2522 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }(Highcharts));
2523 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { (function(H) {
2524 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { /**
2525 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { * (c) 2010-2017 Torstein Honsi
2526 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { *
2527 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { * License: www.highcharts.com/license
2528 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { */
2529 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { var ZAxis,
2530  
2531 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { Axis = H.Axis,
2532 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { Chart = H.Chart,
2533 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { each = H.each,
2534 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { extend = H.extend,
2535 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { merge = H.merge,
2536 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { perspective = H.perspective,
2537 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { pick = H.pick,
2538 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { splat = H.splat,
2539 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { Tick = H.Tick,
2540 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { wrap = H.wrap;
2541 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { /***
2542 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { EXTENSION TO THE AXIS
2543 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { ***/
2544 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { wrap(Axis.prototype, 'setOptions', function(proceed, userOptions) {
2545 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { var options;
2546 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { proceed.call(this, userOptions);
2547 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (this.chart.is3d() && this.coll !== 'colorAxis') {
2548 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { options = this.options;
2549 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { options.tickWidth = pick(options.tickWidth, 0);
2550 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { options.gridLineWidth = pick(options.gridLineWidth, 1);
2551 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
2552 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { });
2553  
2554 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { wrap(Axis.prototype, 'getPlotLinePath', function(proceed) {
2555 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { var path = proceed.apply(this, [].slice.call(arguments, 1));
2556  
2557 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { // Do not do this if the chart is not 3D
2558 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (!this.chart.is3d() || this.coll === 'colorAxis') {
2559 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { return path;
2560 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
2561  
2562 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (path === null) {
2563 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { return path;
2564 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
2565  
2566 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { var chart = this.chart,
2567 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { options3d = chart.options.chart.options3d,
2568 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { d = this.isZAxis ? chart.plotWidth : options3d.depth,
2569 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { frame = chart.frame3d;
2570  
2571 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { var pArr = [
2572 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { this.swapZ({
2573 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: path[1],
2574 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: path[2],
2575 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: 0
2576 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }),
2577 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { this.swapZ({
2578 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: path[1],
2579 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: path[2],
2580 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: d
2581 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }),
2582 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { this.swapZ({
2583 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: path[4],
2584 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: path[5],
2585 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: 0
2586 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }),
2587 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { this.swapZ({
2588 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: path[4],
2589 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: path[5],
2590 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: d
2591 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { })
2592 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { ];
2593  
2594 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { var pathSegments = [];
2595 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (!this.horiz) { // Y-Axis
2596 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (frame.front.visible) {
2597 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { pathSegments.push(pArr[0], pArr[2]);
2598 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
2599 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (frame.back.visible) {
2600 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { pathSegments.push(pArr[1], pArr[3]);
2601 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
2602 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (frame.left.visible) {
2603 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { pathSegments.push(pArr[0], pArr[1]);
2604 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
2605 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (frame.right.visible) {
2606 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { pathSegments.push(pArr[2], pArr[3]);
2607 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
2608 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { } else if (this.isZAxis) { // Z-Axis
2609 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (frame.left.visible) {
2610 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { pathSegments.push(pArr[0], pArr[2]);
2611 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
2612 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (frame.right.visible) {
2613 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { pathSegments.push(pArr[1], pArr[3]);
2614 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
2615 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (frame.top.visible) {
2616 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { pathSegments.push(pArr[0], pArr[1]);
2617 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
2618 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (frame.bottom.visible) {
2619 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { pathSegments.push(pArr[2], pArr[3]);
2620 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
2621 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { } else { // X-Axis
2622 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (frame.front.visible) {
2623 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { pathSegments.push(pArr[0], pArr[2]);
2624 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
2625 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (frame.back.visible) {
2626 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { pathSegments.push(pArr[1], pArr[3]);
2627 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
2628 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (frame.top.visible) {
2629 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { pathSegments.push(pArr[0], pArr[1]);
2630 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
2631 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (frame.bottom.visible) {
2632 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { pathSegments.push(pArr[2], pArr[3]);
2633 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
2634 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
2635  
2636 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { pathSegments = perspective(pathSegments, this.chart, false);
2637  
2638 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { return this.chart.renderer.toLineSegments(pathSegments);
2639 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { });
2640  
2641 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { // Do not draw axislines in 3D
2642 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { wrap(Axis.prototype, 'getLinePath', function(proceed) {
2643 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { return this.chart.is3d() ? [] : proceed.apply(this, [].slice.call(arguments, 1));
2644 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { });
2645  
2646 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { wrap(Axis.prototype, 'getPlotBandPath', function(proceed) {
2647 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { // Do not do this if the chart is not 3D
2648 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (!this.chart.is3d() || this.coll === 'colorAxis') {
2649 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { return proceed.apply(this, [].slice.call(arguments, 1));
2650 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
2651  
2652 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { var args = arguments,
2653 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { from = args[1],
2654 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { to = args[2],
2655 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { path = [],
2656 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { fromPath = this.getPlotLinePath(from),
2657 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { toPath = this.getPlotLinePath(to);
2658  
2659 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (fromPath && toPath) {
2660 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { for (var i = 0; i < fromPath.length; i += 6) {
2661 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { path.push(
2662 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { 'M', fromPath[i + 1], fromPath[i + 2],
2663 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { 'L', fromPath[i + 4], fromPath[i + 5],
2664 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { 'L', toPath[i + 4], toPath[i + 5],
2665 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { 'L', toPath[i + 1], toPath[i + 2],
2666 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { 'Z');
2667 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
2668 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
2669  
2670 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { return path;
2671 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { });
2672  
2673  
2674 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { function fix3dPosition(axis, pos) {
2675 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (axis.chart.is3d() && axis.coll !== 'colorAxis') {
2676 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { var chart = axis.chart,
2677 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { frame = chart.frame3d,
2678 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { plotLeft = chart.plotLeft,
2679 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { plotRight = chart.plotWidth + plotLeft,
2680 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { plotTop = chart.plotTop,
2681 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { plotBottom = chart.plotHeight + plotTop,
2682 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { dx = 0,
2683 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { dy = 0;
2684  
2685 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { pos = axis.swapZ({
2686 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: pos.x,
2687 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: pos.y,
2688 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: 0
2689 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { });
2690  
2691  
2692 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (axis.isZAxis) { // Z Axis
2693 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (axis.opposite) {
2694 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (frame.axes.z.top === null) {
2695 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { return {};
2696 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
2697 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { dy = pos.y - plotTop;
2698 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { pos.x = frame.axes.z.top.x;
2699 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { pos.y = frame.axes.z.top.y;
2700 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { } else {
2701 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (frame.axes.z.bottom === null) {
2702 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { return {};
2703 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
2704 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { dy = pos.y - plotBottom;
2705 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { pos.x = frame.axes.z.bottom.x;
2706 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { pos.y = frame.axes.z.bottom.y;
2707 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
2708 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { } else if (axis.horiz) { // X Axis
2709 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (axis.opposite) {
2710 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (frame.axes.x.top === null) {
2711 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { return {};
2712 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
2713 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { dy = pos.y - plotTop;
2714 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { pos.y = frame.axes.x.top.y;
2715 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { pos.z = frame.axes.x.top.z;
2716 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { } else {
2717 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (frame.axes.x.bottom === null) {
2718 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { return {};
2719 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
2720 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { dy = pos.y - plotBottom;
2721 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { pos.y = frame.axes.x.bottom.y;
2722 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { pos.z = frame.axes.x.bottom.z;
2723 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
2724 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { } else { //Y Axis
2725 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (axis.opposite) {
2726 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (frame.axes.y.right === null) {
2727 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { return {};
2728 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
2729 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { dx = pos.x - plotRight;
2730 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { pos.x = frame.axes.y.right.x;
2731 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { pos.z = frame.axes.y.right.z;
2732 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { } else {
2733 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (frame.axes.y.left === null) {
2734 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { return {};
2735 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
2736 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { dx = pos.x - plotLeft;
2737 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { pos.x = frame.axes.y.left.x;
2738 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { pos.z = frame.axes.y.left.z;
2739 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
2740 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
2741 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { pos = perspective([pos], axis.chart)[0];
2742 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { pos.x += dx;
2743 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { pos.y += dy;
2744 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
2745 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { return pos;
2746 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
2747  
2748 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { /***
2749 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { EXTENSION TO THE TICKS
2750 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { ***/
2751  
2752 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { wrap(Tick.prototype, 'getMarkPath', function(proceed) {
2753 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { var path = proceed.apply(this, [].slice.call(arguments, 1));
2754  
2755 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { var pArr = [
2756 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { fix3dPosition(this.axis, {
2757 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: path[1],
2758 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: path[2],
2759 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: 0
2760 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }),
2761 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { fix3dPosition(this.axis, {
2762 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: path[4],
2763 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: path[5],
2764 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: 0
2765 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { })
2766 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { ];
2767  
2768 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { return this.axis.chart.renderer.toLineSegments(pArr);
2769 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { });
2770  
2771 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { wrap(Tick.prototype, 'getLabelPosition', function(proceed) {
2772 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { var pos = proceed.apply(this, [].slice.call(arguments, 1));
2773 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { return fix3dPosition(this.axis, pos);
2774 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { });
2775  
2776 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { H.wrap(Axis.prototype, 'getTitlePosition', function(proceed) {
2777 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { var pos = proceed.apply(this, [].slice.call(arguments, 1));
2778 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { return fix3dPosition(this, pos);
2779 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { });
2780  
2781 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { wrap(Axis.prototype, 'drawCrosshair', function(proceed) {
2782 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { var args = arguments;
2783 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (this.chart.is3d()) {
2784 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (args[2]) {
2785 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { args[2] = {
2786 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { plotX: args[2].plotXold || args[2].plotX,
2787 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { plotY: args[2].plotYold || args[2].plotY
2788 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { };
2789 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
2790 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
2791 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { proceed.apply(this, [].slice.call(args, 1));
2792 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { });
2793  
2794 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { wrap(Axis.prototype, 'destroy', function(proceed) {
2795 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { each(['backFrame', 'bottomFrame', 'sideFrame'], function(prop) {
2796 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (this[prop]) {
2797 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { this[prop] = this[prop].destroy();
2798 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
2799 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, this);
2800 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { proceed.apply(this, [].slice.call(arguments, 1));
2801 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { });
2802  
2803 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { /***
2804 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { Z-AXIS
2805 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { ***/
2806  
2807 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { Axis.prototype.swapZ = function(p, insidePlotArea) {
2808 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (this.isZAxis) {
2809 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { var plotLeft = insidePlotArea ? 0 : this.chart.plotLeft;
2810 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { return {
2811 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: plotLeft + p.z,
2812 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: p.y,
2813 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: p.x - plotLeft
2814 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { };
2815 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
2816 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { return p;
2817 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { };
2818  
2819 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { ZAxis = H.ZAxis = function() {
2820 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { this.init.apply(this, arguments);
2821 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { };
2822 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { extend(ZAxis.prototype, Axis.prototype);
2823 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { extend(ZAxis.prototype, {
2824 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { isZAxis: true,
2825 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { setOptions: function(userOptions) {
2826 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { userOptions = merge({
2827 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { offset: 0,
2828 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { lineWidth: 0
2829 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }, userOptions);
2830 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { Axis.prototype.setOptions.call(this, userOptions);
2831 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { this.coll = 'zAxis';
2832 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { },
2833 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { setAxisSize: function() {
2834 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { Axis.prototype.setAxisSize.call(this);
2835 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { this.width = this.len = this.chart.options.chart.options3d.depth;
2836 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { this.right = this.chart.chartWidth - this.width - this.left;
2837 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { },
2838 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { getSeriesExtremes: function() {
2839 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { var axis = this,
2840 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { chart = axis.chart;
2841  
2842 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { axis.hasVisibleSeries = false;
2843  
2844 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { // Reset properties in case we're redrawing (#3353)
2845 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { axis.dataMin = axis.dataMax = axis.ignoreMinPadding = axis.ignoreMaxPadding = null;
2846  
2847 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (axis.buildStacks) {
2848 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { axis.buildStacks();
2849 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
2850  
2851 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { // loop through this axis' series
2852 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { each(axis.series, function(series) {
2853  
2854 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (series.visible || !chart.options.chart.ignoreHiddenSeries) {
2855  
2856 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { var seriesOptions = series.options,
2857 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { zData,
2858 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { threshold = seriesOptions.threshold;
2859  
2860 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { axis.hasVisibleSeries = true;
2861  
2862 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { // Validate threshold in logarithmic axes
2863 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (axis.positiveValuesOnly && threshold <= 0) {
2864 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { threshold = null;
2865 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
2866  
2867 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { zData = series.zData;
2868 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (zData.length) {
2869 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { axis.dataMin = Math.min(pick(axis.dataMin, zData[0]), Math.min.apply(null, zData));
2870 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { axis.dataMax = Math.max(pick(axis.dataMax, zData[0]), Math.max.apply(null, zData));
2871 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
2872 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
2873 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { });
2874 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
2875 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { });
2876  
2877  
2878 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { /**
2879 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { * Extend the chart getAxes method to also get the color axis
2880 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { */
2881 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { wrap(Chart.prototype, 'getAxes', function(proceed) {
2882 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { var chart = this,
2883 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { options = this.options,
2884 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { zAxisOptions = options.zAxis = splat(options.zAxis || {});
2885  
2886 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { proceed.call(this);
2887  
2888 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (!chart.is3d()) {
2889 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { return;
2890 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
2891 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { this.zAxis = [];
2892 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { each(zAxisOptions, function(axisOptions, i) {
2893 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { axisOptions.index = i;
2894 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { axisOptions.isX = true; //Z-Axis is shown horizontally, so it's kind of a X-Axis
2895 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { var zAxis = new ZAxis(chart, axisOptions);
2896 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { zAxis.setScale();
2897 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { });
2898 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { });
2899  
2900 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }(Highcharts));
2901 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { (function(H) {
2902 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { /**
2903 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { * (c) 2010-2017 Torstein Honsi
2904 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { *
2905 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { * License: www.highcharts.com/license
2906 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { */
2907 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { var each = H.each,
2908 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { perspective = H.perspective,
2909 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { pick = H.pick,
2910 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { Series = H.Series,
2911 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { seriesTypes = H.seriesTypes,
2912 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { inArray = H.inArray,
2913 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { svg = H.svg,
2914 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { wrap = H.wrap;
2915  
2916 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { /***
2917 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { EXTENSION FOR 3D COLUMNS
2918 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { ***/
2919 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { wrap(seriesTypes.column.prototype, 'translate', function(proceed) {
2920 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { proceed.apply(this, [].slice.call(arguments, 1));
2921  
2922 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { // Do not do this if the chart is not 3D
2923 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (!this.chart.is3d()) {
2924 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { return;
2925 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
2926  
2927 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { var series = this,
2928 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { chart = series.chart,
2929 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { seriesOptions = series.options,
2930 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { depth = seriesOptions.depth || 25,
2931 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { borderCrisp = series.borderWidth % 2 ? 0.5 : 0;
2932  
2933 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (
2934 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { (chart.inverted && !series.yAxis.reversed) ||
2935 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { (!chart.inverted && series.yAxis.reversed)
2936 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { ) {
2937 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { borderCrisp *= -1;
2938 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
2939  
2940 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { var stack = seriesOptions.stacking ? (seriesOptions.stack || 0) : series.index; // #4743
2941 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { var z = stack * (depth + (seriesOptions.groupZPadding || 1));
2942  
2943 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (seriesOptions.grouping !== false) {
2944 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z = 0;
2945 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
2946  
2947 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z += (seriesOptions.groupZPadding || 1);
2948 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { each(series.data, function(point) {
2949 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (point.y !== null) {
2950 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { var shapeArgs = point.shapeArgs,
2951 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { tooltipPos = point.tooltipPos,
2952 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { // Array for final shapeArgs calculation.
2953 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { // We are checking two dimensions (x and y).
2954 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { dimensions = [
2955 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { ['x', 'width'],
2956 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { ['y', 'height']
2957 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { ],
2958 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { borderlessBase; // crisped rects can have +/- 0.5 pixels offset
2959  
2960 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { // #3131 We need to check if column shape arguments are inside plotArea.
2961 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { each(dimensions, function(d) {
2962 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { borderlessBase = shapeArgs[d[0]] - borderCrisp;
2963 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (
2964 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { borderlessBase + shapeArgs[d[1]] < 0 || // End column position is smaller than axis start.
2965 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { borderlessBase > series[d[0] + 'Axis'].len // Start column position is bigger than axis end.
2966 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { ) {
2967 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { for (var key in shapeArgs) { // Set args to 0 if column is outside the chart.
2968 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { shapeArgs[key] = 0;
2969 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
2970 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
2971 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (borderlessBase < 0) {
2972 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { shapeArgs[d[1]] += shapeArgs[d[0]];
2973 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { shapeArgs[d[0]] = 0;
2974 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
2975 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (borderlessBase + shapeArgs[d[1]] > series[d[0] + 'Axis'].len) {
2976 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { shapeArgs[d[1]] = series[d[0] + 'Axis'].len - shapeArgs[d[0]];
2977 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
2978 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { });
2979  
2980 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { point.shapeType = 'cuboid';
2981 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { shapeArgs.z = z;
2982 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { shapeArgs.depth = depth;
2983 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { shapeArgs.insidePlotArea = true;
2984  
2985 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { // Translate the tooltip position in 3d space
2986 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { tooltipPos = perspective([{
2987 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: tooltipPos[0],
2988 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: tooltipPos[1],
2989 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: z
2990 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }], chart, true)[0];
2991 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { point.tooltipPos = [tooltipPos.x, tooltipPos.y];
2992 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
2993 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { });
2994 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { // store for later use #4067
2995 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { series.z = z;
2996 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { });
2997  
2998 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { wrap(seriesTypes.column.prototype, 'animate', function(proceed) {
2999 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (!this.chart.is3d()) {
3000 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { proceed.apply(this, [].slice.call(arguments, 1));
3001 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { } else {
3002 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { var args = arguments,
3003 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { init = args[1],
3004 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { yAxis = this.yAxis,
3005 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { series = this,
3006 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { reversed = this.yAxis.reversed;
3007  
3008 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (svg) { // VML is too slow anyway
3009 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (init) {
3010 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { each(series.data, function(point) {
3011 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (point.y !== null) {
3012 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { point.height = point.shapeArgs.height;
3013 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { point.shapey = point.shapeArgs.y; //#2968
3014 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { point.shapeArgs.height = 1;
3015 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (!reversed) {
3016 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (point.stackY) {
3017 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { point.shapeArgs.y = point.plotY + yAxis.translate(point.stackY);
3018 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { } else {
3019 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { point.shapeArgs.y = point.plotY + (point.negative ? -point.height : point.height);
3020 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
3021 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
3022 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
3023 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { });
3024  
3025 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { } else { // run the animation
3026 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { each(series.data, function(point) {
3027 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (point.y !== null) {
3028 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { point.shapeArgs.height = point.height;
3029 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { point.shapeArgs.y = point.shapey; //#2968
3030 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { // null value do not have a graphic
3031 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (point.graphic) {
3032 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { point.graphic.animate(point.shapeArgs, series.options.animation);
3033 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
3034 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
3035 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { });
3036  
3037 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { // redraw datalabels to the correct position
3038 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { this.drawDataLabels();
3039  
3040 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { // delete this function to allow it only once
3041 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { series.animate = null;
3042 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
3043 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
3044 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
3045 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { });
3046  
3047 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { /*
3048 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { * In case of 3d columns there is no sense to add this columns
3049 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { * to a specific series group - if series is added to a group
3050 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { * all columns will have the same zIndex in comparison with different series
3051 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { */
3052  
3053 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { wrap(seriesTypes.column.prototype, 'plotGroup', function(proceed, prop, name, visibility, zIndex, parent) {
3054 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (this.chart.is3d() && parent && !this[prop]) {
3055 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { this[prop] = parent;
3056 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { parent.attr(this.getPlotBox());
3057 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { this[prop].survive = true;
3058 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
3059 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { return proceed.apply(this, Array.prototype.slice.call(arguments, 1));
3060 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { });
3061  
3062 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { /*
3063 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { * When series is not added to group it is needed to change
3064 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { * setVisible method to allow correct Legend funcionality
3065 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { * This wrap is basing on pie chart series
3066 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { */
3067 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { wrap(seriesTypes.column.prototype, 'setVisible', function(proceed, vis) {
3068 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { var series = this,
3069 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { pointVis;
3070 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (series.chart.is3d()) {
3071 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { each(series.data, function(point) {
3072 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { point.visible = point.options.visible = vis = vis === undefined ? !point.visible : vis;
3073 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { pointVis = vis ? 'visible' : 'hidden';
3074 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { series.options.data[inArray(point, series.data)] = point.options;
3075 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (point.graphic) {
3076 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { point.graphic.attr({
3077 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { visibility: pointVis
3078 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { });
3079 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
3080 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { });
3081 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
3082 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { proceed.apply(this, Array.prototype.slice.call(arguments, 1));
3083 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { });
3084  
3085 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { wrap(seriesTypes.column.prototype, 'init', function(proceed) {
3086 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { proceed.apply(this, [].slice.call(arguments, 1));
3087  
3088 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (this.chart.is3d()) {
3089 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { var seriesOptions = this.options,
3090 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { grouping = seriesOptions.grouping,
3091 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { stacking = seriesOptions.stacking,
3092 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { reversedStacks = pick(this.yAxis.options.reversedStacks, true),
3093 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z = 0;
3094  
3095 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (!(grouping !== undefined && !grouping)) {
3096 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { var stacks = this.chart.retrieveStacks(stacking),
3097 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { stack = seriesOptions.stack || 0,
3098 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { i; // position within the stack
3099 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { for (i = 0; i < stacks[stack].series.length; i++) {
3100 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (stacks[stack].series[i] === this) {
3101 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { break;
3102 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
3103 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
3104 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z = (10 * (stacks.totalStacks - stacks[stack].position)) + (reversedStacks ? i : -i); // #4369
3105  
3106 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { // In case when axis is reversed, columns are also reversed inside the group (#3737)
3107 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (!this.xAxis.reversed) {
3108 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z = (stacks.totalStacks * 10) - z;
3109 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
3110 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
3111  
3112 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { seriesOptions.zIndex = z;
3113 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
3114 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { });
3115  
3116  
3117 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { function pointAttribs(proceed) {
3118 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { var attr = proceed.apply(this, [].slice.call(arguments, 1));
3119  
3120 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (this.chart.is3d()) {
3121 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { // Set the fill color to the fill color to provide a smooth edge
3122 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { attr.stroke = this.options.edgeColor || attr.fill;
3123 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { attr['stroke-width'] = pick(this.options.edgeWidth, 1); // #4055
3124 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
3125  
3126 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { return attr;
3127 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
3128  
3129 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { wrap(seriesTypes.column.prototype, 'pointAttribs', pointAttribs);
3130 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (seriesTypes.columnrange) {
3131 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { wrap(seriesTypes.columnrange.prototype, 'pointAttribs', pointAttribs);
3132 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { seriesTypes.columnrange.prototype.plotGroup = seriesTypes.column.prototype.plotGroup;
3133 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { seriesTypes.columnrange.prototype.setVisible = seriesTypes.column.prototype.setVisible;
3134 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
3135  
3136  
3137 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { wrap(Series.prototype, 'alignDataLabel', function(proceed) {
3138  
3139 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { // Only do this for 3D columns and columnranges
3140 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (this.chart.is3d() && (this.type === 'column' || this.type === 'columnrange')) {
3141 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { var series = this,
3142 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { chart = series.chart;
3143  
3144 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { var args = arguments,
3145 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { alignTo = args[4];
3146  
3147 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { var pos = ({
3148 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: alignTo.x,
3149 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: alignTo.y,
3150 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: series.z
3151 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { });
3152 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { pos = perspective([pos], chart, true)[0];
3153 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { alignTo.x = pos.x;
3154 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { alignTo.y = pos.y;
3155 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
3156  
3157 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { proceed.apply(this, [].slice.call(arguments, 1));
3158 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { });
3159  
3160 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { /***
3161 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { EXTENSION FOR 3D CYLINDRICAL COLUMNS
3162 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { Not supported
3163 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { ***/
3164 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { /*
3165 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { var defaultOptions = H.getOptions();
3166 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { defaultOptions.plotOptions.cylinder = H.merge(defaultOptions.plotOptions.column);
3167 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { var CylinderSeries = H.extendClass(seriesTypes.column, {
3168 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { type: 'cylinder'
3169 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { });
3170 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { seriesTypes.cylinder = CylinderSeries;
3171  
3172 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { wrap(seriesTypes.cylinder.prototype, 'translate', function (proceed) {
3173 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { proceed.apply(this, [].slice.call(arguments, 1));
3174  
3175 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { // Do not do this if the chart is not 3D
3176 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (!this.chart.is3d()) {
3177 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { return;
3178 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
3179  
3180 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { var series = this,
3181 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { chart = series.chart,
3182 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { options = chart.options,
3183 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { cylOptions = options.plotOptions.cylinder,
3184 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { options3d = options.chart.options3d,
3185 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { depth = cylOptions.depth || 0,
3186 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { alpha = chart.alpha3d;
3187  
3188 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { var z = cylOptions.stacking ? (this.options.stack || 0) * depth : series._i * depth;
3189 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z += depth / 2;
3190  
3191 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (cylOptions.grouping !== false) { z = 0; }
3192  
3193 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { each(series.data, function (point) {
3194 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { var shapeArgs = point.shapeArgs,
3195 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { deg2rad = H.deg2rad;
3196 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { point.shapeType = 'arc3d';
3197 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { shapeArgs.x += depth / 2;
3198 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { shapeArgs.z = z;
3199 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { shapeArgs.start = 0;
3200 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { shapeArgs.end = 2 * PI;
3201 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { shapeArgs.r = depth * 0.95;
3202 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { shapeArgs.innerR = 0;
3203 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { shapeArgs.depth = shapeArgs.height * (1 / sin((90 - alpha) * deg2rad)) - z;
3204 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { shapeArgs.alpha = 90 - alpha;
3205 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { shapeArgs.beta = 0;
3206 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { });
3207 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { });
3208 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { */
3209  
3210 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }(Highcharts));
3211 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { (function(H) {
3212 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { /**
3213 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { * (c) 2010-2017 Torstein Honsi
3214 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { *
3215 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { * License: www.highcharts.com/license
3216 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { */
3217 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { var deg2rad = H.deg2rad,
3218 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { each = H.each,
3219 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { pick = H.pick,
3220 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { seriesTypes = H.seriesTypes,
3221 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { svg = H.svg,
3222 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { wrap = H.wrap;
3223  
3224 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { /***
3225 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { EXTENSION FOR 3D PIES
3226 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { ***/
3227  
3228 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { wrap(seriesTypes.pie.prototype, 'translate', function(proceed) {
3229 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { proceed.apply(this, [].slice.call(arguments, 1));
3230  
3231 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { // Do not do this if the chart is not 3D
3232 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (!this.chart.is3d()) {
3233 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { return;
3234 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
3235  
3236 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { var series = this,
3237 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { seriesOptions = series.options,
3238 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { depth = seriesOptions.depth || 0,
3239 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { options3d = series.chart.options.chart.options3d,
3240 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { alpha = options3d.alpha,
3241 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { beta = options3d.beta,
3242 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z = seriesOptions.stacking ? (seriesOptions.stack || 0) * depth : series._i * depth;
3243  
3244 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z += depth / 2;
3245  
3246 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (seriesOptions.grouping !== false) {
3247 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z = 0;
3248 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
3249  
3250 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { each(series.data, function(point) {
3251  
3252 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { var shapeArgs = point.shapeArgs,
3253 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { angle;
3254  
3255 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { point.shapeType = 'arc3d';
3256  
3257 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { shapeArgs.z = z;
3258 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { shapeArgs.depth = depth * 0.75;
3259 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { shapeArgs.alpha = alpha;
3260 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { shapeArgs.beta = beta;
3261 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { shapeArgs.center = series.center;
3262  
3263 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { angle = (shapeArgs.end + shapeArgs.start) / 2;
3264  
3265 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { point.slicedTranslation = {
3266 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { translateX: Math.round(Math.cos(angle) * seriesOptions.slicedOffset * Math.cos(alpha * deg2rad)),
3267 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { translateY: Math.round(Math.sin(angle) * seriesOptions.slicedOffset * Math.cos(alpha * deg2rad))
3268 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { };
3269 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { });
3270 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { });
3271  
3272 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { wrap(seriesTypes.pie.prototype.pointClass.prototype, 'haloPath', function(proceed) {
3273 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { var args = arguments;
3274 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { return this.series.chart.is3d() ? [] : proceed.call(this, args[1]);
3275 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { });
3276  
3277  
3278 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { wrap(seriesTypes.pie.prototype, 'pointAttribs', function(proceed, point, state) {
3279 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { var attr = proceed.call(this, point, state),
3280 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { options = this.options;
3281  
3282 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (this.chart.is3d()) {
3283 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { attr.stroke = options.edgeColor || point.color || this.color;
3284 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { attr['stroke-width'] = pick(options.edgeWidth, 1);
3285 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
3286  
3287 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { return attr;
3288 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { });
3289  
3290  
3291 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { wrap(seriesTypes.pie.prototype, 'drawPoints', function(proceed) {
3292 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { proceed.apply(this, [].slice.call(arguments, 1));
3293  
3294 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (this.chart.is3d()) {
3295 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { each(this.points, function(point) {
3296 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { var graphic = point.graphic;
3297  
3298 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { // #4584 Check if has graphic - null points don't have it
3299 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (graphic) {
3300 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { // Hide null or 0 points (#3006, 3650)
3301 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { graphic[point.y && point.visible ? 'show' : 'hide']();
3302 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
3303 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { });
3304 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
3305 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { });
3306  
3307 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { wrap(seriesTypes.pie.prototype, 'drawDataLabels', function(proceed) {
3308 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (this.chart.is3d()) {
3309 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { var series = this,
3310 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { chart = series.chart,
3311 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { options3d = chart.options.chart.options3d;
3312 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { each(series.data, function(point) {
3313 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { var shapeArgs = point.shapeArgs,
3314 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { r = shapeArgs.r,
3315 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { a1 = (shapeArgs.alpha || options3d.alpha) * deg2rad, //#3240 issue with datalabels for 0 and null values
3316 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { b1 = (shapeArgs.beta || options3d.beta) * deg2rad,
3317 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { a2 = (shapeArgs.start + shapeArgs.end) / 2,
3318 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { labelPos = point.labelPos,
3319 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { labelIndexes = [0, 2, 4], // [x1, y1, x2, y2, x3, y3]
3320 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { yOffset = (-r * (1 - Math.cos(a1)) * Math.sin(a2)), // + (sin(a2) > 0 ? sin(a1) * d : 0)
3321 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { xOffset = r * (Math.cos(b1) - 1) * Math.cos(a2);
3322  
3323 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { // Apply perspective on label positions
3324 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { each(labelIndexes, function(index) {
3325 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { labelPos[index] += xOffset;
3326 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { labelPos[index + 1] += yOffset;
3327 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { });
3328 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { });
3329 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
3330  
3331 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { proceed.apply(this, [].slice.call(arguments, 1));
3332 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { });
3333  
3334 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { wrap(seriesTypes.pie.prototype, 'addPoint', function(proceed) {
3335 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { proceed.apply(this, [].slice.call(arguments, 1));
3336 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (this.chart.is3d()) {
3337 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { // destroy (and rebuild) everything!!!
3338 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { this.update(this.userOptions, true); // #3845 pass the old options
3339 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
3340 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { });
3341  
3342 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { wrap(seriesTypes.pie.prototype, 'animate', function(proceed) {
3343 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (!this.chart.is3d()) {
3344 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { proceed.apply(this, [].slice.call(arguments, 1));
3345 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { } else {
3346 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { var args = arguments,
3347 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { init = args[1],
3348 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { animation = this.options.animation,
3349 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { attribs,
3350 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { center = this.center,
3351 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { group = this.group,
3352 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { markerGroup = this.markerGroup;
3353  
3354 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (svg) { // VML is too slow anyway
3355  
3356 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (animation === true) {
3357 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { animation = {};
3358 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
3359 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { // Initialize the animation
3360 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (init) {
3361  
3362 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { // Scale down the group and place it in the center
3363 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { group.oldtranslateX = group.translateX;
3364 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { group.oldtranslateY = group.translateY;
3365 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { attribs = {
3366 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { translateX: center[0],
3367 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { translateY: center[1],
3368 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { scaleX: 0.001, // #1499
3369 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { scaleY: 0.001
3370 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { };
3371  
3372 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { group.attr(attribs);
3373 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (markerGroup) {
3374 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { markerGroup.attrSetters = group.attrSetters;
3375 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { markerGroup.attr(attribs);
3376 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
3377  
3378 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { // Run the animation
3379 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { } else {
3380 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { attribs = {
3381 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { translateX: group.oldtranslateX,
3382 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { translateY: group.oldtranslateY,
3383 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { scaleX: 1,
3384 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { scaleY: 1
3385 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { };
3386 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { group.animate(attribs, animation);
3387  
3388 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (markerGroup) {
3389 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { markerGroup.animate(attribs, animation);
3390 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
3391  
3392 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { // Delete this function to allow it only once
3393 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { this.animate = null;
3394 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
3395  
3396 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
3397 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
3398 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { });
3399  
3400 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }(Highcharts));
3401 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { (function(H) {
3402 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { /**
3403 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { * (c) 2010-2017 Torstein Honsi
3404 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { *
3405 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { * License: www.highcharts.com/license
3406 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { */
3407 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { var perspective = H.perspective,
3408 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { pick = H.pick,
3409 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { Point = H.Point,
3410 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { seriesTypes = H.seriesTypes,
3411 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { wrap = H.wrap;
3412  
3413 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { /***
3414 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { EXTENSION FOR 3D SCATTER CHART
3415 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { ***/
3416  
3417 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { wrap(seriesTypes.scatter.prototype, 'translate', function(proceed) {
3418 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { //function translate3d(proceed) {
3419 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { proceed.apply(this, [].slice.call(arguments, 1));
3420  
3421 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (!this.chart.is3d()) {
3422 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { return;
3423 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
3424  
3425 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { var series = this,
3426 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { chart = series.chart,
3427 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { zAxis = pick(series.zAxis, chart.options.zAxis[0]),
3428 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { rawPoints = [],
3429 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { rawPoint,
3430 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { projectedPoints,
3431 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { projectedPoint,
3432 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { zValue,
3433 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { i;
3434  
3435 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { for (i = 0; i < series.data.length; i++) {
3436 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { rawPoint = series.data[i];
3437 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { zValue = zAxis.isLog && zAxis.val2lin ? zAxis.val2lin(rawPoint.z) : rawPoint.z; // #4562
3438 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { rawPoint.plotZ = zAxis.translate(zValue);
3439  
3440 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { rawPoint.isInside = rawPoint.isInside ? (zValue >= zAxis.min && zValue <= zAxis.max) : false;
3441  
3442 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { rawPoints.push({
3443 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { x: rawPoint.plotX,
3444 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { y: rawPoint.plotY,
3445 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { z: rawPoint.plotZ
3446 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { });
3447 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
3448  
3449 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { projectedPoints = perspective(rawPoints, chart, true);
3450  
3451 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { for (i = 0; i < series.data.length; i++) {
3452 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { rawPoint = series.data[i];
3453 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { projectedPoint = projectedPoints[i];
3454  
3455 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { rawPoint.plotXold = rawPoint.plotX;
3456 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { rawPoint.plotYold = rawPoint.plotY;
3457 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { rawPoint.plotZold = rawPoint.plotZ;
3458  
3459 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { rawPoint.plotX = projectedPoint.x;
3460 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { rawPoint.plotY = projectedPoint.y;
3461 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { rawPoint.plotZ = projectedPoint.z;
3462  
3463 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
3464  
3465 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { });
3466  
3467  
3468 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { wrap(seriesTypes.scatter.prototype, 'init', function(proceed, chart, options) {
3469 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (chart.is3d()) {
3470 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { // add a third coordinate
3471 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { this.axisTypes = ['xAxis', 'yAxis', 'zAxis'];
3472 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { this.pointArrayMap = ['x', 'y', 'z'];
3473 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { this.parallelArrays = ['x', 'y', 'z'];
3474  
3475 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { // Require direct touch rather than using the k-d-tree, because the k-d-tree currently doesn't
3476 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { // take the xyz coordinate system into account (#4552)
3477 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { this.directTouch = true;
3478 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
3479  
3480 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { var result = proceed.apply(this, [chart, options]);
3481  
3482 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (this.chart.is3d()) {
3483 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { // Set a new default tooltip formatter
3484 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { var default3dScatterTooltip = 'x: <b>{point.x}</b><br/>y: <b>{point.y}</b><br/>z: <b>{point.z}</b><br/>';
3485 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (this.userOptions.tooltip) {
3486 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { this.tooltipOptions.pointFormat = this.userOptions.tooltip.pointFormat || default3dScatterTooltip;
3487 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { } else {
3488 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { this.tooltipOptions.pointFormat = default3dScatterTooltip;
3489 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
3490 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
3491 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { return result;
3492 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { });
3493  
3494 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { /**
3495 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { * Updating zIndex for every point - based on the distance from point to camera
3496 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { */
3497 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { wrap(seriesTypes.scatter.prototype, 'pointAttribs', function(proceed, point) {
3498 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { var pointOptions = proceed.apply(this, [].slice.call(arguments, 1));
3499 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (this.chart.is3d() && point) {
3500 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { pointOptions.zIndex = H.pointCameraDistance(point, this.chart);
3501 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
3502 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { return pointOptions;
3503 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { });
3504  
3505  
3506 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { wrap(Point.prototype, 'applyOptions', function(proceed) {
3507 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { var point = proceed.apply(this, [].slice.call(arguments, 1));
3508  
3509 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (this.series.chart.is3d() && point.z === undefined) {
3510 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { point.z = 0;
3511 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
3512 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { return point;
3513 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { });
3514  
3515 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }(Highcharts));
3516 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { (function(H) {
3517 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { /**
3518 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { * (c) 2010-2017 Torstein Honsi
3519 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { *
3520 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { * License: www.highcharts.com/license
3521 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { */
3522  
3523 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { var Axis = H.Axis,
3524 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { SVGRenderer = H.SVGRenderer,
3525 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { VMLRenderer = H.VMLRenderer;
3526  
3527 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { /**
3528 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { * Extension to the VML Renderer
3529 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { */
3530 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (VMLRenderer) {
3531  
3532 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { H.setOptions({
3533 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { animate: false
3534 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { });
3535  
3536 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { VMLRenderer.prototype.face3d = SVGRenderer.prototype.face3d;
3537 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { VMLRenderer.prototype.polyhedron = SVGRenderer.prototype.polyhedron;
3538 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { VMLRenderer.prototype.cuboid = SVGRenderer.prototype.cuboid;
3539 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { VMLRenderer.prototype.cuboidPath = SVGRenderer.prototype.cuboidPath;
3540  
3541 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { VMLRenderer.prototype.toLinePath = SVGRenderer.prototype.toLinePath;
3542 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { VMLRenderer.prototype.toLineSegments = SVGRenderer.prototype.toLineSegments;
3543  
3544 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { VMLRenderer.prototype.createElement3D = SVGRenderer.prototype.createElement3D;
3545  
3546 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { VMLRenderer.prototype.arc3d = function(shapeArgs) {
3547 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { var result = SVGRenderer.prototype.arc3d.call(this, shapeArgs);
3548 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { result.css({
3549 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { zIndex: result.zIndex
3550 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { });
3551 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { return result;
3552 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { };
3553  
3554 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { H.VMLRenderer.prototype.arc3dPath = H.SVGRenderer.prototype.arc3dPath;
3555  
3556 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { H.wrap(Axis.prototype, 'render', function(proceed) {
3557 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { proceed.apply(this, [].slice.call(arguments, 1));
3558 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { // VML doesn't support a negative z-index
3559 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (this.sideFrame) {
3560 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { this.sideFrame.css({
3561 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { zIndex: 0
3562 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { });
3563 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { this.sideFrame.front.attr({
3564 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { fill: this.sideFrame.color
3565 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { });
3566 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
3567 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (this.bottomFrame) {
3568 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { this.bottomFrame.css({
3569 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { zIndex: 1
3570 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { });
3571 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { this.bottomFrame.front.attr({
3572 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { fill: this.bottomFrame.color
3573 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { });
3574 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
3575 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { if (this.backFrame) {
3576 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { this.backFrame.css({
3577 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { zIndex: 0
3578 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { });
3579 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { this.backFrame.front.attr({
3580 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { fill: this.backFrame.color
3581 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { });
3582 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
3583 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { });
3584  
3585 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }
3586  
3587  
3588 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) { }(Highcharts));
3589 < result.faces.length; i++) {< hash.faces.length) {< hash.faces.length; i++) {< params.faces.length) {< params.faces.length; i++) {< bbox3d.maxX) {}));