alecmce-primitivesjs
Version:
A small library for visualizing the prime factor decomposition of numbers.
25 lines (24 loc) • 872 B
JavaScript
;
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)));
}