diff --git a/src/app/index.ts b/src/app/index.ts index 1ae89d307a14cf5510d739fe3d2831e54882a35c..e036782a1e152a537d5a54fca7608f9fe3964938 100644 --- a/src/app/index.ts +++ b/src/app/index.ts @@ -10,6 +10,7 @@ import {Line} from "../lib/elements/connections/Line"; import {ImageNavigatorElement} from "../lib/elements/interactions/ImageNavigatorElement"; import {FillCollection} from "../lib/elements/collections/FillCollection"; import {LegendCollection, LegendItem} from "../lib/elements/collections/LegendCollection"; +import {MedsurfSprite} from "../lib"; const canvas = document.getElementById("medsurf_canvas") as HTMLCanvasElement; const width = canvas.width; @@ -232,8 +233,9 @@ PIXI.Renderer.registerPlugin('bla', bla); // IMAGES // BaseSprite // const image = new MedsurfSprite(app.renderer, canvas, PIXI.Texture.from("https://api.medsurf.stage.iml.unibe.ch/v1/file/slides/3893/image/1500x1514_80_eaaa24fd-e69e-491e-b576-fccab29c85a2.jpg")); + const image = new MedsurfSprite(app.renderer, canvas, PIXI.Texture.from("http://localhost:3000/v1/file/slide/2701,2701/image/1800x1800_80.jpeg")); // Tile BaseSprite - const image = new MedsurfTileSprite(app.renderer, canvas, 5800, "https://api.medsurf.stage.iml.unibe.ch:443/v1/file/slide/5800/image/", 29512, 20512); + // const image = new MedsurfTileSprite(app.renderer, canvas, 5800, "https://api.medsurf.stage.iml.unibe.ch:443/v1/file/slide/5800/image/", 29512, 20512); // Video // const image = new MedsurfSprite(app.renderer, canvas, PIXI.Texture.from("./assets/juldem.mp4")); diff --git a/src/lib/elements/images/MedsurfSprite.ts b/src/lib/elements/images/MedsurfSprite.ts index de1c3737bb8313dfe430f7c6d233f711365a6a1c..d231e0291b643d7002364ab89904fa228262131a 100644 --- a/src/lib/elements/images/MedsurfSprite.ts +++ b/src/lib/elements/images/MedsurfSprite.ts @@ -266,7 +266,8 @@ export class MedsurfSprite extends BaseSprite { } protected _onLoaded(): void { - this._fitToScreen(this._canvas.width, this._canvas.height); + // TODO this not working + // this._fitToScreen(this._canvas.width, this._canvas.height); } protected setVisibleElements(): void { diff --git a/src/lib/generators/InteractiveGenerator.ts b/src/lib/generators/InteractiveGenerator.ts index 07b3da9468d80fb3ff69eea29c432d86c25785cf..6d3ca3d74c0a227a6df6fd8cbbcf4943e4020ff2 100644 --- a/src/lib/generators/InteractiveGenerator.ts +++ b/src/lib/generators/InteractiveGenerator.ts @@ -52,9 +52,12 @@ export class InteractiveGenerator extends BaseGenerator { protected _chooseElement(event: PIXI.interaction.InteractionEvent, element: ImageObject): void { event.stopPropagation(); - this._targetFill.interactiveItems.push(element); - - // TODO check for lines + const index = this._targetFill.interactiveItems.findIndex((item: ImageObject) => item === element); + if (index > -1) { + this._targetFill.interactiveItems.splice(index, 1); + } else { + this._targetFill.interactiveItems.push(element); + } element.modeInteraction.changeMode("interactive_choosing", this._targetFill); } diff --git a/src/lib/generators/SelftestGenerator.ts b/src/lib/generators/SelftestGenerator.ts index 810426bffa73991ab19b3f49877252e84eb73eea..75d8c8ec125cf053ceacccd8c005a1e1ef0d74ad 100644 --- a/src/lib/generators/SelftestGenerator.ts +++ b/src/lib/generators/SelftestGenerator.ts @@ -48,9 +48,12 @@ export class SelftestGenerator extends BaseGenerator { protected _chooseElement(event: PIXI.interaction.InteractionEvent, element: ImageObject): void { event.stopPropagation(); - this.targetPositionPoint.selftestItems.push(element); - - // TODO check for lines + const index = this.targetPositionPoint.selftestItems.findIndex((item: ImageObject) => item === element); + if (index > -1) { + this.targetPositionPoint.selftestItems.splice(index, 1); + } else { + this.targetPositionPoint.selftestItems.push(element); + } element.modeInteraction.changeMode("selftest_choosing", this.targetPositionPoint); }