https://github.com/ivis-at-bilkent/avsdf-base
A JS implementation of Adjacent Vertex with Smallest Degree First algorithm
Science Score: 18.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
○CITATION.cff file
-
○codemeta.json file
-
○.zenodo.json file
-
○DOI references
-
✓Academic publication links
Links to: researchgate.net -
○Committers with academic emails
-
✓Institutional organization owner
Organization ivis-at-bilkent has institutional domain (www.cs.bilkent.edu.tr) -
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (7.0%) to scientific vocabulary
Repository
A JS implementation of Adjacent Vertex with Smallest Degree First algorithm
Basic Info
Statistics
- Stars: 1
- Watchers: 5
- Forks: 0
- Open Issues: 1
- Releases: 0
Metadata Files
README.md
avsdf-base
Description
avsdf-base is a JavaScript library that constitutes of elements helpful in applying the Circular Drawing Algorithm by Hongmei He & Ondrej Sýkora.
## Dependencies
- layout-base ^1.0.0
Elements of layout-base can be accessed through this library as well. See below for an example.
## Usage
Add avsdf-base as a dependecy to your layout extension.
require() in the extension to reach functionality:
js
const AVSDFLayout = require('avsdf-base').AVSDFLayout;
const AVSDFNode = require('avsdf-base').AVSDFNode;
const AVSDFConstants = require('avsdf-base').AVSDFConstants;
const PointD = require('avsdf-base').layoutBase.PointD;
const DimensionD = require('avsdf-base').layoutBase.DimensionD;
API
The main layout and a Graph Manager (see layout-base for details) connected to this layout is needed with
js
let avsdfLayout = new AVSDFLayout();
let graphManager = avsdfLayout.newGraphManager();
let root = graphManager.addRoot();
Filling in the Graph Manager with nodes and edges are more related to layout-base library than this library. So details have to be found there. But remember to add AVSDF elements as
opposed to layout-base elements. Also remember that the root of the Graph Manager should be an AVSDFCircle object.
```js // Adding a node Let node = root.add(new AVSDFNode(graphManager));
// Adding an edge Let edge = graphManager.add(avsdfLayout.newEdge(), sourceNode, targetNode); ```
After all nodes and edges are added. The algorithm can be run as shown below.
```js // Running the AVSDF layout. avsdfLayout.layout();
// Post process is iterated over the sorted list of vertex degrees (descending) let sortedByDegreeList = avsdfLayout.initPostProcess();
// Post process is done step by step so that it could be displayed more efficiently for (node in sortedByDegreeList) { avsdfLayout.oneStepPostProcess(node); }
// An update for the angles (in radians) for the node angles are needed avsdfLayout.updateNodeAngles();
// An update for the node coordinates are needed avsdfLayout.updateNodeCoordinates(); ```
Note that updateNodeAngles() and updateNodeCoordinates() have to be called at each step if you want to take post processing apart instead of doing it in one go as shown above.
Owner
- Name: i-Vis at Bilkent
- Login: iVis-at-Bilkent
- Kind: organization
- Website: http://www.cs.bilkent.edu.tr/~ivis/
- Twitter: iVisAtBilkent
- Repositories: 50
- Profile: https://github.com/iVis-at-Bilkent
i-Vis Research Lab at Bilkent University
GitHub Events
Total
Last Year
Committers
Last synced: 10 months ago
Top Committers
| Name | Commits | |
|---|---|---|
| alihanokka | a****a@h****m | 5 |
| Hasan Balcı | b****9@g****m | 3 |
Issues and Pull Requests
Last synced: 9 months ago
All Time
- Total issues: 1
- Total pull requests: 2
- Average time to close issues: about 8 hours
- Average time to close pull requests: less than a minute
- Total issue authors: 1
- Total pull request authors: 2
- Average comments per issue: 1.0
- Average comments per pull request: 0.0
- Merged pull requests: 1
- Bot issues: 0
- Bot pull requests: 1
Past Year
- Issues: 0
- Pull requests: 0
- Average time to close issues: N/A
- Average time to close pull requests: N/A
- Issue authors: 0
- Pull request authors: 0
- Average comments per issue: 0
- Average comments per pull request: 0
- Merged pull requests: 0
- Bot issues: 0
- Bot pull requests: 0
Top Authors
Issue Authors
- hasanbalci (1)
Pull Request Authors
- dependabot[bot] (1)
- hasanbalci (1)
Top Labels
Issue Labels
Pull Request Labels
Packages
- Total packages: 1
-
Total downloads:
- npm 45,177 last-month
- Total docker downloads: 92
- Total dependent packages: 4
- Total dependent repositories: 46
- Total versions: 1
- Total maintainers: 1
npmjs.org: avsdf-base
Library elements of the AVSDF algorithm
- Homepage: https://github.com/iVis-at-Bilkent/avsdf-base#readme
- License: MIT
-
Latest release: 1.0.0
published about 7 years ago
Rankings
Maintainers (1)
Dependencies
- 1068 dependencies
- babel-core ^6.24.1 development
- babel-loader ^7.0.0 development
- babel-preset-env ^1.5.1 development
- camelcase ^4.1.0 development
- cpy-cli ^1.0.1 development
- cross-env ^5.1.6 development
- eslint ^3.9.1 development
- gh-pages ^1.1.0 development
- npm-run-all ^4.1.2 development
- rimraf ^2.6.2 development
- update ^0.7.4 development
- updater-license ^1.0.0 development
- webpack ^2.6.1 development
- webpack-dev-server ^2.4.5 development
- layout-base ^1.0.0