xxxxxxxxxx
27
function CoordinateSystem(origin, frame, ranges, padding) {
this.origin = p5.Vector.from(origin);
if (typeof frame !== Frame)
frame = new Frame();
this.frame = frame;
}
function Frame(x0, y0, x1=null, y1=null) {
}
function Point(coords) {
if (typeof coords !== p5.Vector)
coords = createVector(0, 0);
this.coords = coords;
}
Point.prototype.getScreenPosition = function(padding, range) {
return createVector(width / 2 + this.coords.x / range * (width / 2 - padding),
height / 2 - this.coords.y / range * (height / 2 - padding));
}
Point.fromScreenPosition = function(position, padding, range) {
return new Point((position.x - width / 2) / (width / 2 - padding) * range,
(position.y + height / 2) / (height / 2 - padding) * range);
}