UNPKG

alecmce-primitivesjs

Version:

A small library for visualizing the prime factor decomposition of numbers.

25 lines (24 loc) 872 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); var circle_1 = require("./circle"); var primitive_1 = require("./primitive"); var svg_1 = require("./svg"); var ATOM_RADIUS = 4; var OUTLINE_WIDTH = 2; var drawCircle = circle_1.makeCircle(OUTLINE_WIDTH); function drawPrimitive(svg, value) { var item = new primitive_1.Primitive(drawCircle, ATOM_RADIUS, ATOM_RADIUS, value); var container = makeContainer(svg, item); item.draw({ container: container, x: 0, y: 0 }); } exports.drawPrimitive = drawPrimitive; function makeContainer(svg, _a) { var radius = _a.radius; var width = svg.clientWidth; var height = svg.clientHeight; var size = width < height ? width : height; return new svg_1.Svg('g') .appendTo(svg) .position(width / 2, height / 2) .scale(Math.min(1, size / (2.2 * radius))); }