This tutorial demonstrates how to display a Core Image in the WellLog widget.
# Display a Core Image
This example displays core image tied up with depth index. To display a core image, raster log can be used. Raster log requires to initialize a tile provider and the tile provider requests tiles according to the provider. Mapping of the image size and depth range must also be provided for a core image.
import { Plot } from "@int/geotoolkit/plot/Plot.ts";
import { Rect } from "@int/geotoolkit/util/Rect.ts";
import { RasterLog } from "@int/geotoolkit/welllog/RasterLog.ts";
import { TrackType } from "@int/geotoolkit/welllog/TrackType.ts";
import { HeaderType } from "@int/geotoolkit/welllog/header/LogAxisVisualHeader.ts";
import { Range } from "@int/geotoolkit/util/Range.ts";
import { createWellLogWidget } from "/src/code/WellLog/utils/common.ts";
function createScene(canvas) {
const widget = createWellLogWidget({
"range": new Range(4450, 5050)
}).setAxisHeaderType(HeaderType.Scale).scale(2);
widget.addTrack(TrackType.IndexTrack).setWidth(70);
widget.getToolByName("splitter").setEnabled(false);
widget.getToolByName("TrackPanning").setEnabled(false);
const rasterLog = new RasterLog({
"name": "Core Image",
"formatter": (data) => "src/assets/images/core/CoreImage-" + data["i"] + "x" + data["j"] + ".png",
"shapeoptions": {
"isconsttiles": true
},
"imagesize": new Rect(0, 0, 720, 2480),
"mapping": [{
"src": new Rect(0, 0, 720, 2480),
"dst": new Rect(0, 4450, 1, 5050)
}]
});
widget.addTrack(TrackType.LinearTrack).addChild(rasterLog);
return new Plot({
"canvaselement": canvas,
"root": widget
});
}
export { createScene };
createScene(document.querySelector('[ref="plot"]'));