mirror of
https://github.com/xibyte/jsketcher
synced 2025-12-06 16:33:15 +01:00
25 lines
898 B
JavaScript
25 lines
898 B
JavaScript
import {Ellipse} from '../shapes/ellipse'
|
|
import {Circle} from '../shapes/circle'
|
|
import {EditCircleTool} from './circle'
|
|
import {DragTool} from './drag'
|
|
import {EllipseTool, STATE_RADIUS} from './ellipse'
|
|
import {AngleBetweenDimension} from "../shapes/dim";
|
|
import {AddAngleBetweenDimTool} from "./dim";
|
|
import {EllipseEditTool} from "./ellipse-edit";
|
|
|
|
export function GetShapeEditTool(viewer, obj, alternative) {
|
|
if (obj instanceof Circle && !alternative) {
|
|
const tool = new EditCircleTool(viewer);
|
|
tool.circle = obj;
|
|
return tool;
|
|
} else if (obj instanceof Ellipse && !alternative) {
|
|
return new EllipseEditTool(viewer, obj);
|
|
} else if (obj instanceof AngleBetweenDimension && !alternative) {
|
|
const tool = new AddAngleBetweenDimTool(viewer, viewer.dimLayer);
|
|
tool.a = obj.a;
|
|
tool.dim = obj;
|
|
return tool;
|
|
} else {
|
|
return new DragTool(obj, viewer);
|
|
}
|
|
}
|