jsxgraph 1.10.0 → 1.10.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +25 -0
- package/distrib/docs/files.html +2 -61
- package/distrib/docs/index.html +2 -58
- package/distrib/docs/static/jsxgraphcore.js +2 -2
- package/distrib/docs/symbols/Angle.html +2 -18
- package/distrib/docs/symbols/Arc.html +2 -18
- package/distrib/docs/symbols/Arrow.html +2 -18
- package/distrib/docs/symbols/Arrowparallel.html +2 -18
- package/distrib/docs/symbols/Axes3D.html +2 -18
- package/distrib/docs/symbols/Axis.html +2 -18
- package/distrib/docs/symbols/Axis3D.html +2 -18
- package/distrib/docs/symbols/Bisector.html +2 -18
- package/distrib/docs/symbols/Bisectorlines.html +2 -18
- package/distrib/docs/symbols/Boxplot.html +2 -18
- package/distrib/docs/symbols/Button.html +2 -18
- package/distrib/docs/symbols/Cardinalspline.html +2 -18
- package/distrib/docs/symbols/Chart.html +2 -18
- package/distrib/docs/symbols/Checkbox.html +2 -18
- package/distrib/docs/symbols/Circle.html +2 -18
- package/distrib/docs/symbols/Circle3D.html +2 -18
- package/distrib/docs/symbols/Circumcenter.html +2 -18
- package/distrib/docs/symbols/Circumcircle.html +2 -18
- package/distrib/docs/symbols/CircumcircleArc.html +2 -18
- package/distrib/docs/symbols/CircumcircleSector.html +2 -18
- package/distrib/docs/symbols/Comb.html +2 -18
- package/distrib/docs/symbols/Conic.html +2 -18
- package/distrib/docs/symbols/Curve.html +2 -18
- package/distrib/docs/symbols/Curve3D.html +2 -18
- package/distrib/docs/symbols/CurveDifference.html +2 -18
- package/distrib/docs/symbols/CurveIntersection.html +2 -18
- package/distrib/docs/symbols/CurveUnion.html +2 -18
- package/distrib/docs/symbols/Derivative.html +2 -18
- package/distrib/docs/symbols/Ellipse.html +2 -18
- package/distrib/docs/symbols/ForeignObject.html +2 -18
- package/distrib/docs/symbols/Functiongraph.html +2 -18
- package/distrib/docs/symbols/Functiongraph3D.html +2 -18
- package/distrib/docs/symbols/Glider.html +2 -18
- package/distrib/docs/symbols/Grid.html +2 -18
- package/distrib/docs/symbols/Group.html +2 -18
- package/distrib/docs/symbols/Hatch.html +2 -18
- package/distrib/docs/symbols/Hyperbola.html +2 -18
- package/distrib/docs/symbols/Image.html +2 -18
- package/distrib/docs/symbols/ImplicitCurve.html +2 -18
- package/distrib/docs/symbols/Incenter.html +2 -18
- package/distrib/docs/symbols/Incircle.html +2 -18
- package/distrib/docs/symbols/Inequality.html +2 -18
- package/distrib/docs/symbols/Input.html +2 -18
- package/distrib/docs/symbols/Integral.html +2 -18
- package/distrib/docs/symbols/Intersection.html +2 -18
- package/distrib/docs/symbols/IntersectionCircle3D.html +2 -18
- package/distrib/docs/symbols/IntersectionLine3D.html +2 -18
- package/distrib/docs/symbols/JXG.AbstractRenderer.html +2 -18
- package/distrib/docs/symbols/JXG.Board.html +4 -20
- package/distrib/docs/symbols/JXG.Board.infobox.html +2 -18
- package/distrib/docs/symbols/JXG.C.html +2 -18
- package/distrib/docs/symbols/JXG.CA.html +2 -18
- package/distrib/docs/symbols/JXG.CanvasRenderer.html +2 -18
- package/distrib/docs/symbols/JXG.Chart.html +2 -18
- package/distrib/docs/symbols/JXG.Circle.html +2 -18
- package/distrib/docs/symbols/JXG.Circle3D.html +2 -18
- package/distrib/docs/symbols/JXG.Complex.html +2 -18
- package/distrib/docs/symbols/JXG.Composition.html +2 -18
- package/distrib/docs/symbols/JXG.Coords.html +2 -18
- package/distrib/docs/symbols/JXG.CoordsElement.html +98 -22
- package/distrib/docs/symbols/JXG.Curve.html +2 -18
- package/distrib/docs/symbols/JXG.Curve3D.html +2 -18
- package/distrib/docs/symbols/JXG.Dump.html +2 -18
- package/distrib/docs/symbols/JXG.EventEmitter.html +2 -18
- package/distrib/docs/symbols/JXG.Expect.html +2 -18
- package/distrib/docs/symbols/JXG.ForeignObject.html +2 -18
- package/distrib/docs/symbols/JXG.GeometryElement.html +2 -18
- package/distrib/docs/symbols/JXG.GeometryElement3D.html +2 -18
- package/distrib/docs/symbols/JXG.GeonextParser.html +2 -18
- package/distrib/docs/symbols/JXG.Group.html +2 -18
- package/distrib/docs/symbols/JXG.Image.html +2 -18
- package/distrib/docs/symbols/JXG.JSXGraph.html +2 -18
- package/distrib/docs/symbols/JXG.JessieCode.html +2 -18
- package/distrib/docs/symbols/JXG.Legend.html +2 -18
- package/distrib/docs/symbols/JXG.Line.html +2 -18
- package/distrib/docs/symbols/JXG.Line3D.html +2 -18
- package/distrib/docs/symbols/JXG.Math.BoxQuadtree.html +2 -18
- package/distrib/docs/symbols/JXG.Math.Clip.html +2 -18
- package/distrib/docs/symbols/JXG.Math.Extrapolate.html +2 -18
- package/distrib/docs/symbols/JXG.Math.Geometry.html +2 -18
- package/distrib/docs/symbols/JXG.Math.ImplicitPlot.html +2 -18
- package/distrib/docs/symbols/JXG.Math.IntervalArithmetic.html +2 -18
- package/distrib/docs/symbols/JXG.Math.Metapost.html +2 -18
- package/distrib/docs/symbols/JXG.Math.Nlp.html +2 -18
- package/distrib/docs/symbols/JXG.Math.Numerics.html +2 -18
- package/distrib/docs/symbols/JXG.Math.Plot.html +2 -18
- package/distrib/docs/symbols/JXG.Math.Poly.Monomial.html +2 -18
- package/distrib/docs/symbols/JXG.Math.Poly.Polynomial.html +2 -18
- package/distrib/docs/symbols/JXG.Math.Poly.Ring.html +2 -18
- package/distrib/docs/symbols/JXG.Math.Poly.html +2 -18
- package/distrib/docs/symbols/JXG.Math.ProbFuncs.html +2 -18
- package/distrib/docs/symbols/JXG.Math.Quadtree.html +2 -18
- package/distrib/docs/symbols/JXG.Math.Statistics.html +22 -34
- package/distrib/docs/symbols/JXG.Math.html +2 -18
- package/distrib/docs/symbols/JXG.NoRenderer.html +2 -18
- package/distrib/docs/symbols/JXG.Options.html +2 -18
- package/distrib/docs/symbols/JXG.Plane3D.html +2 -18
- package/distrib/docs/symbols/JXG.Point.html +2 -18
- package/distrib/docs/symbols/JXG.Point3D.html +2 -18
- package/distrib/docs/symbols/JXG.Polygon.html +2 -18
- package/distrib/docs/symbols/JXG.Polygon3D.html +2 -18
- package/distrib/docs/symbols/JXG.PrefixParser.html +2 -18
- package/distrib/docs/symbols/JXG.SVGRenderer.html +2 -18
- package/distrib/docs/symbols/JXG.Sphere3D.html +2 -18
- package/distrib/docs/symbols/JXG.Surface3D.html +2 -18
- package/distrib/docs/symbols/JXG.Text.html +2 -18
- package/distrib/docs/symbols/JXG.Text3D.html +2 -18
- package/distrib/docs/symbols/JXG.Ticks.html +2 -18
- package/distrib/docs/symbols/JXG.Transformation.html +2 -18
- package/distrib/docs/symbols/JXG.Turtle.html +2 -18
- package/distrib/docs/symbols/JXG.Util.Base64.html +2 -18
- package/distrib/docs/symbols/JXG.Util.UTF8.html +2 -18
- package/distrib/docs/symbols/JXG.Util.Unzip.html +2 -18
- package/distrib/docs/symbols/JXG.Util.html +2 -18
- package/distrib/docs/symbols/JXG.VMLRenderer.html +2 -18
- package/distrib/docs/symbols/JXG.View3D.html +4 -19
- package/distrib/docs/symbols/JXG.XML.html +2 -18
- package/distrib/docs/symbols/JXG.html +2 -18
- package/distrib/docs/symbols/Label.html +2 -18
- package/distrib/docs/symbols/Legend.html +2 -18
- package/distrib/docs/symbols/Line.html +2 -18
- package/distrib/docs/symbols/Line3D.html +2 -18
- package/distrib/docs/symbols/MajorArc.html +2 -18
- package/distrib/docs/symbols/MajorSector.html +2 -18
- package/distrib/docs/symbols/Measurement.html +2 -18
- package/distrib/docs/symbols/Mesh3D.html +2 -18
- package/distrib/docs/symbols/Metapostspline.html +2 -18
- package/distrib/docs/symbols/Midpoint.html +2 -18
- package/distrib/docs/symbols/MinorArc.html +2 -18
- package/distrib/docs/symbols/MinorSector.html +2 -18
- package/distrib/docs/symbols/Mirrorpoint.html +2 -18
- package/distrib/docs/symbols/NonReflexAngle.html +2 -18
- package/distrib/docs/symbols/Normal.html +2 -18
- package/distrib/docs/symbols/Orthogonalprojection.html +2 -18
- package/distrib/docs/symbols/OtherIntersection.html +2 -18
- package/distrib/docs/symbols/Parabola.html +2 -18
- package/distrib/docs/symbols/Parallel.html +2 -18
- package/distrib/docs/symbols/Parallelogram.html +2 -18
- package/distrib/docs/symbols/Parallelpoint.html +2 -18
- package/distrib/docs/symbols/ParametricSurface3D.html +2 -18
- package/distrib/docs/symbols/Perpendicular.html +2 -18
- package/distrib/docs/symbols/PerpendicularPoint.html +2 -18
- package/distrib/docs/symbols/PerpendicularSegment.html +2 -18
- package/distrib/docs/symbols/Point.html +2 -18
- package/distrib/docs/symbols/Point3D.html +2 -18
- package/distrib/docs/symbols/PolarLine.html +2 -18
- package/distrib/docs/symbols/PolePoint.html +2 -18
- package/distrib/docs/symbols/Polygon.html +2 -18
- package/distrib/docs/symbols/PolygonalChain.html +2 -18
- package/distrib/docs/symbols/RadicalAxis.html +2 -18
- package/distrib/docs/symbols/Reflection.html +2 -18
- package/distrib/docs/symbols/ReflexAngle.html +2 -18
- package/distrib/docs/symbols/RegularPolygon.html +2 -18
- package/distrib/docs/symbols/Riemannsum.html +2 -18
- package/distrib/docs/symbols/Sector.html +2 -18
- package/distrib/docs/symbols/Segment.html +2 -18
- package/distrib/docs/symbols/Semicircle.html +2 -18
- package/distrib/docs/symbols/Slider.html +2 -18
- package/distrib/docs/symbols/Slopefield.html +2 -18
- package/distrib/docs/symbols/Slopetriangle.html +2 -18
- package/distrib/docs/symbols/Smartlabel.html +2 -18
- package/distrib/docs/symbols/Sphere3D.html +2 -18
- package/distrib/docs/symbols/Spline.html +2 -18
- package/distrib/docs/symbols/Stepfunction.html +2 -18
- package/distrib/docs/symbols/Tangent.html +2 -18
- package/distrib/docs/symbols/TangentTo.html +2 -18
- package/distrib/docs/symbols/Tapemeasure.html +2 -18
- package/distrib/docs/symbols/Text.html +12 -26
- package/distrib/docs/symbols/Text3D.html +2 -18
- package/distrib/docs/symbols/Ticks.html +2 -18
- package/distrib/docs/symbols/Ticks3D.html +2 -18
- package/distrib/docs/symbols/Tracecurve.html +2 -18
- package/distrib/docs/symbols/Transformation.html +2 -18
- package/distrib/docs/symbols/Turtle.html +2 -18
- package/distrib/docs/symbols/Vectorfield.html +2 -18
- package/distrib/docs/symbols/Vectorfield3D.html +53 -18
- package/distrib/docs/symbols/View3D.html +2 -18
- package/distrib/docs/symbols/_global_.html +2 -18
- package/distrib/docs/symbols/mirrorelement.html +2 -18
- package/distrib/docs/symbols/src/src_3d_box3d.js.html +261 -259
- package/distrib/docs/symbols/src/src_3d_curve3d.js.html +205 -156
- package/distrib/docs/symbols/src/src_3d_linspace3d.js.html +337 -327
- package/distrib/docs/symbols/src/src_3d_point3d.js.html +204 -187
- package/distrib/docs/symbols/src/src_3d_text3d.js.html +189 -177
- package/distrib/docs/symbols/src/src_3d_view3d.js.html +1246 -1236
- package/distrib/docs/symbols/src/src_base_board.js.html +2058 -2057
- package/distrib/docs/symbols/src/src_base_constants.js.html +1 -1
- package/distrib/docs/symbols/src/src_base_coordselement.js.html +383 -274
- package/distrib/docs/symbols/src/src_element_sector.js.html +1 -1
- package/distrib/docs/symbols/src/src_math_geometry.js.html +609 -604
- package/distrib/docs/symbols/src/src_math_statistics.js.html +418 -411
- package/distrib/docs/symbols/src/src_options.js.html +504 -502
- package/distrib/docs/symbols/src/src_options3d.js.html +952 -944
- package/distrib/docs.zip +0 -0
- package/distrib/geogebra.min.js +1 -1
- package/distrib/geonext.min.js +1 -1
- package/distrib/intergeo.min.js +1 -1
- package/distrib/jsxgraph.zip +0 -0
- package/distrib/jsxgraphcore.js +2 -2
- package/distrib/jsxgraphcore.mjs +2 -2
- package/distrib/jsxgraphcore.mjs.map +1 -1
- package/distrib/jsxgraphsrc.js +15405 -16038
- package/distrib/jsxgraphsrc.mjs +15405 -16038
- package/distrib/jsxgraphsrc.mjs.map +1 -1
- package/distrib/sketch.min.js +1 -1
- package/package.json +1 -1
- package/src/3d/box3d.js +2 -0
- package/src/3d/curve3d.js +53 -4
- package/src/3d/linspace3d.js +17 -7
- package/src/3d/point3d.js +20 -3
- package/src/3d/text3d.js +20 -8
- package/src/3d/view3d.js +17 -7
- package/src/base/board.js +1 -0
- package/src/base/constants.js +1 -1
- package/src/base/coordselement.js +119 -10
- package/src/element/sector.js +1 -1
- package/src/index.js +0 -3
- package/src/math/geometry.js +27 -22
- package/src/math/statistics.js +29 -22
- package/src/options.js +8 -6
- package/src/options3d.js +10 -2
- package/src/{server → unused/server}/JXGServer.py +4 -9
- package/src/{server → unused/server}/JXGServerModule.py +2 -2
- package/src/{server → unused/server}/README.md +25 -14
- package/src/{server → unused/server}/RStats.py +1 -1
- package/src/{server → unused/server}/YahooFinance.py +4 -4
- package/src/{server → unused/server}/fft.py +6 -6
- package/src/{server → unused/server}/geoloci.py +17 -17
- package/src/{server → unused/server}/jxggroebner.py +22 -22
- package/src/index2.js +0 -105
- /package/src/{element → unused}/locus.js +0 -0
- /package/src/{server → unused/server}/JXG.py +0 -0
- /package/src/{server → unused/server}/jxgtestplugin.py +0 -0
- /package/src/{server → unused/server}/server.js +0 -0
- /package/src/{math → unused}/symbolic.js +0 -0
|
@@ -1167,1270 +1167,1280 @@
|
|
|
1167
1167
|
<span class='line'>1160</span> * Limit 3D coordinates to the bounding cube.
|
|
1168
1168
|
<span class='line'>1161</span> *
|
|
1169
1169
|
<span class='line'>1162</span> * @param {Array} c3d 3D coordinates [x,y,z]
|
|
1170
|
-
<span class='line'>1163</span> * @returns Array
|
|
1171
|
-
<span class='line'>1164</span>
|
|
1172
|
-
<span class='line'>1165</span>
|
|
1173
|
-
<span class='line'>1166</span> </span><span class="WHIT">
|
|
1174
|
-
<span class='line'>1167</span> </span><span class="WHIT"> </span><span class="KEYW">
|
|
1175
|
-
<span class='line'>1168</span> </span><span class="WHIT"> </span><span class="NAME">
|
|
1176
|
-
<span class='line'>1169</span>
|
|
1177
|
-
<span class='line'>1170</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">c3d</span><span class="PUNC">[</span><span class="NUMB">1</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC"
|
|
1178
|
-
<span class='line'>1171</span> </span><span class="WHIT"> </span><span class="NAME">c3d</span><span class="PUNC">[</span><span class="NUMB">1</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">cube</span><span class="PUNC">[</span><span class="NUMB">0</span><span class="PUNC">]</span><span class="PUNC">[</span><span class="NUMB">
|
|
1179
|
-
<span class='line'>1172</span> </span><span class="WHIT">
|
|
1180
|
-
<span class='line'>1173</span> </span><span class="WHIT"> </span><span class="
|
|
1181
|
-
<span class='line'>1174</span> </span><span class="WHIT">
|
|
1182
|
-
<span class='line'>1175</span> </span><span class="WHIT">
|
|
1183
|
-
<span class='line'>1176</span> </span><span class="WHIT">
|
|
1184
|
-
<span class='line'>1177</span> </span><span class="WHIT">
|
|
1185
|
-
<span class='line'>1178</span> </span><span class="WHIT"> </span><span class="PUNC">
|
|
1186
|
-
<span class='line'>1179</span> </span><span class="WHIT">
|
|
1187
|
-
<span class='line'>1180</span> </span><span class="WHIT"> </span><span class="NAME">
|
|
1170
|
+
<span class='line'>1163</span> * @returns Array [Array, Boolean] containing [coords, corrected]. coords contains the updated 3D coordinates,
|
|
1171
|
+
<span class='line'>1164</span> * correct is true if the coords have been changed.
|
|
1172
|
+
<span class='line'>1165</span> */</span><span class="WHIT">
|
|
1173
|
+
<span class='line'>1166</span> </span><span class="WHIT"> </span><span class="NAME">project3DToCube</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">c3d</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
|
1174
|
+
<span class='line'>1167</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">cube</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.bbox3D</span><span class="PUNC">,</span><span class="WHIT">
|
|
1175
|
+
<span class='line'>1168</span> </span><span class="WHIT"> </span><span class="NAME">isOut</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">;</span><span class="WHIT">
|
|
1176
|
+
<span class='line'>1169</span>
|
|
1177
|
+
<span class='line'>1170</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">c3d</span><span class="PUNC">[</span><span class="NUMB">1</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC"><</span><span class="WHIT"> </span><span class="NAME">cube</span><span class="PUNC">[</span><span class="NUMB">0</span><span class="PUNC">]</span><span class="PUNC">[</span><span class="NUMB">0</span><span class="PUNC">]</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
|
1178
|
+
<span class='line'>1171</span> </span><span class="WHIT"> </span><span class="NAME">c3d</span><span class="PUNC">[</span><span class="NUMB">1</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">cube</span><span class="PUNC">[</span><span class="NUMB">0</span><span class="PUNC">]</span><span class="PUNC">[</span><span class="NUMB">0</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
|
1179
|
+
<span class='line'>1172</span> </span><span class="WHIT"> </span><span class="NAME">isOut</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">;</span><span class="WHIT">
|
|
1180
|
+
<span class='line'>1173</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
|
1181
|
+
<span class='line'>1174</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">c3d</span><span class="PUNC">[</span><span class="NUMB">1</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">></span><span class="WHIT"> </span><span class="NAME">cube</span><span class="PUNC">[</span><span class="NUMB">0</span><span class="PUNC">]</span><span class="PUNC">[</span><span class="NUMB">1</span><span class="PUNC">]</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
|
1182
|
+
<span class='line'>1175</span> </span><span class="WHIT"> </span><span class="NAME">c3d</span><span class="PUNC">[</span><span class="NUMB">1</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">cube</span><span class="PUNC">[</span><span class="NUMB">0</span><span class="PUNC">]</span><span class="PUNC">[</span><span class="NUMB">1</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
|
1183
|
+
<span class='line'>1176</span> </span><span class="WHIT"> </span><span class="NAME">isOut</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">;</span><span class="WHIT">
|
|
1184
|
+
<span class='line'>1177</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
|
1185
|
+
<span class='line'>1178</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">c3d</span><span class="PUNC">[</span><span class="NUMB">2</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC"><</span><span class="WHIT"> </span><span class="NAME">cube</span><span class="PUNC">[</span><span class="NUMB">1</span><span class="PUNC">]</span><span class="PUNC">[</span><span class="NUMB">0</span><span class="PUNC">]</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
|
1186
|
+
<span class='line'>1179</span> </span><span class="WHIT"> </span><span class="NAME">c3d</span><span class="PUNC">[</span><span class="NUMB">2</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">cube</span><span class="PUNC">[</span><span class="NUMB">1</span><span class="PUNC">]</span><span class="PUNC">[</span><span class="NUMB">0</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
|
1187
|
+
<span class='line'>1180</span> </span><span class="WHIT"> </span><span class="NAME">isOut</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">;</span><span class="WHIT">
|
|
1188
1188
|
<span class='line'>1181</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
|
1189
|
-
<span class='line'>1182</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">c3d</span><span class="PUNC">[</span><span class="NUMB">
|
|
1190
|
-
<span class='line'>1183</span> </span><span class="WHIT"> </span><span class="NAME">c3d</span><span class="PUNC">[</span><span class="NUMB">
|
|
1191
|
-
<span class='line'>1184</span> </span><span class="WHIT">
|
|
1192
|
-
<span class='line'>1185</span>
|
|
1193
|
-
<span class='line'>1186</span> </span><span class="WHIT"> </span><span class="KEYW">
|
|
1194
|
-
<span class='line'>1187</span> </span><span class="WHIT">
|
|
1195
|
-
<span class='line'>1188</span>
|
|
1196
|
-
<span class='line'>1189</span> </span><span class="WHIT">
|
|
1197
|
-
<span class='line'>1190</span>
|
|
1198
|
-
<span class='line'>1191</span>
|
|
1199
|
-
<span class='line'>1192</span>
|
|
1200
|
-
<span class='line'>1193</span>
|
|
1201
|
-
<span class='line'>1194</span>
|
|
1202
|
-
<span class='line'>1195</span>
|
|
1203
|
-
<span class='line'>1196</span> </span><span class="WHIT"> </span><span class="
|
|
1204
|
-
<span class='line'>1197</span>
|
|
1205
|
-
<span class='line'>1198</span>
|
|
1206
|
-
<span class='line'>1199</span>
|
|
1207
|
-
<span class='line'>1200</span>
|
|
1208
|
-
<span class='line'>1201</span>
|
|
1209
|
-
<span class='line'>1202</span>
|
|
1210
|
-
<span class='line'>1203</span>
|
|
1211
|
-
<span class='line'>1204</span>
|
|
1212
|
-
<span class='line'>1205</span> </span><span class="WHIT">
|
|
1213
|
-
<span class='line'>1206</span> </span><span class="WHIT">
|
|
1214
|
-
<span class='line'>1207</span>
|
|
1215
|
-
<span class='line'>1208</span> </span><span class="WHIT">
|
|
1216
|
-
<span class='line'>1209</span> </span><span class="WHIT">
|
|
1217
|
-
<span class='line'>1210</span> </span><span class="WHIT">
|
|
1218
|
-
<span class='line'>1211</span> </span><span class="WHIT">
|
|
1219
|
-
<span class='line'>1212</span> </span><span class="WHIT">
|
|
1220
|
-
<span class='line'>1213</span>
|
|
1221
|
-
<span class='line'>1214</span> </span><span class="WHIT">
|
|
1222
|
-
<span class='line'>1215</span>
|
|
1223
|
-
<span class='line'>1216</span>
|
|
1224
|
-
<span class='line'>1217</span>
|
|
1225
|
-
<span class='line'>1218</span>
|
|
1226
|
-
<span class='line'>1219</span> </span><span class="WHIT">
|
|
1227
|
-
<span class='line'>1220</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="
|
|
1228
|
-
<span class='line'>1221</span> </span><span class="WHIT">
|
|
1229
|
-
<span class='line'>1222</span>
|
|
1230
|
-
<span class='line'>1223</span> </span><span class="WHIT">
|
|
1231
|
-
<span class='line'>1224</span>
|
|
1232
|
-
<span class='line'>1225</span>
|
|
1233
|
-
<span class='line'>1226</span>
|
|
1234
|
-
<span class='line'>1227</span>
|
|
1235
|
-
<span class='line'>1228</span> </span><span class="WHIT"> </span><span class="PUNC">
|
|
1236
|
-
<span class='line'>1229</span>
|
|
1237
|
-
<span class='line'>1230</span> </span><span class="WHIT">
|
|
1238
|
-
<span class='line'>1231</span>
|
|
1239
|
-
<span class='line'>1232</span>
|
|
1240
|
-
<span class='line'>1233</span>
|
|
1241
|
-
<span class='line'>1234</span>
|
|
1242
|
-
<span class='line'>1235</span>
|
|
1243
|
-
<span class='line'>1236</span>
|
|
1244
|
-
<span class='line'>1237</span>
|
|
1245
|
-
<span class='line'>1238</span>
|
|
1246
|
-
<span class='line'>1239</span> </span><span class="WHIT">
|
|
1247
|
-
<span class='line'>1240</span>
|
|
1248
|
-
<span class='line'>1241</span>
|
|
1249
|
-
<span class='line'>1242</span>
|
|
1250
|
-
<span class='line'>1243</span>
|
|
1251
|
-
<span class='line'>1244</span>
|
|
1252
|
-
<span class='line'>1245</span>
|
|
1253
|
-
<span class='line'>1246</span>
|
|
1254
|
-
<span class='line'>1247</span> </span><span class="WHIT">
|
|
1255
|
-
<span class='line'>1248</span> </span><span class="WHIT">
|
|
1256
|
-
<span class='line'>1249</span> </span><span class="WHIT"> </span><span class="NAME">
|
|
1257
|
-
<span class='line'>1250</span> </span><span class="WHIT"> </span><span class="NAME">
|
|
1258
|
-
<span class='line'>1251</span> </span><span class="WHIT"> </span><span class="NAME">
|
|
1259
|
-
<span class='line'>1252</span> </span><span class="WHIT"> </span><span class="NAME">
|
|
1260
|
-
<span class='line'>1253</span>
|
|
1261
|
-
<span class='line'>1254</span> </span><span class="WHIT"> </span><span class="PUNC">
|
|
1262
|
-
<span class='line'>1255</span>
|
|
1263
|
-
<span class='line'>1256</span> </span><span class="WHIT">
|
|
1264
|
-
<span class='line'>1257</span> </span><span class="WHIT"> </span><span class="NAME">plane1.
|
|
1265
|
-
<span class='line'>1258</span> </span><span class="WHIT"> </span><span class="NAME">
|
|
1266
|
-
<span class='line'>1259</span> </span><span class="WHIT"> </span><span class="NAME">plane2.
|
|
1267
|
-
<span class='line'>1260</span> </span><span class="WHIT">
|
|
1268
|
-
<span class='line'>1261</span> </span><span class="WHIT">
|
|
1269
|
-
<span class='line'>1262</span> </span><span class="WHIT">
|
|
1270
|
-
<span class='line'>1263</span> </span><span class="WHIT"> </span><span class="
|
|
1271
|
-
<span class='line'>1264</span> </span><span class="WHIT">
|
|
1272
|
-
<span class='line'>1265</span> </span><span class="WHIT">
|
|
1273
|
-
<span class='line'>1266</span> </span><span class="WHIT">
|
|
1274
|
-
<span class='line'>1267</span> </span><span class="WHIT">
|
|
1275
|
-
<span class='line'>1268</span> </span><span class="WHIT">
|
|
1276
|
-
<span class='line'>1269</span> </span><span class="WHIT">
|
|
1277
|
-
<span class='line'>1270</span> </span><span class="WHIT"> </span><span class="PUNC">
|
|
1278
|
-
<span class='line'>1271</span> </span><span class="WHIT"> </span><span class="
|
|
1279
|
-
<span class='line'>1272</span> </span><span class="WHIT">
|
|
1280
|
-
<span class='line'>1273</span>
|
|
1281
|
-
<span class='line'>1274</span> </span><span class="WHIT">
|
|
1282
|
-
<span class='line'>1275</span>
|
|
1283
|
-
<span class='line'>1276</span>
|
|
1284
|
-
<span class='line'>1277</span>
|
|
1285
|
-
<span class='line'>1278</span>
|
|
1286
|
-
<span class='line'>1279</span>
|
|
1287
|
-
<span class='line'>1280</span>
|
|
1288
|
-
<span class='line'>1281</span>
|
|
1289
|
-
<span class='line'>1282</span>
|
|
1290
|
-
<span class='line'>1283</span>
|
|
1291
|
-
<span class='line'>1284</span> *
|
|
1292
|
-
<span class='line'>1285</span> *
|
|
1293
|
-
<span class='line'>1286</span> *
|
|
1294
|
-
<span class='line'>1287</span> *
|
|
1295
|
-
<span class='line'>1288</span> *
|
|
1296
|
-
<span class='line'>1289</span> *
|
|
1297
|
-
<span class='line'>1290</span> *
|
|
1189
|
+
<span class='line'>1182</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">c3d</span><span class="PUNC">[</span><span class="NUMB">2</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">></span><span class="WHIT"> </span><span class="NAME">cube</span><span class="PUNC">[</span><span class="NUMB">1</span><span class="PUNC">]</span><span class="PUNC">[</span><span class="NUMB">1</span><span class="PUNC">]</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
|
1190
|
+
<span class='line'>1183</span> </span><span class="WHIT"> </span><span class="NAME">c3d</span><span class="PUNC">[</span><span class="NUMB">2</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">cube</span><span class="PUNC">[</span><span class="NUMB">1</span><span class="PUNC">]</span><span class="PUNC">[</span><span class="NUMB">1</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
|
1191
|
+
<span class='line'>1184</span> </span><span class="WHIT"> </span><span class="NAME">isOut</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">;</span><span class="WHIT">
|
|
1192
|
+
<span class='line'>1185</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
|
1193
|
+
<span class='line'>1186</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">c3d</span><span class="PUNC">[</span><span class="NUMB">3</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC"><=</span><span class="WHIT"> </span><span class="NAME">cube</span><span class="PUNC">[</span><span class="NUMB">2</span><span class="PUNC">]</span><span class="PUNC">[</span><span class="NUMB">0</span><span class="PUNC">]</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
|
1194
|
+
<span class='line'>1187</span> </span><span class="WHIT"> </span><span class="NAME">c3d</span><span class="PUNC">[</span><span class="NUMB">3</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">cube</span><span class="PUNC">[</span><span class="NUMB">2</span><span class="PUNC">]</span><span class="PUNC">[</span><span class="NUMB">0</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
|
1195
|
+
<span class='line'>1188</span> </span><span class="WHIT"> </span><span class="NAME">isOut</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">;</span><span class="WHIT">
|
|
1196
|
+
<span class='line'>1189</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
|
1197
|
+
<span class='line'>1190</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">c3d</span><span class="PUNC">[</span><span class="NUMB">3</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">>=</span><span class="WHIT"> </span><span class="NAME">cube</span><span class="PUNC">[</span><span class="NUMB">2</span><span class="PUNC">]</span><span class="PUNC">[</span><span class="NUMB">1</span><span class="PUNC">]</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
|
1198
|
+
<span class='line'>1191</span> </span><span class="WHIT"> </span><span class="NAME">c3d</span><span class="PUNC">[</span><span class="NUMB">3</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">cube</span><span class="PUNC">[</span><span class="NUMB">2</span><span class="PUNC">]</span><span class="PUNC">[</span><span class="NUMB">1</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
|
1199
|
+
<span class='line'>1192</span> </span><span class="WHIT"> </span><span class="NAME">isOut</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">;</span><span class="WHIT">
|
|
1200
|
+
<span class='line'>1193</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
|
1201
|
+
<span class='line'>1194</span>
|
|
1202
|
+
<span class='line'>1195</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="PUNC">[</span><span class="NAME">c3d</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">isOut</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
|
1203
|
+
<span class='line'>1196</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
|
1204
|
+
<span class='line'>1197</span>
|
|
1205
|
+
<span class='line'>1198</span> </span><span class="WHIT"> </span><span class="COMM">/**
|
|
1206
|
+
<span class='line'>1199</span> * Intersect a ray with the bounding cube of the 3D view.
|
|
1207
|
+
<span class='line'>1200</span> * @param {Array} p 3D coordinates [x,y,z]
|
|
1208
|
+
<span class='line'>1201</span> * @param {Array} d 3D direction vector of the line (array of length 3)
|
|
1209
|
+
<span class='line'>1202</span> * @param {Number} r direction of the ray (positive if r > 0, negative if r < 0).
|
|
1210
|
+
<span class='line'>1203</span> * @returns Affine ratio of the intersection of the line with the cube.
|
|
1211
|
+
<span class='line'>1204</span> */</span><span class="WHIT">
|
|
1212
|
+
<span class='line'>1205</span> </span><span class="WHIT"> </span><span class="NAME">intersectionLineCube</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">p</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">d</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">r</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
|
1213
|
+
<span class='line'>1206</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">r_n</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">i</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">r0</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">r1</span><span class="PUNC">;</span><span class="WHIT">
|
|
1214
|
+
<span class='line'>1207</span>
|
|
1215
|
+
<span class='line'>1208</span> </span><span class="WHIT"> </span><span class="NAME">r_n</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">r</span><span class="PUNC">;</span><span class="WHIT">
|
|
1216
|
+
<span class='line'>1209</span> </span><span class="WHIT"> </span><span class="KEYW">for</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC"><</span><span class="WHIT"> </span><span class="NUMB">3</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="PUNC">++</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
|
1217
|
+
<span class='line'>1210</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">d</span><span class="PUNC">[</span><span class="NAME">i</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">!==</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
|
1218
|
+
<span class='line'>1211</span> </span><span class="WHIT"> </span><span class="NAME">r0</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">this.bbox3D</span><span class="PUNC">[</span><span class="NAME">i</span><span class="PUNC">]</span><span class="PUNC">[</span><span class="NUMB">0</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">-</span><span class="WHIT"> </span><span class="NAME">p</span><span class="PUNC">[</span><span class="NAME">i</span><span class="PUNC">]</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">/</span><span class="WHIT"> </span><span class="NAME">d</span><span class="PUNC">[</span><span class="NAME">i</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
|
1219
|
+
<span class='line'>1212</span> </span><span class="WHIT"> </span><span class="NAME">r1</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">this.bbox3D</span><span class="PUNC">[</span><span class="NAME">i</span><span class="PUNC">]</span><span class="PUNC">[</span><span class="NUMB">1</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">-</span><span class="WHIT"> </span><span class="NAME">p</span><span class="PUNC">[</span><span class="NAME">i</span><span class="PUNC">]</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">/</span><span class="WHIT"> </span><span class="NAME">d</span><span class="PUNC">[</span><span class="NAME">i</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
|
1220
|
+
<span class='line'>1213</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">r</span><span class="WHIT"> </span><span class="PUNC"><</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
|
1221
|
+
<span class='line'>1214</span> </span><span class="WHIT"> </span><span class="NAME">r_n</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">Math.max</span><span class="PUNC">(</span><span class="NAME">r_n</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">Math.min</span><span class="PUNC">(</span><span class="NAME">r0</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">r1</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
1222
|
+
<span class='line'>1215</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
|
1223
|
+
<span class='line'>1216</span> </span><span class="WHIT"> </span><span class="NAME">r_n</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">Math.min</span><span class="PUNC">(</span><span class="NAME">r_n</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">Math.max</span><span class="PUNC">(</span><span class="NAME">r0</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">r1</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
1224
|
+
<span class='line'>1217</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
|
1225
|
+
<span class='line'>1218</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
|
1226
|
+
<span class='line'>1219</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
|
1227
|
+
<span class='line'>1220</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">r_n</span><span class="PUNC">;</span><span class="WHIT">
|
|
1228
|
+
<span class='line'>1221</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
|
1229
|
+
<span class='line'>1222</span>
|
|
1230
|
+
<span class='line'>1223</span> </span><span class="WHIT"> </span><span class="COMM">/**
|
|
1231
|
+
<span class='line'>1224</span> * Test if coordinates are inside of the bounding cube.
|
|
1232
|
+
<span class='line'>1225</span> * @param {array} q 3D coordinates [x,y,z] of a point.
|
|
1233
|
+
<span class='line'>1226</span> * @returns Boolean
|
|
1234
|
+
<span class='line'>1227</span> */</span><span class="WHIT">
|
|
1235
|
+
<span class='line'>1228</span> </span><span class="WHIT"> </span><span class="NAME">isInCube</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">q</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
|
1236
|
+
<span class='line'>1229</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="WHIT">
|
|
1237
|
+
<span class='line'>1230</span> </span><span class="WHIT"> </span><span class="NAME">q</span><span class="PUNC">[</span><span class="NUMB">0</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">></span><span class="WHIT"> </span><span class="NAME">this.bbox3D</span><span class="PUNC">[</span><span class="NUMB">0</span><span class="PUNC">]</span><span class="PUNC">[</span><span class="NUMB">0</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">-</span><span class="WHIT"> </span><span class="NAME">Mat.eps</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT">
|
|
1238
|
+
<span class='line'>1231</span> </span><span class="WHIT"> </span><span class="NAME">q</span><span class="PUNC">[</span><span class="NUMB">0</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC"><</span><span class="WHIT"> </span><span class="NAME">this.bbox3D</span><span class="PUNC">[</span><span class="NUMB">0</span><span class="PUNC">]</span><span class="PUNC">[</span><span class="NUMB">1</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">Mat.eps</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT">
|
|
1239
|
+
<span class='line'>1232</span> </span><span class="WHIT"> </span><span class="NAME">q</span><span class="PUNC">[</span><span class="NUMB">1</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">></span><span class="WHIT"> </span><span class="NAME">this.bbox3D</span><span class="PUNC">[</span><span class="NUMB">1</span><span class="PUNC">]</span><span class="PUNC">[</span><span class="NUMB">0</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">-</span><span class="WHIT"> </span><span class="NAME">Mat.eps</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT">
|
|
1240
|
+
<span class='line'>1233</span> </span><span class="WHIT"> </span><span class="NAME">q</span><span class="PUNC">[</span><span class="NUMB">1</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC"><</span><span class="WHIT"> </span><span class="NAME">this.bbox3D</span><span class="PUNC">[</span><span class="NUMB">1</span><span class="PUNC">]</span><span class="PUNC">[</span><span class="NUMB">1</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">Mat.eps</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT">
|
|
1241
|
+
<span class='line'>1234</span> </span><span class="WHIT"> </span><span class="NAME">q</span><span class="PUNC">[</span><span class="NUMB">2</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">></span><span class="WHIT"> </span><span class="NAME">this.bbox3D</span><span class="PUNC">[</span><span class="NUMB">2</span><span class="PUNC">]</span><span class="PUNC">[</span><span class="NUMB">0</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">-</span><span class="WHIT"> </span><span class="NAME">Mat.eps</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT">
|
|
1242
|
+
<span class='line'>1235</span> </span><span class="WHIT"> </span><span class="NAME">q</span><span class="PUNC">[</span><span class="NUMB">2</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC"><</span><span class="WHIT"> </span><span class="NAME">this.bbox3D</span><span class="PUNC">[</span><span class="NUMB">2</span><span class="PUNC">]</span><span class="PUNC">[</span><span class="NUMB">1</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">Mat.eps</span><span class="WHIT">
|
|
1243
|
+
<span class='line'>1236</span> </span><span class="WHIT"> </span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
1244
|
+
<span class='line'>1237</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
|
1245
|
+
<span class='line'>1238</span>
|
|
1246
|
+
<span class='line'>1239</span> </span><span class="WHIT"> </span><span class="COMM">/**
|
|
1247
|
+
<span class='line'>1240</span> *
|
|
1248
|
+
<span class='line'>1241</span> * @param {JXG.Plane3D} plane1
|
|
1249
|
+
<span class='line'>1242</span> * @param {JXG.Plane3D} plane2
|
|
1250
|
+
<span class='line'>1243</span> * @param {JXG.Plane3D} d
|
|
1251
|
+
<span class='line'>1244</span> * @returns {Array} of length 2 containing the coordinates of the defining points of
|
|
1252
|
+
<span class='line'>1245</span> * of the intersection segment.
|
|
1253
|
+
<span class='line'>1246</span> */</span><span class="WHIT">
|
|
1254
|
+
<span class='line'>1247</span> </span><span class="WHIT"> </span><span class="NAME">intersectionPlanePlane</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">plane1</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">plane2</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">d</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
|
1255
|
+
<span class='line'>1248</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">ret</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">[</span><span class="PUNC">[</span><span class="PUNC">]</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="PUNC">[</span><span class="PUNC">]</span><span class="PUNC">]</span><span class="PUNC">,</span><span class="WHIT">
|
|
1256
|
+
<span class='line'>1249</span> </span><span class="WHIT"> </span><span class="NAME">p</span><span class="PUNC">,</span><span class="WHIT">
|
|
1257
|
+
<span class='line'>1250</span> </span><span class="WHIT"> </span><span class="NAME">dir</span><span class="PUNC">,</span><span class="WHIT">
|
|
1258
|
+
<span class='line'>1251</span> </span><span class="WHIT"> </span><span class="NAME">r</span><span class="PUNC">,</span><span class="WHIT">
|
|
1259
|
+
<span class='line'>1252</span> </span><span class="WHIT"> </span><span class="NAME">q</span><span class="PUNC">;</span><span class="WHIT">
|
|
1260
|
+
<span class='line'>1253</span>
|
|
1261
|
+
<span class='line'>1254</span> </span><span class="WHIT"> </span><span class="NAME">d</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">d</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="NAME">plane2.d</span><span class="PUNC">;</span><span class="WHIT">
|
|
1262
|
+
<span class='line'>1255</span>
|
|
1263
|
+
<span class='line'>1256</span> </span><span class="WHIT"> </span><span class="NAME">p</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">Mat.Geometry.meet3Planes</span><span class="PUNC">(</span><span class="WHIT">
|
|
1264
|
+
<span class='line'>1257</span> </span><span class="WHIT"> </span><span class="NAME">plane1.normal</span><span class="PUNC">,</span><span class="WHIT">
|
|
1265
|
+
<span class='line'>1258</span> </span><span class="WHIT"> </span><span class="NAME">plane1.d</span><span class="PUNC">,</span><span class="WHIT">
|
|
1266
|
+
<span class='line'>1259</span> </span><span class="WHIT"> </span><span class="NAME">plane2.normal</span><span class="PUNC">,</span><span class="WHIT">
|
|
1267
|
+
<span class='line'>1260</span> </span><span class="WHIT"> </span><span class="NAME">d</span><span class="PUNC">,</span><span class="WHIT">
|
|
1268
|
+
<span class='line'>1261</span> </span><span class="WHIT"> </span><span class="NAME">Mat.crossProduct</span><span class="PUNC">(</span><span class="NAME">plane1.normal</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">plane2.normal</span><span class="PUNC">)</span><span class="PUNC">,</span><span class="WHIT">
|
|
1269
|
+
<span class='line'>1262</span> </span><span class="WHIT"> </span><span class="NUMB">0</span><span class="WHIT">
|
|
1270
|
+
<span class='line'>1263</span> </span><span class="WHIT"> </span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
1271
|
+
<span class='line'>1264</span> </span><span class="WHIT"> </span><span class="NAME">dir</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">Mat.Geometry.meetPlanePlane</span><span class="PUNC">(</span><span class="WHIT">
|
|
1272
|
+
<span class='line'>1265</span> </span><span class="WHIT"> </span><span class="NAME">plane1.vec1</span><span class="PUNC">,</span><span class="WHIT">
|
|
1273
|
+
<span class='line'>1266</span> </span><span class="WHIT"> </span><span class="NAME">plane1.vec2</span><span class="PUNC">,</span><span class="WHIT">
|
|
1274
|
+
<span class='line'>1267</span> </span><span class="WHIT"> </span><span class="NAME">plane2.vec1</span><span class="PUNC">,</span><span class="WHIT">
|
|
1275
|
+
<span class='line'>1268</span> </span><span class="WHIT"> </span><span class="NAME">plane2.vec2</span><span class="WHIT">
|
|
1276
|
+
<span class='line'>1269</span> </span><span class="WHIT"> </span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
1277
|
+
<span class='line'>1270</span> </span><span class="WHIT"> </span><span class="NAME">r</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.intersectionLineCube</span><span class="PUNC">(</span><span class="NAME">p</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">dir</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">Infinity</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
1278
|
+
<span class='line'>1271</span> </span><span class="WHIT"> </span><span class="NAME">q</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">Mat.axpy</span><span class="PUNC">(</span><span class="NAME">r</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">dir</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">p</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
1279
|
+
<span class='line'>1272</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">this.isInCube</span><span class="PUNC">(</span><span class="NAME">q</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
|
1280
|
+
<span class='line'>1273</span> </span><span class="WHIT"> </span><span class="NAME">ret</span><span class="PUNC">[</span><span class="NUMB">0</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">q</span><span class="PUNC">;</span><span class="WHIT">
|
|
1281
|
+
<span class='line'>1274</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
|
1282
|
+
<span class='line'>1275</span> </span><span class="WHIT"> </span><span class="NAME">r</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.intersectionLineCube</span><span class="PUNC">(</span><span class="NAME">p</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">dir</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="PUNC">-</span><span class="NAME">Infinity</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
1283
|
+
<span class='line'>1276</span> </span><span class="WHIT"> </span><span class="NAME">q</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">Mat.axpy</span><span class="PUNC">(</span><span class="NAME">r</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">dir</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">p</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
1284
|
+
<span class='line'>1277</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">this.isInCube</span><span class="PUNC">(</span><span class="NAME">q</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
|
1285
|
+
<span class='line'>1278</span> </span><span class="WHIT"> </span><span class="NAME">ret</span><span class="PUNC">[</span><span class="NUMB">1</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">q</span><span class="PUNC">;</span><span class="WHIT">
|
|
1286
|
+
<span class='line'>1279</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
|
1287
|
+
<span class='line'>1280</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">ret</span><span class="PUNC">;</span><span class="WHIT">
|
|
1288
|
+
<span class='line'>1281</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
|
1289
|
+
<span class='line'>1282</span>
|
|
1290
|
+
<span class='line'>1283</span> </span><span class="WHIT"> </span><span class="COMM">/**
|
|
1291
|
+
<span class='line'>1284</span> * Generate mesh for a surface / plane.
|
|
1292
|
+
<span class='line'>1285</span> * Returns array [dataX, dataY] for a JSXGraph curve's updateDataArray function.
|
|
1293
|
+
<span class='line'>1286</span> * @param {Array|Function} func
|
|
1294
|
+
<span class='line'>1287</span> * @param {Array} interval_u
|
|
1295
|
+
<span class='line'>1288</span> * @param {Array} interval_v
|
|
1296
|
+
<span class='line'>1289</span> * @returns Array
|
|
1297
|
+
<span class='line'>1290</span> * @private
|
|
1298
1298
|
<span class='line'>1291</span> *
|
|
1299
|
-
<span class='line'>1292</span> *
|
|
1300
|
-
<span class='line'>1293</span> *
|
|
1301
|
-
<span class='line'>1294</span> *
|
|
1302
|
-
<span class='line'>1295</span> *
|
|
1303
|
-
<span class='line'>1296</span> *
|
|
1304
|
-
<span class='line'>1297</span> *
|
|
1305
|
-
<span class='line'>1298</span> *
|
|
1306
|
-
<span class='line'>1299</span> *
|
|
1299
|
+
<span class='line'>1292</span> * @example
|
|
1300
|
+
<span class='line'>1293</span> * var el = view.create('curve', [[], []]);
|
|
1301
|
+
<span class='line'>1294</span> * el.updateDataArray = function () {
|
|
1302
|
+
<span class='line'>1295</span> * var steps_u = Type.evaluate(this.visProp.stepsu),
|
|
1303
|
+
<span class='line'>1296</span> * steps_v = Type.evaluate(this.visProp.stepsv),
|
|
1304
|
+
<span class='line'>1297</span> * r_u = Type.evaluate(this.range_u),
|
|
1305
|
+
<span class='line'>1298</span> * r_v = Type.evaluate(this.range_v),
|
|
1306
|
+
<span class='line'>1299</span> * func, ret;
|
|
1307
1307
|
<span class='line'>1300</span> *
|
|
1308
|
-
<span class='line'>1301</span> * this.
|
|
1309
|
-
<span class='line'>1302</span> *
|
|
1310
|
-
<span class='line'>1303</span> *
|
|
1311
|
-
<span class='line'>1304</span> *
|
|
1312
|
-
<span class='line'>1305</span>
|
|
1313
|
-
<span class='line'>1306</span>
|
|
1314
|
-
<span class='line'>1307</span>
|
|
1315
|
-
<span class='line'>1308</span>
|
|
1316
|
-
<span class='line'>1309</span>
|
|
1317
|
-
<span class='line'>1310</span>
|
|
1318
|
-
<span class='line'>1311</span>
|
|
1319
|
-
<span class='line'>1312</span>
|
|
1320
|
-
<span class='line'>1313</span>
|
|
1321
|
-
<span class='line'>1314</span>
|
|
1322
|
-
<span class='line'>1315</span> </span><span class="WHIT">
|
|
1323
|
-
<span class='line'>1316</span> </span><span class="WHIT"> </span><span class="
|
|
1324
|
-
<span class='line'>1317</span>
|
|
1325
|
-
<span class='line'>1318</span> </span><span class="WHIT">
|
|
1326
|
-
<span class='line'>1319</span> </span><span class="WHIT"> </span><span class="NAME">
|
|
1327
|
-
<span class='line'>1320</span> </span><span class="WHIT"> </span><span class="
|
|
1328
|
-
<span class='line'>1321</span> </span><span class="WHIT">
|
|
1329
|
-
<span class='line'>1322</span> </span><span class="WHIT">
|
|
1330
|
-
<span class='line'>1323</span>
|
|
1331
|
-
<span class='line'>1324</span> </span><span class="WHIT">
|
|
1332
|
-
<span class='line'>1325</span> </span><span class="WHIT">
|
|
1333
|
-
<span class='line'>1326</span>
|
|
1334
|
-
<span class='line'>1327</span> </span><span class="WHIT">
|
|
1335
|
-
<span class='line'>1328</span> </span><span class="WHIT">
|
|
1336
|
-
<span class='line'>1329</span> </span><span class="WHIT">
|
|
1337
|
-
<span class='line'>1330</span> </span><span class="WHIT">
|
|
1338
|
-
<span class='line'>1331</span> </span><span class="WHIT">
|
|
1339
|
-
<span class='line'>1332</span> </span><span class="WHIT">
|
|
1340
|
-
<span class='line'>1333</span> </span><span class="WHIT">
|
|
1341
|
-
<span class='line'>1334</span>
|
|
1342
|
-
<span class='line'>1335</span> </span><span class="WHIT">
|
|
1343
|
-
<span class='line'>1336</span> </span><span class="WHIT">
|
|
1344
|
-
<span class='line'>1337</span> </span><span class="WHIT">
|
|
1345
|
-
<span class='line'>1338</span> </span><span class="WHIT"> </span><span class="NAME">
|
|
1346
|
-
<span class='line'>1339</span> </span><span class="WHIT">
|
|
1347
|
-
<span class='line'>1340</span> </span><span class="WHIT">
|
|
1348
|
-
<span class='line'>1341</span> </span><span class="WHIT">
|
|
1349
|
-
<span class='line'>1342</span> </span><span class="WHIT">
|
|
1350
|
-
<span class='line'>1343</span>
|
|
1351
|
-
<span class='line'>1344</span> </span><span class="WHIT">
|
|
1352
|
-
<span class='line'>1345</span> </span><span class="WHIT">
|
|
1353
|
-
<span class='line'>1346</span> </span><span class="WHIT">
|
|
1354
|
-
<span class='line'>1347</span> </span><span class="WHIT">
|
|
1355
|
-
<span class='line'>1348</span> </span><span class="WHIT">
|
|
1356
|
-
<span class='line'>1349</span> </span><span class="WHIT">
|
|
1357
|
-
<span class='line'>1350</span> </span><span class="WHIT">
|
|
1358
|
-
<span class='line'>1351</span>
|
|
1359
|
-
<span class='line'>1352</span> </span><span class="WHIT">
|
|
1360
|
-
<span class='line'>1353</span> </span><span class="WHIT">
|
|
1361
|
-
<span class='line'>1354</span>
|
|
1362
|
-
<span class='line'>1355</span> </span><span class="WHIT">
|
|
1363
|
-
<span class='line'>1356</span>
|
|
1364
|
-
<span class='line'>1357</span>
|
|
1365
|
-
<span class='line'>1358</span> </span><span class="WHIT">
|
|
1366
|
-
<span class='line'>1359</span> </span><span class="WHIT"> </span><span class="
|
|
1367
|
-
<span class='line'>1360</span>
|
|
1368
|
-
<span class='line'>1361</span> </span><span class="WHIT">
|
|
1369
|
-
<span class='line'>1362</span> </span><span class="WHIT">
|
|
1308
|
+
<span class='line'>1301</span> * if (this.F !== null) {
|
|
1309
|
+
<span class='line'>1302</span> * func = this.F;
|
|
1310
|
+
<span class='line'>1303</span> * } else {
|
|
1311
|
+
<span class='line'>1304</span> * func = [this.X, this.Y, this.Z];
|
|
1312
|
+
<span class='line'>1305</span> * }
|
|
1313
|
+
<span class='line'>1306</span> * ret = this.view.getMesh(func,
|
|
1314
|
+
<span class='line'>1307</span> * r_u.concat([steps_u]),
|
|
1315
|
+
<span class='line'>1308</span> * r_v.concat([steps_v]));
|
|
1316
|
+
<span class='line'>1309</span> *
|
|
1317
|
+
<span class='line'>1310</span> * this.dataX = ret[0];
|
|
1318
|
+
<span class='line'>1311</span> * this.dataY = ret[1];
|
|
1319
|
+
<span class='line'>1312</span> * };
|
|
1320
|
+
<span class='line'>1313</span> *
|
|
1321
|
+
<span class='line'>1314</span> */</span><span class="WHIT">
|
|
1322
|
+
<span class='line'>1315</span> </span><span class="WHIT"> </span><span class="NAME">getMesh</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">func</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">interval_u</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">interval_v</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
|
1323
|
+
<span class='line'>1316</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">i_u</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">i_v</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">u</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">v</span><span class="PUNC">,</span><span class="WHIT">
|
|
1324
|
+
<span class='line'>1317</span> </span><span class="WHIT"> </span><span class="NAME">c2d</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">delta_u</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">delta_v</span><span class="PUNC">,</span><span class="WHIT">
|
|
1325
|
+
<span class='line'>1318</span> </span><span class="WHIT"> </span><span class="NAME">p</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">[</span><span class="NUMB">0</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">]</span><span class="PUNC">,</span><span class="WHIT">
|
|
1326
|
+
<span class='line'>1319</span> </span><span class="WHIT"> </span><span class="NAME">steps_u</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">interval_u</span><span class="PUNC">[</span><span class="NUMB">2</span><span class="PUNC">]</span><span class="PUNC">,</span><span class="WHIT">
|
|
1327
|
+
<span class='line'>1320</span> </span><span class="WHIT"> </span><span class="NAME">steps_v</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">interval_v</span><span class="PUNC">[</span><span class="NUMB">2</span><span class="PUNC">]</span><span class="PUNC">,</span><span class="WHIT">
|
|
1328
|
+
<span class='line'>1321</span> </span><span class="WHIT"> </span><span class="NAME">dataX</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">[</span><span class="PUNC">]</span><span class="PUNC">,</span><span class="WHIT">
|
|
1329
|
+
<span class='line'>1322</span> </span><span class="WHIT"> </span><span class="NAME">dataY</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">[</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
|
1330
|
+
<span class='line'>1323</span>
|
|
1331
|
+
<span class='line'>1324</span> </span><span class="WHIT"> </span><span class="NAME">delta_u</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">Type.evaluate</span><span class="PUNC">(</span><span class="NAME">interval_u</span><span class="PUNC">[</span><span class="NUMB">1</span><span class="PUNC">]</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">-</span><span class="WHIT"> </span><span class="NAME">Type.evaluate</span><span class="PUNC">(</span><span class="NAME">interval_u</span><span class="PUNC">[</span><span class="NUMB">0</span><span class="PUNC">]</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">/</span><span class="WHIT"> </span><span class="NAME">steps_u</span><span class="PUNC">;</span><span class="WHIT">
|
|
1332
|
+
<span class='line'>1325</span> </span><span class="WHIT"> </span><span class="NAME">delta_v</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">Type.evaluate</span><span class="PUNC">(</span><span class="NAME">interval_v</span><span class="PUNC">[</span><span class="NUMB">1</span><span class="PUNC">]</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">-</span><span class="WHIT"> </span><span class="NAME">Type.evaluate</span><span class="PUNC">(</span><span class="NAME">interval_v</span><span class="PUNC">[</span><span class="NUMB">0</span><span class="PUNC">]</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">/</span><span class="WHIT"> </span><span class="NAME">steps_v</span><span class="PUNC">;</span><span class="WHIT">
|
|
1333
|
+
<span class='line'>1326</span>
|
|
1334
|
+
<span class='line'>1327</span> </span><span class="WHIT"> </span><span class="KEYW">for</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">i_u</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i_u</span><span class="WHIT"> </span><span class="PUNC"><=</span><span class="WHIT"> </span><span class="NAME">steps_u</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i_u</span><span class="PUNC">++</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
|
1335
|
+
<span class='line'>1328</span> </span><span class="WHIT"> </span><span class="NAME">u</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">interval_u</span><span class="PUNC">[</span><span class="NUMB">0</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">delta_u</span><span class="WHIT"> </span><span class="PUNC">*</span><span class="WHIT"> </span><span class="NAME">i_u</span><span class="PUNC">;</span><span class="WHIT">
|
|
1336
|
+
<span class='line'>1329</span> </span><span class="WHIT"> </span><span class="KEYW">for</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">i_v</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i_v</span><span class="WHIT"> </span><span class="PUNC"><=</span><span class="WHIT"> </span><span class="NAME">steps_v</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i_v</span><span class="PUNC">++</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
|
1337
|
+
<span class='line'>1330</span> </span><span class="WHIT"> </span><span class="NAME">v</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">interval_v</span><span class="PUNC">[</span><span class="NUMB">0</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">delta_v</span><span class="WHIT"> </span><span class="PUNC">*</span><span class="WHIT"> </span><span class="NAME">i_v</span><span class="PUNC">;</span><span class="WHIT">
|
|
1338
|
+
<span class='line'>1331</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">Type.isFunction</span><span class="PUNC">(</span><span class="NAME">func</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
|
1339
|
+
<span class='line'>1332</span> </span><span class="WHIT"> </span><span class="NAME">p</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">func</span><span class="PUNC">(</span><span class="NAME">u</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">v</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
1340
|
+
<span class='line'>1333</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
|
1341
|
+
<span class='line'>1334</span> </span><span class="WHIT"> </span><span class="NAME">p</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">[</span><span class="NAME">func</span><span class="PUNC">[</span><span class="NUMB">0</span><span class="PUNC">]</span><span class="PUNC">(</span><span class="NAME">u</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">v</span><span class="PUNC">)</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">func</span><span class="PUNC">[</span><span class="NUMB">1</span><span class="PUNC">]</span><span class="PUNC">(</span><span class="NAME">u</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">v</span><span class="PUNC">)</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">func</span><span class="PUNC">[</span><span class="NUMB">2</span><span class="PUNC">]</span><span class="PUNC">(</span><span class="NAME">u</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">v</span><span class="PUNC">)</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
|
1342
|
+
<span class='line'>1335</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
|
1343
|
+
<span class='line'>1336</span> </span><span class="WHIT"> </span><span class="NAME">c2d</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.project3DTo2D</span><span class="PUNC">(</span><span class="NAME">p</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
1344
|
+
<span class='line'>1337</span> </span><span class="WHIT"> </span><span class="NAME">dataX.push</span><span class="PUNC">(</span><span class="NAME">c2d</span><span class="PUNC">[</span><span class="NUMB">1</span><span class="PUNC">]</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
1345
|
+
<span class='line'>1338</span> </span><span class="WHIT"> </span><span class="NAME">dataY.push</span><span class="PUNC">(</span><span class="NAME">c2d</span><span class="PUNC">[</span><span class="NUMB">2</span><span class="PUNC">]</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
1346
|
+
<span class='line'>1339</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
|
1347
|
+
<span class='line'>1340</span> </span><span class="WHIT"> </span><span class="NAME">dataX.push</span><span class="PUNC">(</span><span class="NAME">NaN</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
1348
|
+
<span class='line'>1341</span> </span><span class="WHIT"> </span><span class="NAME">dataY.push</span><span class="PUNC">(</span><span class="NAME">NaN</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
1349
|
+
<span class='line'>1342</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
|
1350
|
+
<span class='line'>1343</span>
|
|
1351
|
+
<span class='line'>1344</span> </span><span class="WHIT"> </span><span class="KEYW">for</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">i_v</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i_v</span><span class="WHIT"> </span><span class="PUNC"><=</span><span class="WHIT"> </span><span class="NAME">steps_v</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i_v</span><span class="PUNC">++</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
|
1352
|
+
<span class='line'>1345</span> </span><span class="WHIT"> </span><span class="NAME">v</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">interval_v</span><span class="PUNC">[</span><span class="NUMB">0</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">delta_v</span><span class="WHIT"> </span><span class="PUNC">*</span><span class="WHIT"> </span><span class="NAME">i_v</span><span class="PUNC">;</span><span class="WHIT">
|
|
1353
|
+
<span class='line'>1346</span> </span><span class="WHIT"> </span><span class="KEYW">for</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">i_u</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i_u</span><span class="WHIT"> </span><span class="PUNC"><=</span><span class="WHIT"> </span><span class="NAME">steps_u</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i_u</span><span class="PUNC">++</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
|
1354
|
+
<span class='line'>1347</span> </span><span class="WHIT"> </span><span class="NAME">u</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">interval_u</span><span class="PUNC">[</span><span class="NUMB">0</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">delta_u</span><span class="WHIT"> </span><span class="PUNC">*</span><span class="WHIT"> </span><span class="NAME">i_u</span><span class="PUNC">;</span><span class="WHIT">
|
|
1355
|
+
<span class='line'>1348</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">Type.isFunction</span><span class="PUNC">(</span><span class="NAME">func</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
|
1356
|
+
<span class='line'>1349</span> </span><span class="WHIT"> </span><span class="NAME">p</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">func</span><span class="PUNC">(</span><span class="NAME">u</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">v</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
1357
|
+
<span class='line'>1350</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
|
1358
|
+
<span class='line'>1351</span> </span><span class="WHIT"> </span><span class="NAME">p</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">[</span><span class="NAME">func</span><span class="PUNC">[</span><span class="NUMB">0</span><span class="PUNC">]</span><span class="PUNC">(</span><span class="NAME">u</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">v</span><span class="PUNC">)</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">func</span><span class="PUNC">[</span><span class="NUMB">1</span><span class="PUNC">]</span><span class="PUNC">(</span><span class="NAME">u</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">v</span><span class="PUNC">)</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">func</span><span class="PUNC">[</span><span class="NUMB">2</span><span class="PUNC">]</span><span class="PUNC">(</span><span class="NAME">u</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">v</span><span class="PUNC">)</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
|
1359
|
+
<span class='line'>1352</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
|
1360
|
+
<span class='line'>1353</span> </span><span class="WHIT"> </span><span class="NAME">c2d</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.project3DTo2D</span><span class="PUNC">(</span><span class="NAME">p</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
1361
|
+
<span class='line'>1354</span> </span><span class="WHIT"> </span><span class="NAME">dataX.push</span><span class="PUNC">(</span><span class="NAME">c2d</span><span class="PUNC">[</span><span class="NUMB">1</span><span class="PUNC">]</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
1362
|
+
<span class='line'>1355</span> </span><span class="WHIT"> </span><span class="NAME">dataY.push</span><span class="PUNC">(</span><span class="NAME">c2d</span><span class="PUNC">[</span><span class="NUMB">2</span><span class="PUNC">]</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
1363
|
+
<span class='line'>1356</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
|
1364
|
+
<span class='line'>1357</span> </span><span class="WHIT"> </span><span class="NAME">dataX.push</span><span class="PUNC">(</span><span class="NAME">NaN</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
1365
|
+
<span class='line'>1358</span> </span><span class="WHIT"> </span><span class="NAME">dataY.push</span><span class="PUNC">(</span><span class="NAME">NaN</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
1366
|
+
<span class='line'>1359</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
|
1367
|
+
<span class='line'>1360</span>
|
|
1368
|
+
<span class='line'>1361</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="PUNC">[</span><span class="NAME">dataX</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">dataY</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
|
1369
|
+
<span class='line'>1362</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
|
1370
1370
|
<span class='line'>1363</span>
|
|
1371
|
-
<span class='line'>1364</span> </span><span class="WHIT">
|
|
1372
|
-
<span class='line'>1365</span>
|
|
1373
|
-
<span class='line'>1366</span>
|
|
1374
|
-
<span class='line'>1367</span> </span><span class="WHIT">
|
|
1375
|
-
<span class='line'>1368</span> </span><span class="WHIT"> </span><span class="NAME">
|
|
1376
|
-
<span class='line'>1369</span>
|
|
1377
|
-
<span class='line'>1370</span> </span><span class="WHIT">
|
|
1378
|
-
<span class='line'>1371</span> </span><span class="WHIT"> </span><span class="NAME">this.
|
|
1379
|
-
<span class='line'>1372</span>
|
|
1380
|
-
<span class='line'>1373</span> </span><span class="WHIT">
|
|
1381
|
-
<span class='line'>1374</span>
|
|
1382
|
-
<span class='line'>1375</span> </span><span class="WHIT">
|
|
1383
|
-
<span class='line'>1376</span>
|
|
1384
|
-
<span class='line'>1377</span>
|
|
1385
|
-
<span class='line'>1378</span>
|
|
1386
|
-
<span class='line'>1379</span> </span><span class="WHIT"> </span><span class="NAME">
|
|
1387
|
-
<span class='line'>1380</span> </span><span class="WHIT">
|
|
1388
|
-
<span class='line'>1381</span> </span><span class="WHIT">
|
|
1389
|
-
<span class='line'>1382</span>
|
|
1390
|
-
<span class='line'>1383</span>
|
|
1391
|
-
<span class='line'>1384</span>
|
|
1392
|
-
<span class='line'>1385</span> *
|
|
1393
|
-
<span class='line'>1386</span>
|
|
1394
|
-
<span class='line'>1387</span>
|
|
1395
|
-
<span class='line'>1388</span>
|
|
1396
|
-
<span class='line'>1389</span>
|
|
1397
|
-
<span class='line'>1390</span> </span><span class="WHIT"> </span><span class="
|
|
1398
|
-
<span class='line'>1391</span>
|
|
1399
|
-
<span class='line'>1392</span> </span><span class="WHIT">
|
|
1400
|
-
<span class='line'>1393</span>
|
|
1401
|
-
<span class='line'>1394</span>
|
|
1402
|
-
<span class='line'>1395</span>
|
|
1403
|
-
<span class='line'>1396</span>
|
|
1404
|
-
<span class='line'>1397</span>
|
|
1405
|
-
<span class='line'>1398</span>
|
|
1406
|
-
<span class='line'>1399</span>
|
|
1407
|
-
<span class='line'>1400</span> </span><span class="WHIT">
|
|
1408
|
-
<span class='line'>1401</span>
|
|
1409
|
-
<span class='line'>1402</span>
|
|
1410
|
-
<span class='line'>1403</span>
|
|
1411
|
-
<span class='line'>1404</span>
|
|
1412
|
-
<span class='line'>1405</span>
|
|
1413
|
-
<span class='line'>1406</span>
|
|
1414
|
-
<span class='line'>1407</span>
|
|
1415
|
-
<span class='line'>1408</span>
|
|
1416
|
-
<span class='line'>1409</span> </span><span class="WHIT"> </span><span class="
|
|
1417
|
-
<span class='line'>1410</span>
|
|
1418
|
-
<span class='line'>1411</span>
|
|
1419
|
-
<span class='line'>1412</span>
|
|
1420
|
-
<span class='line'>1413</span>
|
|
1421
|
-
<span class='line'>1414</span>
|
|
1422
|
-
<span class='line'>1415</span>
|
|
1423
|
-
<span class='line'>1416</span>
|
|
1424
|
-
<span class='line'>1417</span>
|
|
1425
|
-
<span class='line'>1418</span> </span><span class="WHIT"> </span><span class="PUNC">
|
|
1426
|
-
<span class='line'>1419</span>
|
|
1427
|
-
<span class='line'>1420</span>
|
|
1428
|
-
<span class='line'>1421</span>
|
|
1429
|
-
<span class='line'>1422</span>
|
|
1430
|
-
<span class='line'>1423</span>
|
|
1431
|
-
<span class='line'>1424</span>
|
|
1432
|
-
<span class='line'>1425</span>
|
|
1433
|
-
<span class='line'>1426</span>
|
|
1434
|
-
<span class='line'>1427</span> </span><span class="WHIT"> </span><span class="
|
|
1435
|
-
<span class='line'>1428</span>
|
|
1436
|
-
<span class='line'>1429</span> </span><span class="WHIT">
|
|
1437
|
-
<span class='line'>1430</span>
|
|
1438
|
-
<span class='line'>1431</span>
|
|
1439
|
-
<span class='line'>1432</span>
|
|
1440
|
-
<span class='line'>1433</span>
|
|
1441
|
-
<span class='line'>1434</span>
|
|
1442
|
-
<span class='line'>1435</span>
|
|
1443
|
-
<span class='line'>1436</span>
|
|
1444
|
-
<span class='line'>1437</span> </span><span class="WHIT">
|
|
1445
|
-
<span class='line'>1438</span>
|
|
1446
|
-
<span class='line'>1439</span>
|
|
1447
|
-
<span class='line'>1440</span>
|
|
1448
|
-
<span class='line'>1441</span>
|
|
1449
|
-
<span class='line'>1442</span>
|
|
1450
|
-
<span class='line'>1443</span>
|
|
1451
|
-
<span class='line'>1444</span> </span><span class="WHIT"> </span><span class="
|
|
1452
|
-
<span class='line'>1445</span>
|
|
1453
|
-
<span class='line'>1446</span> </span><span class="WHIT">
|
|
1454
|
-
<span class='line'>1447</span>
|
|
1455
|
-
<span class='line'>1448</span>
|
|
1456
|
-
<span class='line'>1449</span>
|
|
1457
|
-
<span class='line'>1450</span>
|
|
1458
|
-
<span class='line'>1451</span>
|
|
1459
|
-
<span class='line'>1452</span>
|
|
1460
|
-
<span class='line'>1453</span>
|
|
1461
|
-
<span class='line'>1454</span> </span><span class="WHIT">
|
|
1462
|
-
<span class='line'>1455</span>
|
|
1463
|
-
<span class='line'>1456</span>
|
|
1464
|
-
<span class='line'>1457</span>
|
|
1465
|
-
<span class='line'>1458</span>
|
|
1466
|
-
<span class='line'>1459</span>
|
|
1467
|
-
<span class='line'>1460</span>
|
|
1468
|
-
<span class='line'>1461</span>
|
|
1469
|
-
<span class='line'>1462</span>
|
|
1470
|
-
<span class='line'>1463</span> </span><span class="WHIT">
|
|
1471
|
-
<span class='line'>1464</span>
|
|
1472
|
-
<span class='line'>1465</span>
|
|
1473
|
-
<span class='line'>1466</span>
|
|
1474
|
-
<span class='line'>1467</span>
|
|
1475
|
-
<span class='line'>1468</span>
|
|
1476
|
-
<span class='line'>1469</span>
|
|
1477
|
-
<span class='line'>1470</span>
|
|
1478
|
-
<span class='line'>1471</span>
|
|
1479
|
-
<span class='line'>1472</span> </span><span class="WHIT"> </span><span class="KEYW">
|
|
1480
|
-
<span class='line'>1473</span>
|
|
1481
|
-
<span class='line'>1474</span>
|
|
1482
|
-
<span class='line'>1475</span> </span><span class="WHIT">
|
|
1483
|
-
<span class='line'>1476</span>
|
|
1484
|
-
<span class='line'>1477</span>
|
|
1485
|
-
<span class='line'>1478</span>
|
|
1486
|
-
<span class='line'>1479</span>
|
|
1487
|
-
<span class='line'>1480</span>
|
|
1488
|
-
<span class='line'>1481</span>
|
|
1489
|
-
<span class='line'>1482</span>
|
|
1490
|
-
<span class='line'>1483</span>
|
|
1491
|
-
<span class='line'>1484</span> </span><span class="WHIT">
|
|
1492
|
-
<span class='line'>1485</span>
|
|
1493
|
-
<span class='line'>1486</span>
|
|
1494
|
-
<span class='line'>1487</span>
|
|
1495
|
-
<span class='line'>1488</span>
|
|
1496
|
-
<span class='line'>1489</span>
|
|
1497
|
-
<span class='line'>1490</span>
|
|
1498
|
-
<span class='line'>1491</span>
|
|
1499
|
-
<span class='line'>1492</span> </span><span class="WHIT">
|
|
1500
|
-
<span class='line'>1493</span> </span><span class="WHIT">
|
|
1501
|
-
<span class='line'>1494</span> </span><span class="WHIT">
|
|
1502
|
-
<span class='line'>1495</span>
|
|
1503
|
-
<span class='line'>1496</span> </span><span class="WHIT">
|
|
1504
|
-
<span class='line'>1497</span> </span><span class="WHIT">
|
|
1505
|
-
<span class='line'>1498</span> </span><span class="WHIT">
|
|
1506
|
-
<span class='line'>1499</span>
|
|
1507
|
-
<span class='line'>1500</span> </span><span class="WHIT">
|
|
1508
|
-
<span class='line'>1501</span> </span><span class="WHIT">
|
|
1509
|
-
<span class='line'>1502</span> </span><span class="WHIT">
|
|
1510
|
-
<span class='line'>1503</span> </span><span class="WHIT">
|
|
1511
|
-
<span class='line'>1504</span>
|
|
1512
|
-
<span class='line'>1505</span>
|
|
1513
|
-
<span class='line'>1506</span> </span><span class="WHIT"> </span><span class="
|
|
1514
|
-
<span class='line'>1507</span> </span><span class="WHIT">
|
|
1515
|
-
<span class='line'>1508</span> </span><span class="WHIT">
|
|
1516
|
-
<span class='line'>1509</span>
|
|
1517
|
-
<span class='line'>1510</span> </span><span class="WHIT">
|
|
1518
|
-
<span class='line'>1511</span> </span><span class="WHIT">
|
|
1519
|
-
<span class='line'>1512</span> </span><span class="WHIT">
|
|
1520
|
-
<span class='line'>1513</span> </span><span class="WHIT">
|
|
1521
|
-
<span class='line'>1514</span>
|
|
1522
|
-
<span class='line'>1515</span> </span><span class="WHIT">
|
|
1523
|
-
<span class='line'>1516</span> </span><span class="WHIT">
|
|
1524
|
-
<span class='line'>1517</span> </span><span class="WHIT">
|
|
1525
|
-
<span class='line'>1518</span>
|
|
1526
|
-
<span class='line'>1519</span> </span><span class="WHIT">
|
|
1527
|
-
<span class='line'>1520</span> </span><span class="WHIT"> </span><span class="
|
|
1528
|
-
<span class='line'>1521</span>
|
|
1529
|
-
<span class='line'>1522</span> </span><span class="WHIT">
|
|
1530
|
-
<span class='line'>1523</span> </span><span class="WHIT"> </span><span class="
|
|
1531
|
-
<span class='line'>1524</span> </span><span class="WHIT">
|
|
1532
|
-
<span class='line'>1525</span>
|
|
1533
|
-
<span class='line'>1526</span> </span><span class="WHIT">
|
|
1534
|
-
<span class='line'>1527</span>
|
|
1535
|
-
<span class='line'>1528</span>
|
|
1536
|
-
<span class='line'>1529</span>
|
|
1537
|
-
<span class='line'>1530</span>
|
|
1538
|
-
<span class='line'>1531</span>
|
|
1539
|
-
<span class='line'>1532</span>
|
|
1540
|
-
<span class='line'>1533</span>
|
|
1541
|
-
<span class='line'>1534</span>
|
|
1542
|
-
<span class='line'>1535</span> </span><span class="WHIT">
|
|
1543
|
-
<span class='line'>1536</span>
|
|
1544
|
-
<span class='line'>1537</span>
|
|
1545
|
-
<span class='line'>1538</span>
|
|
1546
|
-
<span class='line'>1539</span>
|
|
1547
|
-
<span class='line'>1540</span>
|
|
1548
|
-
<span class='line'>1541</span>
|
|
1549
|
-
<span class='line'>1542</span>
|
|
1550
|
-
<span class='line'>1543</span> </span><span class="WHIT">
|
|
1551
|
-
<span class='line'>1544</span> </span><span class="WHIT">
|
|
1552
|
-
<span class='line'>1545</span> </span><span class="WHIT">
|
|
1553
|
-
<span class='line'>1546</span>
|
|
1554
|
-
<span class='line'>1547</span> </span><span class="WHIT">
|
|
1555
|
-
<span class='line'>1548</span> </span><span class="WHIT">
|
|
1556
|
-
<span class='line'>1549</span> </span><span class="WHIT">
|
|
1557
|
-
<span class='line'>1550</span>
|
|
1558
|
-
<span class='line'>1551</span> </span><span class="WHIT">
|
|
1559
|
-
<span class='line'>1552</span> </span><span class="WHIT">
|
|
1560
|
-
<span class='line'>1553</span> </span><span class="WHIT">
|
|
1561
|
-
<span class='line'>1554</span> </span><span class="WHIT">
|
|
1562
|
-
<span class='line'>1555</span>
|
|
1563
|
-
<span class='line'>1556</span>
|
|
1564
|
-
<span class='line'>1557</span> </span><span class="WHIT"> </span><span class="
|
|
1565
|
-
<span class='line'>1558</span> </span><span class="WHIT">
|
|
1566
|
-
<span class='line'>1559</span> </span><span class="WHIT">
|
|
1567
|
-
<span class='line'>1560</span>
|
|
1568
|
-
<span class='line'>1561</span> </span><span class="WHIT">
|
|
1569
|
-
<span class='line'>1562</span> </span><span class="WHIT">
|
|
1570
|
-
<span class='line'>1563</span> </span><span class="WHIT">
|
|
1571
|
-
<span class='line'>1564</span> </span><span class="WHIT">
|
|
1572
|
-
<span class='line'>1565</span>
|
|
1573
|
-
<span class='line'>1566</span> </span><span class="WHIT">
|
|
1574
|
-
<span class='line'>1567</span> </span><span class="WHIT">
|
|
1575
|
-
<span class='line'>1568</span> </span><span class="WHIT">
|
|
1576
|
-
<span class='line'>1569</span>
|
|
1577
|
-
<span class='line'>1570</span> </span><span class="WHIT">
|
|
1578
|
-
<span class='line'>1571</span> </span><span class="WHIT"> </span><span class="
|
|
1579
|
-
<span class='line'>1572</span>
|
|
1580
|
-
<span class='line'>1573</span> </span><span class="WHIT">
|
|
1581
|
-
<span class='line'>1574</span> </span><span class="WHIT"> </span><span class="
|
|
1582
|
-
<span class='line'>1575</span> </span><span class="WHIT">
|
|
1583
|
-
<span class='line'>1576</span>
|
|
1584
|
-
<span class='line'>1577</span> </span><span class="WHIT">
|
|
1585
|
-
<span class='line'>1578</span>
|
|
1586
|
-
<span class='line'>1579</span>
|
|
1587
|
-
<span class='line'>1580</span>
|
|
1588
|
-
<span class='line'>1581</span>
|
|
1589
|
-
<span class='line'>1582</span>
|
|
1590
|
-
<span class='line'>1583</span>
|
|
1591
|
-
<span class='line'>1584</span>
|
|
1592
|
-
<span class='line'>1585</span>
|
|
1593
|
-
<span class='line'>1586</span> </span><span class="WHIT">
|
|
1594
|
-
<span class='line'>1587</span>
|
|
1595
|
-
<span class='line'>1588</span>
|
|
1596
|
-
<span class='line'>1589</span>
|
|
1597
|
-
<span class='line'>1590</span>
|
|
1598
|
-
<span class='line'>1591</span>
|
|
1599
|
-
<span class='line'>1592</span>
|
|
1600
|
-
<span class='line'>1593</span>
|
|
1601
|
-
<span class='line'>1594</span> </span><span class="WHIT">
|
|
1602
|
-
<span class='line'>1595</span> </span><span class="WHIT"> </span><span class="PUNC">
|
|
1603
|
-
<span class='line'>1596</span>
|
|
1604
|
-
<span class='line'>1597</span> </span><span class="WHIT">
|
|
1605
|
-
<span class='line'>1598</span> </span><span class="WHIT">
|
|
1606
|
-
<span class='line'>1599</span> </span><span class="WHIT">
|
|
1607
|
-
<span class='line'>1600</span>
|
|
1608
|
-
<span class='line'>1601</span> </span><span class="WHIT">
|
|
1609
|
-
<span class='line'>1602</span> </span><span class="WHIT">
|
|
1610
|
-
<span class='line'>1603</span> </span><span class="WHIT"> </span><span class="
|
|
1611
|
-
<span class='line'>1604</span> </span><span class="WHIT">
|
|
1612
|
-
<span class='line'>1605</span>
|
|
1613
|
-
<span class='line'>1606</span> </span><span class="WHIT"> </span><span class="
|
|
1614
|
-
<span class='line'>1607</span>
|
|
1615
|
-
<span class='line'>1608</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">Type.evaluate</span><span class="PUNC">(</span><span class="NAME">this.visProp.bank.
|
|
1616
|
-
<span class='line'>1609</span> </span><span class="WHIT"> </span><span class="NAME">
|
|
1617
|
-
<span class='line'>1610</span> </span><span class="WHIT"> </span><span class="NAME">
|
|
1618
|
-
<span class='line'>1611</span>
|
|
1619
|
-
<span class='line'>1612</span> </span><span class="WHIT"> </span><span class="
|
|
1620
|
-
<span class='line'>1613</span> </span><span class="WHIT">
|
|
1621
|
-
<span class='line'>1614</span> </span><span class="WHIT">
|
|
1622
|
-
<span class='line'>1615</span>
|
|
1623
|
-
<span class='line'>1616</span>
|
|
1624
|
-
<span class='line'>1617</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">Type.evaluate</span><span class="PUNC">(</span><span class="NAME">this.visProp.bank.
|
|
1625
|
-
<span class='line'>1618</span> </span><span class="WHIT"> </span><span class="
|
|
1626
|
-
<span class='line'>1619</span> </span><span class="WHIT"> </span><span class="NAME">bank</span><span class="WHIT"> </span><span class="PUNC"
|
|
1627
|
-
<span class='line'>1620</span>
|
|
1628
|
-
<span class='line'>1621</span> </span><span class="WHIT"> </span><span class="COMM">//
|
|
1629
|
-
<span class='line'>1622</span> </span><span class="WHIT"> </span><span class="NAME">
|
|
1371
|
+
<span class='line'>1364</span> </span><span class="WHIT"> </span><span class="COMM">/**
|
|
1372
|
+
<span class='line'>1365</span> *
|
|
1373
|
+
<span class='line'>1366</span> */</span><span class="WHIT">
|
|
1374
|
+
<span class='line'>1367</span> </span><span class="WHIT"> </span><span class="NAME">animateAzimuth</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
|
1375
|
+
<span class='line'>1368</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">s</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.az_slide._smin</span><span class="PUNC">,</span><span class="WHIT">
|
|
1376
|
+
<span class='line'>1369</span> </span><span class="WHIT"> </span><span class="NAME">e</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.az_slide._smax</span><span class="PUNC">,</span><span class="WHIT">
|
|
1377
|
+
<span class='line'>1370</span> </span><span class="WHIT"> </span><span class="NAME">sdiff</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">e</span><span class="WHIT"> </span><span class="PUNC">-</span><span class="WHIT"> </span><span class="NAME">s</span><span class="PUNC">,</span><span class="WHIT">
|
|
1378
|
+
<span class='line'>1371</span> </span><span class="WHIT"> </span><span class="NAME">newVal</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.az_slide.Value</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NUMB">0.1</span><span class="PUNC">;</span><span class="WHIT">
|
|
1379
|
+
<span class='line'>1372</span>
|
|
1380
|
+
<span class='line'>1373</span> </span><span class="WHIT"> </span><span class="NAME">this.az_slide.position</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">newVal</span><span class="WHIT"> </span><span class="PUNC">-</span><span class="WHIT"> </span><span class="NAME">s</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">/</span><span class="WHIT"> </span><span class="NAME">sdiff</span><span class="PUNC">;</span><span class="WHIT">
|
|
1381
|
+
<span class='line'>1374</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">this.az_slide.position</span><span class="WHIT"> </span><span class="PUNC">></span><span class="WHIT"> </span><span class="NUMB">1</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
|
1382
|
+
<span class='line'>1375</span> </span><span class="WHIT"> </span><span class="NAME">this.az_slide.position</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NUMB">0.0</span><span class="PUNC">;</span><span class="WHIT">
|
|
1383
|
+
<span class='line'>1376</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
|
1384
|
+
<span class='line'>1377</span> </span><span class="WHIT"> </span><span class="NAME">this.board.update</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
1385
|
+
<span class='line'>1378</span>
|
|
1386
|
+
<span class='line'>1379</span> </span><span class="WHIT"> </span><span class="NAME">this.timeoutAzimuth</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">setTimeout</span><span class="PUNC">(</span><span class="KEYW">function</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
|
1387
|
+
<span class='line'>1380</span> </span><span class="WHIT"> </span><span class="NAME">this.animateAzimuth</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
1388
|
+
<span class='line'>1381</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">.</span><span class="NAME">bind</span><span class="PUNC">(</span><span class="KEYW">this</span><span class="PUNC">)</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NUMB">200</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
1389
|
+
<span class='line'>1382</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
|
1390
|
+
<span class='line'>1383</span>
|
|
1391
|
+
<span class='line'>1384</span> </span><span class="WHIT"> </span><span class="COMM">/**
|
|
1392
|
+
<span class='line'>1385</span> *
|
|
1393
|
+
<span class='line'>1386</span> */</span><span class="WHIT">
|
|
1394
|
+
<span class='line'>1387</span> </span><span class="WHIT"> </span><span class="NAME">stopAzimuth</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
|
1395
|
+
<span class='line'>1388</span> </span><span class="WHIT"> </span><span class="NAME">clearTimeout</span><span class="PUNC">(</span><span class="NAME">this.timeoutAzimuth</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
1396
|
+
<span class='line'>1389</span> </span><span class="WHIT"> </span><span class="NAME">this.timeoutAzimuth</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">null</span><span class="PUNC">;</span><span class="WHIT">
|
|
1397
|
+
<span class='line'>1390</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
|
1398
|
+
<span class='line'>1391</span>
|
|
1399
|
+
<span class='line'>1392</span> </span><span class="WHIT"> </span><span class="COMM">/**
|
|
1400
|
+
<span class='line'>1393</span> * Check if vertical dragging is enabled and which action is needed.
|
|
1401
|
+
<span class='line'>1394</span> * Default is shiftKey.
|
|
1402
|
+
<span class='line'>1395</span> *
|
|
1403
|
+
<span class='line'>1396</span> * @returns Boolean
|
|
1404
|
+
<span class='line'>1397</span> * @private
|
|
1405
|
+
<span class='line'>1398</span> */</span><span class="WHIT">
|
|
1406
|
+
<span class='line'>1399</span> </span><span class="WHIT"> </span><span class="NAME">isVerticalDrag</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
|
1407
|
+
<span class='line'>1400</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">b</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.board</span><span class="PUNC">,</span><span class="WHIT">
|
|
1408
|
+
<span class='line'>1401</span> </span><span class="WHIT"> </span><span class="NAME">key</span><span class="PUNC">;</span><span class="WHIT">
|
|
1409
|
+
<span class='line'>1402</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="PUNC">!</span><span class="NAME">Type.evaluate</span><span class="PUNC">(</span><span class="NAME">this.visProp.verticaldrag.enabled</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
|
1410
|
+
<span class='line'>1403</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">;</span><span class="WHIT">
|
|
1411
|
+
<span class='line'>1404</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
|
1412
|
+
<span class='line'>1405</span> </span><span class="WHIT"> </span><span class="NAME">key</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="STRN">'_'</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">Type.evaluate</span><span class="PUNC">(</span><span class="NAME">this.visProp.verticaldrag.key</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">'Key'</span><span class="PUNC">;</span><span class="WHIT">
|
|
1413
|
+
<span class='line'>1406</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">b</span><span class="PUNC">[</span><span class="NAME">key</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
|
1414
|
+
<span class='line'>1407</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
|
1415
|
+
<span class='line'>1408</span>
|
|
1416
|
+
<span class='line'>1409</span> </span><span class="WHIT"> </span><span class="COMM">/**
|
|
1417
|
+
<span class='line'>1410</span> * Sets camera view to the given values.
|
|
1418
|
+
<span class='line'>1411</span> *
|
|
1419
|
+
<span class='line'>1412</span> * @param {Number} az Value of azimuth.
|
|
1420
|
+
<span class='line'>1413</span> * @param {Number} el Value of elevation.
|
|
1421
|
+
<span class='line'>1414</span> * @param {Number} [r] Value of radius.
|
|
1422
|
+
<span class='line'>1415</span> *
|
|
1423
|
+
<span class='line'>1416</span> * @returns {Object} Reference to the view.
|
|
1424
|
+
<span class='line'>1417</span> */</span><span class="WHIT">
|
|
1425
|
+
<span class='line'>1418</span> </span><span class="WHIT"> </span><span class="NAME">setView</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">az</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">el</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">r</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
|
1426
|
+
<span class='line'>1419</span> </span><span class="WHIT"> </span><span class="NAME">r</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">r</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="NAME">this.r</span><span class="PUNC">;</span><span class="WHIT">
|
|
1427
|
+
<span class='line'>1420</span>
|
|
1428
|
+
<span class='line'>1421</span> </span><span class="WHIT"> </span><span class="NAME">this.az_slide.setValue</span><span class="PUNC">(</span><span class="NAME">az</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
1429
|
+
<span class='line'>1422</span> </span><span class="WHIT"> </span><span class="NAME">this.el_slide.setValue</span><span class="PUNC">(</span><span class="NAME">el</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
1430
|
+
<span class='line'>1423</span> </span><span class="WHIT"> </span><span class="NAME">this.r</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">r</span><span class="PUNC">;</span><span class="WHIT">
|
|
1431
|
+
<span class='line'>1424</span> </span><span class="WHIT"> </span><span class="NAME">this.board.update</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
1432
|
+
<span class='line'>1425</span>
|
|
1433
|
+
<span class='line'>1426</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">this</span><span class="PUNC">;</span><span class="WHIT">
|
|
1434
|
+
<span class='line'>1427</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
|
1435
|
+
<span class='line'>1428</span>
|
|
1436
|
+
<span class='line'>1429</span> </span><span class="WHIT"> </span><span class="COMM">/**
|
|
1437
|
+
<span class='line'>1430</span> * Changes view to the next view stored in the attribute `values`.
|
|
1438
|
+
<span class='line'>1431</span> *
|
|
1439
|
+
<span class='line'>1432</span> * @see View3D#values
|
|
1440
|
+
<span class='line'>1433</span> *
|
|
1441
|
+
<span class='line'>1434</span> * @returns {Object} Reference to the view.
|
|
1442
|
+
<span class='line'>1435</span> */</span><span class="WHIT">
|
|
1443
|
+
<span class='line'>1436</span> </span><span class="WHIT"> </span><span class="NAME">nextView</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
|
1444
|
+
<span class='line'>1437</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">views</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">Type.evaluate</span><span class="PUNC">(</span><span class="NAME">this.visProp.values</span><span class="PUNC">)</span><span class="PUNC">,</span><span class="WHIT">
|
|
1445
|
+
<span class='line'>1438</span> </span><span class="WHIT"> </span><span class="NAME">n</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.visProp._currentview</span><span class="PUNC">;</span><span class="WHIT">
|
|
1446
|
+
<span class='line'>1439</span>
|
|
1447
|
+
<span class='line'>1440</span> </span><span class="WHIT"> </span><span class="NAME">n</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">n</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NUMB">1</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">%</span><span class="WHIT"> </span><span class="NAME">views.length</span><span class="PUNC">;</span><span class="WHIT">
|
|
1448
|
+
<span class='line'>1441</span> </span><span class="WHIT"> </span><span class="NAME">this.setCurrentView</span><span class="PUNC">(</span><span class="NAME">n</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
1449
|
+
<span class='line'>1442</span>
|
|
1450
|
+
<span class='line'>1443</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">this</span><span class="PUNC">;</span><span class="WHIT">
|
|
1451
|
+
<span class='line'>1444</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
|
1452
|
+
<span class='line'>1445</span>
|
|
1453
|
+
<span class='line'>1446</span> </span><span class="WHIT"> </span><span class="COMM">/**
|
|
1454
|
+
<span class='line'>1447</span> * Changes view to the previous view stored in the attribute `values`.
|
|
1455
|
+
<span class='line'>1448</span> *
|
|
1456
|
+
<span class='line'>1449</span> * @see View3D#values
|
|
1457
|
+
<span class='line'>1450</span> *
|
|
1458
|
+
<span class='line'>1451</span> * @returns {Object} Reference to the view.
|
|
1459
|
+
<span class='line'>1452</span> */</span><span class="WHIT">
|
|
1460
|
+
<span class='line'>1453</span> </span><span class="WHIT"> </span><span class="NAME">previousView</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
|
1461
|
+
<span class='line'>1454</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">views</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">Type.evaluate</span><span class="PUNC">(</span><span class="NAME">this.visProp.values</span><span class="PUNC">)</span><span class="PUNC">,</span><span class="WHIT">
|
|
1462
|
+
<span class='line'>1455</span> </span><span class="WHIT"> </span><span class="NAME">n</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.visProp._currentview</span><span class="PUNC">;</span><span class="WHIT">
|
|
1463
|
+
<span class='line'>1456</span>
|
|
1464
|
+
<span class='line'>1457</span> </span><span class="WHIT"> </span><span class="NAME">n</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">n</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">views.length</span><span class="WHIT"> </span><span class="PUNC">-</span><span class="WHIT"> </span><span class="NUMB">1</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">%</span><span class="WHIT"> </span><span class="NAME">views.length</span><span class="PUNC">;</span><span class="WHIT">
|
|
1465
|
+
<span class='line'>1458</span> </span><span class="WHIT"> </span><span class="NAME">this.setCurrentView</span><span class="PUNC">(</span><span class="NAME">n</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
1466
|
+
<span class='line'>1459</span>
|
|
1467
|
+
<span class='line'>1460</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">this</span><span class="PUNC">;</span><span class="WHIT">
|
|
1468
|
+
<span class='line'>1461</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
|
1469
|
+
<span class='line'>1462</span>
|
|
1470
|
+
<span class='line'>1463</span> </span><span class="WHIT"> </span><span class="COMM">/**
|
|
1471
|
+
<span class='line'>1464</span> * Changes view to the determined view stored in the attribute `values`.
|
|
1472
|
+
<span class='line'>1465</span> *
|
|
1473
|
+
<span class='line'>1466</span> * @see View3D#values
|
|
1474
|
+
<span class='line'>1467</span> *
|
|
1475
|
+
<span class='line'>1468</span> * @param {Number} n Index of view in attribute `values`.
|
|
1476
|
+
<span class='line'>1469</span> * @returns {Object} Reference to the view.
|
|
1477
|
+
<span class='line'>1470</span> */</span><span class="WHIT">
|
|
1478
|
+
<span class='line'>1471</span> </span><span class="WHIT"> </span><span class="NAME">setCurrentView</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">n</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
|
1479
|
+
<span class='line'>1472</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">views</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">Type.evaluate</span><span class="PUNC">(</span><span class="NAME">this.visProp.values</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
1480
|
+
<span class='line'>1473</span>
|
|
1481
|
+
<span class='line'>1474</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">n</span><span class="WHIT"> </span><span class="PUNC"><</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="NAME">n</span><span class="WHIT"> </span><span class="PUNC">>=</span><span class="WHIT"> </span><span class="NAME">views.length</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
|
1482
|
+
<span class='line'>1475</span> </span><span class="WHIT"> </span><span class="NAME">n</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="PUNC">(</span><span class="NAME">n</span><span class="WHIT"> </span><span class="PUNC">%</span><span class="WHIT"> </span><span class="NAME">views.length</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">views.length</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">%</span><span class="WHIT"> </span><span class="NAME">views.length</span><span class="PUNC">;</span><span class="WHIT">
|
|
1483
|
+
<span class='line'>1476</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
|
1484
|
+
<span class='line'>1477</span>
|
|
1485
|
+
<span class='line'>1478</span> </span><span class="WHIT"> </span><span class="NAME">this.setView</span><span class="PUNC">(</span><span class="NAME">views</span><span class="PUNC">[</span><span class="NAME">n</span><span class="PUNC">]</span><span class="PUNC">[</span><span class="NUMB">0</span><span class="PUNC">]</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">views</span><span class="PUNC">[</span><span class="NAME">n</span><span class="PUNC">]</span><span class="PUNC">[</span><span class="NUMB">1</span><span class="PUNC">]</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">views</span><span class="PUNC">[</span><span class="NAME">n</span><span class="PUNC">]</span><span class="PUNC">[</span><span class="NUMB">2</span><span class="PUNC">]</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
1486
|
+
<span class='line'>1479</span> </span><span class="WHIT"> </span><span class="NAME">this.visProp._currentview</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">n</span><span class="PUNC">;</span><span class="WHIT">
|
|
1487
|
+
<span class='line'>1480</span>
|
|
1488
|
+
<span class='line'>1481</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">this</span><span class="PUNC">;</span><span class="WHIT">
|
|
1489
|
+
<span class='line'>1482</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
|
1490
|
+
<span class='line'>1483</span>
|
|
1491
|
+
<span class='line'>1484</span> </span><span class="WHIT"> </span><span class="COMM">/**
|
|
1492
|
+
<span class='line'>1485</span> * Controls the navigation in az direction using either the keyboard or a pointer.
|
|
1493
|
+
<span class='line'>1486</span> *
|
|
1494
|
+
<span class='line'>1487</span> * @private
|
|
1495
|
+
<span class='line'>1488</span> *
|
|
1496
|
+
<span class='line'>1489</span> * @param {event} evt either the keydown or the pointer event
|
|
1497
|
+
<span class='line'>1490</span> * @returns view
|
|
1498
|
+
<span class='line'>1491</span> */</span><span class="WHIT">
|
|
1499
|
+
<span class='line'>1492</span> </span><span class="WHIT"> </span><span class="NAME">_azEventHandler</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">evt</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
|
1500
|
+
<span class='line'>1493</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">smax</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.az_slide._smax</span><span class="PUNC">,</span><span class="WHIT">
|
|
1501
|
+
<span class='line'>1494</span> </span><span class="WHIT"> </span><span class="NAME">smin</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.az_slide._smin</span><span class="PUNC">,</span><span class="WHIT">
|
|
1502
|
+
<span class='line'>1495</span> </span><span class="WHIT"> </span><span class="NAME">speed</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">smax</span><span class="WHIT"> </span><span class="PUNC">-</span><span class="WHIT"> </span><span class="NAME">smin</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">/</span><span class="WHIT"> </span><span class="NAME">this.board.canvasWidth</span><span class="WHIT"> </span><span class="PUNC">*</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">Type.evaluate</span><span class="PUNC">(</span><span class="NAME">this.visProp.az.pointer.speed</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">,</span><span class="WHIT">
|
|
1503
|
+
<span class='line'>1496</span> </span><span class="WHIT"> </span><span class="NAME">delta</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">evt.movementX</span><span class="PUNC">,</span><span class="WHIT">
|
|
1504
|
+
<span class='line'>1497</span> </span><span class="WHIT"> </span><span class="NAME">az</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.az_slide.Value</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">,</span><span class="WHIT">
|
|
1505
|
+
<span class='line'>1498</span> </span><span class="WHIT"> </span><span class="NAME">el</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.el_slide.Value</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
1506
|
+
<span class='line'>1499</span>
|
|
1507
|
+
<span class='line'>1500</span> </span><span class="WHIT"> </span><span class="COMM">// Doesn't allow navigation if another moving event is triggered</span><span class="WHIT">
|
|
1508
|
+
<span class='line'>1501</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">this.board.mode</span><span class="WHIT"> </span><span class="PUNC">===</span><span class="WHIT"> </span><span class="NAME">this.board.BOARD_MODE_DRAG</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
|
1509
|
+
<span class='line'>1502</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">this</span><span class="PUNC">;</span><span class="WHIT">
|
|
1510
|
+
<span class='line'>1503</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
|
1511
|
+
<span class='line'>1504</span>
|
|
1512
|
+
<span class='line'>1505</span> </span><span class="WHIT"> </span><span class="COMM">// Calculate new az value if keyboard events are triggered</span><span class="WHIT">
|
|
1513
|
+
<span class='line'>1506</span> </span><span class="WHIT"> </span><span class="COMM">// Plus if right-button, minus if left-button</span><span class="WHIT">
|
|
1514
|
+
<span class='line'>1507</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">Type.evaluate</span><span class="PUNC">(</span><span class="NAME">this.visProp.az.keyboard.enabled</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
|
1515
|
+
<span class='line'>1508</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">evt.key</span><span class="WHIT"> </span><span class="PUNC">===</span><span class="WHIT"> </span><span class="STRN">'ArrowRight'</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
|
1516
|
+
<span class='line'>1509</span> </span><span class="WHIT"> </span><span class="NAME">az</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">az</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">Type.evaluate</span><span class="PUNC">(</span><span class="NAME">this.visProp.az.keyboard.step</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">*</span><span class="WHIT"> </span><span class="NAME">Math.PI</span><span class="WHIT"> </span><span class="PUNC">/</span><span class="WHIT"> </span><span class="NUMB">180</span><span class="PUNC">;</span><span class="WHIT">
|
|
1517
|
+
<span class='line'>1510</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">evt.key</span><span class="WHIT"> </span><span class="PUNC">===</span><span class="WHIT"> </span><span class="STRN">'ArrowLeft'</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
|
1518
|
+
<span class='line'>1511</span> </span><span class="WHIT"> </span><span class="NAME">az</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">az</span><span class="WHIT"> </span><span class="PUNC">-</span><span class="WHIT"> </span><span class="NAME">Type.evaluate</span><span class="PUNC">(</span><span class="NAME">this.visProp.az.keyboard.step</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">*</span><span class="WHIT"> </span><span class="NAME">Math.PI</span><span class="WHIT"> </span><span class="PUNC">/</span><span class="WHIT"> </span><span class="NUMB">180</span><span class="PUNC">;</span><span class="WHIT">
|
|
1519
|
+
<span class='line'>1512</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
|
1520
|
+
<span class='line'>1513</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
|
1521
|
+
<span class='line'>1514</span>
|
|
1522
|
+
<span class='line'>1515</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">Type.evaluate</span><span class="PUNC">(</span><span class="NAME">this.visProp.az.pointer.enabled</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">delta</span><span class="WHIT"> </span><span class="PUNC">!==</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="NAME">evt.key</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="KEYW">null</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
|
1523
|
+
<span class='line'>1516</span> </span><span class="WHIT"> </span><span class="NAME">az</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">delta</span><span class="WHIT"> </span><span class="PUNC">*</span><span class="WHIT"> </span><span class="NAME">speed</span><span class="PUNC">;</span><span class="WHIT">
|
|
1524
|
+
<span class='line'>1517</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
|
1525
|
+
<span class='line'>1518</span>
|
|
1526
|
+
<span class='line'>1519</span> </span><span class="WHIT"> </span><span class="COMM">// Project the calculated az value to a usable value in the interval [smin,smax]</span><span class="WHIT">
|
|
1527
|
+
<span class='line'>1520</span> </span><span class="WHIT"> </span><span class="COMM">// Use modulo if continuous is true</span><span class="WHIT">
|
|
1528
|
+
<span class='line'>1521</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">Type.evaluate</span><span class="PUNC">(</span><span class="NAME">this.visProp.az.continuous</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
|
1529
|
+
<span class='line'>1522</span> </span><span class="WHIT"> </span><span class="NAME">az</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">Mat.wrap</span><span class="PUNC">(</span><span class="NAME">az</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">smin</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">smax</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
1530
|
+
<span class='line'>1523</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
|
1531
|
+
<span class='line'>1524</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">az</span><span class="WHIT"> </span><span class="PUNC">></span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
|
1532
|
+
<span class='line'>1525</span> </span><span class="WHIT"> </span><span class="NAME">az</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">Math.min</span><span class="PUNC">(</span><span class="NAME">smax</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">az</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
1533
|
+
<span class='line'>1526</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">az</span><span class="WHIT"> </span><span class="PUNC"><</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
|
1534
|
+
<span class='line'>1527</span> </span><span class="WHIT"> </span><span class="NAME">az</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">Math.max</span><span class="PUNC">(</span><span class="NAME">smin</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">az</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
1535
|
+
<span class='line'>1528</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
|
1536
|
+
<span class='line'>1529</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
|
1537
|
+
<span class='line'>1530</span>
|
|
1538
|
+
<span class='line'>1531</span> </span><span class="WHIT"> </span><span class="NAME">this.setView</span><span class="PUNC">(</span><span class="NAME">az</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">el</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
1539
|
+
<span class='line'>1532</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">this</span><span class="PUNC">;</span><span class="WHIT">
|
|
1540
|
+
<span class='line'>1533</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
|
1541
|
+
<span class='line'>1534</span>
|
|
1542
|
+
<span class='line'>1535</span> </span><span class="WHIT"> </span><span class="COMM">/**
|
|
1543
|
+
<span class='line'>1536</span> * Controls the navigation in el direction using either the keyboard or a pointer.
|
|
1544
|
+
<span class='line'>1537</span> *
|
|
1545
|
+
<span class='line'>1538</span> * @private
|
|
1546
|
+
<span class='line'>1539</span> *
|
|
1547
|
+
<span class='line'>1540</span> * @param {event} evt either the keydown or the pointer event
|
|
1548
|
+
<span class='line'>1541</span> * @returns view
|
|
1549
|
+
<span class='line'>1542</span> */</span><span class="WHIT">
|
|
1550
|
+
<span class='line'>1543</span> </span><span class="WHIT"> </span><span class="NAME">_elEventHandler</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">evt</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
|
1551
|
+
<span class='line'>1544</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">smax</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.el_slide._smax</span><span class="PUNC">,</span><span class="WHIT">
|
|
1552
|
+
<span class='line'>1545</span> </span><span class="WHIT"> </span><span class="NAME">smin</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.el_slide._smin</span><span class="PUNC">,</span><span class="WHIT">
|
|
1553
|
+
<span class='line'>1546</span> </span><span class="WHIT"> </span><span class="NAME">speed</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">smax</span><span class="WHIT"> </span><span class="PUNC">-</span><span class="WHIT"> </span><span class="NAME">smin</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">/</span><span class="WHIT"> </span><span class="NAME">this.board.canvasHeight</span><span class="WHIT"> </span><span class="PUNC">*</span><span class="WHIT"> </span><span class="NAME">Type.evaluate</span><span class="PUNC">(</span><span class="NAME">this.visProp.el.pointer.speed</span><span class="PUNC">)</span><span class="PUNC">,</span><span class="WHIT">
|
|
1554
|
+
<span class='line'>1547</span> </span><span class="WHIT"> </span><span class="NAME">delta</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">evt.movementY</span><span class="PUNC">,</span><span class="WHIT">
|
|
1555
|
+
<span class='line'>1548</span> </span><span class="WHIT"> </span><span class="NAME">az</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.az_slide.Value</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">,</span><span class="WHIT">
|
|
1556
|
+
<span class='line'>1549</span> </span><span class="WHIT"> </span><span class="NAME">el</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.el_slide.Value</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
1557
|
+
<span class='line'>1550</span>
|
|
1558
|
+
<span class='line'>1551</span> </span><span class="WHIT"> </span><span class="COMM">// Doesn't allow navigation if another moving event is triggered</span><span class="WHIT">
|
|
1559
|
+
<span class='line'>1552</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">this.board.mode</span><span class="WHIT"> </span><span class="PUNC">===</span><span class="WHIT"> </span><span class="NAME">this.board.BOARD_MODE_DRAG</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
|
1560
|
+
<span class='line'>1553</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">this</span><span class="PUNC">;</span><span class="WHIT">
|
|
1561
|
+
<span class='line'>1554</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
|
1562
|
+
<span class='line'>1555</span>
|
|
1563
|
+
<span class='line'>1556</span> </span><span class="WHIT"> </span><span class="COMM">// Calculate new az value if keyboard events are triggered</span><span class="WHIT">
|
|
1564
|
+
<span class='line'>1557</span> </span><span class="WHIT"> </span><span class="COMM">// Plus if down-button, minus if up-button</span><span class="WHIT">
|
|
1565
|
+
<span class='line'>1558</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">Type.evaluate</span><span class="PUNC">(</span><span class="NAME">this.visProp.el.keyboard.enabled</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
|
1566
|
+
<span class='line'>1559</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">evt.key</span><span class="WHIT"> </span><span class="PUNC">===</span><span class="WHIT"> </span><span class="STRN">'ArrowUp'</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
|
1567
|
+
<span class='line'>1560</span> </span><span class="WHIT"> </span><span class="NAME">el</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">el</span><span class="WHIT"> </span><span class="PUNC">-</span><span class="WHIT"> </span><span class="NAME">Type.evaluate</span><span class="PUNC">(</span><span class="NAME">this.visProp.el.keyboard.step</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">*</span><span class="WHIT"> </span><span class="NAME">Math.PI</span><span class="WHIT"> </span><span class="PUNC">/</span><span class="WHIT"> </span><span class="NUMB">180</span><span class="PUNC">;</span><span class="WHIT">
|
|
1568
|
+
<span class='line'>1561</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">evt.key</span><span class="WHIT"> </span><span class="PUNC">===</span><span class="WHIT"> </span><span class="STRN">'ArrowDown'</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
|
1569
|
+
<span class='line'>1562</span> </span><span class="WHIT"> </span><span class="NAME">el</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">el</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">Type.evaluate</span><span class="PUNC">(</span><span class="NAME">this.visProp.el.keyboard.step</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">*</span><span class="WHIT"> </span><span class="NAME">Math.PI</span><span class="WHIT"> </span><span class="PUNC">/</span><span class="WHIT"> </span><span class="NUMB">180</span><span class="PUNC">;</span><span class="WHIT">
|
|
1570
|
+
<span class='line'>1563</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
|
1571
|
+
<span class='line'>1564</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
|
1572
|
+
<span class='line'>1565</span>
|
|
1573
|
+
<span class='line'>1566</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">Type.evaluate</span><span class="PUNC">(</span><span class="NAME">this.visProp.el.pointer.enabled</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">delta</span><span class="WHIT"> </span><span class="PUNC">!==</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="NAME">evt.key</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="KEYW">null</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
|
1574
|
+
<span class='line'>1567</span> </span><span class="WHIT"> </span><span class="NAME">el</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">delta</span><span class="WHIT"> </span><span class="PUNC">*</span><span class="WHIT"> </span><span class="NAME">speed</span><span class="PUNC">;</span><span class="WHIT">
|
|
1575
|
+
<span class='line'>1568</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
|
1576
|
+
<span class='line'>1569</span>
|
|
1577
|
+
<span class='line'>1570</span> </span><span class="WHIT"> </span><span class="COMM">// Project the calculated el value to a usable value in the interval [smin,smax]</span><span class="WHIT">
|
|
1578
|
+
<span class='line'>1571</span> </span><span class="WHIT"> </span><span class="COMM">// Use modulo if continuous is true and the trackball is disabled</span><span class="WHIT">
|
|
1579
|
+
<span class='line'>1572</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">Type.evaluate</span><span class="PUNC">(</span><span class="NAME">this.visProp.el.continuous</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="PUNC">!</span><span class="NAME">this.trackballEnabled</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
|
1580
|
+
<span class='line'>1573</span> </span><span class="WHIT"> </span><span class="NAME">el</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">Mat.wrap</span><span class="PUNC">(</span><span class="NAME">el</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">smin</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">smax</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
1581
|
+
<span class='line'>1574</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
|
1582
|
+
<span class='line'>1575</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">el</span><span class="WHIT"> </span><span class="PUNC">></span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
|
1583
|
+
<span class='line'>1576</span> </span><span class="WHIT"> </span><span class="NAME">el</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">Math.min</span><span class="PUNC">(</span><span class="NAME">smax</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">el</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
1584
|
+
<span class='line'>1577</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">el</span><span class="WHIT"> </span><span class="PUNC"><</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
|
1585
|
+
<span class='line'>1578</span> </span><span class="WHIT"> </span><span class="NAME">el</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">Math.max</span><span class="PUNC">(</span><span class="NAME">smin</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">el</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
1586
|
+
<span class='line'>1579</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
|
1587
|
+
<span class='line'>1580</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
|
1588
|
+
<span class='line'>1581</span>
|
|
1589
|
+
<span class='line'>1582</span> </span><span class="WHIT"> </span><span class="NAME">this.setView</span><span class="PUNC">(</span><span class="NAME">az</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">el</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
1590
|
+
<span class='line'>1583</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">this</span><span class="PUNC">;</span><span class="WHIT">
|
|
1591
|
+
<span class='line'>1584</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
|
1592
|
+
<span class='line'>1585</span>
|
|
1593
|
+
<span class='line'>1586</span> </span><span class="WHIT"> </span><span class="COMM">/**
|
|
1594
|
+
<span class='line'>1587</span> * Controls the navigation in bank direction using either the keyboard or a pointer.
|
|
1595
|
+
<span class='line'>1588</span> *
|
|
1596
|
+
<span class='line'>1589</span> * @private
|
|
1597
|
+
<span class='line'>1590</span> *
|
|
1598
|
+
<span class='line'>1591</span> * @param {event} evt either the keydown or the pointer event
|
|
1599
|
+
<span class='line'>1592</span> * @returns view
|
|
1600
|
+
<span class='line'>1593</span> */</span><span class="WHIT">
|
|
1601
|
+
<span class='line'>1594</span> </span><span class="WHIT"> </span><span class="NAME">_bankEventHandler</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">evt</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
|
1602
|
+
<span class='line'>1595</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">smax</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.bank_slide._smax</span><span class="PUNC">,</span><span class="WHIT">
|
|
1603
|
+
<span class='line'>1596</span> </span><span class="WHIT"> </span><span class="NAME">smin</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.bank_slide._smin</span><span class="PUNC">,</span><span class="WHIT">
|
|
1604
|
+
<span class='line'>1597</span> </span><span class="WHIT"> </span><span class="NAME">step</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">speed</span><span class="PUNC">,</span><span class="WHIT">
|
|
1605
|
+
<span class='line'>1598</span> </span><span class="WHIT"> </span><span class="NAME">delta</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">evt.deltaY</span><span class="PUNC">,</span><span class="WHIT">
|
|
1606
|
+
<span class='line'>1599</span> </span><span class="WHIT"> </span><span class="NAME">bank</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.bank_slide.Value</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
1607
|
+
<span class='line'>1600</span>
|
|
1608
|
+
<span class='line'>1601</span> </span><span class="WHIT"> </span><span class="COMM">// Doesn't allow navigation if another moving event is triggered</span><span class="WHIT">
|
|
1609
|
+
<span class='line'>1602</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">this.board.mode</span><span class="WHIT"> </span><span class="PUNC">===</span><span class="WHIT"> </span><span class="NAME">this.board.BOARD_MODE_DRAG</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
|
1610
|
+
<span class='line'>1603</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">this</span><span class="PUNC">;</span><span class="WHIT">
|
|
1611
|
+
<span class='line'>1604</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
|
1612
|
+
<span class='line'>1605</span>
|
|
1613
|
+
<span class='line'>1606</span> </span><span class="WHIT"> </span><span class="COMM">// Calculate new bank value if keyboard events are triggered</span><span class="WHIT">
|
|
1614
|
+
<span class='line'>1607</span> </span><span class="WHIT"> </span><span class="COMM">// Plus if down-button, minus if up-button</span><span class="WHIT">
|
|
1615
|
+
<span class='line'>1608</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">Type.evaluate</span><span class="PUNC">(</span><span class="NAME">this.visProp.bank.keyboard.enabled</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
|
1616
|
+
<span class='line'>1609</span> </span><span class="WHIT"> </span><span class="NAME">step</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">Type.evaluate</span><span class="PUNC">(</span><span class="NAME">this.visProp.bank.keyboard.step</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">*</span><span class="WHIT"> </span><span class="NAME">Math.PI</span><span class="WHIT"> </span><span class="PUNC">/</span><span class="WHIT"> </span><span class="NUMB">180</span><span class="PUNC">;</span><span class="WHIT">
|
|
1617
|
+
<span class='line'>1610</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">evt.key</span><span class="WHIT"> </span><span class="PUNC">===</span><span class="WHIT"> </span><span class="STRN">'.'</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="NAME">evt.key</span><span class="WHIT"> </span><span class="PUNC">===</span><span class="WHIT"> </span><span class="STRN">'<'</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
|
1618
|
+
<span class='line'>1611</span> </span><span class="WHIT"> </span><span class="NAME">bank</span><span class="WHIT"> </span><span class="PUNC">-</span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">step</span><span class="PUNC">;</span><span class="WHIT">
|
|
1619
|
+
<span class='line'>1612</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">evt.key</span><span class="WHIT"> </span><span class="PUNC">===</span><span class="WHIT"> </span><span class="STRN">','</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="NAME">evt.key</span><span class="WHIT"> </span><span class="PUNC">===</span><span class="WHIT"> </span><span class="STRN">'>'</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
|
1620
|
+
<span class='line'>1613</span> </span><span class="WHIT"> </span><span class="NAME">bank</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">step</span><span class="PUNC">;</span><span class="WHIT">
|
|
1621
|
+
<span class='line'>1614</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
|
1622
|
+
<span class='line'>1615</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
|
1623
|
+
<span class='line'>1616</span>
|
|
1624
|
+
<span class='line'>1617</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">Type.evaluate</span><span class="PUNC">(</span><span class="NAME">this.visProp.bank.pointer.enabled</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">delta</span><span class="WHIT"> </span><span class="PUNC">!==</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="NAME">evt.key</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="KEYW">null</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
|
1625
|
+
<span class='line'>1618</span> </span><span class="WHIT"> </span><span class="NAME">speed</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">smax</span><span class="WHIT"> </span><span class="PUNC">-</span><span class="WHIT"> </span><span class="NAME">smin</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">/</span><span class="WHIT"> </span><span class="NAME">this.board.canvasHeight</span><span class="WHIT"> </span><span class="PUNC">*</span><span class="WHIT"> </span><span class="NAME">Type.evaluate</span><span class="PUNC">(</span><span class="NAME">this.visProp.bank.pointer.speed</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
1626
|
+
<span class='line'>1619</span> </span><span class="WHIT"> </span><span class="NAME">bank</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">delta</span><span class="WHIT"> </span><span class="PUNC">*</span><span class="WHIT"> </span><span class="NAME">speed</span><span class="PUNC">;</span><span class="WHIT">
|
|
1627
|
+
<span class='line'>1620</span>
|
|
1628
|
+
<span class='line'>1621</span> </span><span class="WHIT"> </span><span class="COMM">// prevent the pointer wheel from scrolling the page</span><span class="WHIT">
|
|
1629
|
+
<span class='line'>1622</span> </span><span class="WHIT"> </span><span class="NAME">evt.preventDefault</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
1630
1630
|
<span class='line'>1623</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
|
1631
1631
|
<span class='line'>1624</span>
|
|
1632
|
-
<span class='line'>1625</span> </span><span class="WHIT"> </span><span class="
|
|
1633
|
-
<span class='line'>1626</span> </span><span class="WHIT"> </span><span class="NAME">this.
|
|
1634
|
-
<span class='line'>1627</span> </span><span class="WHIT">
|
|
1635
|
-
<span class='line'>1628</span> </span><span class="WHIT">
|
|
1636
|
-
<span class='line'>1629</span>
|
|
1637
|
-
<span class='line'>1630</span> </span><span class="WHIT">
|
|
1638
|
-
<span class='line'>1631</span>
|
|
1639
|
-
<span class='line'>1632</span>
|
|
1640
|
-
<span class='line'>1633</span>
|
|
1641
|
-
<span class='line'>1634</span>
|
|
1642
|
-
<span class='line'>1635</span>
|
|
1643
|
-
<span class='line'>1636</span>
|
|
1644
|
-
<span class='line'>1637</span>
|
|
1645
|
-
<span class='line'>1638</span>
|
|
1646
|
-
<span class='line'>1639</span> </span><span class="WHIT">
|
|
1647
|
-
<span class='line'>1640</span>
|
|
1648
|
-
<span class='line'>1641</span>
|
|
1649
|
-
<span class='line'>1642</span>
|
|
1650
|
-
<span class='line'>1643</span>
|
|
1651
|
-
<span class='line'>1644</span>
|
|
1652
|
-
<span class='line'>1645</span>
|
|
1653
|
-
<span class='line'>1646</span>
|
|
1654
|
-
<span class='line'>1647</span> </span><span class="WHIT">
|
|
1655
|
-
<span class='line'>1648</span> </span><span class="WHIT">
|
|
1656
|
-
<span class='line'>1649</span> </span><span class="WHIT"> </span><span class="NAME">
|
|
1657
|
-
<span class='line'>1650</span>
|
|
1658
|
-
<span class='line'>1651</span> </span><span class="WHIT"> </span><span class="NAME">this.
|
|
1659
|
-
<span class='line'>1652</span> </span><span class="WHIT"> </span><span class="
|
|
1660
|
-
<span class='line'>1653</span> </span><span class="WHIT">
|
|
1661
|
-
<span class='line'>1654</span>
|
|
1662
|
-
<span class='line'>1655</span> </span><span class="WHIT">
|
|
1663
|
-
<span class='line'>1656</span>
|
|
1664
|
-
<span class='line'>1657</span>
|
|
1665
|
-
<span class='line'>1658</span>
|
|
1666
|
-
<span class='line'>1659</span>
|
|
1667
|
-
<span class='line'>1660</span>
|
|
1668
|
-
<span class='line'>1661</span>
|
|
1669
|
-
<span class='line'>1662</span> </span><span class="WHIT"> </span><span class="
|
|
1670
|
-
<span class='line'>1663</span>
|
|
1671
|
-
<span class='line'>1664</span>
|
|
1672
|
-
<span class='line'>1665</span>
|
|
1673
|
-
<span class='line'>1666</span>
|
|
1674
|
-
<span class='line'>1667</span>
|
|
1675
|
-
<span class='line'>1668</span>
|
|
1676
|
-
<span class='line'>1669</span>
|
|
1677
|
-
<span class='line'>1670</span>
|
|
1678
|
-
<span class='line'>1671</span> </span><span class="WHIT">
|
|
1679
|
-
<span class='line'>1672</span> </span><span class="WHIT"> </span><span class="PUNC">
|
|
1632
|
+
<span class='line'>1625</span> </span><span class="WHIT"> </span><span class="COMM">// Project the calculated bank value to a usable value in the interval [smin,smax]</span><span class="WHIT">
|
|
1633
|
+
<span class='line'>1626</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">Type.evaluate</span><span class="PUNC">(</span><span class="NAME">this.visProp.bank.continuous</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
|
1634
|
+
<span class='line'>1627</span> </span><span class="WHIT"> </span><span class="COMM">// in continuous mode, wrap value around slider range</span><span class="WHIT">
|
|
1635
|
+
<span class='line'>1628</span> </span><span class="WHIT"> </span><span class="NAME">bank</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">Mat.wrap</span><span class="PUNC">(</span><span class="NAME">bank</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">smin</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">smax</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
1636
|
+
<span class='line'>1629</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
|
1637
|
+
<span class='line'>1630</span> </span><span class="WHIT"> </span><span class="COMM">// in non-continuous mode, clamp value to slider range</span><span class="WHIT">
|
|
1638
|
+
<span class='line'>1631</span> </span><span class="WHIT"> </span><span class="NAME">bank</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">Mat.clamp</span><span class="PUNC">(</span><span class="NAME">bank</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">smin</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">smax</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
1639
|
+
<span class='line'>1632</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
|
1640
|
+
<span class='line'>1633</span>
|
|
1641
|
+
<span class='line'>1634</span> </span><span class="WHIT"> </span><span class="NAME">this.bank_slide.setValue</span><span class="PUNC">(</span><span class="NAME">bank</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
1642
|
+
<span class='line'>1635</span> </span><span class="WHIT"> </span><span class="NAME">this.board.update</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
1643
|
+
<span class='line'>1636</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">this</span><span class="PUNC">;</span><span class="WHIT">
|
|
1644
|
+
<span class='line'>1637</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
|
1645
|
+
<span class='line'>1638</span>
|
|
1646
|
+
<span class='line'>1639</span> </span><span class="WHIT"> </span><span class="COMM">/**
|
|
1647
|
+
<span class='line'>1640</span> * Controls the navigation using either virtual trackball.
|
|
1648
|
+
<span class='line'>1641</span> *
|
|
1649
|
+
<span class='line'>1642</span> * @private
|
|
1650
|
+
<span class='line'>1643</span> *
|
|
1651
|
+
<span class='line'>1644</span> * @param {event} evt either the keydown or the pointer event
|
|
1652
|
+
<span class='line'>1645</span> * @returns view
|
|
1653
|
+
<span class='line'>1646</span> */</span><span class="WHIT">
|
|
1654
|
+
<span class='line'>1647</span> </span><span class="WHIT"> </span><span class="NAME">_trackballHandler</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">evt</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
|
1655
|
+
<span class='line'>1648</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">pos</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.board.getMousePosition</span><span class="PUNC">(</span><span class="NAME">evt</span><span class="PUNC">)</span><span class="PUNC">,</span><span class="WHIT">
|
|
1656
|
+
<span class='line'>1649</span> </span><span class="WHIT"> </span><span class="NAME">x</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">y</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">center</span><span class="PUNC">;</span><span class="WHIT">
|
|
1657
|
+
<span class='line'>1650</span>
|
|
1658
|
+
<span class='line'>1651</span> </span><span class="WHIT"> </span><span class="NAME">center</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">new</span><span class="WHIT"> </span><span class="NAME">Coords</span><span class="PUNC">(</span><span class="NAME">Const.COORDS_BY_USER</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="PUNC">[</span><span class="NAME">this.llftCorner</span><span class="PUNC">[</span><span class="NUMB">0</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">this.size</span><span class="PUNC">[</span><span class="NUMB">0</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">*</span><span class="WHIT"> </span><span class="NUMB">0.5</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">this.llftCorner</span><span class="PUNC">[</span><span class="NUMB">1</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">this.size</span><span class="PUNC">[</span><span class="NUMB">1</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">*</span><span class="WHIT"> </span><span class="NUMB">0.5</span><span class="PUNC">]</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">this.board</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
1659
|
+
<span class='line'>1652</span> </span><span class="WHIT"> </span><span class="NAME">x</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">pos</span><span class="PUNC">[</span><span class="NUMB">0</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">-</span><span class="WHIT"> </span><span class="NAME">center.scrCoords</span><span class="PUNC">[</span><span class="NUMB">1</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
|
1660
|
+
<span class='line'>1653</span> </span><span class="WHIT"> </span><span class="NAME">y</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">pos</span><span class="PUNC">[</span><span class="NUMB">1</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">-</span><span class="WHIT"> </span><span class="NAME">center.scrCoords</span><span class="PUNC">[</span><span class="NUMB">2</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
|
1661
|
+
<span class='line'>1654</span> </span><span class="WHIT"> </span><span class="NAME">this._trackball</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
|
1662
|
+
<span class='line'>1655</span> </span><span class="WHIT"> </span><span class="NAME">dx</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">evt.movementX</span><span class="PUNC">,</span><span class="WHIT">
|
|
1663
|
+
<span class='line'>1656</span> </span><span class="WHIT"> </span><span class="NAME">dy</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="PUNC">-</span><span class="NAME">evt.movementY</span><span class="PUNC">,</span><span class="WHIT">
|
|
1664
|
+
<span class='line'>1657</span> </span><span class="WHIT"> </span><span class="NAME">x</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">x</span><span class="PUNC">,</span><span class="WHIT">
|
|
1665
|
+
<span class='line'>1658</span> </span><span class="WHIT"> </span><span class="NAME">y</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="PUNC">-</span><span class="NAME">y</span><span class="WHIT">
|
|
1666
|
+
<span class='line'>1659</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
|
1667
|
+
<span class='line'>1660</span> </span><span class="WHIT"> </span><span class="NAME">this.board.update</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
1668
|
+
<span class='line'>1661</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">this</span><span class="PUNC">;</span><span class="WHIT">
|
|
1669
|
+
<span class='line'>1662</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
|
1670
|
+
<span class='line'>1663</span>
|
|
1671
|
+
<span class='line'>1664</span> </span><span class="WHIT"> </span><span class="COMM">/**
|
|
1672
|
+
<span class='line'>1665</span> * Event handler for pointer down event. Triggers handling of all 3D navigation.
|
|
1673
|
+
<span class='line'>1666</span> *
|
|
1674
|
+
<span class='line'>1667</span> * @private
|
|
1675
|
+
<span class='line'>1668</span> * @param {event} evt
|
|
1676
|
+
<span class='line'>1669</span> * @returns view
|
|
1677
|
+
<span class='line'>1670</span> */</span><span class="WHIT">
|
|
1678
|
+
<span class='line'>1671</span> </span><span class="WHIT"> </span><span class="NAME">pointerDownHandler</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">evt</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
|
1679
|
+
<span class='line'>1672</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">neededButton</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">neededKey</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">target</span><span class="PUNC">;</span><span class="WHIT">
|
|
1680
1680
|
<span class='line'>1673</span>
|
|
1681
|
-
<span class='line'>1674</span> </span><span class="WHIT"> </span><span class="
|
|
1682
|
-
<span class='line'>1675</span> </span><span class="WHIT">
|
|
1683
|
-
<span class='line'>1676</span> </span><span class="WHIT">
|
|
1684
|
-
<span class='line'>1677</span>
|
|
1685
|
-
<span class='line'>1678</span>
|
|
1686
|
-
<span class='line'>1679</span> </span><span class="WHIT">
|
|
1687
|
-
<span class='line'>1680</span> </span><span class="WHIT">
|
|
1688
|
-
<span class='line'>1681</span> </span><span class="WHIT">
|
|
1689
|
-
<span class='line'>1682</span>
|
|
1690
|
-
<span class='line'>1683</span> </span><span class="WHIT">
|
|
1691
|
-
<span class='line'>1684</span> </span><span class="WHIT">
|
|
1692
|
-
<span class='line'>1685</span> </span><span class="WHIT">
|
|
1693
|
-
<span class='line'>1686</span>
|
|
1694
|
-
<span class='line'>1687</span> </span><span class="WHIT"> </span><span class="
|
|
1695
|
-
<span class='line'>1688</span> </span><span class="WHIT">
|
|
1696
|
-
<span class='line'>1689</span> </span><span class="WHIT">
|
|
1697
|
-
<span class='line'>1690</span> </span><span class="WHIT"> </span><span class="NAME">
|
|
1698
|
-
<span class='line'>1691</span> </span><span class="WHIT">
|
|
1699
|
-
<span class='line'>1692</span>
|
|
1700
|
-
<span class='line'>1693</span> </span><span class="WHIT"> </span><span class="
|
|
1701
|
-
<span class='line'>1694</span> </span><span class="WHIT"> </span><span class="
|
|
1702
|
-
<span class='line'>1695</span> </span><span class="WHIT">
|
|
1703
|
-
<span class='line'>1696</span> </span><span class="WHIT">
|
|
1704
|
-
<span class='line'>1697</span> </span><span class="WHIT">
|
|
1705
|
-
<span class='line'>1698</span> </span><span class="WHIT">
|
|
1706
|
-
<span class='line'>1699</span> </span><span class="WHIT">
|
|
1707
|
-
<span class='line'>1700</span> </span><span class="WHIT">
|
|
1708
|
-
<span class='line'>1701</span>
|
|
1709
|
-
<span class='line'>1702</span> </span><span class="WHIT"> </span><span class="
|
|
1710
|
-
<span class='line'>1703</span> </span><span class="WHIT">
|
|
1711
|
-
<span class='line'>1704</span>
|
|
1712
|
-
<span class='line'>1705</span> </span><span class="WHIT">
|
|
1713
|
-
<span class='line'>1706</span> </span><span class="WHIT"> </span><span class="
|
|
1714
|
-
<span class='line'>1707</span> </span><span class="WHIT">
|
|
1715
|
-
<span class='line'>1708</span>
|
|
1716
|
-
<span class='line'>1709</span> </span><span class="WHIT">
|
|
1717
|
-
<span class='line'>1710</span> </span><span class="WHIT">
|
|
1718
|
-
<span class='line'>1711</span> </span><span class="WHIT">
|
|
1719
|
-
<span class='line'>1712</span> </span><span class="WHIT">
|
|
1720
|
-
<span class='line'>1713</span>
|
|
1721
|
-
<span class='line'>1714</span> </span><span class="WHIT">
|
|
1722
|
-
<span class='line'>1715</span> </span><span class="WHIT">
|
|
1723
|
-
<span class='line'>1716</span> </span><span class="WHIT">
|
|
1724
|
-
<span class='line'>1717</span>
|
|
1725
|
-
<span class='line'>1718</span> </span><span class="WHIT"> </span><span class="
|
|
1726
|
-
<span class='line'>1719</span> </span><span class="WHIT">
|
|
1727
|
-
<span class='line'>1720</span>
|
|
1728
|
-
<span class='line'>1721</span> </span><span class="WHIT">
|
|
1729
|
-
<span class='line'>1722</span> </span><span class="WHIT"> </span><span class="
|
|
1730
|
-
<span class='line'>1723</span> </span><span class="WHIT">
|
|
1731
|
-
<span class='line'>1724</span>
|
|
1732
|
-
<span class='line'>1725</span> </span><span class="WHIT">
|
|
1733
|
-
<span class='line'>1726</span> </span><span class="WHIT">
|
|
1734
|
-
<span class='line'>1727</span> </span><span class="WHIT">
|
|
1735
|
-
<span class='line'>1728</span> </span><span class="WHIT">
|
|
1736
|
-
<span class='line'>1729</span>
|
|
1737
|
-
<span class='line'>1730</span> </span><span class="WHIT">
|
|
1738
|
-
<span class='line'>1731</span> </span><span class="WHIT">
|
|
1739
|
-
<span class='line'>1732</span> </span><span class="WHIT">
|
|
1740
|
-
<span class='line'>1733</span>
|
|
1741
|
-
<span class='line'>1734</span> </span><span class="WHIT">
|
|
1742
|
-
<span class='line'>1735</span> </span><span class="WHIT">
|
|
1743
|
-
<span class='line'>1736</span> </span><span class="WHIT"> </span><span class="NAME">
|
|
1744
|
-
<span class='line'>1737</span> </span><span class="WHIT">
|
|
1745
|
-
<span class='line'>1738</span> </span><span class="WHIT">
|
|
1746
|
-
<span class='line'>1739</span> </span><span class="WHIT">
|
|
1747
|
-
<span class='line'>1740</span> </span><span class="WHIT">
|
|
1748
|
-
<span class='line'>1741</span> </span><span class="WHIT">
|
|
1749
|
-
<span class='line'>1742</span>
|
|
1750
|
-
<span class='line'>1743</span> </span><span class="WHIT">
|
|
1751
|
-
<span class='line'>1744</span>
|
|
1752
|
-
<span class='line'>1745</span>
|
|
1753
|
-
<span class='line'>1746</span>
|
|
1754
|
-
<span class='line'>1747</span>
|
|
1755
|
-
<span class='line'>1748</span>
|
|
1756
|
-
<span class='line'>1749</span>
|
|
1757
|
-
<span class='line'>1750</span> </span><span class="WHIT"> </span><span class="
|
|
1758
|
-
<span class='line'>1751</span>
|
|
1759
|
-
<span class='line'>1752</span> </span><span class="WHIT">
|
|
1760
|
-
<span class='line'>1753</span>
|
|
1761
|
-
<span class='line'>1754</span>
|
|
1762
|
-
<span class='line'>1755</span>
|
|
1763
|
-
<span class='line'>1756</span>
|
|
1764
|
-
<span class='line'>1757</span>
|
|
1765
|
-
<span class='line'>1758</span>
|
|
1766
|
-
<span class='line'>1759</span> </span><span class="WHIT">
|
|
1767
|
-
<span class='line'>1760</span> </span><span class="WHIT">
|
|
1768
|
-
<span class='line'>1761</span> </span><span class="WHIT"> </span><span class="PUNC">
|
|
1769
|
-
<span class='line'>1762</span> </span><span class="WHIT">
|
|
1770
|
-
<span class='line'>1763</span> </span><span class="WHIT"> </span><span class="NAME">
|
|
1771
|
-
<span class='line'>1764</span> </span><span class="WHIT"> </span><span class="NAME">
|
|
1772
|
-
<span class='line'>1765</span> </span><span class="WHIT">
|
|
1773
|
-
<span class='line'>1766</span> </span><span class="WHIT"> </span><span class="PUNC">
|
|
1774
|
-
<span class='line'>1767</span> </span><span class="WHIT">
|
|
1775
|
-
<span class='line'>1768</span> </span><span class="WHIT"> </span><span class="NAME">
|
|
1776
|
-
<span class='line'>1769</span> </span><span class="WHIT"> </span><span class="NAME">
|
|
1777
|
-
<span class='line'>1770</span> </span><span class="WHIT">
|
|
1778
|
-
<span class='line'>1771</span> </span><span class="WHIT"> </span><span class="PUNC">
|
|
1779
|
-
<span class='line'>1772</span> </span><span class="WHIT">
|
|
1780
|
-
<span class='line'>1773</span> </span><span class="WHIT">
|
|
1781
|
-
<span class='line'>1774</span> </span><span class="
|
|
1782
|
-
<span class='line'>1775</span>
|
|
1783
|
-
<span class='line'>1776</span> </span><span class="
|
|
1784
|
-
<span class='line'>1777</span>
|
|
1785
|
-
<span class='line'>1778</span>
|
|
1786
|
-
<span class='line'>1779</span>
|
|
1787
|
-
<span class='line'>1780</span>
|
|
1788
|
-
<span class='line'>1781</span>
|
|
1789
|
-
<span class='line'>1782</span>
|
|
1790
|
-
<span class='line'>1783</span>
|
|
1791
|
-
<span class='line'>1784</span>
|
|
1792
|
-
<span class='line'>1785</span>
|
|
1793
|
-
<span class='line'>1786</span> *
|
|
1794
|
-
<span class='line'>1787</span> *
|
|
1795
|
-
<span class='line'>1788</span> * @
|
|
1796
|
-
<span class='line'>1789</span> *
|
|
1797
|
-
<span class='line'>1790</span> *
|
|
1798
|
-
<span class='line'>1791</span> *
|
|
1799
|
-
<span class='line'>1792</span> *
|
|
1800
|
-
<span class='line'>1793</span> *
|
|
1801
|
-
<span class='line'>1794</span> *
|
|
1802
|
-
<span class='line'>1795</span> *
|
|
1803
|
-
<span class='line'>1796</span> *
|
|
1804
|
-
<span class='line'>1797</span> *
|
|
1805
|
-
<span class='line'>1798</span> *
|
|
1806
|
-
<span class='line'>1799</span> *
|
|
1807
|
-
<span class='line'>1800</span> *
|
|
1808
|
-
<span class='line'>1801</span> * @
|
|
1809
|
-
<span class='line'>1802</span> *
|
|
1810
|
-
<span class='line'>1803</span> *
|
|
1811
|
-
<span class='line'>1804</span> *
|
|
1812
|
-
<span class='line'>1805</span> *
|
|
1813
|
-
<span class='line'>1806</span> *
|
|
1814
|
-
<span class='line'>1807</span> *
|
|
1815
|
-
<span class='line'>1808</span> *
|
|
1816
|
-
<span class='line'>1809</span> *
|
|
1817
|
-
<span class='line'>1810</span> *
|
|
1818
|
-
<span class='line'>1811</span> * var
|
|
1819
|
-
<span class='line'>1812</span> *
|
|
1820
|
-
<span class='line'>1813</span> *
|
|
1821
|
-
<span class='line'>1814</span> *
|
|
1822
|
-
<span class='line'>1815</span> *
|
|
1823
|
-
<span class='line'>1816</span> *
|
|
1824
|
-
<span class='line'>1817</span> *
|
|
1825
|
-
<span class='line'>1818</span> *
|
|
1826
|
-
<span class='line'>1819</span> *
|
|
1827
|
-
<span class='line'>1820</span> * (
|
|
1828
|
-
<span class='line'>1821</span> *
|
|
1829
|
-
<span class='line'>1822</span> *
|
|
1830
|
-
<span class='line'>1823</span> *
|
|
1831
|
-
<span class='line'>1824</span> *
|
|
1832
|
-
<span class='line'>1825</span> *
|
|
1833
|
-
<span class='line'>1826</span> *
|
|
1834
|
-
<span class='line'>1827</span> *
|
|
1835
|
-
<span class='line'>1828</span> *
|
|
1836
|
-
<span class='line'>1829</span> *
|
|
1837
|
-
<span class='line'>1830</span> *
|
|
1838
|
-
<span class='line'>1831</span> *
|
|
1839
|
-
<span class='line'>1832</span> * var
|
|
1840
|
-
<span class='line'>1833</span> *
|
|
1841
|
-
<span class='line'>1834</span> *
|
|
1842
|
-
<span class='line'>1835</span> *
|
|
1843
|
-
<span class='line'>1836</span> *
|
|
1844
|
-
<span class='line'>1837</span> *
|
|
1845
|
-
<span class='line'>1838</span> *
|
|
1846
|
-
<span class='line'>1839</span> *
|
|
1681
|
+
<span class='line'>1674</span> </span><span class="WHIT"> </span><span class="NAME">this._hasMoveAz</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">;</span><span class="WHIT">
|
|
1682
|
+
<span class='line'>1675</span> </span><span class="WHIT"> </span><span class="NAME">this._hasMoveEl</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">;</span><span class="WHIT">
|
|
1683
|
+
<span class='line'>1676</span> </span><span class="WHIT"> </span><span class="NAME">this._hasMoveBank</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">;</span><span class="WHIT">
|
|
1684
|
+
<span class='line'>1677</span> </span><span class="WHIT"> </span><span class="NAME">this._hasMoveTrackball</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">;</span><span class="WHIT">
|
|
1685
|
+
<span class='line'>1678</span>
|
|
1686
|
+
<span class='line'>1679</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">this.board.mode</span><span class="WHIT"> </span><span class="PUNC">!==</span><span class="WHIT"> </span><span class="NAME">this.board.BOARD_MODE_NONE</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
|
1687
|
+
<span class='line'>1680</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="PUNC">;</span><span class="WHIT">
|
|
1688
|
+
<span class='line'>1681</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
|
1689
|
+
<span class='line'>1682</span>
|
|
1690
|
+
<span class='line'>1683</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">Type.evaluate</span><span class="PUNC">(</span><span class="NAME">this.visProp.trackball.enabled</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
|
1691
|
+
<span class='line'>1684</span> </span><span class="WHIT"> </span><span class="NAME">neededButton</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">Type.evaluate</span><span class="PUNC">(</span><span class="NAME">this.visProp.trackball.button</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
1692
|
+
<span class='line'>1685</span> </span><span class="WHIT"> </span><span class="NAME">neededKey</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">Type.evaluate</span><span class="PUNC">(</span><span class="NAME">this.visProp.trackball.key</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
1693
|
+
<span class='line'>1686</span>
|
|
1694
|
+
<span class='line'>1687</span> </span><span class="WHIT"> </span><span class="COMM">// Move events for virtual trackball</span><span class="WHIT">
|
|
1695
|
+
<span class='line'>1688</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="WHIT">
|
|
1696
|
+
<span class='line'>1689</span> </span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">neededButton</span><span class="WHIT"> </span><span class="PUNC">===</span><span class="WHIT"> </span><span class="PUNC">-</span><span class="NUMB">1</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="NAME">neededButton</span><span class="WHIT"> </span><span class="PUNC">===</span><span class="WHIT"> </span><span class="NAME">evt.button</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT">
|
|
1697
|
+
<span class='line'>1690</span> </span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">neededKey</span><span class="WHIT"> </span><span class="PUNC">===</span><span class="WHIT"> </span><span class="STRN">'none'</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">neededKey.indexOf</span><span class="PUNC">(</span><span class="STRN">'shift'</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">></span><span class="WHIT"> </span><span class="PUNC">-</span><span class="NUMB">1</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="NAME">evt.shiftKey</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">neededKey.indexOf</span><span class="PUNC">(</span><span class="STRN">'ctrl'</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">></span><span class="WHIT"> </span><span class="PUNC">-</span><span class="NUMB">1</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="NAME">evt.ctrlKey</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT">
|
|
1698
|
+
<span class='line'>1691</span> </span><span class="WHIT"> </span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
|
1699
|
+
<span class='line'>1692</span> </span><span class="WHIT"> </span><span class="COMM">// If outside is true then the event listener is bound to the document, otherwise to the div</span><span class="WHIT">
|
|
1700
|
+
<span class='line'>1693</span> </span><span class="WHIT"> </span><span class="NAME">target</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">Type.evaluate</span><span class="PUNC">(</span><span class="NAME">this.visProp.trackball.outside</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">?</span><span class="WHIT"> </span><span class="NAME">document</span><span class="WHIT"> </span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">this.board.containerObj</span><span class="PUNC">;</span><span class="WHIT">
|
|
1701
|
+
<span class='line'>1694</span> </span><span class="WHIT"> </span><span class="NAME">Env.addEvent</span><span class="PUNC">(</span><span class="NAME">target</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">'pointermove'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">this._trackballHandler</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="KEYW">this</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
1702
|
+
<span class='line'>1695</span> </span><span class="WHIT"> </span><span class="NAME">this._hasMoveTrackball</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">;</span><span class="WHIT">
|
|
1703
|
+
<span class='line'>1696</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
|
1704
|
+
<span class='line'>1697</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
|
1705
|
+
<span class='line'>1698</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">Type.evaluate</span><span class="PUNC">(</span><span class="NAME">this.visProp.az.pointer.enabled</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
|
1706
|
+
<span class='line'>1699</span> </span><span class="WHIT"> </span><span class="NAME">neededButton</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">Type.evaluate</span><span class="PUNC">(</span><span class="NAME">this.visProp.az.pointer.button</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
1707
|
+
<span class='line'>1700</span> </span><span class="WHIT"> </span><span class="NAME">neededKey</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">Type.evaluate</span><span class="PUNC">(</span><span class="NAME">this.visProp.az.pointer.key</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
1708
|
+
<span class='line'>1701</span>
|
|
1709
|
+
<span class='line'>1702</span> </span><span class="WHIT"> </span><span class="COMM">// Move events for azimuth</span><span class="WHIT">
|
|
1710
|
+
<span class='line'>1703</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="WHIT">
|
|
1711
|
+
<span class='line'>1704</span> </span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">neededButton</span><span class="WHIT"> </span><span class="PUNC">===</span><span class="WHIT"> </span><span class="PUNC">-</span><span class="NUMB">1</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="NAME">neededButton</span><span class="WHIT"> </span><span class="PUNC">===</span><span class="WHIT"> </span><span class="NAME">evt.button</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT">
|
|
1712
|
+
<span class='line'>1705</span> </span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">neededKey</span><span class="WHIT"> </span><span class="PUNC">===</span><span class="WHIT"> </span><span class="STRN">'none'</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">neededKey.indexOf</span><span class="PUNC">(</span><span class="STRN">'shift'</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">></span><span class="WHIT"> </span><span class="PUNC">-</span><span class="NUMB">1</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="NAME">evt.shiftKey</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">neededKey.indexOf</span><span class="PUNC">(</span><span class="STRN">'ctrl'</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">></span><span class="WHIT"> </span><span class="PUNC">-</span><span class="NUMB">1</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="NAME">evt.ctrlKey</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT">
|
|
1713
|
+
<span class='line'>1706</span> </span><span class="WHIT"> </span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
|
1714
|
+
<span class='line'>1707</span> </span><span class="WHIT"> </span><span class="COMM">// If outside is true then the event listener is bound to the document, otherwise to the div</span><span class="WHIT">
|
|
1715
|
+
<span class='line'>1708</span> </span><span class="WHIT"> </span><span class="NAME">target</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">Type.evaluate</span><span class="PUNC">(</span><span class="NAME">this.visProp.az.pointer.outside</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">?</span><span class="WHIT"> </span><span class="NAME">document</span><span class="WHIT"> </span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">this.board.containerObj</span><span class="PUNC">;</span><span class="WHIT">
|
|
1716
|
+
<span class='line'>1709</span> </span><span class="WHIT"> </span><span class="NAME">Env.addEvent</span><span class="PUNC">(</span><span class="NAME">target</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">'pointermove'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">this._azEventHandler</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="KEYW">this</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
1717
|
+
<span class='line'>1710</span> </span><span class="WHIT"> </span><span class="NAME">this._hasMoveAz</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">;</span><span class="WHIT">
|
|
1718
|
+
<span class='line'>1711</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
|
1719
|
+
<span class='line'>1712</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
|
1720
|
+
<span class='line'>1713</span>
|
|
1721
|
+
<span class='line'>1714</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">Type.evaluate</span><span class="PUNC">(</span><span class="NAME">this.visProp.el.pointer.enabled</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
|
1722
|
+
<span class='line'>1715</span> </span><span class="WHIT"> </span><span class="NAME">neededButton</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">Type.evaluate</span><span class="PUNC">(</span><span class="NAME">this.visProp.el.pointer.button</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
1723
|
+
<span class='line'>1716</span> </span><span class="WHIT"> </span><span class="NAME">neededKey</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">Type.evaluate</span><span class="PUNC">(</span><span class="NAME">this.visProp.el.pointer.key</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
1724
|
+
<span class='line'>1717</span>
|
|
1725
|
+
<span class='line'>1718</span> </span><span class="WHIT"> </span><span class="COMM">// Events for elevation</span><span class="WHIT">
|
|
1726
|
+
<span class='line'>1719</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="WHIT">
|
|
1727
|
+
<span class='line'>1720</span> </span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">neededButton</span><span class="WHIT"> </span><span class="PUNC">===</span><span class="WHIT"> </span><span class="PUNC">-</span><span class="NUMB">1</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="NAME">neededButton</span><span class="WHIT"> </span><span class="PUNC">===</span><span class="WHIT"> </span><span class="NAME">evt.button</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT">
|
|
1728
|
+
<span class='line'>1721</span> </span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">neededKey</span><span class="WHIT"> </span><span class="PUNC">===</span><span class="WHIT"> </span><span class="STRN">'none'</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">neededKey.indexOf</span><span class="PUNC">(</span><span class="STRN">'shift'</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">></span><span class="WHIT"> </span><span class="PUNC">-</span><span class="NUMB">1</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="NAME">evt.shiftKey</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">neededKey.indexOf</span><span class="PUNC">(</span><span class="STRN">'ctrl'</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">></span><span class="WHIT"> </span><span class="PUNC">-</span><span class="NUMB">1</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="NAME">evt.ctrlKey</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT">
|
|
1729
|
+
<span class='line'>1722</span> </span><span class="WHIT"> </span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
|
1730
|
+
<span class='line'>1723</span> </span><span class="WHIT"> </span><span class="COMM">// If outside is true then the event listener is bound to the document, otherwise to the div</span><span class="WHIT">
|
|
1731
|
+
<span class='line'>1724</span> </span><span class="WHIT"> </span><span class="NAME">target</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">Type.evaluate</span><span class="PUNC">(</span><span class="NAME">this.visProp.el.pointer.outside</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">?</span><span class="WHIT"> </span><span class="NAME">document</span><span class="WHIT"> </span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">this.board.containerObj</span><span class="PUNC">;</span><span class="WHIT">
|
|
1732
|
+
<span class='line'>1725</span> </span><span class="WHIT"> </span><span class="NAME">Env.addEvent</span><span class="PUNC">(</span><span class="NAME">target</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">'pointermove'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">this._elEventHandler</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="KEYW">this</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
1733
|
+
<span class='line'>1726</span> </span><span class="WHIT"> </span><span class="NAME">this._hasMoveEl</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">;</span><span class="WHIT">
|
|
1734
|
+
<span class='line'>1727</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
|
1735
|
+
<span class='line'>1728</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
|
1736
|
+
<span class='line'>1729</span>
|
|
1737
|
+
<span class='line'>1730</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">Type.evaluate</span><span class="PUNC">(</span><span class="NAME">this.visProp.bank.pointer.enabled</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
|
1738
|
+
<span class='line'>1731</span> </span><span class="WHIT"> </span><span class="NAME">neededButton</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">Type.evaluate</span><span class="PUNC">(</span><span class="NAME">this.visProp.bank.pointer.button</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
1739
|
+
<span class='line'>1732</span> </span><span class="WHIT"> </span><span class="NAME">neededKey</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">Type.evaluate</span><span class="PUNC">(</span><span class="NAME">this.visProp.bank.pointer.key</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
1740
|
+
<span class='line'>1733</span>
|
|
1741
|
+
<span class='line'>1734</span> </span><span class="WHIT"> </span><span class="COMM">// Events for bank</span><span class="WHIT">
|
|
1742
|
+
<span class='line'>1735</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="WHIT">
|
|
1743
|
+
<span class='line'>1736</span> </span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">neededButton</span><span class="WHIT"> </span><span class="PUNC">===</span><span class="WHIT"> </span><span class="PUNC">-</span><span class="NUMB">1</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="NAME">neededButton</span><span class="WHIT"> </span><span class="PUNC">===</span><span class="WHIT"> </span><span class="NAME">evt.button</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT">
|
|
1744
|
+
<span class='line'>1737</span> </span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">neededKey</span><span class="WHIT"> </span><span class="PUNC">===</span><span class="WHIT"> </span><span class="STRN">'none'</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">neededKey.indexOf</span><span class="PUNC">(</span><span class="STRN">'shift'</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">></span><span class="WHIT"> </span><span class="PUNC">-</span><span class="NUMB">1</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="NAME">evt.shiftKey</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">neededKey.indexOf</span><span class="PUNC">(</span><span class="STRN">'ctrl'</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">></span><span class="WHIT"> </span><span class="PUNC">-</span><span class="NUMB">1</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="NAME">evt.ctrlKey</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT">
|
|
1745
|
+
<span class='line'>1738</span> </span><span class="WHIT"> </span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
|
1746
|
+
<span class='line'>1739</span> </span><span class="WHIT"> </span><span class="COMM">// If `outside` is true, we bind the event listener to</span><span class="WHIT">
|
|
1747
|
+
<span class='line'>1740</span> </span><span class="WHIT"> </span><span class="COMM">// the document. otherwise, we bind it to the div. we</span><span class="WHIT">
|
|
1748
|
+
<span class='line'>1741</span> </span><span class="WHIT"> </span><span class="COMM">// register the event listener as active so it can</span><span class="WHIT">
|
|
1749
|
+
<span class='line'>1742</span> </span><span class="WHIT"> </span><span class="COMM">// prevent the pointer wheel from scrolling the page</span><span class="WHIT">
|
|
1750
|
+
<span class='line'>1743</span> </span><span class="WHIT"> </span><span class="NAME">target</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">Type.evaluate</span><span class="PUNC">(</span><span class="NAME">this.visProp.bank.pointer.outside</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">?</span><span class="WHIT"> </span><span class="NAME">document</span><span class="WHIT"> </span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">this.board.containerObj</span><span class="PUNC">;</span><span class="WHIT">
|
|
1751
|
+
<span class='line'>1744</span> </span><span class="WHIT"> </span><span class="NAME">Env.addEvent</span><span class="PUNC">(</span><span class="NAME">target</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">'wheel'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">this._bankEventHandler</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="KEYW">this</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT"> </span><span class="NAME">passive</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
1752
|
+
<span class='line'>1745</span> </span><span class="WHIT"> </span><span class="NAME">this._hasMoveBank</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">;</span><span class="WHIT">
|
|
1753
|
+
<span class='line'>1746</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
|
1754
|
+
<span class='line'>1747</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
|
1755
|
+
<span class='line'>1748</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
|
1756
|
+
<span class='line'>1749</span> </span><span class="WHIT"> </span><span class="NAME">Env.addEvent</span><span class="PUNC">(</span><span class="NAME">document</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">'pointerup'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">this.pointerUpHandler</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="KEYW">this</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
1757
|
+
<span class='line'>1750</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
|
1758
|
+
<span class='line'>1751</span>
|
|
1759
|
+
<span class='line'>1752</span> </span><span class="WHIT"> </span><span class="COMM">/**
|
|
1760
|
+
<span class='line'>1753</span> * Event handler for pointer up event. Triggers handling of all 3D navigation.
|
|
1761
|
+
<span class='line'>1754</span> *
|
|
1762
|
+
<span class='line'>1755</span> * @private
|
|
1763
|
+
<span class='line'>1756</span> * @param {event} evt
|
|
1764
|
+
<span class='line'>1757</span> * @returns view
|
|
1765
|
+
<span class='line'>1758</span> */</span><span class="WHIT">
|
|
1766
|
+
<span class='line'>1759</span> </span><span class="WHIT"> </span><span class="NAME">pointerUpHandler</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">evt</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
|
1767
|
+
<span class='line'>1760</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">target</span><span class="PUNC">;</span><span class="WHIT">
|
|
1768
|
+
<span class='line'>1761</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">this._hasMoveAz</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
|
1769
|
+
<span class='line'>1762</span> </span><span class="WHIT"> </span><span class="NAME">target</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">Type.evaluate</span><span class="PUNC">(</span><span class="NAME">this.visProp.az.pointer.outside</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">?</span><span class="WHIT"> </span><span class="NAME">document</span><span class="WHIT"> </span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">this.board.containerObj</span><span class="PUNC">;</span><span class="WHIT">
|
|
1770
|
+
<span class='line'>1763</span> </span><span class="WHIT"> </span><span class="NAME">Env.removeEvent</span><span class="PUNC">(</span><span class="NAME">target</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">'pointermove'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">this._azEventHandler</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="KEYW">this</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
1771
|
+
<span class='line'>1764</span> </span><span class="WHIT"> </span><span class="NAME">this._hasMoveAz</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">;</span><span class="WHIT">
|
|
1772
|
+
<span class='line'>1765</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
|
1773
|
+
<span class='line'>1766</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">this._hasMoveEl</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
|
1774
|
+
<span class='line'>1767</span> </span><span class="WHIT"> </span><span class="NAME">target</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">Type.evaluate</span><span class="PUNC">(</span><span class="NAME">this.visProp.el.pointer.outside</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">?</span><span class="WHIT"> </span><span class="NAME">document</span><span class="WHIT"> </span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">this.board.containerObj</span><span class="PUNC">;</span><span class="WHIT">
|
|
1775
|
+
<span class='line'>1768</span> </span><span class="WHIT"> </span><span class="NAME">Env.removeEvent</span><span class="PUNC">(</span><span class="NAME">target</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">'pointermove'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">this._elEventHandler</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="KEYW">this</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
1776
|
+
<span class='line'>1769</span> </span><span class="WHIT"> </span><span class="NAME">this._hasMoveEl</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">;</span><span class="WHIT">
|
|
1777
|
+
<span class='line'>1770</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
|
1778
|
+
<span class='line'>1771</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">this._hasMoveBank</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
|
1779
|
+
<span class='line'>1772</span> </span><span class="WHIT"> </span><span class="NAME">target</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">Type.evaluate</span><span class="PUNC">(</span><span class="NAME">this.visProp.bank.pointer.outside</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">?</span><span class="WHIT"> </span><span class="NAME">document</span><span class="WHIT"> </span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">this.board.containerObj</span><span class="PUNC">;</span><span class="WHIT">
|
|
1780
|
+
<span class='line'>1773</span> </span><span class="WHIT"> </span><span class="NAME">Env.removeEvent</span><span class="PUNC">(</span><span class="NAME">target</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">'wheel'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">this._bankEventHandler</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="KEYW">this</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
1781
|
+
<span class='line'>1774</span> </span><span class="WHIT"> </span><span class="NAME">this._hasMoveBank</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">;</span><span class="WHIT">
|
|
1782
|
+
<span class='line'>1775</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
|
1783
|
+
<span class='line'>1776</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">this._hasMoveTrackball</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
|
1784
|
+
<span class='line'>1777</span> </span><span class="WHIT"> </span><span class="NAME">target</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">Type.evaluate</span><span class="PUNC">(</span><span class="NAME">this.visProp.az.pointer.outside</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">?</span><span class="WHIT"> </span><span class="NAME">document</span><span class="WHIT"> </span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">this.board.containerObj</span><span class="PUNC">;</span><span class="WHIT">
|
|
1785
|
+
<span class='line'>1778</span> </span><span class="WHIT"> </span><span class="NAME">Env.removeEvent</span><span class="PUNC">(</span><span class="NAME">target</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">'pointermove'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">this._trackballHandler</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="KEYW">this</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
1786
|
+
<span class='line'>1779</span> </span><span class="WHIT"> </span><span class="NAME">this._hasMoveTrackball</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">;</span><span class="WHIT">
|
|
1787
|
+
<span class='line'>1780</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
|
1788
|
+
<span class='line'>1781</span> </span><span class="WHIT"> </span><span class="NAME">Env.removeEvent</span><span class="PUNC">(</span><span class="NAME">document</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">'pointerup'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">this.pointerUpHandler</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="KEYW">this</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
1789
|
+
<span class='line'>1782</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
|
1790
|
+
<span class='line'>1783</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
1791
|
+
<span class='line'>1784</span>
|
|
1792
|
+
<span class='line'>1785</span> </span><span class="COMM">/**
|
|
1793
|
+
<span class='line'>1786</span> * @class This element creates a 3D view.
|
|
1794
|
+
<span class='line'>1787</span> * @pseudo
|
|
1795
|
+
<span class='line'>1788</span> * @description A View3D element provides the container and the methods to create and display 3D elements.
|
|
1796
|
+
<span class='line'>1789</span> * It is contained in a JSXGraph board.
|
|
1797
|
+
<span class='line'>1790</span> * <p>
|
|
1798
|
+
<span class='line'>1791</span> * It is advisable to disable panning of the board by setting the board attribute "pan":
|
|
1799
|
+
<span class='line'>1792</span> * <pre>
|
|
1800
|
+
<span class='line'>1793</span> * pan: {anabled: fasle}
|
|
1801
|
+
<span class='line'>1794</span> * </pre>
|
|
1802
|
+
<span class='line'>1795</span> * Otherwise users will not be able to rotate the scene with their fingers on a touch device.
|
|
1803
|
+
<span class='line'>1796</span> *
|
|
1804
|
+
<span class='line'>1797</span> * @name View3D
|
|
1805
|
+
<span class='line'>1798</span> * @augments JXG.View3D
|
|
1806
|
+
<span class='line'>1799</span> * @constructor
|
|
1807
|
+
<span class='line'>1800</span> * @type Object
|
|
1808
|
+
<span class='line'>1801</span> * @throws {Exception} If the element cannot be constructed with the given parent objects an exception is thrown.
|
|
1809
|
+
<span class='line'>1802</span> * @param {Array_Array_Array} lower,dim,cube Here, lower is an array of the form [x, y] and
|
|
1810
|
+
<span class='line'>1803</span> * dim is an array of the form [w, h].
|
|
1811
|
+
<span class='line'>1804</span> * The arrays [x, y] and [w, h] define the 2D frame into which the 3D cube is
|
|
1812
|
+
<span class='line'>1805</span> * (roughly) projected. If the view's azimuth=0 and elevation=0, the 3D view will cover a rectangle with lower left corner
|
|
1813
|
+
<span class='line'>1806</span> * [x,y] and side lengths [w, h] of the board.
|
|
1814
|
+
<span class='line'>1807</span> * The array 'cube' is of the form [[x1, x2], [y1, y2], [z1, z2]]
|
|
1815
|
+
<span class='line'>1808</span> * which determines the coordinate ranges of the 3D cube.
|
|
1816
|
+
<span class='line'>1809</span> *
|
|
1817
|
+
<span class='line'>1810</span> * @example
|
|
1818
|
+
<span class='line'>1811</span> * var bound = [-4, 6];
|
|
1819
|
+
<span class='line'>1812</span> * var view = board.create('view3d',
|
|
1820
|
+
<span class='line'>1813</span> * [[-4, -3], [8, 8],
|
|
1821
|
+
<span class='line'>1814</span> * [bound, bound, bound]],
|
|
1822
|
+
<span class='line'>1815</span> * {
|
|
1823
|
+
<span class='line'>1816</span> * projection: 'parallel',
|
|
1824
|
+
<span class='line'>1817</span> * trackball: {enabled:true},
|
|
1825
|
+
<span class='line'>1818</span> * });
|
|
1826
|
+
<span class='line'>1819</span> *
|
|
1827
|
+
<span class='line'>1820</span> * var curve = view.create('curve3d', [
|
|
1828
|
+
<span class='line'>1821</span> * (t) => (2 + Math.cos(3 * t)) * Math.cos(2 * t),
|
|
1829
|
+
<span class='line'>1822</span> * (t) => (2 + Math.cos(3 * t)) * Math.sin(2 * t),
|
|
1830
|
+
<span class='line'>1823</span> * (t) => Math.sin(3 * t),
|
|
1831
|
+
<span class='line'>1824</span> * [-Math.PI, Math.PI]
|
|
1832
|
+
<span class='line'>1825</span> * ], { strokeWidth: 4 });
|
|
1833
|
+
<span class='line'>1826</span> *
|
|
1834
|
+
<span class='line'>1827</span> * </pre><div id="JXG9b327a6c-1bd6-4e40-a502-59d024dbfd1b" class="jxgbox" style="width: 300px; height: 300px;"></div>
|
|
1835
|
+
<span class='line'>1828</span> * <script type="text/javascript">
|
|
1836
|
+
<span class='line'>1829</span> * (function() {
|
|
1837
|
+
<span class='line'>1830</span> * var board = JXG.JSXGraph.initBoard('JXG9b327a6c-1bd6-4e40-a502-59d024dbfd1b',
|
|
1838
|
+
<span class='line'>1831</span> * {boundingbox: [-8, 8, 8,-8], pan: {enabled: false}, axis: false, showcopyright: false, shownavigation: false});
|
|
1839
|
+
<span class='line'>1832</span> * var bound = [-4, 6];
|
|
1840
|
+
<span class='line'>1833</span> * var view = board.create('view3d',
|
|
1841
|
+
<span class='line'>1834</span> * [[-4, -3], [8, 8],
|
|
1842
|
+
<span class='line'>1835</span> * [bound, bound, bound]],
|
|
1843
|
+
<span class='line'>1836</span> * {
|
|
1844
|
+
<span class='line'>1837</span> * projection: 'parallel',
|
|
1845
|
+
<span class='line'>1838</span> * trackball: {enabled:true},
|
|
1846
|
+
<span class='line'>1839</span> * });
|
|
1847
1847
|
<span class='line'>1840</span> *
|
|
1848
|
-
<span class='line'>1841</span> *
|
|
1849
|
-
<span class='line'>1842</span> *
|
|
1850
|
-
<span class='line'>1843</span> *
|
|
1851
|
-
<span class='line'>1844</span> *
|
|
1852
|
-
<span class='line'>1845</span> *
|
|
1853
|
-
<span class='line'>1846</span> *
|
|
1854
|
-
<span class='line'>1847</span> *
|
|
1855
|
-
<span class='line'>1848</span> *
|
|
1856
|
-
<span class='line'>1849</span> *
|
|
1857
|
-
<span class='line'>1850</span> *
|
|
1848
|
+
<span class='line'>1841</span> * var curve = view.create('curve3d', [
|
|
1849
|
+
<span class='line'>1842</span> * (t) => (2 + Math.cos(3 * t)) * Math.cos(2 * t),
|
|
1850
|
+
<span class='line'>1843</span> * (t) => (2 + Math.cos(3 * t)) * Math.sin(2 * t),
|
|
1851
|
+
<span class='line'>1844</span> * (t) => Math.sin(3 * t),
|
|
1852
|
+
<span class='line'>1845</span> * [-Math.PI, Math.PI]
|
|
1853
|
+
<span class='line'>1846</span> * ], { strokeWidth: 4 });
|
|
1854
|
+
<span class='line'>1847</span> *
|
|
1855
|
+
<span class='line'>1848</span> * })();
|
|
1856
|
+
<span class='line'>1849</span> *
|
|
1857
|
+
<span class='line'>1850</span> * </script><pre>
|
|
1858
1858
|
<span class='line'>1851</span> *
|
|
1859
|
-
<span class='line'>1852</span> *
|
|
1860
|
-
<span class='line'>1853</span> *
|
|
1861
|
-
<span class='line'>1854</span> *
|
|
1862
|
-
<span class='line'>1855</span> *
|
|
1863
|
-
<span class='line'>1856</span> *
|
|
1864
|
-
<span class='line'>1857</span> *
|
|
1865
|
-
<span class='line'>1858</span> *
|
|
1866
|
-
<span class='line'>1859</span> *
|
|
1867
|
-
<span class='line'>1860</span> *
|
|
1868
|
-
<span class='line'>1861</span> *
|
|
1869
|
-
<span class='line'>1862</span> *
|
|
1859
|
+
<span class='line'>1852</span> * @example
|
|
1860
|
+
<span class='line'>1853</span> * var bound = [-4, 6];
|
|
1861
|
+
<span class='line'>1854</span> * var view = board.create('view3d',
|
|
1862
|
+
<span class='line'>1855</span> * [[-4, -3], [8, 8],
|
|
1863
|
+
<span class='line'>1856</span> * [bound, bound, bound]],
|
|
1864
|
+
<span class='line'>1857</span> * {
|
|
1865
|
+
<span class='line'>1858</span> * projection: 'central',
|
|
1866
|
+
<span class='line'>1859</span> * trackball: {enabled:true},
|
|
1867
|
+
<span class='line'>1860</span> *
|
|
1868
|
+
<span class='line'>1861</span> * xPlaneRear: { visible: false },
|
|
1869
|
+
<span class='line'>1862</span> * yPlaneRear: { visible: false }
|
|
1870
1870
|
<span class='line'>1863</span> *
|
|
1871
|
-
<span class='line'>1864</span> *
|
|
1872
|
-
<span class='line'>1865</span> *
|
|
1873
|
-
<span class='line'>1866</span> * (
|
|
1874
|
-
<span class='line'>1867</span> *
|
|
1875
|
-
<span class='line'>1868</span> *
|
|
1876
|
-
<span class='line'>1869</span> *
|
|
1877
|
-
<span class='line'>1870</span> *
|
|
1878
|
-
<span class='line'>1871</span> *
|
|
1879
|
-
<span class='line'>1872</span> *
|
|
1880
|
-
<span class='line'>1873</span> *
|
|
1881
|
-
<span class='line'>1874</span> *
|
|
1882
|
-
<span class='line'>1875</span> *
|
|
1883
|
-
<span class='line'>1876</span> *
|
|
1884
|
-
<span class='line'>1877</span> *
|
|
1885
|
-
<span class='line'>1878</span> *
|
|
1886
|
-
<span class='line'>1879</span> *
|
|
1887
|
-
<span class='line'>1880</span> *
|
|
1888
|
-
<span class='line'>1881</span> *
|
|
1889
|
-
<span class='line'>1882</span> *
|
|
1890
|
-
<span class='line'>1883</span> *
|
|
1891
|
-
<span class='line'>1884</span> *
|
|
1892
|
-
<span class='line'>1885</span> *
|
|
1893
|
-
<span class='line'>1886</span> *
|
|
1894
|
-
<span class='line'>1887</span> *
|
|
1871
|
+
<span class='line'>1864</span> * });
|
|
1872
|
+
<span class='line'>1865</span> *
|
|
1873
|
+
<span class='line'>1866</span> * var curve = view.create('curve3d', [
|
|
1874
|
+
<span class='line'>1867</span> * (t) => (2 + Math.cos(3 * t)) * Math.cos(2 * t),
|
|
1875
|
+
<span class='line'>1868</span> * (t) => (2 + Math.cos(3 * t)) * Math.sin(2 * t),
|
|
1876
|
+
<span class='line'>1869</span> * (t) => Math.sin(3 * t),
|
|
1877
|
+
<span class='line'>1870</span> * [-Math.PI, Math.PI]
|
|
1878
|
+
<span class='line'>1871</span> * ], { strokeWidth: 4 });
|
|
1879
|
+
<span class='line'>1872</span> *
|
|
1880
|
+
<span class='line'>1873</span> * </pre><div id="JXG0dc2493d-fb2f-40d5-bdb8-762ba0ad2007" class="jxgbox" style="width: 300px; height: 300px;"></div>
|
|
1881
|
+
<span class='line'>1874</span> * <script type="text/javascript">
|
|
1882
|
+
<span class='line'>1875</span> * (function() {
|
|
1883
|
+
<span class='line'>1876</span> * var board = JXG.JSXGraph.initBoard('JXG0dc2493d-fb2f-40d5-bdb8-762ba0ad2007',
|
|
1884
|
+
<span class='line'>1877</span> * {boundingbox: [-8, 8, 8,-8], axis: false, pan: {enabled: false}, showcopyright: false, shownavigation: false});
|
|
1885
|
+
<span class='line'>1878</span> * var bound = [-4, 6];
|
|
1886
|
+
<span class='line'>1879</span> * var view = board.create('view3d',
|
|
1887
|
+
<span class='line'>1880</span> * [[-4, -3], [8, 8],
|
|
1888
|
+
<span class='line'>1881</span> * [bound, bound, bound]],
|
|
1889
|
+
<span class='line'>1882</span> * {
|
|
1890
|
+
<span class='line'>1883</span> * projection: 'central',
|
|
1891
|
+
<span class='line'>1884</span> * trackball: {enabled:true},
|
|
1892
|
+
<span class='line'>1885</span> *
|
|
1893
|
+
<span class='line'>1886</span> * xPlaneRear: { visible: false },
|
|
1894
|
+
<span class='line'>1887</span> * yPlaneRear: { visible: false }
|
|
1895
1895
|
<span class='line'>1888</span> *
|
|
1896
|
-
<span class='line'>1889</span> *
|
|
1896
|
+
<span class='line'>1889</span> * });
|
|
1897
1897
|
<span class='line'>1890</span> *
|
|
1898
|
-
<span class='line'>1891</span> *
|
|
1899
|
-
<span class='line'>1892</span> *
|
|
1900
|
-
<span class='line'>1893</span> *
|
|
1901
|
-
<span class='line'>1894</span> *
|
|
1902
|
-
<span class='line'>1895</span> *
|
|
1903
|
-
<span class='line'>1896</span> *
|
|
1904
|
-
<span class='line'>1897</span> *
|
|
1905
|
-
<span class='line'>1898</span> *
|
|
1906
|
-
<span class='line'>1899</span> *
|
|
1907
|
-
<span class='line'>1900</span> *
|
|
1898
|
+
<span class='line'>1891</span> * var curve = view.create('curve3d', [
|
|
1899
|
+
<span class='line'>1892</span> * (t) => (2 + Math.cos(3 * t)) * Math.cos(2 * t),
|
|
1900
|
+
<span class='line'>1893</span> * (t) => (2 + Math.cos(3 * t)) * Math.sin(2 * t),
|
|
1901
|
+
<span class='line'>1894</span> * (t) => Math.sin(3 * t),
|
|
1902
|
+
<span class='line'>1895</span> * [-Math.PI, Math.PI]
|
|
1903
|
+
<span class='line'>1896</span> * ], { strokeWidth: 4 });
|
|
1904
|
+
<span class='line'>1897</span> *
|
|
1905
|
+
<span class='line'>1898</span> * })();
|
|
1906
|
+
<span class='line'>1899</span> *
|
|
1907
|
+
<span class='line'>1900</span> * </script><pre>
|
|
1908
1908
|
<span class='line'>1901</span> *
|
|
1909
|
-
<span class='line'>1902</span>
|
|
1910
|
-
<span class='line'>1903</span> *
|
|
1911
|
-
<span class='line'>1904</span> *
|
|
1912
|
-
<span class='line'>1905</span> *
|
|
1913
|
-
<span class='line'>1906</span> *
|
|
1914
|
-
<span class='line'>1907</span> *
|
|
1915
|
-
<span class='line'>1908</span> *
|
|
1916
|
-
<span class='line'>1909</span> *
|
|
1917
|
-
<span class='line'>1910</span> *
|
|
1918
|
-
<span class='line'>1911</span> *
|
|
1919
|
-
<span class='line'>1912</span> *
|
|
1920
|
-
<span class='line'>1913</span> *
|
|
1921
|
-
<span class='line'>1914</span> *
|
|
1922
|
-
<span class='line'>1915</span> *
|
|
1923
|
-
<span class='line'>1916</span> *
|
|
1924
|
-
<span class='line'>1917</span> *
|
|
1909
|
+
<span class='line'>1902</span> * @example
|
|
1910
|
+
<span class='line'>1903</span> * var bound = [-4, 6];
|
|
1911
|
+
<span class='line'>1904</span> * var view = board.create('view3d',
|
|
1912
|
+
<span class='line'>1905</span> * [[-4, -3], [8, 8],
|
|
1913
|
+
<span class='line'>1906</span> * [bound, bound, bound]],
|
|
1914
|
+
<span class='line'>1907</span> * {
|
|
1915
|
+
<span class='line'>1908</span> * projection: 'central',
|
|
1916
|
+
<span class='line'>1909</span> * trackball: {enabled:true},
|
|
1917
|
+
<span class='line'>1910</span> *
|
|
1918
|
+
<span class='line'>1911</span> * // Main axes
|
|
1919
|
+
<span class='line'>1912</span> * axesPosition: 'border',
|
|
1920
|
+
<span class='line'>1913</span> *
|
|
1921
|
+
<span class='line'>1914</span> * // Axes at the border
|
|
1922
|
+
<span class='line'>1915</span> * xAxisBorder: { ticks3d: { ticksDistance: 2} },
|
|
1923
|
+
<span class='line'>1916</span> * yAxisBorder: { ticks3d: { ticksDistance: 2} },
|
|
1924
|
+
<span class='line'>1917</span> * zAxisBorder: { ticks3d: { ticksDistance: 2} },
|
|
1925
1925
|
<span class='line'>1918</span> *
|
|
1926
|
-
<span class='line'>1919</span> *
|
|
1927
|
-
<span class='line'>1920</span> *
|
|
1928
|
-
<span class='line'>1921</span> *
|
|
1929
|
-
<span class='line'>1922</span> *
|
|
1930
|
-
<span class='line'>1923</span> *
|
|
1931
|
-
<span class='line'>1924</span> *
|
|
1932
|
-
<span class='line'>1925</span> *
|
|
1933
|
-
<span class='line'>1926</span> *
|
|
1934
|
-
<span class='line'>1927</span> *
|
|
1935
|
-
<span class='line'>1928</span> * (
|
|
1936
|
-
<span class='line'>1929</span> *
|
|
1937
|
-
<span class='line'>1930</span> *
|
|
1938
|
-
<span class='line'>1931</span> *
|
|
1939
|
-
<span class='line'>1932</span> *
|
|
1940
|
-
<span class='line'>1933</span> *
|
|
1941
|
-
<span class='line'>1934</span> *
|
|
1942
|
-
<span class='line'>1935</span> *
|
|
1943
|
-
<span class='line'>1936</span> *
|
|
1944
|
-
<span class='line'>1937</span> *
|
|
1945
|
-
<span class='line'>1938</span> *
|
|
1946
|
-
<span class='line'>1939</span> *
|
|
1947
|
-
<span class='line'>1940</span> *
|
|
1948
|
-
<span class='line'>1941</span> *
|
|
1949
|
-
<span class='line'>1942</span> *
|
|
1950
|
-
<span class='line'>1943</span> *
|
|
1951
|
-
<span class='line'>1944</span> *
|
|
1952
|
-
<span class='line'>1945</span> *
|
|
1953
|
-
<span class='line'>1946</span> *
|
|
1954
|
-
<span class='line'>1947</span> *
|
|
1955
|
-
<span class='line'>1948</span> *
|
|
1956
|
-
<span class='line'>1949</span> *
|
|
1957
|
-
<span class='line'>1950</span> *
|
|
1958
|
-
<span class='line'>1951</span> *
|
|
1959
|
-
<span class='line'>1952</span> *
|
|
1960
|
-
<span class='line'>1953</span> *
|
|
1961
|
-
<span class='line'>1954</span> *
|
|
1926
|
+
<span class='line'>1919</span> * // No axes on planes
|
|
1927
|
+
<span class='line'>1920</span> * xPlaneRearYAxis: {visible: false},
|
|
1928
|
+
<span class='line'>1921</span> * xPlaneRearZAxis: {visible: false},
|
|
1929
|
+
<span class='line'>1922</span> * yPlaneRearXAxis: {visible: false},
|
|
1930
|
+
<span class='line'>1923</span> * yPlaneRearZAxis: {visible: false},
|
|
1931
|
+
<span class='line'>1924</span> * zPlaneRearXAxis: {visible: false},
|
|
1932
|
+
<span class='line'>1925</span> * zPlaneRearYAxis: {visible: false}
|
|
1933
|
+
<span class='line'>1926</span> * });
|
|
1934
|
+
<span class='line'>1927</span> *
|
|
1935
|
+
<span class='line'>1928</span> * var curve = view.create('curve3d', [
|
|
1936
|
+
<span class='line'>1929</span> * (t) => (2 + Math.cos(3 * t)) * Math.cos(2 * t),
|
|
1937
|
+
<span class='line'>1930</span> * (t) => (2 + Math.cos(3 * t)) * Math.sin(2 * t),
|
|
1938
|
+
<span class='line'>1931</span> * (t) => Math.sin(3 * t),
|
|
1939
|
+
<span class='line'>1932</span> * [-Math.PI, Math.PI]
|
|
1940
|
+
<span class='line'>1933</span> * ], { strokeWidth: 4 });
|
|
1941
|
+
<span class='line'>1934</span> *
|
|
1942
|
+
<span class='line'>1935</span> * </pre><div id="JXG586f3551-335c-47e9-8d72-835409f6a103" class="jxgbox" style="width: 300px; height: 300px;"></div>
|
|
1943
|
+
<span class='line'>1936</span> * <script type="text/javascript">
|
|
1944
|
+
<span class='line'>1937</span> * (function() {
|
|
1945
|
+
<span class='line'>1938</span> * var board = JXG.JSXGraph.initBoard('JXG586f3551-335c-47e9-8d72-835409f6a103',
|
|
1946
|
+
<span class='line'>1939</span> * {boundingbox: [-8, 8, 8,-8], axis: false, pan: {enabled: false}, showcopyright: false, shownavigation: false});
|
|
1947
|
+
<span class='line'>1940</span> * var bound = [-4, 6];
|
|
1948
|
+
<span class='line'>1941</span> * var view = board.create('view3d',
|
|
1949
|
+
<span class='line'>1942</span> * [[-4, -3], [8, 8],
|
|
1950
|
+
<span class='line'>1943</span> * [bound, bound, bound]],
|
|
1951
|
+
<span class='line'>1944</span> * {
|
|
1952
|
+
<span class='line'>1945</span> * projection: 'central',
|
|
1953
|
+
<span class='line'>1946</span> * trackball: {enabled:true},
|
|
1954
|
+
<span class='line'>1947</span> *
|
|
1955
|
+
<span class='line'>1948</span> * // Main axes
|
|
1956
|
+
<span class='line'>1949</span> * axesPosition: 'border',
|
|
1957
|
+
<span class='line'>1950</span> *
|
|
1958
|
+
<span class='line'>1951</span> * // Axes at the border
|
|
1959
|
+
<span class='line'>1952</span> * xAxisBorder: { ticks3d: { ticksDistance: 2} },
|
|
1960
|
+
<span class='line'>1953</span> * yAxisBorder: { ticks3d: { ticksDistance: 2} },
|
|
1961
|
+
<span class='line'>1954</span> * zAxisBorder: { ticks3d: { ticksDistance: 2} },
|
|
1962
1962
|
<span class='line'>1955</span> *
|
|
1963
|
-
<span class='line'>1956</span> *
|
|
1964
|
-
<span class='line'>1957</span> *
|
|
1965
|
-
<span class='line'>1958</span> *
|
|
1966
|
-
<span class='line'>1959</span> *
|
|
1967
|
-
<span class='line'>1960</span> *
|
|
1968
|
-
<span class='line'>1961</span> *
|
|
1969
|
-
<span class='line'>1962</span> *
|
|
1970
|
-
<span class='line'>1963</span> *
|
|
1963
|
+
<span class='line'>1956</span> * // No axes on planes
|
|
1964
|
+
<span class='line'>1957</span> * xPlaneRearYAxis: {visible: false},
|
|
1965
|
+
<span class='line'>1958</span> * xPlaneRearZAxis: {visible: false},
|
|
1966
|
+
<span class='line'>1959</span> * yPlaneRearXAxis: {visible: false},
|
|
1967
|
+
<span class='line'>1960</span> * yPlaneRearZAxis: {visible: false},
|
|
1968
|
+
<span class='line'>1961</span> * zPlaneRearXAxis: {visible: false},
|
|
1969
|
+
<span class='line'>1962</span> * zPlaneRearYAxis: {visible: false}
|
|
1970
|
+
<span class='line'>1963</span> * });
|
|
1971
1971
|
<span class='line'>1964</span> *
|
|
1972
|
-
<span class='line'>1965</span> *
|
|
1973
|
-
<span class='line'>1966</span> *
|
|
1974
|
-
<span class='line'>1967</span> *
|
|
1975
|
-
<span class='line'>1968</span> *
|
|
1976
|
-
<span class='line'>1969</span> *
|
|
1977
|
-
<span class='line'>1970</span> *
|
|
1978
|
-
<span class='line'>1971</span> *
|
|
1979
|
-
<span class='line'>1972</span> *
|
|
1980
|
-
<span class='line'>1973</span> *
|
|
1981
|
-
<span class='line'>1974</span> *
|
|
1972
|
+
<span class='line'>1965</span> * var curve = view.create('curve3d', [
|
|
1973
|
+
<span class='line'>1966</span> * (t) => (2 + Math.cos(3 * t)) * Math.cos(2 * t),
|
|
1974
|
+
<span class='line'>1967</span> * (t) => (2 + Math.cos(3 * t)) * Math.sin(2 * t),
|
|
1975
|
+
<span class='line'>1968</span> * (t) => Math.sin(3 * t),
|
|
1976
|
+
<span class='line'>1969</span> * [-Math.PI, Math.PI]
|
|
1977
|
+
<span class='line'>1970</span> * ], { strokeWidth: 4 });
|
|
1978
|
+
<span class='line'>1971</span> *
|
|
1979
|
+
<span class='line'>1972</span> * })();
|
|
1980
|
+
<span class='line'>1973</span> *
|
|
1981
|
+
<span class='line'>1974</span> * </script><pre>
|
|
1982
1982
|
<span class='line'>1975</span> *
|
|
1983
|
-
<span class='line'>1976</span> *
|
|
1984
|
-
<span class='line'>1977</span> *
|
|
1985
|
-
<span class='line'>1978</span> *
|
|
1986
|
-
<span class='line'>1979</span> *
|
|
1987
|
-
<span class='line'>1980</span> *
|
|
1988
|
-
<span class='line'>1981</span> *
|
|
1989
|
-
<span class='line'>1982</span> *
|
|
1990
|
-
<span class='line'>1983</span> *
|
|
1991
|
-
<span class='line'>1984</span> *
|
|
1992
|
-
<span class='line'>1985</span> *
|
|
1993
|
-
<span class='line'>1986</span> *
|
|
1994
|
-
<span class='line'>1987</span> *
|
|
1995
|
-
<span class='line'>1988</span> * (
|
|
1996
|
-
<span class='line'>1989</span> *
|
|
1997
|
-
<span class='line'>1990</span> *
|
|
1998
|
-
<span class='line'>1991</span> *
|
|
1999
|
-
<span class='line'>1992</span> *
|
|
2000
|
-
<span class='line'>1993</span> *
|
|
2001
|
-
<span class='line'>1994</span> *
|
|
2002
|
-
<span class='line'>1995</span> *
|
|
2003
|
-
<span class='line'>1996</span> *
|
|
2004
|
-
<span class='line'>1997</span> *
|
|
2005
|
-
<span class='line'>1998</span> *
|
|
2006
|
-
<span class='line'>1999</span> *
|
|
2007
|
-
<span class='line'>2000</span> *
|
|
2008
|
-
<span class='line'>2001</span> *
|
|
2009
|
-
<span class='line'>2002</span> *
|
|
2010
|
-
<span class='line'>2003</span> *
|
|
2011
|
-
<span class='line'>2004</span> *
|
|
2012
|
-
<span class='line'>2005</span> *
|
|
2013
|
-
<span class='line'>2006</span> *
|
|
2014
|
-
<span class='line'>2007</span> *
|
|
2015
|
-
<span class='line'>2008</span> *
|
|
2016
|
-
<span class='line'>2009</span> *
|
|
1983
|
+
<span class='line'>1976</span> * @example
|
|
1984
|
+
<span class='line'>1977</span> * var bound = [-4, 6];
|
|
1985
|
+
<span class='line'>1978</span> * var view = board.create('view3d',
|
|
1986
|
+
<span class='line'>1979</span> * [[-4, -3], [8, 8],
|
|
1987
|
+
<span class='line'>1980</span> * [bound, bound, bound]],
|
|
1988
|
+
<span class='line'>1981</span> * {
|
|
1989
|
+
<span class='line'>1982</span> * projection: 'central',
|
|
1990
|
+
<span class='line'>1983</span> * trackball: {enabled:true},
|
|
1991
|
+
<span class='line'>1984</span> *
|
|
1992
|
+
<span class='line'>1985</span> * axesPosition: 'none'
|
|
1993
|
+
<span class='line'>1986</span> * });
|
|
1994
|
+
<span class='line'>1987</span> *
|
|
1995
|
+
<span class='line'>1988</span> * var curve = view.create('curve3d', [
|
|
1996
|
+
<span class='line'>1989</span> * (t) => (2 + Math.cos(3 * t)) * Math.cos(2 * t),
|
|
1997
|
+
<span class='line'>1990</span> * (t) => (2 + Math.cos(3 * t)) * Math.sin(2 * t),
|
|
1998
|
+
<span class='line'>1991</span> * (t) => Math.sin(3 * t),
|
|
1999
|
+
<span class='line'>1992</span> * [-Math.PI, Math.PI]
|
|
2000
|
+
<span class='line'>1993</span> * ], { strokeWidth: 4 });
|
|
2001
|
+
<span class='line'>1994</span> *
|
|
2002
|
+
<span class='line'>1995</span> * </pre><div id="JXG9a9467e1-f189-4c8c-adb2-d4f49bc7fa26" class="jxgbox" style="width: 300px; height: 300px;"></div>
|
|
2003
|
+
<span class='line'>1996</span> * <script type="text/javascript">
|
|
2004
|
+
<span class='line'>1997</span> * (function() {
|
|
2005
|
+
<span class='line'>1998</span> * var board = JXG.JSXGraph.initBoard('JXG9a9467e1-f189-4c8c-adb2-d4f49bc7fa26',
|
|
2006
|
+
<span class='line'>1999</span> * {boundingbox: [-8, 8, 8,-8], axis: false, pan: {enabled: false}, showcopyright: false, shownavigation: false});
|
|
2007
|
+
<span class='line'>2000</span> * var bound = [-4, 6];
|
|
2008
|
+
<span class='line'>2001</span> * var view = board.create('view3d',
|
|
2009
|
+
<span class='line'>2002</span> * [[-4, -3], [8, 8],
|
|
2010
|
+
<span class='line'>2003</span> * [bound, bound, bound]],
|
|
2011
|
+
<span class='line'>2004</span> * {
|
|
2012
|
+
<span class='line'>2005</span> * projection: 'central',
|
|
2013
|
+
<span class='line'>2006</span> * trackball: {enabled:true},
|
|
2014
|
+
<span class='line'>2007</span> *
|
|
2015
|
+
<span class='line'>2008</span> * axesPosition: 'none'
|
|
2016
|
+
<span class='line'>2009</span> * });
|
|
2017
2017
|
<span class='line'>2010</span> *
|
|
2018
|
-
<span class='line'>2011</span> *
|
|
2019
|
-
<span class='line'>2012</span> *
|
|
2020
|
-
<span class='line'>2013</span> *
|
|
2021
|
-
<span class='line'>2014</span> *
|
|
2022
|
-
<span class='line'>2015</span> *
|
|
2023
|
-
<span class='line'>2016</span> *
|
|
2024
|
-
<span class='line'>2017</span> *
|
|
2025
|
-
<span class='line'>2018</span> *
|
|
2026
|
-
<span class='line'>2019</span> *
|
|
2027
|
-
<span class='line'>2020</span> *
|
|
2018
|
+
<span class='line'>2011</span> * var curve = view.create('curve3d', [
|
|
2019
|
+
<span class='line'>2012</span> * (t) => (2 + Math.cos(3 * t)) * Math.cos(2 * t),
|
|
2020
|
+
<span class='line'>2013</span> * (t) => (2 + Math.cos(3 * t)) * Math.sin(2 * t),
|
|
2021
|
+
<span class='line'>2014</span> * (t) => Math.sin(3 * t),
|
|
2022
|
+
<span class='line'>2015</span> * [-Math.PI, Math.PI]
|
|
2023
|
+
<span class='line'>2016</span> * ], { strokeWidth: 4 });
|
|
2024
|
+
<span class='line'>2017</span> *
|
|
2025
|
+
<span class='line'>2018</span> * })();
|
|
2026
|
+
<span class='line'>2019</span> *
|
|
2027
|
+
<span class='line'>2020</span> * </script><pre>
|
|
2028
2028
|
<span class='line'>2021</span> *
|
|
2029
|
-
<span class='line'>2022</span> *
|
|
2030
|
-
<span class='line'>2023</span> *
|
|
2031
|
-
<span class='line'>2024</span> *
|
|
2032
|
-
<span class='line'>2025</span> *
|
|
2033
|
-
<span class='line'>2026</span> *
|
|
2034
|
-
<span class='line'>2027</span> *
|
|
2035
|
-
<span class='line'>2028</span> *
|
|
2036
|
-
<span class='line'>2029</span> *
|
|
2037
|
-
<span class='line'>2030</span> *
|
|
2038
|
-
<span class='line'>2031</span> *
|
|
2039
|
-
<span class='line'>2032</span> *
|
|
2040
|
-
<span class='line'>2033</span> *
|
|
2041
|
-
<span class='line'>2034</span> *
|
|
2042
|
-
<span class='line'>2035</span> *
|
|
2043
|
-
<span class='line'>2036</span> *
|
|
2044
|
-
<span class='line'>2037</span> * },
|
|
2045
|
-
<span class='line'>2038</span> *
|
|
2046
|
-
<span class='line'>2039</span> *
|
|
2047
|
-
<span class='line'>2040</span> *
|
|
2048
|
-
<span class='line'>2041</span> *
|
|
2049
|
-
<span class='line'>2042</span> *
|
|
2050
|
-
<span class='line'>2043</span> *
|
|
2029
|
+
<span class='line'>2022</span> * @example
|
|
2030
|
+
<span class='line'>2023</span> * var bound = [-4, 6];
|
|
2031
|
+
<span class='line'>2024</span> * var view = board.create('view3d',
|
|
2032
|
+
<span class='line'>2025</span> * [[-4, -3], [8, 8],
|
|
2033
|
+
<span class='line'>2026</span> * [bound, bound, bound]],
|
|
2034
|
+
<span class='line'>2027</span> * {
|
|
2035
|
+
<span class='line'>2028</span> * projection: 'central',
|
|
2036
|
+
<span class='line'>2029</span> * trackball: {enabled:true},
|
|
2037
|
+
<span class='line'>2030</span> *
|
|
2038
|
+
<span class='line'>2031</span> * // Main axes
|
|
2039
|
+
<span class='line'>2032</span> * axesPosition: 'border',
|
|
2040
|
+
<span class='line'>2033</span> *
|
|
2041
|
+
<span class='line'>2034</span> * // Axes at the border
|
|
2042
|
+
<span class='line'>2035</span> * xAxisBorder: { ticks3d: { ticksDistance: 2} },
|
|
2043
|
+
<span class='line'>2036</span> * yAxisBorder: { ticks3d: { ticksDistance: 2} },
|
|
2044
|
+
<span class='line'>2037</span> * zAxisBorder: { ticks3d: { ticksDistance: 2} },
|
|
2045
|
+
<span class='line'>2038</span> *
|
|
2046
|
+
<span class='line'>2039</span> * xPlaneRear: {
|
|
2047
|
+
<span class='line'>2040</span> * fillColor: '#fff',
|
|
2048
|
+
<span class='line'>2041</span> * mesh3d: {visible: false}
|
|
2049
|
+
<span class='line'>2042</span> * },
|
|
2050
|
+
<span class='line'>2043</span> * yPlaneRear: {
|
|
2051
2051
|
<span class='line'>2044</span> * fillColor: '#fff',
|
|
2052
2052
|
<span class='line'>2045</span> * mesh3d: {visible: false}
|
|
2053
2053
|
<span class='line'>2046</span> * },
|
|
2054
|
-
<span class='line'>2047</span> *
|
|
2055
|
-
<span class='line'>2048</span> *
|
|
2056
|
-
<span class='line'>2049</span> *
|
|
2057
|
-
<span class='line'>2050</span> *
|
|
2058
|
-
<span class='line'>2051</span> *
|
|
2059
|
-
<span class='line'>2052</span> *
|
|
2060
|
-
<span class='line'>2053</span> *
|
|
2061
|
-
<span class='line'>2054</span> *
|
|
2062
|
-
<span class='line'>2055</span> *
|
|
2063
|
-
<span class='line'>2056</span> *
|
|
2064
|
-
<span class='line'>2057</span> *
|
|
2065
|
-
<span class='line'>2058</span> *
|
|
2066
|
-
<span class='line'>2059</span> *
|
|
2067
|
-
<span class='line'>2060</span> *
|
|
2068
|
-
<span class='line'>2061</span> *
|
|
2069
|
-
<span class='line'>2062</span> *
|
|
2070
|
-
<span class='line'>2063</span> *
|
|
2071
|
-
<span class='line'>2064</span> *
|
|
2072
|
-
<span class='line'>2065</span> *
|
|
2073
|
-
<span class='line'>2066</span> *
|
|
2074
|
-
<span class='line'>2067</span> *
|
|
2075
|
-
<span class='line'>2068</span> *
|
|
2076
|
-
<span class='line'>2069</span> *
|
|
2077
|
-
<span class='line'>2070</span> *
|
|
2078
|
-
<span class='line'>2071</span> *
|
|
2079
|
-
<span class='line'>2072</span> *
|
|
2080
|
-
<span class='line'>2073</span> *
|
|
2081
|
-
<span class='line'>2074</span> *
|
|
2082
|
-
<span class='line'>2075</span> *
|
|
2083
|
-
<span class='line'>2076</span> *
|
|
2084
|
-
<span class='line'>2077</span> *
|
|
2085
|
-
<span class='line'>2078</span> *
|
|
2086
|
-
<span class='line'>2079</span> *
|
|
2054
|
+
<span class='line'>2047</span> * zPlaneRear: {
|
|
2055
|
+
<span class='line'>2048</span> * fillColor: '#fff',
|
|
2056
|
+
<span class='line'>2049</span> * mesh3d: {visible: false}
|
|
2057
|
+
<span class='line'>2050</span> * },
|
|
2058
|
+
<span class='line'>2051</span> * xPlaneFront: {
|
|
2059
|
+
<span class='line'>2052</span> * visible: true,
|
|
2060
|
+
<span class='line'>2053</span> * fillColor: '#fff',
|
|
2061
|
+
<span class='line'>2054</span> * mesh3d: {visible: false}
|
|
2062
|
+
<span class='line'>2055</span> * },
|
|
2063
|
+
<span class='line'>2056</span> * yPlaneFront: {
|
|
2064
|
+
<span class='line'>2057</span> * visible: true,
|
|
2065
|
+
<span class='line'>2058</span> * fillColor: '#fff',
|
|
2066
|
+
<span class='line'>2059</span> * mesh3d: {visible: false}
|
|
2067
|
+
<span class='line'>2060</span> * },
|
|
2068
|
+
<span class='line'>2061</span> * zPlaneFront: {
|
|
2069
|
+
<span class='line'>2062</span> * visible: true,
|
|
2070
|
+
<span class='line'>2063</span> * fillColor: '#fff',
|
|
2071
|
+
<span class='line'>2064</span> * mesh3d: {visible: false}
|
|
2072
|
+
<span class='line'>2065</span> * },
|
|
2073
|
+
<span class='line'>2066</span> *
|
|
2074
|
+
<span class='line'>2067</span> * // No axes on planes
|
|
2075
|
+
<span class='line'>2068</span> * xPlaneRearYAxis: {visible: false},
|
|
2076
|
+
<span class='line'>2069</span> * xPlaneRearZAxis: {visible: false},
|
|
2077
|
+
<span class='line'>2070</span> * yPlaneRearXAxis: {visible: false},
|
|
2078
|
+
<span class='line'>2071</span> * yPlaneRearZAxis: {visible: false},
|
|
2079
|
+
<span class='line'>2072</span> * zPlaneRearXAxis: {visible: false},
|
|
2080
|
+
<span class='line'>2073</span> * zPlaneRearYAxis: {visible: false},
|
|
2081
|
+
<span class='line'>2074</span> * xPlaneFrontYAxis: {visible: false},
|
|
2082
|
+
<span class='line'>2075</span> * xPlaneFrontZAxis: {visible: false},
|
|
2083
|
+
<span class='line'>2076</span> * yPlaneFrontXAxis: {visible: false},
|
|
2084
|
+
<span class='line'>2077</span> * yPlaneFrontZAxis: {visible: false},
|
|
2085
|
+
<span class='line'>2078</span> * zPlaneFrontXAxis: {visible: false},
|
|
2086
|
+
<span class='line'>2079</span> * zPlaneFrontYAxis: {visible: false}
|
|
2087
2087
|
<span class='line'>2080</span> *
|
|
2088
|
-
<span class='line'>2081</span> *
|
|
2089
|
-
<span class='line'>2082</span> *
|
|
2090
|
-
<span class='line'>2083</span> * (
|
|
2091
|
-
<span class='line'>2084</span> *
|
|
2092
|
-
<span class='line'>2085</span> *
|
|
2093
|
-
<span class='line'>2086</span> *
|
|
2094
|
-
<span class='line'>2087</span> *
|
|
2095
|
-
<span class='line'>2088</span> *
|
|
2096
|
-
<span class='line'>2089</span> *
|
|
2097
|
-
<span class='line'>2090</span> *
|
|
2098
|
-
<span class='line'>2091</span> *
|
|
2099
|
-
<span class='line'>2092</span> *
|
|
2100
|
-
<span class='line'>2093</span> *
|
|
2101
|
-
<span class='line'>2094</span> *
|
|
2102
|
-
<span class='line'>2095</span> *
|
|
2103
|
-
<span class='line'>2096</span> *
|
|
2104
|
-
<span class='line'>2097</span> *
|
|
2105
|
-
<span class='line'>2098</span> *
|
|
2106
|
-
<span class='line'>2099</span> *
|
|
2107
|
-
<span class='line'>2100</span> *
|
|
2108
|
-
<span class='line'>2101</span> *
|
|
2109
|
-
<span class='line'>2102</span> *
|
|
2110
|
-
<span class='line'>2103</span> *
|
|
2111
|
-
<span class='line'>2104</span> *
|
|
2112
|
-
<span class='line'>2105</span> *
|
|
2113
|
-
<span class='line'>2106</span> *
|
|
2114
|
-
<span class='line'>2107</span> *
|
|
2115
|
-
<span class='line'>2108</span> *
|
|
2116
|
-
<span class='line'>2109</span> * },
|
|
2117
|
-
<span class='line'>2110</span> *
|
|
2118
|
-
<span class='line'>2111</span> *
|
|
2119
|
-
<span class='line'>2112</span> *
|
|
2120
|
-
<span class='line'>2113</span> *
|
|
2121
|
-
<span class='line'>2114</span> *
|
|
2122
|
-
<span class='line'>2115</span> *
|
|
2088
|
+
<span class='line'>2081</span> * });
|
|
2089
|
+
<span class='line'>2082</span> *
|
|
2090
|
+
<span class='line'>2083</span> * var curve = view.create('curve3d', [
|
|
2091
|
+
<span class='line'>2084</span> * (t) => (2 + Math.cos(3 * t)) * Math.cos(2 * t),
|
|
2092
|
+
<span class='line'>2085</span> * (t) => (2 + Math.cos(3 * t)) * Math.sin(2 * t),
|
|
2093
|
+
<span class='line'>2086</span> * (t) => Math.sin(3 * t),
|
|
2094
|
+
<span class='line'>2087</span> * [-Math.PI, Math.PI]
|
|
2095
|
+
<span class='line'>2088</span> * ], { strokeWidth: 4 });
|
|
2096
|
+
<span class='line'>2089</span> *
|
|
2097
|
+
<span class='line'>2090</span> * </pre><div id="JXGbd41a4e3-1bf7-4764-b675-98b01667103b" class="jxgbox" style="width: 300px; height: 300px;"></div>
|
|
2098
|
+
<span class='line'>2091</span> * <script type="text/javascript">
|
|
2099
|
+
<span class='line'>2092</span> * (function() {
|
|
2100
|
+
<span class='line'>2093</span> * var board = JXG.JSXGraph.initBoard('JXGbd41a4e3-1bf7-4764-b675-98b01667103b',
|
|
2101
|
+
<span class='line'>2094</span> * {boundingbox: [-8, 8, 8,-8], axis: false, pan: {enabled: false}, showcopyright: false, shownavigation: false});
|
|
2102
|
+
<span class='line'>2095</span> * var bound = [-4, 6];
|
|
2103
|
+
<span class='line'>2096</span> * var view = board.create('view3d',
|
|
2104
|
+
<span class='line'>2097</span> * [[-4, -3], [8, 8],
|
|
2105
|
+
<span class='line'>2098</span> * [bound, bound, bound]],
|
|
2106
|
+
<span class='line'>2099</span> * {
|
|
2107
|
+
<span class='line'>2100</span> * projection: 'central',
|
|
2108
|
+
<span class='line'>2101</span> * trackball: {enabled:true},
|
|
2109
|
+
<span class='line'>2102</span> *
|
|
2110
|
+
<span class='line'>2103</span> * // Main axes
|
|
2111
|
+
<span class='line'>2104</span> * axesPosition: 'border',
|
|
2112
|
+
<span class='line'>2105</span> *
|
|
2113
|
+
<span class='line'>2106</span> * // Axes at the border
|
|
2114
|
+
<span class='line'>2107</span> * xAxisBorder: { ticks3d: { ticksDistance: 2} },
|
|
2115
|
+
<span class='line'>2108</span> * yAxisBorder: { ticks3d: { ticksDistance: 2} },
|
|
2116
|
+
<span class='line'>2109</span> * zAxisBorder: { ticks3d: { ticksDistance: 2} },
|
|
2117
|
+
<span class='line'>2110</span> *
|
|
2118
|
+
<span class='line'>2111</span> * xPlaneRear: {
|
|
2119
|
+
<span class='line'>2112</span> * fillColor: '#fff',
|
|
2120
|
+
<span class='line'>2113</span> * mesh3d: {visible: false}
|
|
2121
|
+
<span class='line'>2114</span> * },
|
|
2122
|
+
<span class='line'>2115</span> * yPlaneRear: {
|
|
2123
2123
|
<span class='line'>2116</span> * fillColor: '#fff',
|
|
2124
2124
|
<span class='line'>2117</span> * mesh3d: {visible: false}
|
|
2125
2125
|
<span class='line'>2118</span> * },
|
|
2126
|
-
<span class='line'>2119</span> *
|
|
2127
|
-
<span class='line'>2120</span> *
|
|
2128
|
-
<span class='line'>2121</span> *
|
|
2129
|
-
<span class='line'>2122</span> *
|
|
2130
|
-
<span class='line'>2123</span> *
|
|
2131
|
-
<span class='line'>2124</span> *
|
|
2132
|
-
<span class='line'>2125</span> *
|
|
2133
|
-
<span class='line'>2126</span> *
|
|
2134
|
-
<span class='line'>2127</span> *
|
|
2135
|
-
<span class='line'>2128</span> *
|
|
2136
|
-
<span class='line'>2129</span> *
|
|
2137
|
-
<span class='line'>2130</span> *
|
|
2138
|
-
<span class='line'>2131</span> *
|
|
2139
|
-
<span class='line'>2132</span> *
|
|
2140
|
-
<span class='line'>2133</span> *
|
|
2141
|
-
<span class='line'>2134</span> *
|
|
2142
|
-
<span class='line'>2135</span> *
|
|
2143
|
-
<span class='line'>2136</span> *
|
|
2144
|
-
<span class='line'>2137</span> *
|
|
2145
|
-
<span class='line'>2138</span> *
|
|
2146
|
-
<span class='line'>2139</span> *
|
|
2147
|
-
<span class='line'>2140</span> *
|
|
2148
|
-
<span class='line'>2141</span> *
|
|
2149
|
-
<span class='line'>2142</span> *
|
|
2150
|
-
<span class='line'>2143</span> *
|
|
2151
|
-
<span class='line'>2144</span> *
|
|
2152
|
-
<span class='line'>2145</span> *
|
|
2153
|
-
<span class='line'>2146</span> *
|
|
2154
|
-
<span class='line'>2147</span> *
|
|
2155
|
-
<span class='line'>2148</span> *
|
|
2156
|
-
<span class='line'>2149</span> *
|
|
2157
|
-
<span class='line'>2150</span> *
|
|
2158
|
-
<span class='line'>2151</span> *
|
|
2159
|
-
<span class='line'>2152</span> *
|
|
2160
|
-
<span class='line'>2153</span> *
|
|
2161
|
-
<span class='line'>2154</span> *
|
|
2162
|
-
<span class='line'>2155</span> *
|
|
2163
|
-
<span class='line'>2156</span> *
|
|
2164
|
-
<span class='line'>2157</span> *
|
|
2165
|
-
<span class='line'>2158</span> *
|
|
2166
|
-
<span class='line'>2159</span> *
|
|
2167
|
-
<span class='line'>2160</span> *
|
|
2168
|
-
<span class='line'>2161</span> *
|
|
2169
|
-
<span class='line'>2162</span> *
|
|
2170
|
-
<span class='line'>2163</span> *
|
|
2171
|
-
<span class='line'>2164</span> *
|
|
2172
|
-
<span class='line'>2165</span> *
|
|
2173
|
-
<span class='line'>2166</span> *
|
|
2174
|
-
<span class='line'>2167</span> *
|
|
2175
|
-
<span class='line'>2168</span> *
|
|
2176
|
-
<span class='line'>2169</span> *
|
|
2177
|
-
<span class='line'>2170</span> *
|
|
2178
|
-
<span class='line'>2171</span> *
|
|
2179
|
-
<span class='line'>2172</span> *
|
|
2180
|
-
<span class='line'>2173</span> *
|
|
2181
|
-
<span class='line'>2174</span> *
|
|
2182
|
-
<span class='line'>2175</span> *
|
|
2183
|
-
<span class='line'>2176</span> *
|
|
2184
|
-
<span class='line'>2177</span> *
|
|
2185
|
-
<span class='line'>2178</span> *
|
|
2186
|
-
<span class='line'>2179</span> *
|
|
2187
|
-
<span class='line'>2180</span> *
|
|
2188
|
-
<span class='line'>2181</span> *
|
|
2189
|
-
<span class='line'>2182</span> *
|
|
2190
|
-
<span class='line'>2183</span> *
|
|
2191
|
-
<span class='line'>2184</span> *
|
|
2192
|
-
<span class='line'>2185</span> *
|
|
2193
|
-
<span class='line'>2186</span> *
|
|
2194
|
-
<span class='line'>2187</span> *
|
|
2195
|
-
<span class='line'>2188</span> *
|
|
2196
|
-
<span class='line'>2189</span> *
|
|
2197
|
-
<span class='line'>2190</span> *
|
|
2198
|
-
<span class='line'>2191</span> *
|
|
2199
|
-
<span class='line'>2192</span> *
|
|
2200
|
-
<span class='line'>2193</span> *
|
|
2201
|
-
<span class='line'>2194</span> *
|
|
2202
|
-
<span class='line'>2195</span> *
|
|
2203
|
-
<span class='line'>2196</span> *
|
|
2204
|
-
<span class='line'>2197</span> *
|
|
2205
|
-
<span class='line'>2198</span> *
|
|
2206
|
-
<span class='line'>2199</span> *
|
|
2207
|
-
<span class='line'>2200</span> *
|
|
2208
|
-
<span class='line'>2201</span> *
|
|
2209
|
-
<span class='line'>2202</span> *
|
|
2210
|
-
<span class='line'>2203</span> *
|
|
2211
|
-
<span class='line'>2204</span> *
|
|
2212
|
-
<span class='line'>2205</span> *
|
|
2213
|
-
<span class='line'>2206</span> *
|
|
2214
|
-
<span class='line'>2207</span> *
|
|
2215
|
-
<span class='line'>2208</span> *
|
|
2216
|
-
<span class='line'>2209</span> *
|
|
2217
|
-
<span class='line'>2210</span>
|
|
2218
|
-
<span class='line'>2211</span>
|
|
2219
|
-
<span class='line'>2212</span>
|
|
2220
|
-
<span class='line'>2213</span>
|
|
2221
|
-
<span class='line'>2214</span>
|
|
2222
|
-
<span class='line'>2215</span>
|
|
2223
|
-
<span class='line'>2216</span>
|
|
2224
|
-
<span class='line'>2217</span>
|
|
2225
|
-
<span class='line'>2218</span>
|
|
2226
|
-
<span class='line'>2219</span>
|
|
2227
|
-
<span class='line'>2220</span>
|
|
2228
|
-
<span class='line'>2221</span> </span><span class="WHIT"> </span><span class="NAME">
|
|
2229
|
-
<span class='line'>2222</span> </span><span class="WHIT">
|
|
2230
|
-
<span class='line'>2223</span> </span><span class="WHIT">
|
|
2231
|
-
<span class='line'>2224</span> </span><span class="WHIT">
|
|
2126
|
+
<span class='line'>2119</span> * zPlaneRear: {
|
|
2127
|
+
<span class='line'>2120</span> * fillColor: '#fff',
|
|
2128
|
+
<span class='line'>2121</span> * mesh3d: {visible: false}
|
|
2129
|
+
<span class='line'>2122</span> * },
|
|
2130
|
+
<span class='line'>2123</span> * xPlaneFront: {
|
|
2131
|
+
<span class='line'>2124</span> * visible: true,
|
|
2132
|
+
<span class='line'>2125</span> * fillColor: '#fff',
|
|
2133
|
+
<span class='line'>2126</span> * mesh3d: {visible: false}
|
|
2134
|
+
<span class='line'>2127</span> * },
|
|
2135
|
+
<span class='line'>2128</span> * yPlaneFront: {
|
|
2136
|
+
<span class='line'>2129</span> * visible: true,
|
|
2137
|
+
<span class='line'>2130</span> * fillColor: '#fff',
|
|
2138
|
+
<span class='line'>2131</span> * mesh3d: {visible: false}
|
|
2139
|
+
<span class='line'>2132</span> * },
|
|
2140
|
+
<span class='line'>2133</span> * zPlaneFront: {
|
|
2141
|
+
<span class='line'>2134</span> * visible: true,
|
|
2142
|
+
<span class='line'>2135</span> * fillColor: '#fff',
|
|
2143
|
+
<span class='line'>2136</span> * mesh3d: {visible: false}
|
|
2144
|
+
<span class='line'>2137</span> * },
|
|
2145
|
+
<span class='line'>2138</span> *
|
|
2146
|
+
<span class='line'>2139</span> * // No axes on planes
|
|
2147
|
+
<span class='line'>2140</span> * xPlaneRearYAxis: {visible: false},
|
|
2148
|
+
<span class='line'>2141</span> * xPlaneRearZAxis: {visible: false},
|
|
2149
|
+
<span class='line'>2142</span> * yPlaneRearXAxis: {visible: false},
|
|
2150
|
+
<span class='line'>2143</span> * yPlaneRearZAxis: {visible: false},
|
|
2151
|
+
<span class='line'>2144</span> * zPlaneRearXAxis: {visible: false},
|
|
2152
|
+
<span class='line'>2145</span> * zPlaneRearYAxis: {visible: false},
|
|
2153
|
+
<span class='line'>2146</span> * xPlaneFrontYAxis: {visible: false},
|
|
2154
|
+
<span class='line'>2147</span> * xPlaneFrontZAxis: {visible: false},
|
|
2155
|
+
<span class='line'>2148</span> * yPlaneFrontXAxis: {visible: false},
|
|
2156
|
+
<span class='line'>2149</span> * yPlaneFrontZAxis: {visible: false},
|
|
2157
|
+
<span class='line'>2150</span> * zPlaneFrontXAxis: {visible: false},
|
|
2158
|
+
<span class='line'>2151</span> * zPlaneFrontYAxis: {visible: false}
|
|
2159
|
+
<span class='line'>2152</span> *
|
|
2160
|
+
<span class='line'>2153</span> * });
|
|
2161
|
+
<span class='line'>2154</span> *
|
|
2162
|
+
<span class='line'>2155</span> * var curve = view.create('curve3d', [
|
|
2163
|
+
<span class='line'>2156</span> * (t) => (2 + Math.cos(3 * t)) * Math.cos(2 * t),
|
|
2164
|
+
<span class='line'>2157</span> * (t) => (2 + Math.cos(3 * t)) * Math.sin(2 * t),
|
|
2165
|
+
<span class='line'>2158</span> * (t) => Math.sin(3 * t),
|
|
2166
|
+
<span class='line'>2159</span> * [-Math.PI, Math.PI]
|
|
2167
|
+
<span class='line'>2160</span> * ], { strokeWidth: 4 });
|
|
2168
|
+
<span class='line'>2161</span> * })();
|
|
2169
|
+
<span class='line'>2162</span> *
|
|
2170
|
+
<span class='line'>2163</span> * </script><pre>
|
|
2171
|
+
<span class='line'>2164</span> *
|
|
2172
|
+
<span class='line'>2165</span> * @example
|
|
2173
|
+
<span class='line'>2166</span> * var bound = [-5, 5];
|
|
2174
|
+
<span class='line'>2167</span> * var view = board.create('view3d',
|
|
2175
|
+
<span class='line'>2168</span> * [[-6, -3],
|
|
2176
|
+
<span class='line'>2169</span> * [8, 8],
|
|
2177
|
+
<span class='line'>2170</span> * [bound, bound, bound]],
|
|
2178
|
+
<span class='line'>2171</span> * {
|
|
2179
|
+
<span class='line'>2172</span> * // Main axes
|
|
2180
|
+
<span class='line'>2173</span> * axesPosition: 'center',
|
|
2181
|
+
<span class='line'>2174</span> * xAxis: { strokeColor: 'blue', strokeWidth: 3},
|
|
2182
|
+
<span class='line'>2175</span> *
|
|
2183
|
+
<span class='line'>2176</span> * // Planes
|
|
2184
|
+
<span class='line'>2177</span> * xPlaneRear: { fillColor: 'yellow', mesh3d: {visible: false}},
|
|
2185
|
+
<span class='line'>2178</span> * yPlaneFront: { visible: true, fillColor: 'blue'},
|
|
2186
|
+
<span class='line'>2179</span> *
|
|
2187
|
+
<span class='line'>2180</span> * // Axes on planes
|
|
2188
|
+
<span class='line'>2181</span> * xPlaneRearYAxis: {strokeColor: 'red'},
|
|
2189
|
+
<span class='line'>2182</span> * xPlaneRearZAxis: {strokeColor: 'red'},
|
|
2190
|
+
<span class='line'>2183</span> *
|
|
2191
|
+
<span class='line'>2184</span> * yPlaneFrontXAxis: {strokeColor: 'blue'},
|
|
2192
|
+
<span class='line'>2185</span> * yPlaneFrontZAxis: {strokeColor: 'blue'},
|
|
2193
|
+
<span class='line'>2186</span> *
|
|
2194
|
+
<span class='line'>2187</span> * zPlaneFrontXAxis: {visible: false},
|
|
2195
|
+
<span class='line'>2188</span> * zPlaneFrontYAxis: {visible: false}
|
|
2196
|
+
<span class='line'>2189</span> * });
|
|
2197
|
+
<span class='line'>2190</span> *
|
|
2198
|
+
<span class='line'>2191</span> * </pre><div id="JXGdd06d90e-be5d-4531-8f0b-65fc30b1a7c7" class="jxgbox" style="width: 500px; height: 500px;"></div>
|
|
2199
|
+
<span class='line'>2192</span> * <script type="text/javascript">
|
|
2200
|
+
<span class='line'>2193</span> * (function() {
|
|
2201
|
+
<span class='line'>2194</span> * var board = JXG.JSXGraph.initBoard('JXGdd06d90e-be5d-4531-8f0b-65fc30b1a7c7',
|
|
2202
|
+
<span class='line'>2195</span> * {boundingbox: [-8, 8, 8,-8], axis: false, pan: {enabled: false}, showcopyright: false, shownavigation: false});
|
|
2203
|
+
<span class='line'>2196</span> * var bound = [-5, 5];
|
|
2204
|
+
<span class='line'>2197</span> * var view = board.create('view3d',
|
|
2205
|
+
<span class='line'>2198</span> * [[-6, -3], [8, 8],
|
|
2206
|
+
<span class='line'>2199</span> * [bound, bound, bound]],
|
|
2207
|
+
<span class='line'>2200</span> * {
|
|
2208
|
+
<span class='line'>2201</span> * // Main axes
|
|
2209
|
+
<span class='line'>2202</span> * axesPosition: 'center',
|
|
2210
|
+
<span class='line'>2203</span> * xAxis: { strokeColor: 'blue', strokeWidth: 3},
|
|
2211
|
+
<span class='line'>2204</span> * // Planes
|
|
2212
|
+
<span class='line'>2205</span> * xPlaneRear: { fillColor: 'yellow', mesh3d: {visible: false}},
|
|
2213
|
+
<span class='line'>2206</span> * yPlaneFront: { visible: true, fillColor: 'blue'},
|
|
2214
|
+
<span class='line'>2207</span> * // Axes on planes
|
|
2215
|
+
<span class='line'>2208</span> * xPlaneRearYAxis: {strokeColor: 'red'},
|
|
2216
|
+
<span class='line'>2209</span> * xPlaneRearZAxis: {strokeColor: 'red'},
|
|
2217
|
+
<span class='line'>2210</span> * yPlaneFrontXAxis: {strokeColor: 'blue'},
|
|
2218
|
+
<span class='line'>2211</span> * yPlaneFrontZAxis: {strokeColor: 'blue'},
|
|
2219
|
+
<span class='line'>2212</span> * zPlaneFrontXAxis: {visible: false},
|
|
2220
|
+
<span class='line'>2213</span> * zPlaneFrontYAxis: {visible: false}
|
|
2221
|
+
<span class='line'>2214</span> * });
|
|
2222
|
+
<span class='line'>2215</span> * })();
|
|
2223
|
+
<span class='line'>2216</span> *
|
|
2224
|
+
<span class='line'>2217</span> * </script><pre>
|
|
2225
|
+
<span class='line'>2218</span> *
|
|
2226
|
+
<span class='line'>2219</span> */</span><span class="WHIT">
|
|
2227
|
+
<span class='line'>2220</span> </span><span class="NAME">JXG.createView3D</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">board</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">parents</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">attributes</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
|
2228
|
+
<span class='line'>2221</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">view</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">attr</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">attr_az</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">attr_el</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">attr_bank</span><span class="PUNC">,</span><span class="WHIT">
|
|
2229
|
+
<span class='line'>2222</span> </span><span class="WHIT"> </span><span class="NAME">x</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">y</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">w</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">h</span><span class="PUNC">,</span><span class="WHIT">
|
|
2230
|
+
<span class='line'>2223</span> </span><span class="WHIT"> </span><span class="NAME">coords</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">parents</span><span class="PUNC">[</span><span class="NUMB">0</span><span class="PUNC">]</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="COMM">// llft corner</span><span class="WHIT">
|
|
2231
|
+
<span class='line'>2224</span> </span><span class="WHIT"> </span><span class="NAME">size</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">parents</span><span class="PUNC">[</span><span class="NUMB">1</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="COMM">// [w, h]</span><span class="WHIT">
|
|
2232
2232
|
<span class='line'>2225</span>
|
|
2233
|
-
<span class='line'>2226</span> </span><span class="WHIT"> </span><span class="NAME">
|
|
2234
|
-
<span class='line'>2227</span> </span><span class="WHIT"> </span><span class="NAME">
|
|
2235
|
-
<span class='line'>2228</span>
|
|
2236
|
-
<span class='line'>2229</span>
|
|
2237
|
-
<span class='line'>2230</span> </span><span class="WHIT"> </span><span class="NAME">
|
|
2238
|
-
<span class='line'>2231</span>
|
|
2239
|
-
<span class='line'>2232</span> </span><span class="WHIT"> </span><span class="NAME">
|
|
2240
|
-
<span class='line'>2233</span> </span><span class="WHIT"> </span><span class="NAME">
|
|
2233
|
+
<span class='line'>2226</span> </span><span class="WHIT"> </span><span class="NAME">attr</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">Type.copyAttributes</span><span class="PUNC">(</span><span class="NAME">attributes</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">board.options</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">'view3d'</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
2234
|
+
<span class='line'>2227</span> </span><span class="WHIT"> </span><span class="NAME">view</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">new</span><span class="WHIT"> </span><span class="NAME">JXG.View3D</span><span class="PUNC">(</span><span class="NAME">board</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">parents</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">attr</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
2235
|
+
<span class='line'>2228</span> </span><span class="WHIT"> </span><span class="NAME">view.defaultAxes</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">view.create</span><span class="PUNC">(</span><span class="STRN">'axes3d'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="PUNC">[</span><span class="PUNC">]</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">attr</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
2236
|
+
<span class='line'>2229</span>
|
|
2237
|
+
<span class='line'>2230</span> </span><span class="WHIT"> </span><span class="NAME">x</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">coords</span><span class="PUNC">[</span><span class="NUMB">0</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
|
2238
|
+
<span class='line'>2231</span> </span><span class="WHIT"> </span><span class="NAME">y</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">coords</span><span class="PUNC">[</span><span class="NUMB">1</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
|
2239
|
+
<span class='line'>2232</span> </span><span class="WHIT"> </span><span class="NAME">w</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">size</span><span class="PUNC">[</span><span class="NUMB">0</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
|
2240
|
+
<span class='line'>2233</span> </span><span class="WHIT"> </span><span class="NAME">h</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">size</span><span class="PUNC">[</span><span class="NUMB">1</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
|
2241
2241
|
<span class='line'>2234</span>
|
|
2242
|
-
<span class='line'>2235</span> </span><span class="WHIT"> </span><span class="
|
|
2243
|
-
<span class='line'>2236</span>
|
|
2244
|
-
<span class='line'>2237</span>
|
|
2245
|
-
<span class='line'>2238</span>
|
|
2246
|
-
<span class='line'>2239</span>
|
|
2247
|
-
<span class='line'>2240</span>
|
|
2248
|
-
<span class='line'>2241</span> </span><span class="WHIT">
|
|
2249
|
-
<span class='line'>2242</span> </span><span class="WHIT">
|
|
2250
|
-
<span class='line'>2243</span>
|
|
2251
|
-
<span class='line'>2244</span> </span><span class="WHIT">
|
|
2252
|
-
<span class='line'>2245</span>
|
|
2253
|
-
<span class='line'>2246</span>
|
|
2254
|
-
<span class='line'>2247</span>
|
|
2255
|
-
<span class='line'>2248</span>
|
|
2256
|
-
<span class='line'>2249</span> </span><span class="WHIT">
|
|
2257
|
-
<span class='line'>2250</span> </span><span class="WHIT"> </span><span class="
|
|
2258
|
-
<span class='line'>2251</span> </span><span class="WHIT"> </span><span class="
|
|
2259
|
-
<span class='line'>2252</span> </span><span class="WHIT">
|
|
2260
|
-
<span class='line'>2253</span> </span><span class="WHIT">
|
|
2261
|
-
<span class='line'>2254</span> </span><span class="WHIT">
|
|
2262
|
-
<span class='line'>2255</span>
|
|
2263
|
-
<span class='line'>2256</span> </span><span class="WHIT">
|
|
2264
|
-
<span class='line'>2257</span>
|
|
2265
|
-
<span class='line'>2258</span>
|
|
2266
|
-
<span class='line'>2259</span>
|
|
2267
|
-
<span class='line'>2260</span>
|
|
2268
|
-
<span class='line'>2261</span>
|
|
2269
|
-
<span class='line'>2262</span> </span><span class="WHIT"> </span><span class="
|
|
2270
|
-
<span class='line'>2263</span> </span><span class="WHIT">
|
|
2271
|
-
<span class='line'>2264</span>
|
|
2272
|
-
<span class='line'>2265</span> </span><span class="WHIT">
|
|
2273
|
-
<span class='line'>2266</span>
|
|
2274
|
-
<span class='line'>2267</span>
|
|
2275
|
-
<span class='line'>2268</span>
|
|
2276
|
-
<span class='line'>2269</span>
|
|
2277
|
-
<span class='line'>2270</span>
|
|
2278
|
-
<span class='line'>2271</span> </span><span class="WHIT">
|
|
2279
|
-
<span class='line'>2272</span> </span><span class="WHIT"> </span><span class="
|
|
2280
|
-
<span class='line'>2273</span> </span><span class="WHIT">
|
|
2281
|
-
<span class='line'>2274</span> </span><span class="WHIT">
|
|
2282
|
-
<span class='line'>2275</span>
|
|
2283
|
-
<span class='line'>2276</span> </span><span class="WHIT">
|
|
2284
|
-
<span class='line'>2277</span>
|
|
2285
|
-
<span class='line'>2278</span>
|
|
2286
|
-
<span class='line'>2279</span>
|
|
2287
|
-
<span class='line'>2280</span>
|
|
2288
|
-
<span class='line'>2281</span>
|
|
2289
|
-
<span class='line'>2282</span> </span><span class="WHIT"> </span><span class="
|
|
2290
|
-
<span class='line'>2283</span> </span><span class="WHIT">
|
|
2291
|
-
<span class='line'>2284</span>
|
|
2292
|
-
<span class='line'>2285</span> </span><span class="WHIT">
|
|
2293
|
-
<span class='line'>2286</span>
|
|
2294
|
-
<span class='line'>2287</span>
|
|
2295
|
-
<span class='line'>2288</span>
|
|
2296
|
-
<span class='line'>2289</span>
|
|
2297
|
-
<span class='line'>2290</span>
|
|
2298
|
-
<span class='line'>2291</span> </span><span class="WHIT">
|
|
2299
|
-
<span class='line'>2292</span> </span><span class="WHIT"> </span><span class="
|
|
2300
|
-
<span class='line'>2293</span> </span><span class="WHIT"> </span><span class="
|
|
2301
|
-
<span class='line'>2294</span> </span><span class="WHIT">
|
|
2302
|
-
<span class='line'>2295</span> </span><span class="WHIT">
|
|
2303
|
-
<span class='line'>2296</span>
|
|
2304
|
-
<span class='line'>2297</span> </span><span class="WHIT">
|
|
2305
|
-
<span class='line'>2298</span> </span><span class="WHIT">
|
|
2306
|
-
<span class='line'>2299</span>
|
|
2307
|
-
<span class='line'>2300</span> </span><span class="WHIT">
|
|
2308
|
-
<span class='line'>2301</span> </span><span class="WHIT">
|
|
2309
|
-
<span class='line'>2302</span> </span><span class="WHIT"> </span><span class="
|
|
2310
|
-
<span class='line'>2303</span> </span><span class="WHIT">
|
|
2311
|
-
<span class='line'>2304</span> </span><span class="WHIT">
|
|
2312
|
-
<span class='line'>2305</span>
|
|
2313
|
-
<span class='line'>2306</span> </span><span class="WHIT">
|
|
2314
|
-
<span class='line'>2307</span>
|
|
2315
|
-
<span class='line'>2308</span> </span><span class="WHIT">
|
|
2316
|
-
<span class='line'>2309</span> </span><span class="WHIT">
|
|
2317
|
-
<span class='line'>2310</span>
|
|
2318
|
-
<span class='line'>2311</span> </span><span class="WHIT">
|
|
2319
|
-
<span class='line'>2312</span> </span><span class="WHIT">
|
|
2320
|
-
<span class='line'>2313</span> </span><span class="WHIT">
|
|
2321
|
-
<span class='line'>2314</span> </span><span class="WHIT"> </span><span class="PUNC">
|
|
2322
|
-
<span class='line'>2315</span> </span><span class="WHIT">
|
|
2323
|
-
<span class='line'>2316</span>
|
|
2324
|
-
<span class='line'>2317</span> </span><span class="WHIT">
|
|
2325
|
-
<span class='line'>2318</span>
|
|
2326
|
-
<span class='line'>2319</span> </span><span class="WHIT">
|
|
2327
|
-
<span class='line'>2320</span> </span><span class="WHIT"> </span><span class="
|
|
2328
|
-
<span class='line'>2321</span> </span><span class="WHIT">
|
|
2329
|
-
<span class='line'>2322</span> </span><span class="WHIT">
|
|
2330
|
-
<span class='line'>2323</span> </span><span class="WHIT">
|
|
2331
|
-
<span class='line'>2324</span> </span><span class="WHIT">
|
|
2332
|
-
<span class='line'>2325</span> </span><span class="WHIT"> </span><span class="
|
|
2333
|
-
<span class='line'>2326</span> </span><span class="WHIT">
|
|
2242
|
+
<span class='line'>2235</span> </span><span class="WHIT"> </span><span class="NAME">attr_az</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">Type.copyAttributes</span><span class="PUNC">(</span><span class="NAME">attr</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">board.options</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">'view3d'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">'az'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">'slider'</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
2243
|
+
<span class='line'>2236</span> </span><span class="WHIT"> </span><span class="NAME">attr_az.name</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="STRN">'az'</span><span class="PUNC">;</span><span class="WHIT">
|
|
2244
|
+
<span class='line'>2237</span>
|
|
2245
|
+
<span class='line'>2238</span> </span><span class="WHIT"> </span><span class="NAME">attr_el</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">Type.copyAttributes</span><span class="PUNC">(</span><span class="NAME">attr</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">board.options</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">'view3d'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">'el'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">'slider'</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
2246
|
+
<span class='line'>2239</span> </span><span class="WHIT"> </span><span class="NAME">attr_el.name</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="STRN">'el'</span><span class="PUNC">;</span><span class="WHIT">
|
|
2247
|
+
<span class='line'>2240</span>
|
|
2248
|
+
<span class='line'>2241</span> </span><span class="WHIT"> </span><span class="NAME">attr_bank</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">Type.copyAttributes</span><span class="PUNC">(</span><span class="NAME">attr</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">board.options</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">'view3d'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">'bank'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">'slider'</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
2249
|
+
<span class='line'>2242</span> </span><span class="WHIT"> </span><span class="NAME">attr_bank.name</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="STRN">'bank'</span><span class="PUNC">;</span><span class="WHIT">
|
|
2250
|
+
<span class='line'>2243</span>
|
|
2251
|
+
<span class='line'>2244</span> </span><span class="WHIT"> </span><span class="COMM">/**
|
|
2252
|
+
<span class='line'>2245</span> * Slider to adapt azimuth angle
|
|
2253
|
+
<span class='line'>2246</span> * @name JXG.View3D#az_slide
|
|
2254
|
+
<span class='line'>2247</span> * @type {Slider}
|
|
2255
|
+
<span class='line'>2248</span> */</span><span class="WHIT">
|
|
2256
|
+
<span class='line'>2249</span> </span><span class="WHIT"> </span><span class="NAME">view.az_slide</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">board.create</span><span class="PUNC">(</span><span class="WHIT">
|
|
2257
|
+
<span class='line'>2250</span> </span><span class="WHIT"> </span><span class="STRN">'slider'</span><span class="PUNC">,</span><span class="WHIT">
|
|
2258
|
+
<span class='line'>2251</span> </span><span class="WHIT"> </span><span class="PUNC">[</span><span class="WHIT">
|
|
2259
|
+
<span class='line'>2252</span> </span><span class="WHIT"> </span><span class="PUNC">[</span><span class="NAME">x</span><span class="WHIT"> </span><span class="PUNC">-</span><span class="WHIT"> </span><span class="NUMB">1</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">y</span><span class="WHIT"> </span><span class="PUNC">-</span><span class="WHIT"> </span><span class="NUMB">2</span><span class="PUNC">]</span><span class="PUNC">,</span><span class="WHIT">
|
|
2260
|
+
<span class='line'>2253</span> </span><span class="WHIT"> </span><span class="PUNC">[</span><span class="NAME">x</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">w</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NUMB">1</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">y</span><span class="WHIT"> </span><span class="PUNC">-</span><span class="WHIT"> </span><span class="NUMB">2</span><span class="PUNC">]</span><span class="PUNC">,</span><span class="WHIT">
|
|
2261
|
+
<span class='line'>2254</span> </span><span class="WHIT"> </span><span class="PUNC">[</span><span class="WHIT">
|
|
2262
|
+
<span class='line'>2255</span> </span><span class="WHIT"> </span><span class="NAME">Type.evaluate</span><span class="PUNC">(</span><span class="NAME">attr_az.min</span><span class="PUNC">)</span><span class="PUNC">,</span><span class="WHIT">
|
|
2263
|
+
<span class='line'>2256</span> </span><span class="WHIT"> </span><span class="NAME">Type.evaluate</span><span class="PUNC">(</span><span class="NAME">attr_az.start</span><span class="PUNC">)</span><span class="PUNC">,</span><span class="WHIT">
|
|
2264
|
+
<span class='line'>2257</span> </span><span class="WHIT"> </span><span class="NAME">Type.evaluate</span><span class="PUNC">(</span><span class="NAME">attr_az.max</span><span class="PUNC">)</span><span class="WHIT">
|
|
2265
|
+
<span class='line'>2258</span> </span><span class="WHIT"> </span><span class="PUNC">]</span><span class="WHIT">
|
|
2266
|
+
<span class='line'>2259</span> </span><span class="WHIT"> </span><span class="PUNC">]</span><span class="PUNC">,</span><span class="WHIT">
|
|
2267
|
+
<span class='line'>2260</span> </span><span class="WHIT"> </span><span class="NAME">attr_az</span><span class="WHIT">
|
|
2268
|
+
<span class='line'>2261</span> </span><span class="WHIT"> </span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
2269
|
+
<span class='line'>2262</span> </span><span class="WHIT"> </span><span class="COMM">// view.az_slide.inherits.push(view);</span><span class="WHIT">
|
|
2270
|
+
<span class='line'>2263</span> </span><span class="WHIT"> </span><span class="NAME">view.inherits.push</span><span class="PUNC">(</span><span class="NAME">view.az_slide</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
2271
|
+
<span class='line'>2264</span>
|
|
2272
|
+
<span class='line'>2265</span> </span><span class="WHIT"> </span><span class="COMM">/**
|
|
2273
|
+
<span class='line'>2266</span> * Slider to adapt elevation angle
|
|
2274
|
+
<span class='line'>2267</span> *
|
|
2275
|
+
<span class='line'>2268</span> * @name JXG.View3D#el_slide
|
|
2276
|
+
<span class='line'>2269</span> * @type {Slider}
|
|
2277
|
+
<span class='line'>2270</span> */</span><span class="WHIT">
|
|
2278
|
+
<span class='line'>2271</span> </span><span class="WHIT"> </span><span class="NAME">view.el_slide</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">board.create</span><span class="PUNC">(</span><span class="WHIT">
|
|
2279
|
+
<span class='line'>2272</span> </span><span class="WHIT"> </span><span class="STRN">'slider'</span><span class="PUNC">,</span><span class="WHIT">
|
|
2280
|
+
<span class='line'>2273</span> </span><span class="WHIT"> </span><span class="PUNC">[</span><span class="WHIT">
|
|
2281
|
+
<span class='line'>2274</span> </span><span class="WHIT"> </span><span class="PUNC">[</span><span class="NAME">x</span><span class="WHIT"> </span><span class="PUNC">-</span><span class="WHIT"> </span><span class="NUMB">1</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">y</span><span class="PUNC">]</span><span class="PUNC">,</span><span class="WHIT">
|
|
2282
|
+
<span class='line'>2275</span> </span><span class="WHIT"> </span><span class="PUNC">[</span><span class="NAME">x</span><span class="WHIT"> </span><span class="PUNC">-</span><span class="WHIT"> </span><span class="NUMB">1</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">y</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">h</span><span class="PUNC">]</span><span class="PUNC">,</span><span class="WHIT">
|
|
2283
|
+
<span class='line'>2276</span> </span><span class="WHIT"> </span><span class="PUNC">[</span><span class="WHIT">
|
|
2284
|
+
<span class='line'>2277</span> </span><span class="WHIT"> </span><span class="NAME">Type.evaluate</span><span class="PUNC">(</span><span class="NAME">attr_el.min</span><span class="PUNC">)</span><span class="PUNC">,</span><span class="WHIT">
|
|
2285
|
+
<span class='line'>2278</span> </span><span class="WHIT"> </span><span class="NAME">Type.evaluate</span><span class="PUNC">(</span><span class="NAME">attr_el.start</span><span class="PUNC">)</span><span class="PUNC">,</span><span class="WHIT">
|
|
2286
|
+
<span class='line'>2279</span> </span><span class="WHIT"> </span><span class="NAME">Type.evaluate</span><span class="PUNC">(</span><span class="NAME">attr_el.max</span><span class="PUNC">)</span><span class="PUNC">]</span><span class="WHIT">
|
|
2287
|
+
<span class='line'>2280</span> </span><span class="WHIT"> </span><span class="PUNC">]</span><span class="PUNC">,</span><span class="WHIT">
|
|
2288
|
+
<span class='line'>2281</span> </span><span class="WHIT"> </span><span class="NAME">attr_el</span><span class="WHIT">
|
|
2289
|
+
<span class='line'>2282</span> </span><span class="WHIT"> </span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
2290
|
+
<span class='line'>2283</span> </span><span class="WHIT"> </span><span class="NAME">view.inherits.push</span><span class="PUNC">(</span><span class="NAME">view.el_slide</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
2291
|
+
<span class='line'>2284</span>
|
|
2292
|
+
<span class='line'>2285</span> </span><span class="WHIT"> </span><span class="COMM">/**
|
|
2293
|
+
<span class='line'>2286</span> * Slider to adjust bank angle
|
|
2294
|
+
<span class='line'>2287</span> *
|
|
2295
|
+
<span class='line'>2288</span> * @name JXG.View3D#bank_slide
|
|
2296
|
+
<span class='line'>2289</span> * @type {Slider}
|
|
2297
|
+
<span class='line'>2290</span> */</span><span class="WHIT">
|
|
2298
|
+
<span class='line'>2291</span> </span><span class="WHIT"> </span><span class="NAME">view.bank_slide</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">board.create</span><span class="PUNC">(</span><span class="WHIT">
|
|
2299
|
+
<span class='line'>2292</span> </span><span class="WHIT"> </span><span class="STRN">'slider'</span><span class="PUNC">,</span><span class="WHIT">
|
|
2300
|
+
<span class='line'>2293</span> </span><span class="WHIT"> </span><span class="PUNC">[</span><span class="WHIT">
|
|
2301
|
+
<span class='line'>2294</span> </span><span class="WHIT"> </span><span class="PUNC">[</span><span class="NAME">x</span><span class="WHIT"> </span><span class="PUNC">-</span><span class="WHIT"> </span><span class="NUMB">1</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">y</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">h</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NUMB">2</span><span class="PUNC">]</span><span class="PUNC">,</span><span class="WHIT">
|
|
2302
|
+
<span class='line'>2295</span> </span><span class="WHIT"> </span><span class="PUNC">[</span><span class="NAME">x</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">w</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NUMB">1</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">y</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">h</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NUMB">2</span><span class="PUNC">]</span><span class="PUNC">,</span><span class="WHIT">
|
|
2303
|
+
<span class='line'>2296</span> </span><span class="WHIT"> </span><span class="PUNC">[</span><span class="WHIT">
|
|
2304
|
+
<span class='line'>2297</span> </span><span class="WHIT"> </span><span class="NAME">Type.evaluate</span><span class="PUNC">(</span><span class="NAME">attr_bank.min</span><span class="PUNC">)</span><span class="PUNC">,</span><span class="WHIT">
|
|
2305
|
+
<span class='line'>2298</span> </span><span class="WHIT"> </span><span class="NAME">Type.evaluate</span><span class="PUNC">(</span><span class="NAME">attr_bank.start</span><span class="PUNC">)</span><span class="PUNC">,</span><span class="WHIT">
|
|
2306
|
+
<span class='line'>2299</span> </span><span class="WHIT"> </span><span class="NAME">Type.evaluate</span><span class="PUNC">(</span><span class="NAME">attr_bank.max</span><span class="PUNC">)</span><span class="WHIT">
|
|
2307
|
+
<span class='line'>2300</span> </span><span class="WHIT"> </span><span class="PUNC">]</span><span class="WHIT">
|
|
2308
|
+
<span class='line'>2301</span> </span><span class="WHIT"> </span><span class="PUNC">]</span><span class="PUNC">,</span><span class="WHIT">
|
|
2309
|
+
<span class='line'>2302</span> </span><span class="WHIT"> </span><span class="NAME">attr_bank</span><span class="WHIT">
|
|
2310
|
+
<span class='line'>2303</span> </span><span class="WHIT"> </span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
2311
|
+
<span class='line'>2304</span> </span><span class="WHIT"> </span><span class="NAME">view.inherits.push</span><span class="PUNC">(</span><span class="NAME">view.bank_slide</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
2312
|
+
<span class='line'>2305</span>
|
|
2313
|
+
<span class='line'>2306</span> </span><span class="WHIT"> </span><span class="COMM">// Set special infobox attributes of view3d.infobox</span><span class="WHIT">
|
|
2314
|
+
<span class='line'>2307</span> </span><span class="WHIT"> </span><span class="COMM">// Using setAttribute() is not possible here, since we have to</span><span class="WHIT">
|
|
2315
|
+
<span class='line'>2308</span> </span><span class="WHIT"> </span><span class="COMM">// avoid a call of board.update().</span><span class="WHIT">
|
|
2316
|
+
<span class='line'>2309</span> </span><span class="WHIT"> </span><span class="NAME">view.board.infobox.visProp</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">Type.merge</span><span class="PUNC">(</span><span class="NAME">view.board.infobox.visProp</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">attr.infobox</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
2317
|
+
<span class='line'>2310</span>
|
|
2318
|
+
<span class='line'>2311</span> </span><span class="WHIT"> </span><span class="COMM">// 3d infobox: drag direction and coordinates</span><span class="WHIT">
|
|
2319
|
+
<span class='line'>2312</span> </span><span class="WHIT"> </span><span class="NAME">view.board.highlightInfobox</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">x</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">y</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">el</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
|
2320
|
+
<span class='line'>2313</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">d</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">i</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">c3d</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">foot</span><span class="PUNC">,</span><span class="WHIT">
|
|
2321
|
+
<span class='line'>2314</span> </span><span class="WHIT"> </span><span class="NAME">pre</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="STRN">''</span><span class="PUNC">,</span><span class="WHIT">
|
|
2322
|
+
<span class='line'>2315</span> </span><span class="WHIT"> </span><span class="NAME">brd</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">el.board</span><span class="PUNC">,</span><span class="WHIT">
|
|
2323
|
+
<span class='line'>2316</span> </span><span class="WHIT"> </span><span class="NAME">arr</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">infobox</span><span class="PUNC">,</span><span class="WHIT">
|
|
2324
|
+
<span class='line'>2317</span> </span><span class="WHIT"> </span><span class="NAME">p</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">null</span><span class="PUNC">;</span><span class="WHIT">
|
|
2325
|
+
<span class='line'>2318</span>
|
|
2326
|
+
<span class='line'>2319</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">this.mode</span><span class="WHIT"> </span><span class="PUNC">===</span><span class="WHIT"> </span><span class="NAME">this.BOARD_MODE_DRAG</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
|
2327
|
+
<span class='line'>2320</span> </span><span class="WHIT"> </span><span class="COMM">// Drag direction is only shown during dragging</span><span class="WHIT">
|
|
2328
|
+
<span class='line'>2321</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">view.isVerticalDrag</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
|
2329
|
+
<span class='line'>2322</span> </span><span class="WHIT"> </span><span class="NAME">pre</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="STRN">'<span style="color:black; font-size:200%">\u21C5 </span>'</span><span class="PUNC">;</span><span class="WHIT">
|
|
2330
|
+
<span class='line'>2323</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
|
2331
|
+
<span class='line'>2324</span> </span><span class="WHIT"> </span><span class="NAME">pre</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="STRN">'<span style="color:black; font-size:200%">\u21C4 </span>'</span><span class="PUNC">;</span><span class="WHIT">
|
|
2332
|
+
<span class='line'>2325</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
|
2333
|
+
<span class='line'>2326</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
|
2334
2334
|
<span class='line'>2327</span>
|
|
2335
|
-
<span class='line'>2328</span> </span><span class="WHIT">
|
|
2336
|
-
<span class='line'>2329</span> </span><span class="WHIT">
|
|
2337
|
-
<span class='line'>2330</span> </span><span class="WHIT">
|
|
2338
|
-
<span class='line'>2331</span> </span><span class="WHIT">
|
|
2339
|
-
<span class='line'>2332</span> </span><span class="WHIT">
|
|
2340
|
-
<span class='line'>2333</span> </span><span class="WHIT"> </span><span class="
|
|
2341
|
-
<span class='line'>2334</span> </span><span class="WHIT">
|
|
2342
|
-
<span class='line'>2335</span> </span><span class="WHIT">
|
|
2343
|
-
<span class='line'>2336</span> </span><span class="WHIT">
|
|
2344
|
-
<span class='line'>2337</span> </span><span class="WHIT">
|
|
2345
|
-
<span class='line'>2338</span>
|
|
2346
|
-
<span class='line'>2339</span> </span><span class="WHIT">
|
|
2347
|
-
<span class='line'>2340</span> </span><span class="WHIT">
|
|
2348
|
-
<span class='line'>2341</span>
|
|
2349
|
-
<span class='line'>2342</span> </span><span class="WHIT">
|
|
2350
|
-
<span class='line'>2343</span> </span><span class="WHIT">
|
|
2351
|
-
<span class='line'>2344</span> </span><span class="WHIT">
|
|
2352
|
-
<span class='line'>2345</span> </span><span class="WHIT">
|
|
2353
|
-
<span class='line'>2346</span> </span><span class="WHIT">
|
|
2354
|
-
<span class='line'>2347</span> </span><span class="WHIT"> </span><span class="PUNC">
|
|
2355
|
-
<span class='line'>2348</span> </span><span class="WHIT">
|
|
2356
|
-
<span class='line'>2349</span> </span><span class="WHIT">
|
|
2357
|
-
<span class='line'>2350</span> </span><span class="WHIT">
|
|
2358
|
-
<span class='line'>2351</span> </span><span class="WHIT">
|
|
2359
|
-
<span class='line'>2352</span>
|
|
2360
|
-
<span class='line'>2353</span> </span><span class="WHIT">
|
|
2361
|
-
<span class='line'>2354</span>
|
|
2362
|
-
<span class='line'>2355</span>
|
|
2363
|
-
<span class='line'>2356</span> </span><span class="WHIT">
|
|
2364
|
-
<span class='line'>2357</span> </span><span class="WHIT">
|
|
2365
|
-
<span class='line'>2358</span>
|
|
2366
|
-
<span class='line'>2359</span> </span><span class="WHIT">
|
|
2367
|
-
<span class='line'>2360</span> </span><span class="WHIT">
|
|
2368
|
-
<span class='line'>2361</span> </span><span class="WHIT"> </span><span class="
|
|
2369
|
-
<span class='line'>2362</span> </span><span class="WHIT"> </span><span class="NAME">
|
|
2370
|
-
<span class='line'>2363</span>
|
|
2371
|
-
<span class='line'>2364</span> </span><span class="WHIT">
|
|
2372
|
-
<span class='line'>2365</span>
|
|
2373
|
-
<span class='line'>2366</span> </span><span class="WHIT">
|
|
2374
|
-
<span class='line'>2367</span> </span><span class="WHIT">
|
|
2375
|
-
<span class='line'>2368</span>
|
|
2376
|
-
<span class='line'>2369</span> </span><span class="WHIT">
|
|
2377
|
-
<span class='line'>2370</span> </span><span class="WHIT">
|
|
2378
|
-
<span class='line'>2371</span> </span><span class="WHIT">
|
|
2379
|
-
<span class='line'>2372</span> </span><span class="WHIT">
|
|
2380
|
-
<span class='line'>2373</span>
|
|
2381
|
-
<span class='line'>2374</span>
|
|
2382
|
-
<span class='line'>2375</span> </span><span class="WHIT">
|
|
2383
|
-
<span class='line'>2376</span> </span><span class="WHIT"> </span><span class="
|
|
2384
|
-
<span class='line'>2377</span> </span><span class="WHIT"> </span><span class="
|
|
2385
|
-
<span class='line'>2378</span> </span><span class="WHIT">
|
|
2386
|
-
<span class='line'>2379</span> </span><span class="WHIT">
|
|
2387
|
-
<span class='line'>2380</span> </span><span class="WHIT">
|
|
2388
|
-
<span class='line'>2381</span> </span><span class="WHIT"> </span><span class="
|
|
2389
|
-
<span class='line'>2382</span> </span><span class="WHIT"> </span><span class="
|
|
2390
|
-
<span class='line'>2383</span> </span><span class="WHIT"> </span><span class="PUNC">
|
|
2391
|
-
<span class='line'>2384</span>
|
|
2392
|
-
<span class='line'>2385</span> </span><span class="WHIT">
|
|
2393
|
-
<span class='line'>2386</span> </span><span class="WHIT">
|
|
2394
|
-
<span class='line'>2387</span> </span><span class="WHIT">
|
|
2395
|
-
<span class='line'>2388</span> </span><span class="WHIT"> </span><span class="
|
|
2396
|
-
<span class='line'>2389</span> </span><span class="WHIT"> </span><span class="NAME">neededKey</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">Type.evaluate</span><span class="PUNC">(</span><span class="NAME">view.visProp.
|
|
2397
|
-
<span class='line'>2390</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">neededKey</span><span class="WHIT"> </span><span class="PUNC">===</span><span class="WHIT"> </span><span class="STRN">'none'</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT">
|
|
2398
|
-
<span class='line'>2391</span> </span><span class="WHIT"> </span><span class="NAME">
|
|
2399
|
-
<span class='line'>2392</span> </span><span class="WHIT"> </span><span class="NAME">
|
|
2400
|
-
<span class='line'>2393</span> </span><span class="WHIT"> </span><span class="PUNC">
|
|
2401
|
-
<span class='line'>2394</span> </span><span class="WHIT">
|
|
2402
|
-
<span class='line'>2395</span> </span><span class="WHIT">
|
|
2403
|
-
<span class='line'>2396</span> </span><span class="WHIT"> </span><span class="
|
|
2404
|
-
<span class='line'>2397</span> </span><span class="WHIT">
|
|
2405
|
-
<span class='line'>2398</span> </span><span class="WHIT"> </span><span class="PUNC">
|
|
2406
|
-
<span class='line'>2399</span> </span><span class="WHIT"> </span><span class="NAME">
|
|
2407
|
-
<span class='line'>2400</span> </span><span class="WHIT"> </span><span class="NAME">
|
|
2408
|
-
<span class='line'>2401</span> </span><span class="WHIT">
|
|
2409
|
-
<span class='line'>2402</span>
|
|
2410
|
-
<span class='line'>2403</span> </span><span class="WHIT">
|
|
2411
|
-
<span class='line'>2404</span> </span><span class="WHIT">
|
|
2412
|
-
<span class='line'>2405</span> </span><span class="WHIT">
|
|
2413
|
-
<span class='line'>2406</span> </span><span class="WHIT"> </span><span class="
|
|
2414
|
-
<span class='line'>2407</span> </span><span class="WHIT"> </span><span class="NAME">
|
|
2415
|
-
<span class='line'>2408</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
|
2416
|
-
<span class='line'>2409</span> </span><span class="WHIT">
|
|
2417
|
-
<span class='line'>2410</span>
|
|
2418
|
-
<span class='line'>2411</span> </span><span class="WHIT">
|
|
2419
|
-
<span class='line'>2412</span>
|
|
2420
|
-
<span class='line'>2413</span>
|
|
2421
|
-
<span class='line'>2414</span> </span><span class="WHIT">
|
|
2422
|
-
<span class='line'>2415</span> </span><span class="WHIT">
|
|
2423
|
-
<span class='line'>2416</span> </span><span class="WHIT">
|
|
2424
|
-
<span class='line'>2417</span>
|
|
2425
|
-
<span class='line'>2418</span> </span><span class="WHIT">
|
|
2426
|
-
<span class='line'>2419</span> </span><span class="WHIT"> </span><span class="
|
|
2335
|
+
<span class='line'>2328</span> </span><span class="WHIT"> </span><span class="COMM">// Search 3D parent</span><span class="WHIT">
|
|
2336
|
+
<span class='line'>2329</span> </span><span class="WHIT"> </span><span class="KEYW">for</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC"><</span><span class="WHIT"> </span><span class="NAME">el.parents.length</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="PUNC">++</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
|
2337
|
+
<span class='line'>2330</span> </span><span class="WHIT"> </span><span class="NAME">p</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">brd.objects</span><span class="PUNC">[</span><span class="NAME">el.parents</span><span class="PUNC">[</span><span class="NAME">i</span><span class="PUNC">]</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
|
2338
|
+
<span class='line'>2331</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">p.is3D</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
|
2339
|
+
<span class='line'>2332</span> </span><span class="WHIT"> </span><span class="KEYW">break</span><span class="PUNC">;</span><span class="WHIT">
|
|
2340
|
+
<span class='line'>2333</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
|
2341
|
+
<span class='line'>2334</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
|
2342
|
+
<span class='line'>2335</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">p</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
|
2343
|
+
<span class='line'>2336</span> </span><span class="WHIT"> </span><span class="NAME">foot</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">[</span><span class="NUMB">1</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">p.coords</span><span class="PUNC">[</span><span class="NUMB">3</span><span class="PUNC">]</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
|
2344
|
+
<span class='line'>2337</span> </span><span class="WHIT"> </span><span class="NAME">view._w0</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">Mat.innerProduct</span><span class="PUNC">(</span><span class="NAME">view.matrix3D</span><span class="PUNC">[</span><span class="NUMB">0</span><span class="PUNC">]</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">foot</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NUMB">4</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
2345
|
+
<span class='line'>2338</span>
|
|
2346
|
+
<span class='line'>2339</span> </span><span class="WHIT"> </span><span class="NAME">c3d</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">view.project2DTo3DPlane</span><span class="PUNC">(</span><span class="NAME">p.element2D</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="PUNC">[</span><span class="NUMB">1</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NUMB">1</span><span class="PUNC">]</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">foot</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
2347
|
+
<span class='line'>2340</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="PUNC">!</span><span class="NAME">view.isInCube</span><span class="PUNC">(</span><span class="NAME">c3d</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
|
2348
|
+
<span class='line'>2341</span> </span><span class="WHIT"> </span><span class="NAME">view.board.highlightCustomInfobox</span><span class="PUNC">(</span><span class="STRN">''</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">p</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
2349
|
+
<span class='line'>2342</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="PUNC">;</span><span class="WHIT">
|
|
2350
|
+
<span class='line'>2343</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
|
2351
|
+
<span class='line'>2344</span> </span><span class="WHIT"> </span><span class="NAME">d</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">Type.evaluate</span><span class="PUNC">(</span><span class="NAME">p.visProp.infoboxdigits</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
2352
|
+
<span class='line'>2345</span> </span><span class="WHIT"> </span><span class="NAME">infobox</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">view.board.infobox</span><span class="PUNC">;</span><span class="WHIT">
|
|
2353
|
+
<span class='line'>2346</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">d</span><span class="WHIT"> </span><span class="PUNC">===</span><span class="WHIT"> </span><span class="STRN">'auto'</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
|
2354
|
+
<span class='line'>2347</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">infobox.useLocale</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
|
2355
|
+
<span class='line'>2348</span> </span><span class="WHIT"> </span><span class="NAME">arr</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">[</span><span class="NAME">pre</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">'('</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">infobox.formatNumberLocale</span><span class="PUNC">(</span><span class="NAME">p.X</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">' | '</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">infobox.formatNumberLocale</span><span class="PUNC">(</span><span class="NAME">p.Y</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">' | '</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">infobox.formatNumberLocale</span><span class="PUNC">(</span><span class="NAME">p.Z</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">')'</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
|
2356
|
+
<span class='line'>2349</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
|
2357
|
+
<span class='line'>2350</span> </span><span class="WHIT"> </span><span class="NAME">arr</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">[</span><span class="NAME">pre</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">'('</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">Type.autoDigits</span><span class="PUNC">(</span><span class="NAME">p.X</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">' | '</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">Type.autoDigits</span><span class="PUNC">(</span><span class="NAME">p.Y</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">' | '</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">Type.autoDigits</span><span class="PUNC">(</span><span class="NAME">p.Z</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">')'</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
|
2358
|
+
<span class='line'>2351</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
|
2359
|
+
<span class='line'>2352</span>
|
|
2360
|
+
<span class='line'>2353</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
|
2361
|
+
<span class='line'>2354</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">infobox.useLocale</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
|
2362
|
+
<span class='line'>2355</span> </span><span class="WHIT"> </span><span class="NAME">arr</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">[</span><span class="NAME">pre</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">'('</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">infobox.formatNumberLocale</span><span class="PUNC">(</span><span class="NAME">p.X</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">d</span><span class="PUNC">)</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">' | '</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">infobox.formatNumberLocale</span><span class="PUNC">(</span><span class="NAME">p.Y</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">d</span><span class="PUNC">)</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">' | '</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">infobox.formatNumberLocale</span><span class="PUNC">(</span><span class="NAME">p.Z</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">d</span><span class="PUNC">)</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">')'</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
|
2363
|
+
<span class='line'>2356</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
|
2364
|
+
<span class='line'>2357</span> </span><span class="WHIT"> </span><span class="NAME">arr</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">[</span><span class="NAME">pre</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">'('</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">Type.toFixed</span><span class="PUNC">(</span><span class="NAME">p.X</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">d</span><span class="PUNC">)</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">' | '</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">Type.toFixed</span><span class="PUNC">(</span><span class="NAME">p.Y</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">d</span><span class="PUNC">)</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">' | '</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">Type.toFixed</span><span class="PUNC">(</span><span class="NAME">p.Z</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">d</span><span class="PUNC">)</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">')'</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
|
2365
|
+
<span class='line'>2358</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
|
2366
|
+
<span class='line'>2359</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
|
2367
|
+
<span class='line'>2360</span> </span><span class="WHIT"> </span><span class="NAME">view.board.highlightCustomInfobox</span><span class="PUNC">(</span><span class="NAME">arr.join</span><span class="PUNC">(</span><span class="STRN">''</span><span class="PUNC">)</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">p</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
2368
|
+
<span class='line'>2361</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
|
2369
|
+
<span class='line'>2362</span> </span><span class="WHIT"> </span><span class="NAME">view.board.highlightCustomInfobox</span><span class="PUNC">(</span><span class="STRN">'('</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">x</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">', '</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">y</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">')'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">el</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
2370
|
+
<span class='line'>2363</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
|
2371
|
+
<span class='line'>2364</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
|
2372
|
+
<span class='line'>2365</span>
|
|
2373
|
+
<span class='line'>2366</span> </span><span class="WHIT"> </span><span class="COMM">// Hack needed to enable addEvent for view3D:</span><span class="WHIT">
|
|
2374
|
+
<span class='line'>2367</span> </span><span class="WHIT"> </span><span class="NAME">view.BOARD_MODE_NONE</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NUMB">0x0000</span><span class="PUNC">;</span><span class="WHIT">
|
|
2375
|
+
<span class='line'>2368</span>
|
|
2376
|
+
<span class='line'>2369</span> </span><span class="WHIT"> </span><span class="COMM">// Add events for the keyboard navigation</span><span class="WHIT">
|
|
2377
|
+
<span class='line'>2370</span> </span><span class="WHIT"> </span><span class="NAME">Env.addEvent</span><span class="PUNC">(</span><span class="NAME">board.containerObj</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">'keydown'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">event</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
|
2378
|
+
<span class='line'>2371</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">neededKey</span><span class="PUNC">,</span><span class="WHIT">
|
|
2379
|
+
<span class='line'>2372</span> </span><span class="WHIT"> </span><span class="NAME">catchEvt</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">;</span><span class="WHIT">
|
|
2380
|
+
<span class='line'>2373</span>
|
|
2381
|
+
<span class='line'>2374</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">Type.evaluate</span><span class="PUNC">(</span><span class="NAME">view.visProp.el.keyboard.enabled</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT">
|
|
2382
|
+
<span class='line'>2375</span> </span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">event.key</span><span class="WHIT"> </span><span class="PUNC">===</span><span class="WHIT"> </span><span class="STRN">'ArrowUp'</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="NAME">event.key</span><span class="WHIT"> </span><span class="PUNC">===</span><span class="WHIT"> </span><span class="STRN">'ArrowDown'</span><span class="PUNC">)</span><span class="WHIT">
|
|
2383
|
+
<span class='line'>2376</span> </span><span class="WHIT"> </span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
|
2384
|
+
<span class='line'>2377</span> </span><span class="WHIT"> </span><span class="NAME">neededKey</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">Type.evaluate</span><span class="PUNC">(</span><span class="NAME">view.visProp.el.keyboard.key</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
2385
|
+
<span class='line'>2378</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">neededKey</span><span class="WHIT"> </span><span class="PUNC">===</span><span class="WHIT"> </span><span class="STRN">'none'</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT">
|
|
2386
|
+
<span class='line'>2379</span> </span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">neededKey.indexOf</span><span class="PUNC">(</span><span class="STRN">'shift'</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">></span><span class="WHIT"> </span><span class="PUNC">-</span><span class="NUMB">1</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="NAME">event.shiftKey</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT">
|
|
2387
|
+
<span class='line'>2380</span> </span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">neededKey.indexOf</span><span class="PUNC">(</span><span class="STRN">'ctrl'</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">></span><span class="WHIT"> </span><span class="PUNC">-</span><span class="NUMB">1</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="NAME">event.ctrlKey</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
|
2388
|
+
<span class='line'>2381</span> </span><span class="WHIT"> </span><span class="NAME">view._elEventHandler</span><span class="PUNC">(</span><span class="NAME">event</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
2389
|
+
<span class='line'>2382</span> </span><span class="WHIT"> </span><span class="NAME">catchEvt</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">;</span><span class="WHIT">
|
|
2390
|
+
<span class='line'>2383</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
|
2391
|
+
<span class='line'>2384</span>
|
|
2392
|
+
<span class='line'>2385</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
|
2393
|
+
<span class='line'>2386</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">Type.evaluate</span><span class="PUNC">(</span><span class="NAME">view.visProp.el.keyboard.enabled</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT">
|
|
2394
|
+
<span class='line'>2387</span> </span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">event.key</span><span class="WHIT"> </span><span class="PUNC">===</span><span class="WHIT"> </span><span class="STRN">'ArrowLeft'</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="NAME">event.key</span><span class="WHIT"> </span><span class="PUNC">===</span><span class="WHIT"> </span><span class="STRN">'ArrowRight'</span><span class="PUNC">)</span><span class="WHIT">
|
|
2395
|
+
<span class='line'>2388</span> </span><span class="WHIT"> </span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
|
2396
|
+
<span class='line'>2389</span> </span><span class="WHIT"> </span><span class="NAME">neededKey</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">Type.evaluate</span><span class="PUNC">(</span><span class="NAME">view.visProp.az.keyboard.key</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
2397
|
+
<span class='line'>2390</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">neededKey</span><span class="WHIT"> </span><span class="PUNC">===</span><span class="WHIT"> </span><span class="STRN">'none'</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT">
|
|
2398
|
+
<span class='line'>2391</span> </span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">neededKey.indexOf</span><span class="PUNC">(</span><span class="STRN">'shift'</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">></span><span class="WHIT"> </span><span class="PUNC">-</span><span class="NUMB">1</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="NAME">event.shiftKey</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT">
|
|
2399
|
+
<span class='line'>2392</span> </span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">neededKey.indexOf</span><span class="PUNC">(</span><span class="STRN">'ctrl'</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">></span><span class="WHIT"> </span><span class="PUNC">-</span><span class="NUMB">1</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="NAME">event.ctrlKey</span><span class="PUNC">)</span><span class="WHIT">
|
|
2400
|
+
<span class='line'>2393</span> </span><span class="WHIT"> </span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
|
2401
|
+
<span class='line'>2394</span> </span><span class="WHIT"> </span><span class="NAME">view._azEventHandler</span><span class="PUNC">(</span><span class="NAME">event</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
2402
|
+
<span class='line'>2395</span> </span><span class="WHIT"> </span><span class="NAME">catchEvt</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">;</span><span class="WHIT">
|
|
2403
|
+
<span class='line'>2396</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
|
2404
|
+
<span class='line'>2397</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
|
2405
|
+
<span class='line'>2398</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">Type.evaluate</span><span class="PUNC">(</span><span class="NAME">view.visProp.bank.keyboard.enabled</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">event.key</span><span class="WHIT"> </span><span class="PUNC">===</span><span class="WHIT"> </span><span class="STRN">','</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="NAME">event.key</span><span class="WHIT"> </span><span class="PUNC">===</span><span class="WHIT"> </span><span class="STRN">'<'</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="NAME">event.key</span><span class="WHIT"> </span><span class="PUNC">===</span><span class="WHIT"> </span><span class="STRN">'.'</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="NAME">event.key</span><span class="WHIT"> </span><span class="PUNC">===</span><span class="WHIT"> </span><span class="STRN">'>'</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
|
2406
|
+
<span class='line'>2399</span> </span><span class="WHIT"> </span><span class="NAME">neededKey</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">Type.evaluate</span><span class="PUNC">(</span><span class="NAME">view.visProp.bank.keyboard.key</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
2407
|
+
<span class='line'>2400</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">neededKey</span><span class="WHIT"> </span><span class="PUNC">===</span><span class="WHIT"> </span><span class="STRN">'none'</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">neededKey.indexOf</span><span class="PUNC">(</span><span class="STRN">'shift'</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">></span><span class="WHIT"> </span><span class="PUNC">-</span><span class="NUMB">1</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="NAME">event.shiftKey</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">neededKey.indexOf</span><span class="PUNC">(</span><span class="STRN">'ctrl'</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">></span><span class="WHIT"> </span><span class="PUNC">-</span><span class="NUMB">1</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="NAME">event.ctrlKey</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
|
2408
|
+
<span class='line'>2401</span> </span><span class="WHIT"> </span><span class="NAME">view._bankEventHandler</span><span class="PUNC">(</span><span class="NAME">event</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
2409
|
+
<span class='line'>2402</span> </span><span class="WHIT"> </span><span class="NAME">catchEvt</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">;</span><span class="WHIT">
|
|
2410
|
+
<span class='line'>2403</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
|
2411
|
+
<span class='line'>2404</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
|
2412
|
+
<span class='line'>2405</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">event.key</span><span class="WHIT"> </span><span class="PUNC">===</span><span class="WHIT"> </span><span class="STRN">'PageUp'</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
|
2413
|
+
<span class='line'>2406</span> </span><span class="WHIT"> </span><span class="NAME">view.nextView</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
2414
|
+
<span class='line'>2407</span> </span><span class="WHIT"> </span><span class="NAME">catchEvt</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">;</span><span class="WHIT">
|
|
2415
|
+
<span class='line'>2408</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">event.key</span><span class="WHIT"> </span><span class="PUNC">===</span><span class="WHIT"> </span><span class="STRN">'PageDown'</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
|
2416
|
+
<span class='line'>2409</span> </span><span class="WHIT"> </span><span class="NAME">view.previousView</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
2417
|
+
<span class='line'>2410</span> </span><span class="WHIT"> </span><span class="NAME">catchEvt</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">;</span><span class="WHIT">
|
|
2418
|
+
<span class='line'>2411</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
|
2419
|
+
<span class='line'>2412</span>
|
|
2420
|
+
<span class='line'>2413</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">catchEvt</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
|
2421
|
+
<span class='line'>2414</span> </span><span class="WHIT"> </span><span class="COMM">// We stop event handling only in the case if the keypress could be</span><span class="WHIT">
|
|
2422
|
+
<span class='line'>2415</span> </span><span class="WHIT"> </span><span class="COMM">// used for the 3D view. If this is not done, input fields et al</span><span class="WHIT">
|
|
2423
|
+
<span class='line'>2416</span> </span><span class="WHIT"> </span><span class="COMM">// can not be used any more.</span><span class="WHIT">
|
|
2424
|
+
<span class='line'>2417</span> </span><span class="WHIT"> </span><span class="NAME">event.preventDefault</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
2425
|
+
<span class='line'>2418</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
|
2426
|
+
<span class='line'>2419</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">view</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
2427
2427
|
<span class='line'>2420</span>
|
|
2428
|
-
<span class='line'>2421</span> </span><span class="WHIT"> </span><span class="
|
|
2429
|
-
<span class='line'>2422</span>
|
|
2430
|
-
<span class='line'>2423</span>
|
|
2431
|
-
<span class='line'>2424</span> </span><span class="
|
|
2432
|
-
<span class='line'>2425</span>
|
|
2433
|
-
<span class='line'>2426</span> </span><span class="
|
|
2428
|
+
<span class='line'>2421</span> </span><span class="WHIT"> </span><span class="COMM">// Add events for the pointer navigation</span><span class="WHIT">
|
|
2429
|
+
<span class='line'>2422</span> </span><span class="WHIT"> </span><span class="NAME">Env.addEvent</span><span class="PUNC">(</span><span class="NAME">board.containerObj</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">'pointerdown'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">view.pointerDownHandler</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">view</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
2430
|
+
<span class='line'>2423</span>
|
|
2431
|
+
<span class='line'>2424</span> </span><span class="WHIT"> </span><span class="COMM">// Initialize view rotation matrix</span><span class="WHIT">
|
|
2432
|
+
<span class='line'>2425</span> </span><span class="WHIT"> </span><span class="NAME">view.getAnglesFromSliders</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
2433
|
+
<span class='line'>2426</span> </span><span class="WHIT"> </span><span class="NAME">view.matrix3DRot</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">view.getRotationFromAngles</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
2434
2434
|
<span class='line'>2427</span>
|
|
2435
|
-
<span class='line'>2428</span> </span><span class="
|
|
2436
|
-
<span class='line'>2429</span> </span
|
|
2435
|
+
<span class='line'>2428</span> </span><span class="WHIT"> </span><span class="COMM">// override angle slider bounds when trackball navigation is enabled</span><span class="WHIT">
|
|
2436
|
+
<span class='line'>2429</span> </span><span class="WHIT"> </span><span class="NAME">view.updateAngleSliderBounds</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
2437
|
+
<span class='line'>2430</span>
|
|
2438
|
+
<span class='line'>2431</span> </span><span class="WHIT"> </span><span class="NAME">view.board.update</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
2439
|
+
<span class='line'>2432</span>
|
|
2440
|
+
<span class='line'>2433</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">view</span><span class="PUNC">;</span><span class="WHIT">
|
|
2441
|
+
<span class='line'>2434</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
|
2442
|
+
<span class='line'>2435</span>
|
|
2443
|
+
<span class='line'>2436</span> </span><span class="NAME">JXG.registerElement</span><span class="PUNC">(</span><span class="STRN">"view3d"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">JXG.createView3D</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
2444
|
+
<span class='line'>2437</span>
|
|
2445
|
+
<span class='line'>2438</span> </span><span class="NAME">export</span><span class="WHIT"> </span><span class="KEYW">default</span><span class="WHIT"> </span><span class="NAME">JXG.View3D</span><span class="PUNC">;</span><span class="WHIT">
|
|
2446
|
+
<span class='line'>2439</span> </span></pre></body></html>
|