You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The library that implements a model of a 2D plot with support for displaying functions of time (as in an oscilloscope).
9
10
11
+
_**Disclaimer:** this library was written directly on an Android smartphone with the [QLua](https://play.google.com/store/apps/details?id=com.quseit.qlua5pro2) IDE._
12
+
10
13
## Features
11
14
12
15
- models:
13
16
- 2D plot:
14
17
- storing:
15
18
- values of a displayed function;
16
-
- limits for these values;
19
+
-a `Range` from the [luamath](https://github.com/thewizardplusplus/luamath) library with limits for these values;
17
20
- default value;
18
21
- operations:
19
22
- initializing:
20
23
- filling a specified count of values by a specified default value;
21
-
- iterating over values:
24
+
- iterating over points represented as `Vector2D(index, value)` from the [luamath](https://github.com/thewizardplusplus/luamath) library:
22
25
- via the `__ipairs` metamethod (for Lua 5.2);
23
26
- via the `__index` metamethod (for Lua 5.3+):
24
27
- support of fractional indexes;
@@ -32,6 +35,10 @@ The library that implements a model of a 2D plot with support for displaying fun
32
35
- removing the first value:
33
36
- returning the removed value:
34
37
- returning a specified default value if no values;
38
+
- serialization via the [luaserialization](https://github.com/thewizardplusplus/luaserialization) library:
39
+
- exposing a class name and a stringified representation;
40
+
- generating a JSON Schema via the `schema()` static method;
41
+
- constructing an instance from serializable options via the `from_options()` static method;
35
42
- 2D oscillogram:
36
43
- extending the 2D plot model;
37
44
- kinds:
@@ -42,37 +49,36 @@ The library that implements a model of a 2D plot with support for displaying fun
42
49
- updating:
43
50
- first step: adding a new value;
44
51
- second step: removing the first value;
52
+
- serialization via the [luaserialization](https://github.com/thewizardplusplus/luaserialization) library:
53
+
- exposing a class name and a stringified representation;
54
+
- generating a JSON Schema via the `schema()` static method;
55
+
- constructing an instance from serializable options via the `from_options()` static method;
45
56
- 2D plot/oscillogram iterator:
46
57
- storing:
47
58
- 2D plot/oscillogram;
48
-
- transformer for iterated values;
49
-
- iterating over values of 2D plot/oscillogram:
59
+
- transformer for iterated points;
60
+
- iterating over transformed points of 2D plot/oscillogram:
50
61
- via the `__ipairs` metamethod (for Lua 5.2);
51
62
- via the `__index` metamethod (for Lua 5.3+);
52
-
- applying transformations to iterated values via a specified transformer;
63
+
- applying transformations to iterated points via a specified transformer;
53
64
- factory of a 2D plot/oscillogram iterator:
54
65
- storing:
55
-
- transformer for iterated values;
66
+
- transformer for iterated points;
56
67
- generating a 2D plot/oscillogram iterator for a specific 2D plot/oscillogram;
57
68
- global operations:
58
69
- calculating a difference (a distance) between two 2D plots/oscillograms in the same index:
59
70
- returning a difference (a distance) by modulo (optionally);
60
71
- selecting a value by a distance between two 2D plots/oscillograms in the specific index:
61
-
- selecting by the specified sequential distance ranges.
72
+
- selecting by the specified sequential distance ranges;
73
+
- serialization of distance ranges via the [luaserialization](https://github.com/thewizardplusplus/luaserialization) library:
74
+
- exposing a class name and a stringified representation;
75
+
- generating a JSON Schema via the `schema()` static method;
76
+
- constructing an instance from serializable options via the `from_options()` static method.
0 commit comments