You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

70 lines
1.4 KiB

7 months ago
import { Layers } from './layer.js';
import { Tools } from './tool.js';
const commandBarElement = document.getElementById('menu-bar');
const toolBarElement = document.getElementById('tool-bar');
const layerControllersElement = document.getElementById('layer-controllers');
const studioElement = document.getElementById('studio');
const colorBarElement = document.getElementById('color-bar');
const easelElement = document.getElementById('easel');
const dZoom = 0.001;
const dBrushSize = 0.5;
const dOpacity = 0.001;
const initialWidth = 800;
const initialHeight = 600;
const maxBrushSize = 500;
const tolerance = 1;
let brushShape = 'circle'
let brushSize = 10;
let zoom = 1;
let startX = 0;
let startY = 0;
let endX = 0;
let endY = 0;
let dX = 0;
let dY = 0;
let canvasStartX = 0;
let canvasStartY = 0;
let canvasEndX = 0;
let canvasEndY = 0;
let canvasDX = 0;
let canvasDY = 0;
let isKeyDown = false;
let isMouseDown = false;
let interval;
var startTime;
const layers = new Layers({
easelElement: easelElement,
controllersElement: layerControllersElement,
height: initialHeight,
width: initialWidth
});
const tools = new Tools({
controllersElement: toolBarElement
});
tools.addTool({ // brush {{{
name: 'Brush',
key: 'b',
iconPath: 'icons/brush.png',
mouseMove: () => {
const canvas = layers.getActive().selectCanvas;
canvas
},
mouseDown: () => {
isMouseDown = true;
},
mouseUp: () => {
isMouseDown = false;
}
});
// }}}