import { HiddenThreeJSMaterialProperties } from "./MapMeshMaterials" ; /**
 * Parameters used when constructing a new implementor of  DisplacementFeature .
  export interface DisplacementFeatureParameters { /**
     * Texture used for vertex displacement along their normals.
     */ displacementMap ? : THREE . Texture ; } /**
 * Interface to be implemented by materials that use displacement maps to overlay geometry
 * on elevation data.
 */ export interface DisplacementFeature extends HiddenThreeJSMaterialProperties { displacementMap : THREE . Texture | null ; } param material returns export function hasDisplacementFeature ( material ) { return "displacementMap" in material ; } param displacementMap param material export function setDisplacementMapToMaterial ( displacementMap , material ) { if ( hasDisplacementFeature ( material ) && material . displacementMap !== displacementMap ) { material . displacementMap = displacementMap ; material . needsUpdate = true ; if ( material . displacementMap !== null ) { material . displacementMap . needsUpdate = true ; } } }