Last change
on this file since 532 was
483,
checked in by hendrikvanantwerpen, 11 years ago
|
Added Dojo 1.9.3 release.
|
-
Property svn:executable set to
*
|
File size:
1.6 KB
|
Line | |
---|
1 | define(function(){ |
---|
2 | // module: |
---|
3 | // dojox/dgauges/components/_circularUtils |
---|
4 | // summary: |
---|
5 | // Internal circular utilities. |
---|
6 | // tags: |
---|
7 | // private |
---|
8 | |
---|
9 | return { |
---|
10 | computeTotalAngle: function(start, end, orientation){ |
---|
11 | // summary: |
---|
12 | // Internal method. |
---|
13 | // tags: |
---|
14 | // private |
---|
15 | if(start == end){ |
---|
16 | return 360; |
---|
17 | }else{ |
---|
18 | return this.computeAngle(start, end, orientation, 360); |
---|
19 | } |
---|
20 | }, |
---|
21 | |
---|
22 | modAngle: function(angle, base){ |
---|
23 | // summary: |
---|
24 | // Internal method. |
---|
25 | // tags: |
---|
26 | // private |
---|
27 | if(base == undefined){ |
---|
28 | base = 6.28318530718; |
---|
29 | } |
---|
30 | if(angle >= base){ |
---|
31 | do { |
---|
32 | angle -= base; |
---|
33 | } |
---|
34 | while (angle >= base); |
---|
35 | }else{ |
---|
36 | while (angle < 0){ |
---|
37 | angle += base; |
---|
38 | } |
---|
39 | } |
---|
40 | return angle; |
---|
41 | }, |
---|
42 | |
---|
43 | computeAngle: function(startAngle, endAngle, orientation, base){ |
---|
44 | // summary: |
---|
45 | // Internal method. |
---|
46 | // tags: |
---|
47 | // private |
---|
48 | if(base == undefined){ |
---|
49 | base = 6.28318530718; |
---|
50 | } |
---|
51 | |
---|
52 | var totalAngle; |
---|
53 | |
---|
54 | if(endAngle == startAngle){ |
---|
55 | return base; |
---|
56 | } |
---|
57 | |
---|
58 | if(orientation == "clockwise"){ |
---|
59 | if(endAngle < startAngle){ |
---|
60 | totalAngle = base - (startAngle - endAngle); |
---|
61 | }else{ |
---|
62 | totalAngle = endAngle - startAngle; |
---|
63 | } |
---|
64 | } |
---|
65 | else{ |
---|
66 | if(endAngle < startAngle){ |
---|
67 | totalAngle = startAngle - endAngle; |
---|
68 | }else{ |
---|
69 | totalAngle = base - (endAngle - startAngle); |
---|
70 | } |
---|
71 | } |
---|
72 | return this.modAngle(totalAngle, base); |
---|
73 | }, |
---|
74 | |
---|
75 | toRadians: function(deg){ |
---|
76 | // summary: |
---|
77 | // Internal method. |
---|
78 | // tags: |
---|
79 | // private |
---|
80 | return deg * Math.PI / 180; |
---|
81 | }, |
---|
82 | |
---|
83 | toDegrees: function(rad){ |
---|
84 | // summary: |
---|
85 | // Internal method. |
---|
86 | // tags: |
---|
87 | // private |
---|
88 | return rad * 180 / Math.PI; |
---|
89 | } |
---|
90 | } |
---|
91 | }); |
---|
Note: See
TracBrowser
for help on using the repository browser.