23 lines
762 B
TypeScript
23 lines
762 B
TypeScript
import { useContext, useEffect, useState } from "react";
|
|
import ImageElement from "@arcgis/core/layers/support/ImageElement.js";
|
|
import Graphic from "@arcgis/core/Graphic";
|
|
import { MapLayerContext, MapMediaLayerContext } from "./MapViewContext";
|
|
|
|
export const MapImage = (graphicProperties: __esri.ImageElementProperties) => {
|
|
const { imagesLayer } = useContext(MapMediaLayerContext);
|
|
const [image, setImage] = useState<__esri.ImageElement | undefined>();
|
|
|
|
useEffect(() => {
|
|
const imagePoint = new ImageElement(graphicProperties);
|
|
|
|
setImage(imagePoint);
|
|
}, [graphicProperties, imagesLayer]);
|
|
|
|
useEffect(() => {
|
|
if (!image || !imagesLayer) return;
|
|
imagesLayer.source.elements.add(image);
|
|
}, [image, imagesLayer]);
|
|
|
|
return <></>;
|
|
};
|