@mitchallen/connection-grid-core

0.1.22 • Public • Published

@mitchallen/connection-grid-core

Connection grid core

Version Coverage Status Version jsdelivr


Installation

You must use npm 2.7.0 or higher because of the scoped package name.

$ npm init
$ npm install @mitchallen/connection-grid-core --save

Usage

"use strict";
    
let gridFactory = require("@mitchallen/connection-grid-core"),
    gridSquare = require('@mitchallen/grid-square')
    
let sourceGrid = gridSquare.create({ x: 5, y: 6 });
	
let _dirMap = { 
        "N": 0x010, 
        "S": 0x020, 
        "E": 0x040, 
        "W": 0x080 };

let _oppositeMap = { "E": "W", "W": "E", "N": "S", "S": "N" };

let cg = gridFactory.create({  
        grid: sourceGrid,     
        dirMap: _dirMap,
        oppositeMap: _oppositeMap 
      });

Browser Usage:

<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8">
    <title>Connection-Grid-Core Example</title>
    <meta name="description" content="Connection Grid Core Example">
    <script src="https://cdn.jsdelivr.net/npm/@mitchallen/connection-grid-core@0.1.22/dist/connection-grid-core.min.js"></script>
    <script src="https://unpkg.com/@mitchallen/grid-square@0.1.8/dist/grid-square.min.js"></script>
    <script>
      var factory = window.MitchAllen.ConnectionGridCore;
      var squareFactory = window.MitchAllen.GridSquare;
      console.log(factory);
      var xSize = 10, ySize = 5;
      var sourceGrid = squareFactory.create({ x: xSize, y: ySize });
      var _dirMap = { 
        "N": 0x010, 
        "S": 0x020, 
        "E": 0x040, 
        "W": 0x080 };
    let _oppositeMap = { "E": "W", "W": "E", "N": "S", "S": "N" };
    var cg = factory.create({ 
        grid: sourceGrid, 
        dirMap: _dirMap,
        oppositeMap: _oppositeMap 
      });
      console.log(cg); 
    </script>
  </head>
  <body>
    <h1>Connection Grid Core Example</h1>
  </body>
</html>

Documentation


Testing

To test, go to the root folder and type (sans $):

$ npm test

Repo(s)


Contributing

In lieu of a formal style guide, take care to maintain the existing coding style. Add unit tests for any new or changed functionality. Lint and test your code.


Version History

Version 0.1.12

  • Added isDeadEnd method
  • Added connectionCount method
  • hasConnections accounts for VISITED flag

Version 0.1.11

  • added experimental getMaxDistance and supporting functions

Version 0.1.10

  • updated .npmignore

Version 0.1.9

  • integrated travis-ci and codecov.io
  • uses latest version of @mitchallen/shuffle
  • updated license to MIT
  • refactored test cases to bring code coverage to 100%

Version 0.1.8

  • corrected reference to derived class in documentation

Version 0.1.7

  • refactored documentation

Version 0.1.6

  • fixed issue with documentation

Version 0.1.5

  • fixed issue with documentation

Version 0.1.4

  • added web-server to npm scripts
  • added message in client example HTML to check JavaScript console

Version 0.1.3

  • fixed issue with documentation tag

Version 0.1.2

  • added open method
  • integrated jsdoc
  • updated documentation

Version 0.1.1

  • added browser example

Version 0.1.0

  • initial release

Readme

Keywords

none

Package Sidebar

Install

npm i @mitchallen/connection-grid-core

Weekly Downloads

1

Version

0.1.22

License

MIT

Unpacked Size

96.8 kB

Total Files

7

Last publish

Collaborators

  • mitchallen