|
5 | 5 | # Copyright (c) 2015 Pierre Raybaut, for the Python translation/optimization |
6 | 6 | # (see LICENSE file for more details) |
7 | 7 |
|
| 8 | +from __future__ import division |
| 9 | + |
8 | 10 | from .qt.QtCore import qFuzzyCompare |
9 | 11 |
|
10 | | -import numpy as np |
| 12 | +import math |
11 | 13 |
|
12 | 14 |
|
13 | 15 | def qwtFuzzyCompare(value1, value2, intervalSize): |
14 | | - eps = abs(1.e-6*intervalSize) |
| 16 | + eps = abs(1.0e-6 * intervalSize) |
15 | 17 | if value2 - value1 > eps: |
16 | 18 | return -1 |
17 | 19 | elif value1 - value2 > eps: |
18 | 20 | return 1 |
19 | 21 | else: |
20 | 22 | return 0 |
21 | 23 |
|
| 24 | + |
22 | 25 | def qwtFuzzyGreaterOrEqual(d1, d2): |
23 | 26 | return (d1 >= d2) or qFuzzyCompare(d1, d2) |
24 | 27 |
|
| 28 | + |
25 | 29 | def qwtFuzzyLessOrEqual(d1, d2): |
26 | 30 | return (d1 <= d2) or qFuzzyCompare(d1, d2) |
27 | 31 |
|
| 32 | + |
28 | 33 | def qwtSign(x): |
29 | | - if x > 0.: |
| 34 | + if x > 0.0: |
30 | 35 | return 1 |
31 | | - elif x < 0.: |
| 36 | + elif x < 0.0: |
32 | 37 | return -1 |
33 | 38 | else: |
34 | 39 | return 0 |
35 | 40 |
|
| 41 | + |
36 | 42 | def qwtSqr(x): |
37 | | - return x**2 |
| 43 | + return x ** 2 |
| 44 | + |
38 | 45 |
|
39 | 46 | def qwtFastAtan(x): |
40 | | - if x < -1.: |
41 | | - return -.5*np.pi - x/(x**2 + .28) |
42 | | - elif x > 1.: |
43 | | - return .5*np.pi - x/(x**2 + .28) |
| 47 | + if x < -1.0: |
| 48 | + return -0.5 * math.pi - x / (x ** 2 + 0.28) |
| 49 | + elif x > 1.0: |
| 50 | + return 0.5 * math.pi - x / (x ** 2 + 0.28) |
44 | 51 | else: |
45 | | - return x/(1. + x**2*.28) |
| 52 | + return x / (1.0 + x ** 2 * 0.28) |
| 53 | + |
46 | 54 |
|
47 | 55 | def qwtFastAtan2(y, x): |
48 | 56 | if x > 0: |
49 | | - return qwtFastAtan(y/x) |
| 57 | + return qwtFastAtan(y / x) |
50 | 58 | elif x < 0: |
51 | | - d = qwtFastAtan(y/x) |
| 59 | + d = qwtFastAtan(y / x) |
52 | 60 | if y >= 0: |
53 | | - return d + np.pi |
| 61 | + return d + math.pi |
54 | 62 | else: |
55 | | - return d - np.pi |
56 | | - elif y < 0.: |
57 | | - return -.5*np.pi |
58 | | - elif y > 0.: |
59 | | - return .5*np.pi |
| 63 | + return d - math.pi |
| 64 | + elif y < 0.0: |
| 65 | + return -0.5 * math.pi |
| 66 | + elif y > 0.0: |
| 67 | + return 0.5 * math.pi |
60 | 68 | else: |
61 | | - return 0. |
| 69 | + return 0.0 |
| 70 | + |
62 | 71 |
|
63 | 72 | def qwtRadians(degrees): |
64 | | - return degrees * np.pi/180. |
| 73 | + return degrees * math.pi / 180.0 |
| 74 | + |
65 | 75 |
|
66 | 76 | def qwtDegrees(radians): |
67 | | - return radians * 180./np.pi |
| 77 | + return radians * 180.0 / math.pi |
68 | 78 |
|
0 commit comments