UNPKG

gs-json

Version:

gs-JSON is a domain agnostic unifying 3D file format for geometric and semantic modelling (hence the 'gs').

784 lines (768 loc) 24.5 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.test_Geom_copyRayFromModel = test_Geom_copyRayFromModel; exports.test_Geom_copyPlaneFromModel = test_Geom_copyPlaneFromModel; exports.test_Geom_copyCircleFromModel = test_Geom_copyCircleFromModel; exports.test_Geom_copyObjFromModel = test_Geom_copyObjFromModel; exports.test_Geom_createPoint = test_Geom_createPoint; exports.test_Geom_constructor = test_Geom_constructor; exports.test_Geom_addPoint = test_Geom_addPoint; exports.test_Geom_addPolyline = test_Geom_addPolyline; exports.test_Geom_addPolymesh = test_Geom_addPolymesh; exports.test_Geom_getPoints = test_Geom_getPoints; exports.test_Geom_getPoint = test_Geom_getPoint; exports.test_Geom_delPoint = test_Geom_delPoint; exports.test_Geom_numPoints = test_Geom_numPoints; exports.test_Geom_mergePoints = test_Geom_mergePoints; exports.test_Geom_getObjs = test_Geom_getObjs; exports.test_Geom_getObj = test_Geom_getObj; exports.test_Geom_unweldObjs = test_Geom_unweldObjs; exports.test_Geom_delObj = test_Geom_delObj; exports.test_Geom_numObjs = test_Geom_numObjs; exports.test_Geom_getTopo = test_Geom_getTopo; exports.test_Geom_getTopoFromLabel = test_Geom_getTopoFromLabel; exports.test_Geom_getTopos = test_Geom_getTopos; exports.test_Geom_numTopos = test_Geom_numTopos; var _arr = require("./libs/arr/arr"); var _gsJson = require("./gs-json"); var gs = _interopRequireWildcard(_gsJson); var _test_data = require("./test_data"); var td = _interopRequireWildcard(_test_data); function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } } describe("Tests for Geom class", function () { it("test_copyPlaneFromModel", function () { expect(test_Geom_copyPlaneFromModel()).toBe(true); }); it("test_copyCircleFromModel", function () { expect(test_Geom_copyCircleFromModel()).toBe(true); }); it("test_copyObjFromModel", function () { expect(test_Geom_copyObjFromModel()).toBe(true); }); it("test_createPoint", function () { expect(test_Geom_createPoint()).toBe(true); }); it("test_Geom_constructor", function () { expect(test_Geom_constructor()).toBe(true); }); // it("test_test_Geom_getModel", () => { // expect( test_Geom_getModel() ).toBe(true); // }); it("test_Geom_addPoint", function () { expect(test_Geom_addPoint()).toBe(true); }); it("test_Geom_addPolyline", function () { expect(test_Geom_addPolyline()).toBe(true); }); it("test_test_Geom_addPolymesh", function () { expect(test_Geom_addPolymesh()).toBe(true); }); // it("test_Geom_getPointIDs", () => { // expect( test_Geom_getAllPointIDs() ).toBe(true); // }); it("test_Geom_getPoints", function () { expect(test_Geom_getPoints()).toBe(true); }); it("test_Geom_getPoint", function () { expect(test_Geom_getPoint()).toBe(true); }); it("test_Geom_delPoint", function () { expect(test_Geom_delPoint()).toBe(true); }); it("test_Geom_numPoints", function () { expect(test_Geom_numPoints()).toBe(true); }); it("test_Geom_mergePoints", function () { expect(test_Geom_mergePoints()).toBe(true); }); // it("test_Geom_getObjIDs", () => { // expect( test_Geom_getAllObjIDs() ).toBe(true); // }); it("test_Geom_getObjs", function () { expect(test_Geom_getObjs()).toBe(true); }); it("test_Geom_getObj", function () { expect(test_Geom_getObj()).toBe(true); }); it("test_Geom_unweldObjs", function () { expect(test_Geom_unweldObjs()).toBe(true); }); it("test_Geom_delObj", function () { expect(test_Geom_delObj()).toBe(true); }); it("test_Geom_numObjs", function () { expect(test_Geom_numObjs()).toBe(true); }); it("test_Geom_getTopos", function () { expect(test_Geom_getTopos()).toBe(true); }); it("test_Geom_numTopos", function () { expect(test_Geom_numTopos()).toBe(true); }); it("test_Geom_getTopo", function () { expect(test_Geom_getTopo()).toBe(true); }); it("test_Geom_getTopoFromLabel", function () { expect(test_Geom_getTopoFromLabel()).toBe(true); }); }); function test_Geom_copyRayFromModel() { var m1 = new gs.Model(); var g1 = m1.getGeom(); var p1 = g1.addPoint([0.1234, 0.44566, 0.345778]); var ray1 = g1.addRay(p1, [1, 2, 3]); var m2 = new gs.Model(); var g2 = m2.getGeom(); var ray2 = g2.copyRayFromModel(ray1); if (g2.numObjs() !== 1) { return false; } if (g2.numPoints() !== 1) { return false; } if (ray1.getOrigin()[2] !== ray2.getOrigin()[2]) { return false; } return true; } function test_Geom_copyPlaneFromModel() { var m1 = new gs.Model(); var g1 = m1.getGeom(); var p = g1.addPoint([0.1234, 0.44566, 0.345778]); var pl1 = g1.addPlane(p, [1, 2, 3], [7, 2, 5]); var m2 = new gs.Model(); var g2 = m2.getGeom(); var pl2 = g2.copyPlaneFromModel(pl1); if (g2.numObjs() !== 1) { return false; } if (g2.numPoints() !== 1) { return false; } if (pl1.getOrigin()[2] !== pl2.getOrigin()[2]) { return false; } return true; } function test_Geom_copyCircleFromModel() { var m1 = new gs.Model(); var g1 = m1.getGeom(); var p = g1.addPoint([0.1234, 0.44566, 0.345778]); var cir1 = g1.addCircle(p, [1, 2, 3], [7, 2, 5]); var m2 = new gs.Model(); var g2 = m2.getGeom(); var cir2 = g2.copyCircleFromModel(cir1); if (g2.numObjs() !== 1) { return false; } if (g2.numPoints() !== 1) { return false; } if (cir1.getOrigin()[2] !== cir2.getOrigin()[2]) { return false; } return true; } function test_Geom_copyObjFromModel() { var m1 = new gs.Model(); var g1 = m1.getGeom(); var p1 = g1.addPoint([0.1234, 0.44566, 0.345778]); var ray1 = g1.addRay(p1, [1, 2, 3]); var pl1 = g1.addPlane(p1, [1, 2, 3], [7, 2, 5]); var cir1 = g1.addCircle(p1, [1, 2, 3], [7, 2, 5]); var m2 = new gs.Model(); var g2 = m2.getGeom(); // copy three objects var ray2 = g2.copyRayFromModel(ray1); var pl2 = g2.copyPlaneFromModel(pl1); var cir2 = g2.copyObjFromModel(cir1); if (g2.numObjs() !== 3) { return false; } if (g2.numPoints() !== 3) { return false; } if (cir1.getOrigin()[2] !== cir2.getOrigin()[2]) { return false; } return true; } function test_Geom_createPoint() { var m = new gs.Model(); var g = m.getGeom(); var p1 = g.addPoint([1, 2, 3]); var p2 = g.addPoint([0, 0, 0]); var p3 = g.addPoint([0.1234, 0.44566, 0.345778]); if (g.numPoints() !== 3) { return false; } if (!_arr.Arr.equal(g.getAllPoints()[1].getPosition(), [0, 0, 0])) { return false; } return true; } // Geom constructor and its 19 public methods are tested function test_Geom_constructor() { var m1 = new gs.Model(); var a = [1, 2, 3]; m1.getGeom().addPoint(a); // TODO // if(!(Arr.equal(m1.getGeom().getPointData(0)[1],a))) {return false;} return true; } function test_Geom_addPoint() { var model = new gs.Model(); var p1 = [4, 8, 6]; var num_Point = 1; // for (let k:number = 0 ; 10 ; k++){a[k] = Math.floor(Math.random() * 10);} (this line crashes Karma) model.getGeom().addPoint(p1); // test 1.1 if (model.getGeom().numPoints() !== num_Point) { return false; } // test 1.2 for (var j = 0; j < model.getGeom().numPoints(); j++) { var _iteratorNormalCompletion = true; var _didIteratorError = false; var _iteratorError = undefined; try { for (var _iterator = p1[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) { // TODO // if(model.getGeom().getPointData(j)[1][k] !== p1[k] ) {return false;} var k = _step.value; } } catch (err) { _didIteratorError = true; _iteratorError = err; } finally { try { if (!_iteratorNormalCompletion && _iterator.return) { _iterator.return(); } } finally { if (_didIteratorError) { throw _iteratorError; } } } } // var p2 = [4, 2, 8]; num_Point = num_Point + 1; model.getGeom().addPoint(p2); // test 2.1 if (model.getGeom().numPoints() !== num_Point) { return false; } // test 2.2 var _iteratorNormalCompletion2 = true; var _didIteratorError2 = false; var _iteratorError2 = undefined; try { for (var _iterator2 = p2[Symbol.iterator](), _step2; !(_iteratorNormalCompletion2 = (_step2 = _iterator2.next()).done); _iteratorNormalCompletion2 = true) { var _k = _step2.value; } // TODO // if(model.getGeom().getPointData(1)[1][k] !== p2[k] ) {return false;} //// } catch (err) { _didIteratorError2 = true; _iteratorError2 = err; } finally { try { if (!_iteratorNormalCompletion2 && _iterator2.return) { _iterator2.return(); } } finally { if (_didIteratorError2) { throw _iteratorError2; } } } var p3 = [6, 1, 7]; num_Point = num_Point + 1; model.getGeom().addPoint(p3); // test 3.1 if (model.getGeom().numPoints() !== num_Point) { return false; } // test 3.2 var _iteratorNormalCompletion3 = true; var _didIteratorError3 = false; var _iteratorError3 = undefined; try { for (var _iterator3 = p3[Symbol.iterator](), _step3; !(_iteratorNormalCompletion3 = (_step3 = _iterator3.next()).done); _iteratorNormalCompletion3 = true) { // TODO // if(model.getGeom().getPointData(2)[1][k] !== p3[k] ) {return false;} var _k2 = _step3.value; } } catch (err) { _didIteratorError3 = true; _iteratorError3 = err; } finally { try { if (!_iteratorNormalCompletion3 && _iterator3.return) { _iterator3.return(); } } finally { if (_didIteratorError3) { throw _iteratorError3; } } } return true; } function test_Geom_addPolyline() { var m = new gs.Model(); var g = m.getGeom(); var p1 = g.addPoint([0, 0, 0]); var p2 = g.addPoint([2, 0, 0]); var p3 = g.addPoint([3, 6, 0]); var p4 = g.addPoint([7, 4, 9]); var pline1 = g.addPolyline([p1, p2, p3, p4], true); var pline2 = g.addPolyline([p1, p2, p3], false); if (g.numObjs() !== 2) { return false; } if (pline1.numFaces() !== 0) { return false; } if (pline1.numWires() !== 1) { return false; } if (pline2.numFaces() !== 0) { return false; } if (pline2.numWires() !== 1) { return false; } return true; } function test_Geom_addPolymesh() { var m = new gs.Model(); var g = m.getGeom(); var p1 = g.addPoint([0, 0, 0]); var p2 = g.addPoint([2, 0, 0]); var p3 = g.addPoint([2, 7, 0]); var p4 = g.addPoint([7, 7, 2]); var pmesh1 = g.addPolymesh([[p1, p2, p3], [p2, p4, p3]]); if (g.numObjs() !== 1) { return false; } if (pmesh1.numFaces() !== 2) { return false; } if (pmesh1.numWires() !== 1) { return false; } var p10 = g.addPoint([-5, -3, -2]); var p11 = g.addPoint([5, -3, -2]); var p12 = g.addPoint([5, 3, -2]); var p13 = g.addPoint([-5, 3, -2]); var p14 = g.addPoint([-5, -3, 2]); var p15 = g.addPoint([5, -3, 2]); var p16 = g.addPoint([5, 3, 2]); var p17 = g.addPoint([-5, 3, 2]); var pmesh2 = g.addPolymesh([[p13, p12, p11, p10], [p10, p11, p15, p14], [p11, p12, p16, p15], [p12, p13, p17, p16], [p13, p10, p14, p17], [p14, p15, p16, p17]]); if (g.numObjs() !== 2) { return false; } if (pmesh2.numFaces() !== 6) { return false; } if (pmesh2.numWires() !== 0) { return false; } var pmesh3 = g.addPolymesh([[p13, p12, p11, p10], [p10, p11, p15, p14], [p13, p10, p14, p17], [p14, p15, p16, p17]]); if (g.numObjs() !== 3) { return false; } if (pmesh3.numFaces() !== 4) { return false; } if (pmesh3.numWires() !== 1) { return false; } return true; } function test_Geom_getPoints() { var m = new gs.Model(); var g1 = m.getGeom(); var p1 = [1, 3, 9]; g1.addPoint(p1); var p2 = [2, 1, 6]; g1.addPoint(p2); var p3 = [4, 9, 2]; g1.addPoint(p3); var p4 = [2, 3, 4]; g1.addPoint(p4); var p5 = [8, 4, 3]; g1.addPoint(p5); var p6 = [6, 1, 7]; g1.addPoint(p6); var p7 = [9, 0, 4]; g1.addPoint(p7); var p8 = [4, 0, 8]; g1.addPoint(p8); var test8 = g1.getAllPoints()[7].getPosition(); if (!_arr.Arr.equal(test8, p8)) { return false; } return true; } function test_Geom_getPoint() { var m = new gs.Model(); var geom = m.getGeom(); var p1 = geom.addPoint([1, 3, 8]); var p2 = geom.addPoint([6, 4, 3]); var p3 = geom.addPoint([8, 8, 8]); var p4 = geom.addPoint([3, 4, 5]); var p5 = geom.addPoint([2, 3, 5]); var p6 = geom.addPoint([1, 5, 2]); if (!_arr.Arr.equal(geom.getPoint(0).getPosition(), p1.getPosition())) { return false; } if (!_arr.Arr.equal(geom.getPoint(1).getPosition(), p2.getPosition())) { return false; } if (!_arr.Arr.equal(geom.getPoint(2).getPosition(), p3.getPosition())) { return false; } if (!_arr.Arr.equal(geom.getPoint(3).getPosition(), p4.getPosition())) { return false; } if (!_arr.Arr.equal(geom.getPoint(4).getPosition(), p5.getPosition())) { return false; } if (!_arr.Arr.equal(geom.getPoint(5).getPosition(), p6.getPosition())) { return false; } return true; } function test_Geom_delPoint() { { var m = new gs.Model(); var g = m.getGeom(); var p0 = g.addPoint([1, 2, 3]); var p1 = g.addPoint([0, 0, 0]); var p2 = g.addPoint([4, 5, 6]); if (!g.delPoint(p1)) { return false; } if (g.numPoints() !== 2) { return false; } if (!_arr.Arr.equal(g.getPoint(2).getPosition(), [4, 5, 6])) { return false; } if (!g.delPoint(p2)) { return false; } if (g.numPoints() !== 1) { return false; } if (!_arr.Arr.equal(g.getPoint(0).getPosition(), [1, 2, 3])) { return false; } if (!g.delPoint(p0)) { return false; } if (g.numPoints() !== 0) { return false; } } { var _m = new gs.Model(); var _g = _m.getGeom(); var _p = _g.addPoint([1, 2, 3]); var _p2 = _g.addPoint([0, 0, 0]); var _p3 = _g.addPoint([4, 5, 6]); var pline = _g.addPolyline([_p, _p2, _p3], false); if (!_g.delPoint(_p2)) { return false; } if (!pline.exists()) { return false; } if (_g.numPoints() !== 2) { return false; } var points = pline.getPointsArr(); if (points.length !== 2) { return false; } if (!_g.delPoint(_p3)) { return false; } if (pline.exists()) { return false; } } return true; } function test_Geom_numPoints() { var m = new gs.Model(); var geom = m.getGeom(); if (!(geom.numPoints() === 0)) { return false; } geom.addPoint([1, 3, 8]); if (!(geom.numPoints() === 1)) { return false; } geom.addPoint([8, 8, 8]); if (!(geom.numPoints() === 2)) { return false; } geom.addPoint([3, 4, 5]); if (!(geom.numPoints() === 3)) { return false; } geom.addPoint([2, 3, 5]); if (!(geom.numPoints() === 4)) { return false; } geom.addPoint([1, 5, 2]); if (!(geom.numPoints() === 5)) { return false; } return true; } function test_Geom_mergePoints() { var m = new gs.Model(); var geom = m.getGeom(); for (var i = 0; i < 1000; i++) { geom.addPoint([Math.random(), Math.random(), Math.random()]); } for (var _i = 0; _i < 1000; _i++) { if (Math.random() > 0.5) { geom.delPoint(geom.getPoint(_i)); } } geom.mergeAllPoints(0.2); if (geom.numPoints() === 1000) { return false; } var m2 = new gs.Model(); var g2 = m2.getGeom(); var p1 = g2.addPoint([10, 0, 0]); var p2 = g2.addPoint([20, 0, 0]); var new_points = g2.mergePoints([p1, p2]); if (new_points.length !== 1) { return false; } if (new_points[0].getPosition()[0] !== 15) { return false; } return true; } function test_Geom_getObjs() { var m = new gs.Model(td.open_box()); var geom = m.getGeom(); var p1 = geom.addPoint([0, 0, 0]); var p2 = geom.addPoint([2, 0, 0]); var p3 = geom.addPoint([3, 6, 0]); var p4 = geom.addPoint([7, 4, 9]); var pline1 = geom.addPolyline([p1, p2, p3, p4], true); var pline2 = geom.addPolyline([p1, p2, p3], false); var pline3 = geom.addPolyline([p1, p3, p4], false); if (!_arr.Arr.equal([geom.getAllObjs()[0].getObjType()], [200])) { return false; } if (!_arr.Arr.equal([geom.getAllObjs()[1].getObjType()], [100])) { return false; } if (!_arr.Arr.equal([geom.getAllObjs()[2].getObjType()], [100])) { return false; } return true; } function test_Geom_getObj() { var m = new gs.Model(td.open_box()); var geom = m.getGeom(); var polymesh = geom.getObj(0); if (!_arr.Arr.equal([polymesh.getObjType()], [200])) { return false; } return true; } function test_Geom_unweldObjs() { var m = new gs.Model(); var g = m.getGeom(); var p1 = g.addPoint([0, 0, 0]); var p2 = g.addPoint([2, 0, 0]); var p3 = g.addPoint([3, 6, 0]); var p4 = g.addPoint([7, 4, 9]); var p5 = g.addPoint([1, 2, 6]); var pline1 = g.addPolyline([p1, p2, p3, p4, p5], true); var pline2 = g.addPolyline([p1, p2, p3], false); var pline3 = g.addPolyline([p1, p3, p4], false); // unweld var new_points = g.unweldObjs([pline1, pline2, pline3]); if (new_points.length !== 6) { return false; } return true; } function test_Geom_delObj() { var m = new gs.Model(td.open_box()); var g = m.getGeom(); var p1 = g.addPoint([0, 0, 0]); var p2 = g.addPoint([2, 0, 0]); var p3 = g.addPoint([3, 6, 0]); var p4 = g.addPoint([7, 4, 9]); var p5 = g.addPoint([1, 2, 6]); var p6 = g.addPoint([7, 8, 99]); var box = g.getObj(0); var pline1 = g.addPolyline([p1, p2, p3, p4, p5, p6], true); var pline2 = g.addPolyline([p1, p2, p3], false); var pline3 = g.addPolyline([p1, p3, p4], false); // delete some stuff if (g.numObjs() !== 4) { return false; } g.delObj(box, false); if (g.numObjs() !== 3) { return false; } g.delObjs([pline1, pline3], false); if (g.numObjs() !== 1) { return false; } // create some attribs var p_att = m.addEntAttrib("test0", gs.EGeomType.points, gs.EDataType.type_str); var o_att = m.addEntAttrib("test1", gs.EGeomType.objs, gs.EDataType.type_num); var e_att = m.addTopoAttrib("test2", gs.EGeomType.edges, gs.EDataType.type_num); var w_att = m.addTopoAttrib("test3", gs.EGeomType.wires, gs.EDataType.type_num); // set attribs p1.setAttribValue(p_att, "jshjdhjh"); pline2.setAttribValue(o_att, 12234456); // now delete some more stuff g.delObj(pline2, true); if (g.numObjs() !== 0) { return false; } // now check if attributes are updated //console.log(m); return true; } function test_Geom_numObjs() { var m = new gs.Model(td.open_box()); var geom = m.getGeom(); // numObjs no longer allos you to specify EObjType if (!(geom.numObjs() === 1)) { return false; } var p1 = geom.addPoint([0, 0, 0]); var p2 = geom.addPoint([2, 0, 0]); var p3 = geom.addPoint([3, 6, 0]); var p4 = geom.addPoint([7, 4, 9]); var pline1 = geom.addPolyline([p1, p2, p3, p4], true); if (!(geom.numObjs() === 2)) { return false; } var pline2 = geom.addPolyline([p1, p2, p3], false); if (!(geom.numObjs() === 3)) { return false; } var pline3 = geom.addPolyline([p1, p3, p4], false); if (!(geom.numObjs() === 4)) { return false; } return true; } function test_Geom_getTopo() { var m = new gs.Model(td.open_box()); var geom = m.getGeom(); var face = geom.getTopo({ id: 0, tt: 1, ti: 1 }); var wire = geom.getTopo({ id: 0, tt: 0, ti: 0 }); var face_edge = geom.getTopo({ id: 0, tt: 1, ti: 0, st: 1, si: 0 }); var wire_edge = geom.getTopo({ id: 0, tt: 0, ti: 0, st: 1, si: 0 }); var face_vertex = geom.getTopo({ id: 0, tt: 1, ti: 0, st: 0, si: 0 }); var wire_vertex = geom.getTopo({ id: 0, tt: 0, ti: 0, st: 0, si: 0 }); if (face.getGeomType() !== gs.EGeomType.faces) { return false; } if (wire.getGeomType() !== gs.EGeomType.wires) { return false; } if (face_edge.getGeomType() !== gs.EGeomType.edges) { return false; } if (wire_edge.getGeomType() !== gs.EGeomType.edges) { return false; } if (face_vertex.getGeomType() !== gs.EGeomType.vertices) { return false; } if (wire_vertex.getGeomType() !== gs.EGeomType.vertices) { return false; } return true; } function test_Geom_getTopoFromLabel() { var m = new gs.Model(td.open_box()); var geom = m.getGeom(); var face = geom.getTopoFromLabel("o0:f1"); var wire = geom.getTopoFromLabel("o0:w0"); var face_edge = geom.getTopoFromLabel("o0:f1:e1"); var wire_edge = geom.getTopoFromLabel("o0:w0:e2"); var face_vertex = geom.getTopoFromLabel("o0:f1:v2"); var wire_vertex = geom.getTopoFromLabel("o0:w0:v2"); if (face.getGeomType() !== gs.EGeomType.faces) { return false; } if (wire.getGeomType() !== gs.EGeomType.wires) { return false; } if (face_edge.getGeomType() !== gs.EGeomType.edges) { return false; } if (wire_edge.getGeomType() !== gs.EGeomType.edges) { return false; } if (face_vertex.getGeomType() !== gs.EGeomType.vertices) { return false; } if (wire_vertex.getGeomType() !== gs.EGeomType.vertices) { return false; } return true; } function test_Geom_getTopos() { var m = new gs.Model(td.open_box()); var geom = m.getGeom(); if (!(geom.getTopos(gs.EGeomType.edges).length === geom.numTopos(gs.EGeomType.edges))) { return false; } if (!(geom.getTopos(gs.EGeomType.vertices).length === geom.numTopos(gs.EGeomType.vertices))) { return false; } if (!(geom.getTopos(gs.EGeomType.faces).length === geom.numTopos(gs.EGeomType.faces))) { return false; } if (!(geom.getTopos(gs.EGeomType.wires).length === geom.numTopos(gs.EGeomType.wires))) { return false; } return true; } function test_Geom_numTopos() { var m = new gs.Model(td.box_with_attribs()); var geom = m.getGeom(); if (!(geom.getTopos(gs.EGeomType.edges).length === geom.numTopos(gs.EGeomType.edges))) { return false; } if (!(geom.getTopos(gs.EGeomType.vertices).length === geom.numTopos(gs.EGeomType.vertices))) { return false; } if (!(geom.getTopos(gs.EGeomType.faces).length === geom.numTopos(gs.EGeomType.faces))) { return false; } if (!(geom.getTopos(gs.EGeomType.wires).length === geom.numTopos(gs.EGeomType.wires))) { return false; } return true; } //# sourceMappingURL=_geom_tests.js.map