1 /*global JXG:true, define: true*/
  2 
  3 define([
  4     'jxg', 'options'
  5 ], function (JXG, Options) {
  6 
  7     "use strict";
  8 
  9     JXG.extend(Options, {
 10 
 11         infobox: {
 12             strokeColor: 'black'
 13         },
 14 
 15         axes3d: {
 16             /**#@+
 17              * @visprop
 18              */
 19 
 20             /**
 21              * Position of the main axes in a View3D element. Possible values are
 22              * 'center' and 'border'.
 23              *
 24              * @type String
 25              * @name View3D#axesPosition
 26              * @default 'center'
 27              */
 28             axesPosition: 'center',  // Possible values: 'center', otherwise: border
 29 
 30             // Main axes
 31 
 32             /**
 33              * Attributes of the 3D x-axis.
 34              *
 35              * @type Line3D
 36              * @name View3D#xAxis
 37              */
 38             xAxis: { visible: true, point2: {name: 'x'}},
 39 
 40             /**
 41              * Attributes of the 3D y-axis.
 42              *
 43              * @type Line3D
 44              * @name View3D#yAxis
 45              */
 46             yAxis: { visible: true, point2: {name: 'y'}},
 47 
 48             /**
 49              * Attributes of the 3D z-axis.
 50              *
 51              * @type Line3D
 52              * @name View3D#zAxis
 53              */
 54             zAxis: { visible: true, point2: {name: 'z'}},
 55 
 56             // Planes
 57             /**
 58              * Attributes of the 3D plane orthogonal to the x-axis at the "rear" of the cube.
 59              * @type Plane3D
 60              * @name View3D#xPlaneRear
 61              */
 62             xPlaneRear: { visible: true, layer: 0, mesh3d: { layer: 1 } },
 63             /**
 64              * Attributes of the 3D plane orthogonal to the y-axis at the "rear" of the cube.
 65              * @type Plane3D
 66              * @name View3D#yPlaneRear
 67              */
 68             yPlaneRear: { visible: true, layer: 0, mesh3d: { layer: 1 } },
 69             /**
 70              * Attributes of the 3D plane orthogonal to the z-axis at the "rear" of the cube.
 71              * @type Plane3D
 72              * @name View3D#zPlaneRear
 73              */
 74             zPlaneRear: { visible: true, layer: 0, mesh3d: { layer: 1 } },
 75 
 76             /**
 77              * Attributes of the 3D plane orthogonal to the x-axis at the "front" of the cube.
 78              * @type Plane3D
 79              * @name View3D#xPlaneFront
 80              */
 81             xPlaneFront: { visible: false, layer: 0, mesh3d: { layer: 1 } },
 82             /**
 83              * Attributes of the 3D plane orthogonal to the y-axis at the "front" of the cube.
 84              * @type Plane3D
 85              * @name View3D#yPlaneFront
 86              */
 87             yPlaneFront: { visible: false, layer: 0, mesh3d: { layer: 1 } },
 88             /**
 89              * Attributes of the 3D plane orthogonal to the z-axis at the "front" of the cube.
 90              * @type Plane3D
 91              * @name View3D#zPlaneFront
 92              */
 93             zPlaneFront: { visible: false, layer: 0, mesh3d: { layer: 1 } },
 94 
 95             // Axes on the planes
 96             /**
 97              * Attributes of the 3D y-axis on the 3D plane orthogonal to the x-axis at the "rear" of the cube.
 98              * @type Plane3D
 99              * @name View3D#xPlaneRearYAxis
100              */
101             xPlaneRearYAxis: {visible: 'inherit', strokeColor: '#888888', strokeWidth: 1},
102             /**
103              * Attributes of the 3D z-axis on the 3D plane orthogonal to the x-axis at the "rear" of the cube.
104              * @type Plane3D
105              * @name View3D#xPlaneRearZAxis
106              */
107             xPlaneRearZAxis: {visible: 'inherit', strokeColor: '#888888', strokeWidth: 1},
108             /**
109              * Attributes of the 3D y-axis on the 3D plane orthogonal to the x-axis at the "front" of the cube.
110              * @type Plane3D
111              * @name View3D#xPlaneFrontYAxis
112              */
113             xPlaneFrontYAxis: {visible: 'inherit', strokeColor: '#888888', strokeWidth: 1},
114             /**
115              * Attributes of the 3D z-axis on the 3D plane orthogonal to the x-axis at the "front" of the cube.
116              * @type Plane3D
117              * @name View3D#xPlaneFrontZAxis
118              */
119             xPlaneFrontZAxis: {visible: 'inherit', strokeColor: '#888888', strokeWidth: 1},
120 
121             /**
122              * Attributes of the 3D x-axis on the 3D plane orthogonal to the y-axis at the "rear" of the cube.
123              * @type Plane3D
124              * @name View3D#yPlaneRearXAxis
125              */
126             yPlaneRearXAxis: {visible: 'inherit', strokeColor: '#888888', strokeWidth: 1},
127             /**
128              * Attributes of the 3D z-axis on the 3D plane orthogonal to the y-axis at the "rear" of the cube.
129              * @type Plane3D
130              * @name View3D#yPlaneRearZAxis
131              */
132             yPlaneRearZAxis: {visible: 'inherit', strokeColor: '#888888', strokeWidth: 1},
133             /**
134              * Attributes of the 3D x-axis on the 3D plane orthogonal to the y-axis at the "front" of the cube.
135              * @type Plane3D
136              * @name View3D#yPlaneFrontXAxis
137              */
138             yPlaneFrontXAxis: {visible: 'inherit', strokeColor: '#888888', strokeWidth: 1},
139             /**
140              * Attributes of the 3D z-axis on the 3D plane orthogonal to the y-axis at the "front" of the cube.
141              * @type Plane3D
142              * @name View3D#yPlaneFrontZAxis
143              */
144             yPlaneFrontZAxis: {visible: 'inherit', strokeColor: '#888888', strokeWidth: 1},
145 
146             /**
147              * Attributes of the 3D x-axis on the 3D plane orthogonal to the z-axis at the "rear" of the cube.
148              * @type Plane3D
149              * @name View3D#zPlaneRearXAxis
150              */
151             zPlaneRearXAxis: {visible: 'inherit', strokeColor: '#888888', strokeWidth: 1},
152             /**
153              * Attributes of the 3D y-axis on the 3D plane orthogonal to the z-axis at the "rear" of the cube.
154              * @type Plane3D
155              * @name View3D#zPlaneRearYAxis
156              */
157             zPlaneRearYAxis: {visible: 'inherit', strokeColor: '#888888', strokeWidth: 1},
158             /**
159              * Attributes of the 3D x-axis on the 3D plane orthogonal to the z-axis at the "front" of the cube.
160              * @type Plane3D
161              * @name View3D#zPlaneFrontXAxis
162              */
163             zPlaneFrontXAxis: {visible: 'inherit', strokeColor: '#888888', strokeWidth: 1},
164             /**
165              * Attributes of the 3D y-axis on the 3D plane orthogonal to the z-axis at the "front" of the cube.
166              * @type Plane3D
167              * @name View3D#zPlaneFrontYAxis
168              */
169             zPlaneFrontYAxis: {visible: 'inherit', strokeColor: '#888888', strokeWidth: 1}
170 
171             /**#@-*/
172         },
173 
174         axis3d: {
175             highlight: false,
176             strokecolor: 'black',
177             strokeWidth: 1,
178             tabindex: null,
179 
180             point1: { visible: false, name: '' },
181             point2: { visible: false, name: '', label: { visible: true } }
182         },
183 
184         mesh3d: {
185             strokeWidth: 1,
186             strokeColor: '#9a9a9a',
187             strokeOpacity: 0.6,
188             highlight: false,
189             fillColor: '#9a9a9a',
190             fillOpacity: 0.1,
191             tabindex: null,
192 
193             visible: 'inherit'
194         },
195 
196         line3d: {
197             strokeWidth: 1,
198             strokeColor: 'black',
199             fixed: true,
200             tabindex: null,
201 
202             gradient: 'linear',
203             gradientSecondColor: '#ffffff',
204 
205             point1: {visible: false, name: ''},
206             point2: {visible: false, name: ''}
207         },
208 
209         plane3d: {
210             strokeWidth: 0,
211             strokeColor: 'black',
212             strokeOpacity: 1,
213             highlight: false,
214             tabindex: null,
215 
216             gradient: 'linear',
217             gradientSecondColor: '#ffffff',
218             gradientAngle: Math.PI,
219             fillColor: '#a7a7a7',
220             fillOpacity: 0.6
221         },
222 
223         point3d: {
224             strokeWidth: 0,
225             gradient: 'radial',
226             gradientSecondColor: '#555555',
227             fillColor: 'yellow',
228             highlightStrokeColor: '#555555'
229         },
230 
231         surface3d: {
232             /**#@+
233              * @visprop
234              */
235 
236             highlight: false,
237             tabindex: -1,
238             strokeWidth: 1,
239 
240             /**
241              * Number of intervals the mesh is divided into in direction of parameter u.
242              * @type Number
243              * @name Surface3D#stepsU
244              */
245             stepsU: 30,
246 
247             /**
248              * Number of intervals the mesh is divided into in direction of parameter v.
249              * @type Number
250              * @name Surface3D#stepsV
251              */
252              stepsV: 30
253 
254             /**#@-*/
255         },
256 
257         view3d: {
258             needsRegularUpdate: true
259         }
260 
261     });
262 
263     return JXG.Options;
264 });
265 
266