@duet3d/objectmodel 3.7.0-alpha.5 → 3.7.0-alpha.7

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.
Files changed (214) hide show
  1. package/dist/ObjectModel.js +24 -21
  2. package/dist/boards/directDisplay/DirectDisplayScreen.js +4 -1
  3. package/dist/boards/directDisplay/DirectDisplayScreenBase.js +4 -1
  4. package/dist/boards/directDisplay/DirectDisplayScreenST7567.js +4 -1
  5. package/dist/boards/directDisplay/index.js +5 -2
  6. package/dist/boards/index.js +6 -3
  7. package/dist/deprecations.json +18 -0
  8. package/dist/directories/index.js +4 -1
  9. package/dist/enums.json +281 -0
  10. package/dist/fans/index.js +4 -1
  11. package/dist/heat/Heater.js +7 -4
  12. package/dist/heat/HeaterModel.js +4 -1
  13. package/dist/heat/HeaterMonitor.js +4 -1
  14. package/dist/heat/index.js +6 -3
  15. package/dist/index.js +4 -1
  16. package/dist/inputs/InputChannel.js +5 -2
  17. package/dist/job/Build.js +5 -2
  18. package/dist/job/GCodeFileInfo.js +7 -4
  19. package/dist/job/index.js +7 -4
  20. package/dist/ledStrips/index.js +4 -1
  21. package/dist/limits/index.js +4 -1
  22. package/dist/messages/index.js +4 -1
  23. package/dist/move/Axis.js +7 -4
  24. package/dist/move/DriverId.js +4 -1
  25. package/dist/move/Extruder.d.ts +1 -1
  26. package/dist/move/Extruder.js +7 -4
  27. package/dist/move/InputShaping.js +4 -1
  28. package/dist/move/Microstepping.js +4 -1
  29. package/dist/move/MotionSystem.js +6 -3
  30. package/dist/move/MoveCalibration.js +4 -1
  31. package/dist/move/MoveCompensation.js +4 -1
  32. package/dist/move/index.js +12 -9
  33. package/dist/move/kinematics/DeltaKinematics.js +5 -2
  34. package/dist/move/kinematics/HangprinterKinematics.js +34 -1
  35. package/dist/move/kinematics/KinematicsBase.js +4 -1
  36. package/dist/move/kinematics/PolarKinematics.js +34 -1
  37. package/dist/move/kinematics/index.js +31 -6
  38. package/dist/network/NetworkInterface.d.ts +1 -1
  39. package/dist/network/NetworkInterface.js +6 -3
  40. package/dist/network/index.js +6 -3
  41. package/dist/plugins/PluginManifest.js +5 -2
  42. package/dist/plugins/index.js +4 -1
  43. package/dist/sbc/CPU.js +4 -1
  44. package/dist/sbc/Memory.js +4 -1
  45. package/dist/sbc/dsf/HttpEndpoint.js +4 -1
  46. package/dist/sbc/dsf/UserSession.js +4 -1
  47. package/dist/sbc/dsf/index.js +7 -4
  48. package/dist/sbc/index.js +7 -4
  49. package/dist/sensors/AnalogSensor.js +4 -1
  50. package/dist/sensors/Endstop.js +4 -1
  51. package/dist/sensors/FilamentMonitors/FilamentMonitorBase.js +4 -1
  52. package/dist/sensors/FilamentMonitors/LaserFilamentMonitor.js +4 -1
  53. package/dist/sensors/FilamentMonitors/PulsedFilamentMonitor.js +38 -2
  54. package/dist/sensors/FilamentMonitors/RotatingMagnetFilamentMonitor.js +4 -1
  55. package/dist/sensors/FilamentMonitors/index.js +29 -4
  56. package/dist/sensors/Probe.js +4 -1
  57. package/dist/sensors/index.js +9 -6
  58. package/dist/spindles/index.js +4 -1
  59. package/dist/src/ModelCollection.d.ts +36 -0
  60. package/dist/src/ModelCollection.js +108 -0
  61. package/dist/src/ModelDictionary.d.ts +44 -0
  62. package/dist/src/ModelDictionary.js +109 -0
  63. package/dist/src/ModelObject.d.ts +55 -0
  64. package/dist/src/ModelObject.js +237 -0
  65. package/dist/src/ModelSet.d.ts +11 -0
  66. package/dist/src/ModelSet.js +15 -0
  67. package/dist/src/ObjectModel.d.ts +47 -0
  68. package/dist/src/ObjectModel.js +57 -0
  69. package/dist/src/boards/Driver.d.ts +18 -0
  70. package/dist/src/boards/Driver.js +37 -0
  71. package/dist/src/boards/directDisplay/DirectDisplayScreen.d.ts +6 -0
  72. package/dist/src/boards/directDisplay/DirectDisplayScreen.js +21 -0
  73. package/dist/src/boards/directDisplay/DirectDisplayScreenBase.d.ts +11 -0
  74. package/dist/src/boards/directDisplay/DirectDisplayScreenBase.js +19 -0
  75. package/dist/src/boards/directDisplay/DirectDisplayScreenST7567.d.ts +9 -0
  76. package/dist/src/boards/directDisplay/DirectDisplayScreenST7567.js +26 -0
  77. package/dist/src/boards/directDisplay/index.d.ts +20 -0
  78. package/dist/src/boards/directDisplay/index.js +59 -0
  79. package/dist/src/boards/index.d.ts +59 -0
  80. package/dist/src/boards/index.js +103 -0
  81. package/dist/src/directories/index.d.ts +11 -0
  82. package/dist/src/directories/index.js +21 -0
  83. package/dist/src/fans/index.d.ts +19 -0
  84. package/dist/src/fans/index.js +33 -0
  85. package/dist/src/heat/Heater.d.ts +30 -0
  86. package/dist/src/heat/Heater.js +41 -0
  87. package/dist/src/heat/HeaterModel.d.ts +21 -0
  88. package/dist/src/heat/HeaterModel.js +35 -0
  89. package/dist/src/heat/HeaterMonitor.d.ts +19 -0
  90. package/dist/src/heat/HeaterMonitor.js +31 -0
  91. package/dist/src/heat/index.d.ts +22 -0
  92. package/dist/src/heat/index.js +46 -0
  93. package/dist/src/index.d.ts +26 -0
  94. package/dist/src/index.js +57 -0
  95. package/dist/src/inputs/CodeChannel.d.ts +18 -0
  96. package/dist/src/inputs/CodeChannel.js +22 -0
  97. package/dist/src/inputs/Compatibility.d.ts +10 -0
  98. package/dist/src/inputs/Compatibility.js +14 -0
  99. package/dist/src/inputs/InputChannel.d.ts +32 -0
  100. package/dist/src/inputs/InputChannel.js +44 -0
  101. package/dist/src/inputs/index.d.ts +3 -0
  102. package/dist/src/inputs/index.js +19 -0
  103. package/dist/src/job/Build.d.ts +15 -0
  104. package/dist/src/job/Build.js +29 -0
  105. package/dist/src/job/GCodeFileInfo.d.ts +19 -0
  106. package/dist/src/job/GCodeFileInfo.js +29 -0
  107. package/dist/src/job/ThumbnailInfo.d.ts +15 -0
  108. package/dist/src/job/ThumbnailInfo.js +23 -0
  109. package/dist/src/job/index.d.ts +45 -0
  110. package/dist/src/job/index.js +78 -0
  111. package/dist/src/ledStrips/index.d.ts +13 -0
  112. package/dist/src/ledStrips/index.js +24 -0
  113. package/dist/src/limits/index.d.ts +32 -0
  114. package/dist/src/limits/index.js +42 -0
  115. package/dist/src/messages/index.d.ts +13 -0
  116. package/dist/src/messages/index.js +30 -0
  117. package/dist/src/move/Axis.d.ts +71 -0
  118. package/dist/src/move/Axis.js +82 -0
  119. package/dist/src/move/DriverId.d.ts +10 -0
  120. package/dist/src/move/DriverId.js +52 -0
  121. package/dist/src/move/Extruder.d.ts +39 -0
  122. package/dist/src/move/Extruder.js +57 -0
  123. package/dist/src/move/InputShaping.d.ts +19 -0
  124. package/dist/src/move/InputShaping.js +30 -0
  125. package/dist/src/move/KeepoutZone.d.ts +10 -0
  126. package/dist/src/move/KeepoutZone.js +21 -0
  127. package/dist/src/move/Microstepping.d.ts +6 -0
  128. package/dist/src/move/Microstepping.js +16 -0
  129. package/dist/src/move/MotionSystem.d.ts +20 -0
  130. package/dist/src/move/MotionSystem.js +30 -0
  131. package/dist/src/move/MoveCalibration.d.ts +11 -0
  132. package/dist/src/move/MoveCalibration.js +25 -0
  133. package/dist/src/move/MoveCompensation.d.ts +30 -0
  134. package/dist/src/move/MoveCompensation.js +50 -0
  135. package/dist/src/move/index.d.ts +80 -0
  136. package/dist/src/move/index.js +120 -0
  137. package/dist/src/move/kinematics/CoreKinematics.d.ts +9 -0
  138. package/dist/src/move/kinematics/CoreKinematics.js +31 -0
  139. package/dist/src/move/kinematics/DeltaKinematics.d.ts +20 -0
  140. package/dist/src/move/kinematics/DeltaKinematics.js +43 -0
  141. package/dist/src/move/kinematics/HangprinterKinematics.d.ts +9 -0
  142. package/dist/src/move/kinematics/HangprinterKinematics.js +61 -0
  143. package/dist/src/move/kinematics/KinematicsBase.d.ts +37 -0
  144. package/dist/src/move/kinematics/KinematicsBase.js +59 -0
  145. package/dist/src/move/kinematics/PolarKinematics.d.ts +12 -0
  146. package/dist/src/move/kinematics/PolarKinematics.js +59 -0
  147. package/dist/src/move/kinematics/ScaraKinematics.d.ts +14 -0
  148. package/dist/src/move/kinematics/ScaraKinematics.js +29 -0
  149. package/dist/src/move/kinematics/index.d.ts +14 -0
  150. package/dist/src/move/kinematics/index.js +98 -0
  151. package/dist/src/network/NetworkInterface.d.ts +46 -0
  152. package/dist/src/network/NetworkInterface.js +59 -0
  153. package/dist/src/network/index.d.ts +14 -0
  154. package/dist/src/network/index.js +38 -0
  155. package/dist/src/plugins/PluginManifest.d.ts +67 -0
  156. package/dist/src/plugins/PluginManifest.js +128 -0
  157. package/dist/src/plugins/index.d.ts +9 -0
  158. package/dist/src/plugins/index.js +33 -0
  159. package/dist/src/sbc/CPU.d.ts +8 -0
  160. package/dist/src/sbc/CPU.js +18 -0
  161. package/dist/src/sbc/Memory.d.ts +6 -0
  162. package/dist/src/sbc/Memory.js +16 -0
  163. package/dist/src/sbc/dsf/HttpEndpoint.d.ts +19 -0
  164. package/dist/src/sbc/dsf/HttpEndpoint.js +30 -0
  165. package/dist/src/sbc/dsf/UserSession.d.ts +18 -0
  166. package/dist/src/sbc/dsf/UserSession.js +30 -0
  167. package/dist/src/sbc/dsf/index.d.ts +15 -0
  168. package/dist/src/sbc/dsf/index.js +39 -0
  169. package/dist/src/sbc/index.d.ts +19 -0
  170. package/dist/src/sbc/index.js +43 -0
  171. package/dist/src/sensors/AnalogSensor.d.ts +59 -0
  172. package/dist/src/sensors/AnalogSensor.js +71 -0
  173. package/dist/src/sensors/Endstop.d.ts +15 -0
  174. package/dist/src/sensors/Endstop.js +26 -0
  175. package/dist/src/sensors/FilamentMonitors/Duet3DFilamentMonitor.d.ts +11 -0
  176. package/dist/src/sensors/FilamentMonitors/Duet3DFilamentMonitor.js +17 -0
  177. package/dist/src/sensors/FilamentMonitors/FilamentMonitorBase.d.ts +33 -0
  178. package/dist/src/sensors/FilamentMonitors/FilamentMonitorBase.js +45 -0
  179. package/dist/src/sensors/FilamentMonitors/LaserFilamentMonitor.d.ts +22 -0
  180. package/dist/src/sensors/FilamentMonitors/LaserFilamentMonitor.js +50 -0
  181. package/dist/src/sensors/FilamentMonitors/PulsedFilamentMonitor.d.ts +22 -0
  182. package/dist/src/sensors/FilamentMonitors/PulsedFilamentMonitor.js +82 -0
  183. package/dist/src/sensors/FilamentMonitors/RotatingMagnetFilamentMonitor.d.ts +22 -0
  184. package/dist/src/sensors/FilamentMonitors/RotatingMagnetFilamentMonitor.js +50 -0
  185. package/dist/src/sensors/FilamentMonitors/index.d.ts +12 -0
  186. package/dist/src/sensors/FilamentMonitors/index.js +77 -0
  187. package/dist/src/sensors/Probe.d.ts +51 -0
  188. package/dist/src/sensors/Probe.js +66 -0
  189. package/dist/src/sensors/index.d.ts +21 -0
  190. package/dist/src/sensors/index.js +49 -0
  191. package/dist/src/spindles/index.d.ts +25 -0
  192. package/dist/src/spindles/index.js +37 -0
  193. package/dist/src/state/MachineStatus.d.ts +17 -0
  194. package/dist/src/state/MachineStatus.js +21 -0
  195. package/dist/src/state/MessageBox.d.ts +26 -0
  196. package/dist/src/state/MessageBox.js +42 -0
  197. package/dist/src/state/RestorePoint.d.ts +11 -0
  198. package/dist/src/state/RestorePoint.js +21 -0
  199. package/dist/src/state/index.d.ts +69 -0
  200. package/dist/src/state/index.js +109 -0
  201. package/dist/src/tools/ToolRetraction.d.ts +9 -0
  202. package/dist/src/tools/ToolRetraction.js +19 -0
  203. package/dist/src/tools/index.d.ts +32 -0
  204. package/dist/src/tools/index.js +43 -0
  205. package/dist/src/volumes/index.d.ts +11 -0
  206. package/dist/src/volumes/index.js +21 -0
  207. package/dist/state/MessageBox.js +4 -1
  208. package/dist/state/RestorePoint.js +4 -1
  209. package/dist/state/index.js +7 -4
  210. package/dist/tools/ToolRetraction.js +4 -1
  211. package/dist/tools/index.d.ts +1 -1
  212. package/dist/tools/index.js +6 -3
  213. package/dist/volumes/index.js +4 -1
  214. package/package.json +5 -3
