diff --git a/modules/gems/iterables.ts b/modules/gems/iterables.ts index 618e4c78..28f3e3eb 100644 --- a/modules/gems/iterables.ts +++ b/modules/gems/iterables.ts @@ -97,4 +97,9 @@ export function insertAfter(arr, item, toAdd) { } } +export function fillArray(a, fromIndex, toIndex,val) { + for (let i = fromIndex; i < toIndex; i++) + a[i] = val; +} + export const EMPTY_ARRAY = Object.freeze([]); diff --git a/web/app/math/qr.js b/modules/math/qr.js similarity index 98% rename from web/app/math/qr.js rename to modules/math/qr.js index 6807b4e7..32a7db49 100644 --- a/web/app/math/qr.js +++ b/modules/math/qr.js @@ -1,5 +1,5 @@ -import {fillArray} from '../utils/utils' -import {_vec} from "../../../modules/math/vec"; +import {_vec} from "./vec"; +import {fillArray} from "gems/iterables"; /** @constructor */ function QR(matrix) { diff --git a/web/app/sketcher/constr/solver.js b/web/app/sketcher/constr/solver.js index 428f5ce5..06829ca0 100644 --- a/web/app/sketcher/constr/solver.js +++ b/web/app/sketcher/constr/solver.js @@ -1,9 +1,9 @@ -import * as utils from '../../utils/utils' -import QR from '../../math/qr' +import QR from 'math/qr' import LMOptimizer from 'math/optim/lm' import {ConstantWrapper, EqualsTo} from './solverConstraints' import {dog_leg} from 'math/optim/dogleg' import {newVector} from 'math/vec'; +import {fillArray} from "gems/iterables"; /** @constructor */ @@ -38,7 +38,7 @@ System.prototype.makeJacobian = function() { var cParams = c.params; var grad = []; - utils.fillArray(grad, 0, cParams.length, 0); + fillArray(grad, 0, cParams.length, 0); c.gradient(grad); for (var p = 0; p < cParams.length; p++) { @@ -56,7 +56,7 @@ System.prototype.fillJacobian = function(jacobi) { var cParams = c.params; var grad = []; - utils.fillArray(grad, 0, cParams.length, 0); + fillArray(grad, 0, cParams.length, 0); c.gradient(grad); for (var p = 0; p < cParams.length; p++) { @@ -94,7 +94,7 @@ System.prototype.calcGrad_ = function(out) { var cParams = c.params; var grad = []; - utils.fillArray(grad, 0, cParams.length, 0); + fillArray(grad, 0, cParams.length, 0); c.gradient(grad); for (var p = 0; p < cParams.length; p++) { @@ -116,7 +116,7 @@ System.prototype.calcGrad = function(out) { var cParams = c.params; var grad = []; - utils.fillArray(grad, 0, cParams.length, 0); + fillArray(grad, 0, cParams.length, 0); c.gradient(grad); for (var p = 0; p < cParams.length; p++) { diff --git a/web/app/sketcher/constr/solverConstraints.js b/web/app/sketcher/constr/solverConstraints.js index 40da3418..b175e23e 100644 --- a/web/app/sketcher/constr/solverConstraints.js +++ b/web/app/sketcher/constr/solverConstraints.js @@ -1,8 +1,9 @@ -import {fillArray} from '../../utils/utils' +import {fillArray} from "gems/iterables"; /** * This intermediate layer should be eliminated since constraint server isn't used anymore */ + function createByConstraintName(name, params, values) { switch (name) { case "equal": diff --git a/web/app/utils/utils.js b/web/app/utils/utils.js index 1ba1a3ff..1dffe124 100644 --- a/web/app/utils/utils.js +++ b/web/app/utils/utils.js @@ -24,11 +24,6 @@ export const extend = function(func, parent) { } }; -export function fillArray(a, fromIndex, toIndex,val) { - for (var i = fromIndex; i < toIndex; i++) - a[i] = val; -} - export function constRef(value) { return function() { return value;