Skip to content

WindowBuildingLayer

Example

Example Source Code
tsx
import React, { useEffect, useRef, useState } from 'react'
import ReactDOM from 'react-dom'
import { MbMap, MbTiandituLayer } from '@mapbox-react/core'
import { MbWindowBuildingLayer } from '@mapbox-react/effect-layers'

const App = () => {
  const [mapCenter] = useState([116.179267984000035, 39.918961127600085])
  const [zoom, setZoom] = useState(14.5)
  const [pitch, setPitch] = useState(60)
  const mapInst = useRef<any>()

  return (
    <div className="map-wrapper">
      <MbMap ref={mapInst} center={mapCenter} zoom={zoom} pitch={pitch}>
        <MbWindowBuildingLayer
          data="https://mapbox-web.github.io/mapbox-react/showcase/building.geojson"
          getFillColor={[28, 57, 85]}
          dataTransform={(d) => d.features}
          getPolygon={(d) => d.geometry.coordinates[0]}
          getElevation={(d) => d.properties.Floor}
          elevationScale={50}
        />
      </MbMap>
    </div>
  )
}

ReactDOM.render(<App />, document.querySelector('#root'))

API

PROPS

NameDescriptionTypeDefault
idLayer IDstring-
getElevationFunction to get the elevation value.number / AnyNumberFunc1000
getFillColorFunction to get the fill color.number[] / AnyFunc[0, 125, 125]
getPolygonFunction to get the polygon data.AnyFunc-
elevationScaleA scaling factor for the elevation.number1
dataSource data for the layer.string / IndexAny / AnyArr / Promise<any>''
showWhether the layer is visible.booleantrue
opacityThe opacity of the layer (0-1).number1
pickableWhether the layer responds to mouse events. If false, the component will not emit mouse-related events.booleanfalse
autoHighlightWhen true and pickable is also true, the hovered object will be highlighted.booleanfalse
highlightColorThe color to blend with the original color of the highlighted object.string / number[][255, 255, 128, 1]
highlightedObjectIndexThe index of the highlighted element.number-1
onDataLoadCallback function invoked after data loading is complete.AnyFunc-
dataTransformFunction to transform the data before rendering.AnyFunc-
transitionsTransition settings for the layer.IndexAny{}

EVENTS

NameDescriptionParameters

METHODS

NameDescriptionDefinition