@@ -0,0 +1,52 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.DriverId = void 0;
7
+ exports.isDriverId = isDriverId;
8
+ const ModelObject_1 = __importDefault(require("../ModelObject"));
9
+ function isDriverId(value) {
10
+ return (value instanceof Object) && value.board !== undefined && value.driver !== undefined;
11
+ }
12
+ class DriverId extends ModelObject_1.default {
13
+ constructor() {
14
+ super(...arguments);
15
+ this.board = null;
16
+ this.driver = 0;
17
+ }
18
+ equals(value) {
19
+ if (isDriverId(value)) {
20
+ if (!this.board && !value.board) {
21
+ return this.driver === value.driver;
22
+ }
23
+ return (value.board === this.board) && (value.driver === this.driver);
24
+ }
25
+ return false;
26
+ }
27
+ update(jsonElement) {
28
+ if (isDriverId(jsonElement)) {
29
+ this.board = jsonElement.board;
30
+ this.driver = jsonElement.driver;
31
+ return this;
32
+ }
33
+ if (typeof jsonElement === "string") {
34
+ const matches = /(\d+)\.(\d+)/.exec(jsonElement);
35
+ if (matches !== null) {
36
+ this.board = Number(matches[1]);
37
+ this.driver = Number(matches[2]);
38
+ }
39
+ else {
40
+ this.board = null;
41
+ this.driver = Number(jsonElement);
42
+ }
43
+ return this;
44
+ }
45
+ return null;
46
+ }
47
+ toString() {
48
+ return (this.board === null) ? this.driver.toString() : `${this.board}.${this.driver}`;
49
+ }
50
+ }
51
+ exports.DriverId = DriverId;
52
+ exports.default = DriverId;
@@ -0,0 +1,39 @@
1
+ import ModelObject from "../ModelObject";
2
+ import DriverId from "./DriverId";
3
+ import Microstepping from "./Microstepping";
4
+ export declare class ExtruderNonlinear extends ModelObject {
5
+ a: number;
6
+ b: number;
7
+ upperLimit: number;
8
+ }
9
+ export declare class ExtruderPressureAdvance extends ModelObject {
10
+ d: number | null;
11
+ k0: number;
12
+ k1: number;
13
+ }
14
+ export declare class Extruder extends ModelObject {
15
+ constructor();
16
+ acceleration: number;
17
+ current: number;
18
+ driver: DriverId | null;
19
+ filament: string;
20
+ filamentDiameter: number;
21
+ factor: number;
22
+ jerk: number;
23
+ readonly microstepping: Microstepping;
24
+ readonly nonlinear: ExtruderNonlinear;
25
+ percentCurrent: number;
26
+ percentStstCurrent: number | null;
27
+ phaseStep: boolean | null;
28
+ position: number;
29
+ readonly pressAdv: ExtruderPressureAdvance;
30
+ /**
31
+ * @deprecated use pressAdv instead
32
+ */
33
+ pressureAdvance: number;
34
+ printingJerk: number;
35
+ rawPosition: number;
36
+ speed: number;
37
+ stepsPerMm: number;
38
+ }
39
+ export default Extruder;
@@ -0,0 +1,57 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.Extruder = exports.ExtruderPressureAdvance = exports.ExtruderNonlinear = void 0;
7
+ const ModelObject_1 = __importDefault(require("../ModelObject"));
8
+ const DriverId_1 = __importDefault(require("./DriverId"));
9
+ const Microstepping_1 = __importDefault(require("./Microstepping"));
10
+ class ExtruderNonlinear extends ModelObject_1.default {
11
+ constructor() {
12
+ super(...arguments);
13
+ this.a = 0;
14
+ this.b = 0;
15
+ this.upperLimit = 0.2;
16
+ }
17
+ }
18
+ exports.ExtruderNonlinear = ExtruderNonlinear;
19
+ class ExtruderPressureAdvance extends ModelObject_1.default {
20
+ constructor() {
21
+ super(...arguments);
22
+ this.d = null;
23
+ this.k0 = 0;
24
+ this.k1 = 0;
25
+ }
26
+ }
27
+ exports.ExtruderPressureAdvance = ExtruderPressureAdvance;
28
+ class Extruder extends ModelObject_1.default {
29
+ constructor() {
30
+ super();
31
+ this.acceleration = 500;
32
+ this.current = 0;
33
+ this.driver = null;
34
+ this.filament = "";
35
+ this.filamentDiameter = 1.75;
36
+ this.factor = 1;
37
+ this.jerk = 15;
38
+ this.microstepping = new Microstepping_1.default();
39
+ this.nonlinear = new ExtruderNonlinear();
40
+ this.percentCurrent = 100;
41
+ this.percentStstCurrent = null;
42
+ this.phaseStep = null;
43
+ this.position = 0;
44
+ this.pressAdv = new ExtruderPressureAdvance();
45
+ /**
46
+ * @deprecated use pressAdv instead
47
+ */
48
+ this.pressureAdvance = 0;
49
+ this.printingJerk = 15;
50
+ this.rawPosition = 0;
51
+ this.speed = 100;
52
+ this.stepsPerMm = 420;
53
+ ModelObject_1.default.wrapModelProperty(this, "driver", DriverId_1.default);
54
+ }
55
+ }
56
+ exports.Extruder = Extruder;
57
+ exports.default = Extruder;
@@ -0,0 +1,19 @@
1
+ import ModelObject from "../ModelObject";
2
+ export declare enum InputShapingType {
3
+ none = "none",
4
+ mzv = "mzv",
5
+ zvd = "zvd",
6
+ zvdd = "zvdd",
7
+ zvddd = "zvddd",
8
+ ei2 = "ei2",
9
+ ei3 = "ei3",
10
+ custom = "custom"
11
+ }
12
+ export declare class InputShaping extends ModelObject {
13
+ amplitudes: Array<number>;
14
+ damping: number;
15
+ delays: Array<number>;
16
+ frequency: number;
17
+ type: InputShapingType;
18
+ }
19
+ export default InputShaping;
@@ -0,0 +1,30 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.InputShaping = exports.InputShapingType = void 0;
7
+ const ModelObject_1 = __importDefault(require("../ModelObject"));
8
+ var InputShapingType;
9
+ (function (InputShapingType) {
10
+ InputShapingType["none"] = "none";
11
+ InputShapingType["mzv"] = "mzv";
12
+ InputShapingType["zvd"] = "zvd";
13
+ InputShapingType["zvdd"] = "zvdd";
14
+ InputShapingType["zvddd"] = "zvddd";
15
+ InputShapingType["ei2"] = "ei2";
16
+ InputShapingType["ei3"] = "ei3";
17
+ InputShapingType["custom"] = "custom";
18
+ })(InputShapingType || (exports.InputShapingType = InputShapingType = {}));
19
+ class InputShaping extends ModelObject_1.default {
20
+ constructor() {
21
+ super(...arguments);
22
+ this.amplitudes = [];
23
+ this.damping = 0.1;
24
+ this.delays = [];
25
+ this.frequency = 40;
26
+ this.type = InputShapingType.none;
27
+ }
28
+ }
29
+ exports.InputShaping = InputShaping;
30
+ exports.default = InputShaping;
@@ -0,0 +1,10 @@
1
+ import { ModelCollection } from "../ModelCollection";
2
+ import { ModelObject } from "../ModelObject";
3
+ export declare class KeepoutZoneCoordinates extends ModelObject {
4
+ max: number;
5
+ min: number;
6
+ }
7
+ export default class KeepoutZone extends ModelObject {
8
+ active: boolean;
9
+ readonly coords: ModelCollection<KeepoutZoneCoordinates | null>;
10
+ }
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.KeepoutZoneCoordinates = void 0;
4
+ const ModelCollection_1 = require("../ModelCollection");
5
+ const ModelObject_1 = require("../ModelObject");
6
+ class KeepoutZoneCoordinates extends ModelObject_1.ModelObject {
7
+ constructor() {
8
+ super(...arguments);
9
+ this.max = 0;
10
+ this.min = 0;
11
+ }
12
+ }
13
+ exports.KeepoutZoneCoordinates = KeepoutZoneCoordinates;
14
+ class KeepoutZone extends ModelObject_1.ModelObject {
15
+ constructor() {
16
+ super(...arguments);
17
+ this.active = true;
18
+ this.coords = new ModelCollection_1.ModelCollection(KeepoutZoneCoordinates);
19
+ }
20
+ }
21
+ exports.default = KeepoutZone;
@@ -0,0 +1,6 @@
1
+ import ModelObject from "../ModelObject";
2
+ export declare class Microstepping extends ModelObject {
3
+ interpolated: boolean;
4
+ value: number;
5
+ }
6
+ export default Microstepping;
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.Microstepping = void 0;
7
+ const ModelObject_1 = __importDefault(require("../ModelObject"));
8
+ class Microstepping extends ModelObject_1.default {
9
+ constructor() {
10
+ super(...arguments);
11
+ this.interpolated = false;
12
+ this.value = 16;
13
+ }
14
+ }
15
+ exports.Microstepping = Microstepping;
16
+ exports.default = Microstepping;
@@ -0,0 +1,20 @@
1
+ import ModelObject from "../ModelObject";
2
+ import ModelCollection from "../ModelCollection";
3
+ import RestorePoint from "../state/RestorePoint";
4
+ import { CurrentMove, MoveRotation } from ".";
5
+ export declare class MotionSystem extends ModelObject {
6
+ readonly currentMove: CurrentMove;
7
+ currentObject: number | null;
8
+ currentTool: number;
9
+ nextTool: number;
10
+ previousTool: number;
11
+ printingAcceleration: number;
12
+ readonly restorePoints: ModelCollection<RestorePoint>;
13
+ readonly rotation: MoveRotation;
14
+ speedFactor: number;
15
+ travelAcceleration: number;
16
+ userPosition: Array<number>;
17
+ virtualEPos: number;
18
+ workplaceNumber: number;
19
+ }
20
+ export default MotionSystem;
@@ -0,0 +1,30 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.MotionSystem = void 0;
7
+ const ModelObject_1 = __importDefault(require("../ModelObject"));
8
+ const ModelCollection_1 = __importDefault(require("../ModelCollection"));
9
+ const RestorePoint_1 = __importDefault(require("../state/RestorePoint"));
10
+ const _1 = require(".");
11
+ class MotionSystem extends ModelObject_1.default {
12
+ constructor() {
13
+ super(...arguments);
14
+ this.currentMove = new _1.CurrentMove();
15
+ this.currentObject = null;
16
+ this.currentTool = -1;
17
+ this.nextTool = -1;
18
+ this.previousTool = -1;
19
+ this.printingAcceleration = 10000;
20
+ this.restorePoints = new ModelCollection_1.default(RestorePoint_1.default);
21
+ this.rotation = new _1.MoveRotation();
22
+ this.speedFactor = 1;
23
+ this.travelAcceleration = 10000;
24
+ this.userPosition = [];
25
+ this.virtualEPos = 0;
26
+ this.workplaceNumber = 0;
27
+ }
28
+ }
29
+ exports.MotionSystem = MotionSystem;
30
+ exports.default = MotionSystem;
@@ -0,0 +1,11 @@
1
+ import ModelObject from "../ModelObject";
2
+ export declare class MoveDeviations extends ModelObject {
3
+ deviation: number;
4
+ mean: number;
5
+ }
6
+ export declare class MoveCalibration extends ModelObject {
7
+ readonly final: MoveDeviations;
8
+ readonly initial: MoveDeviations;
9
+ numFactors: number;
10
+ }
11
+ export default MoveCalibration;
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.MoveCalibration = exports.MoveDeviations = void 0;
7
+ const ModelObject_1 = __importDefault(require("../ModelObject"));
8
+ class MoveDeviations extends ModelObject_1.default {
9
+ constructor() {
10
+ super(...arguments);
11
+ this.deviation = 0;
12
+ this.mean = 0;
13
+ }
14
+ }
15
+ exports.MoveDeviations = MoveDeviations;
16
+ class MoveCalibration extends ModelObject_1.default {
17
+ constructor() {
18
+ super(...arguments);
19
+ this.final = new MoveDeviations();
20
+ this.initial = new MoveDeviations();
21
+ this.numFactors = 0;
22
+ }
23
+ }
24
+ exports.MoveCalibration = MoveCalibration;
25
+ exports.default = MoveCalibration;
@@ -0,0 +1,30 @@
1
+ import ModelObject from "../ModelObject";
2
+ import { MoveDeviations } from "./MoveCalibration";
3
+ export declare class ProbeGrid extends ModelObject {
4
+ axes: Array<string>;
5
+ maxs: Array<number>;
6
+ mins: Array<number>;
7
+ radius: number;
8
+ spacings: Array<number>;
9
+ }
10
+ export declare class Skew extends ModelObject {
11
+ compensateXY: boolean;
12
+ tanXY: number;
13
+ tanXZ: number;
14
+ tanYZ: number;
15
+ }
16
+ export declare enum MoveCompensationType {
17
+ none = "none",
18
+ mesh = "mesh"
19
+ }
20
+ export declare class MoveCompensation extends ModelObject {
21
+ constructor();
22
+ fadeHeight: number | null;
23
+ file: string | null;
24
+ liveGrid: ProbeGrid | null;
25
+ meshDeviation: MoveDeviations | null;
26
+ readonly probeGrid: ProbeGrid;
27
+ readonly skew: Skew;
28
+ type: MoveCompensationType;
29
+ }
30
+ export default MoveCompensation;
@@ -0,0 +1,50 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.MoveCompensation = exports.MoveCompensationType = exports.Skew = exports.ProbeGrid = void 0;
7
+ const ModelObject_1 = __importDefault(require("../ModelObject"));
8
+ const MoveCalibration_1 = require("./MoveCalibration");
9
+ class ProbeGrid extends ModelObject_1.default {
10
+ constructor() {
11
+ super(...arguments);
12
+ this.axes = ['X', 'Y'];
13
+ this.maxs = [-1, -1];
14
+ this.mins = [0, 0];
15
+ this.radius = 0;
16
+ this.spacings = [0, 0];
17
+ }
18
+ }
19
+ exports.ProbeGrid = ProbeGrid;
20
+ class Skew extends ModelObject_1.default {
21
+ constructor() {
22
+ super(...arguments);
23
+ this.compensateXY = true;
24
+ this.tanXY = 0;
25
+ this.tanXZ = 0;
26
+ this.tanYZ = 0;
27
+ }
28
+ }
29
+ exports.Skew = Skew;
30
+ var MoveCompensationType;
31
+ (function (MoveCompensationType) {
32
+ MoveCompensationType["none"] = "none";
33
+ MoveCompensationType["mesh"] = "mesh";
34
+ })(MoveCompensationType || (exports.MoveCompensationType = MoveCompensationType = {}));
35
+ class MoveCompensation extends ModelObject_1.default {
36
+ constructor() {
37
+ super();
38
+ this.fadeHeight = null;
39
+ this.file = null;
40
+ this.liveGrid = null;
41
+ this.meshDeviation = null;
42
+ this.probeGrid = new ProbeGrid();
43
+ this.skew = new Skew();
44
+ this.type = MoveCompensationType.none;
45
+ ModelObject_1.default.wrapModelProperty(this, "liveGrid", ProbeGrid);
46
+ ModelObject_1.default.wrapModelProperty(this, "meshDeviation", MoveCalibration_1.MoveDeviations);
47
+ }
48
+ }
49
+ exports.MoveCompensation = MoveCompensation;
50
+ exports.default = MoveCompensation;
@@ -0,0 +1,80 @@
1
+ import ModelObject from "../ModelObject";
2
+ import ModelCollection from "../ModelCollection";
3
+ import Axis from "./Axis";
4
+ import Extruder from "./Extruder";
5
+ import InputShaping from "./InputShaping";
6
+ import KeepoutZone from "./KeepoutZone";
7
+ import MotionSystem from "./MotionSystem";
8
+ import MoveCalibration from "./MoveCalibration";
9
+ import MoveCompensation from "./MoveCompensation";
10
+ import Kinematics from "./kinematics";
11
+ export declare class CurrentMove extends ModelObject {
12
+ acceleration: number;
13
+ deceleration: number;
14
+ extrusionRate: number;
15
+ laserPwm: number | null;
16
+ requestedSpeed: number;
17
+ topSpeed: number;
18
+ }
19
+ export declare class MotorsIdleControl extends ModelObject {
20
+ factor: number;
21
+ timeout: number;
22
+ }
23
+ export declare class MoveQueueItem extends ModelObject {
24
+ gracePeriod: number;
25
+ length: number;
26
+ }
27
+ export declare class MoveRotation extends ModelObject {
28
+ angle: number;
29
+ centre: Array<number>;
30
+ }
31
+ export declare class Move extends ModelObject {
32
+ accelerationTime: number | null;
33
+ readonly axes: ModelCollection<Axis>;
34
+ backlashFactor: number;
35
+ readonly calibration: MoveCalibration;
36
+ readonly compensation: MoveCompensation;
37
+ readonly currentMove: CurrentMove;
38
+ readonly extruders: ModelCollection<Extruder>;
39
+ readonly idle: MotorsIdleControl;
40
+ readonly keepout: ModelCollection<KeepoutZone | null>;
41
+ kinematics: Kinematics;
42
+ limitAxes: boolean;
43
+ noMovesBeforeHoming: boolean;
44
+ readonly motionSystems: ModelCollection<MotionSystem>;
45
+ /**
46
+ * @deprecated use motionSystems[].printingAcceleration instead
47
+ */
48
+ printingAcceleration: number;
49
+ readonly queue: ModelCollection<MoveQueueItem>;
50
+ /**
51
+ * @deprecated use motionSystems[].rotation instead
52
+ */
53
+ readonly rotation: MoveRotation;
54
+ readonly shaping: InputShaping;
55
+ speedFactor: number;
56
+ /**
57
+ * @deprecated use motionSystems[].travelAcceleration instead
58
+ */
59
+ travelAcceleration: number;
60
+ usingSCurve: boolean;
61
+ /**
62
+ * @deprecated use motionSystems[].virtualEPos instead
63
+ */
64
+ virtualEPos: number;
65
+ /**
66
+ * @deprecated use motionSystems[].workplaceNumber instead
67
+ */
68
+ workplaceNumber: number;
69
+ }
70
+ export default Move;
71
+ export * from "./kinematics";
72
+ export * from "./Axis";
73
+ export * from "./DriverId";
74
+ export * from "./Extruder";
75
+ export * from "./InputShaping";
76
+ export * from "./KeepoutZone";
77
+ export * from "./Microstepping";
78
+ export * from "./MoveCalibration";
79
+ export * from "./MotionSystem";
80
+ export * from "./MoveCompensation";
@@ -0,0 +1,120 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ var __importDefault = (this && this.__importDefault) || function (mod) {
17
+ return (mod && mod.__esModule) ? mod : { "default": mod };
18
+ };
19
+ Object.defineProperty(exports, "__esModule", { value: true });
20
+ exports.Move = exports.MoveRotation = exports.MoveQueueItem = exports.MotorsIdleControl = exports.CurrentMove = void 0;
21
+ const ModelObject_1 = __importDefault(require("../ModelObject"));
22
+ const ModelCollection_1 = __importDefault(require("../ModelCollection"));
23
+ const Axis_1 = __importDefault(require("./Axis"));
24
+ const Extruder_1 = __importDefault(require("./Extruder"));
25
+ const InputShaping_1 = __importDefault(require("./InputShaping"));
26
+ const KeepoutZone_1 = __importDefault(require("./KeepoutZone"));
27
+ const MotionSystem_1 = __importDefault(require("./MotionSystem"));
28
+ const MoveCalibration_1 = __importDefault(require("./MoveCalibration"));
29
+ const MoveCompensation_1 = __importDefault(require("./MoveCompensation"));
30
+ const kinematics_1 = require("./kinematics");
31
+ class CurrentMove extends ModelObject_1.default {
32
+ constructor() {
33
+ super(...arguments);
34
+ this.acceleration = 0;
35
+ this.deceleration = 0;
36
+ this.extrusionRate = 0;
37
+ this.laserPwm = null;
38
+ this.requestedSpeed = 0;
39
+ this.topSpeed = 0;
40
+ }
41
+ }
42
+ exports.CurrentMove = CurrentMove;
43
+ class MotorsIdleControl extends ModelObject_1.default {
44
+ constructor() {
45
+ super(...arguments);
46
+ this.factor = 0.3;
47
+ this.timeout = 30;
48
+ }
49
+ }
50
+ exports.MotorsIdleControl = MotorsIdleControl;
51
+ class MoveQueueItem extends ModelObject_1.default {
52
+ constructor() {
53
+ super(...arguments);
54
+ this.gracePeriod = 0;
55
+ this.length = 0;
56
+ }
57
+ }
58
+ exports.MoveQueueItem = MoveQueueItem;
59
+ class MoveRotation extends ModelObject_1.default {
60
+ constructor() {
61
+ super(...arguments);
62
+ this.angle = 0;
63
+ this.centre = [0, 0];
64
+ }
65
+ }
66
+ exports.MoveRotation = MoveRotation;
67
+ class Move extends ModelObject_1.default {
68
+ constructor() {
69
+ super(...arguments);
70
+ this.accelerationTime = null;
71
+ this.axes = new ModelCollection_1.default(Axis_1.default);
72
+ this.backlashFactor = 10;
73
+ this.calibration = new MoveCalibration_1.default();
74
+ this.compensation = new MoveCompensation_1.default();
75
+ this.currentMove = new CurrentMove();
76
+ this.extruders = new ModelCollection_1.default(Extruder_1.default);
77
+ this.idle = new MotorsIdleControl();
78
+ this.keepout = new ModelCollection_1.default(KeepoutZone_1.default);
79
+ this.kinematics = new kinematics_1.CoreKinematics(kinematics_1.KinematicsName.cartesian);
80
+ this.limitAxes = true;
81
+ this.noMovesBeforeHoming = true;
82
+ this.motionSystems = new ModelCollection_1.default(MotionSystem_1.default);
83
+ /**
84
+ * @deprecated use motionSystems[].printingAcceleration instead
85
+ */
86
+ this.printingAcceleration = 10000;
87
+ this.queue = new ModelCollection_1.default(MoveQueueItem);
88
+ /**
89
+ * @deprecated use motionSystems[].rotation instead
90
+ */
91
+ this.rotation = new MoveRotation();
92
+ this.shaping = new InputShaping_1.default();
93
+ this.speedFactor = 1;
94
+ /**
95
+ * @deprecated use motionSystems[].travelAcceleration instead
96
+ */
97
+ this.travelAcceleration = 10000;
98
+ this.usingSCurve = false;
99
+ /**
100
+ * @deprecated use motionSystems[].virtualEPos instead
101
+ */
102
+ this.virtualEPos = 0;
103
+ /**
104
+ * @deprecated use motionSystems[].workplaceNumber instead
105
+ */
106
+ this.workplaceNumber = 0;
107
+ }
108
+ }
109
+ exports.Move = Move;
110
+ exports.default = Move;
111
+ __exportStar(require("./kinematics"), exports);
112
+ __exportStar(require("./Axis"), exports);
113
+ __exportStar(require("./DriverId"), exports);
114
+ __exportStar(require("./Extruder"), exports);
115
+ __exportStar(require("./InputShaping"), exports);
116
+ __exportStar(require("./KeepoutZone"), exports);
117
+ __exportStar(require("./Microstepping"), exports);
118
+ __exportStar(require("./MoveCalibration"), exports);
119
+ __exportStar(require("./MotionSystem"), exports);
120
+ __exportStar(require("./MoveCompensation"), exports);
@@ -0,0 +1,9 @@
1
+ import { IModelObject } from "../../ModelObject";
2
+ import { KinematicsName, ZLeadscrewKinematics } from "./KinematicsBase";
3
+ export declare class CoreKinematics extends ZLeadscrewKinematics {
4
+ constructor(name: KinematicsName);
5
+ forwardMatrix: Array<Array<number>>;
6
+ inverseMatrix: Array<Array<number>>;
7
+ update(jsonElement: any): IModelObject | null;
8
+ }
9
+ export default CoreKinematics;
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CoreKinematics = void 0;
4
+ const KinematicsBase_1 = require("./KinematicsBase");
5
+ const index_1 = require("./index");
6
+ class CoreKinematics extends KinematicsBase_1.ZLeadscrewKinematics {
7
+ constructor(name) {
8
+ super(name);
9
+ this.forwardMatrix = [
10
+ [1, 0, 0],
11
+ [0, 1, 0],
12
+ [0, 0, 1]
13
+ ];
14
+ this.inverseMatrix = [
15
+ [1, 0, 0],
16
+ [0, 1, 0],
17
+ [0, 0, 1]
18
+ ];
19
+ }
20
+ update(jsonElement) {
21
+ if (jsonElement === null) {
22
+ throw new Error("Kinematics must not be null");
23
+ }
24
+ if (typeof jsonElement.name === "string" && this.name !== jsonElement.name) {
25
+ return (0, index_1.getKinematics)(jsonElement.name).update(jsonElement);
26
+ }
27
+ return super.update(jsonElement);
28
+ }
29
+ }
30
+ exports.CoreKinematics = CoreKinematics;
31
+ exports.default = CoreKinematics;