<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: 3D intersection of 2 objects in ArcGIS JavaScript Maps SDK Questions</title>
    <link>https://community.esri.com/t5/arcgis-javascript-maps-sdk-questions/3d-intersection-of-2-objects/m-p/1139717#M76215</link>
    <description>&lt;P&gt;Hi&amp;nbsp;&lt;a href="https://community.esri.com/t5/user/viewprofilepage/user-id/179132"&gt;@SaschaBrunnerCH&lt;/a&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;I need your precious help in applying hit test between these two objects. one is tree another is Electric line. can you help me in this.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;the code is given below&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;lt;!--&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;A href="https://community.esri.com/t5/arcgis-api-for-javascript-questions/change-symbology-in-colorandsizerenderercreator/m-p/1135358#M76013" target="_blank" rel="noopener"&gt;https://community.esri.com/t5/arcgis-api-for-javascript-questions/change-symbology-in-colorandsizere...&lt;/A&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;--&amp;gt;&lt;/P&gt;&lt;P&gt;&amp;lt;html&amp;gt;&lt;BR /&gt;&amp;lt;head&amp;gt;&lt;BR /&gt;&amp;lt;meta charset="utf-8" /&amp;gt;&lt;BR /&gt;&amp;lt;meta&lt;BR /&gt;name="viewport"&lt;BR /&gt;content="initial-scale=1,maximum-scale=1,user-scalable=no"&lt;BR /&gt;/&amp;gt;&lt;/P&gt;&lt;P&gt;&amp;lt;title&amp;gt;&lt;BR /&gt;Generate univariate continuous size and color visualization in 3D | Sample&lt;BR /&gt;| ArcGIS API for JavaScript 4.22&lt;BR /&gt;&amp;lt;/title&amp;gt;&lt;/P&gt;&lt;P&gt;&amp;lt;link&lt;BR /&gt;rel="stylesheet"&lt;BR /&gt;href="&lt;A href="https://js.arcgis.com/4.22/esri/themes/light/main.css" target="_blank" rel="noopener nofollow noreferrer"&gt;https://js.arcgis.com/4.22/esri/themes/light/main.css&lt;/A&gt;"&lt;BR /&gt;/&amp;gt;&lt;BR /&gt;&amp;lt;script src="&lt;A href="https://js.arcgis.com/4.22/" target="_blank" rel="noopener nofollow noreferrer"&gt;https://js.arcgis.com/4.22/&lt;/A&gt;"&amp;gt;&amp;lt;/script&amp;gt;&lt;/P&gt;&lt;P&gt;&amp;lt;style&amp;gt;&lt;BR /&gt;html,&lt;BR /&gt;body,&lt;BR /&gt;#viewDiv {&lt;BR /&gt;padding: 0;&lt;BR /&gt;margin: 0;&lt;BR /&gt;height: 100%;&lt;BR /&gt;width: 100%;&lt;BR /&gt;}&lt;/P&gt;&lt;P&gt;#containerDiv {&lt;BR /&gt;background-color: white;&lt;BR /&gt;padding: 3px;&lt;BR /&gt;text-align: center&lt;BR /&gt;}&lt;BR /&gt;#slider {&lt;BR /&gt;background-color: white;&lt;BR /&gt;width: 20px;&lt;/P&gt;&lt;P&gt;}&lt;/P&gt;&lt;P&gt;#title {&lt;BR /&gt;font-size: 14pt;&lt;BR /&gt;}&lt;BR /&gt;&amp;lt;/style&amp;gt;&lt;/P&gt;&lt;P&gt;&amp;lt;script&amp;gt;&lt;BR /&gt;require([&lt;BR /&gt;"esri/WebScene",&lt;BR /&gt;"esri/views/SceneView",&lt;BR /&gt;"esri/layers/FeatureLayer",&lt;BR /&gt;"esri/smartMapping/renderers/univariateColorSize",&lt;BR /&gt;"esri/smartMapping/statistics/histogram",&lt;BR /&gt;"esri/widgets/smartMapping/ColorSizeSlider",&lt;BR /&gt;"esri/symbols/PathSymbol3DLayer",&lt;BR /&gt;"esri/smartMapping/renderers/color"&lt;BR /&gt;], (&lt;BR /&gt;WebScene,&lt;BR /&gt;SceneView,&lt;BR /&gt;FeatureLayer,&lt;BR /&gt;colorAndSizeRendererCreator,&lt;BR /&gt;histogram,&lt;BR /&gt;ColorSizeSlider,&lt;BR /&gt;PathSymbol3DLayer,&lt;BR /&gt;color&lt;BR /&gt;) =&amp;gt; {&lt;BR /&gt;const map = new WebScene({&lt;BR /&gt;portalItem: {&lt;BR /&gt;id: "cee32f0d1548477c83323e9476d11903"&lt;BR /&gt;}&lt;BR /&gt;});&lt;/P&gt;&lt;P&gt;// The minSize and maxSize of volumetric symbols are determined&lt;BR /&gt;// based on the view/camera the data will be displayed in.&lt;/P&gt;&lt;P&gt;const view = new SceneView({&lt;BR /&gt;container: "viewDiv",&lt;BR /&gt;map: map&lt;BR /&gt;});&lt;/P&gt;&lt;P&gt;// Create FeatureLayer instance with popupTemplate&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;const layer = new FeatureLayer({&lt;BR /&gt;url: "&lt;A href="https://services8.arcgis.com/Dxp0iiM83fijnVoI/ArcGIS/rest/services/Tree_TH/FeatureServer/0" target="_blank" rel="noopener nofollow noreferrer"&gt;https://services8.arcgis.com/Dxp0iiM83fijnVoI/ArcGIS/rest/services/Tree_TH/FeatureServer/0&lt;/A&gt;",&lt;BR /&gt;visible: true,&lt;BR /&gt;popupTemplate: {&lt;BR /&gt;// autocasts as new PopupTemplate()&lt;BR /&gt;title: "{CITY_NAME}, {CNTRY_NAME}",&lt;BR /&gt;content: "Height: {Z}",&lt;BR /&gt;fieldInfos: [&lt;BR /&gt;{&lt;BR /&gt;fieldName: "Z",&lt;BR /&gt;&lt;BR /&gt;format: {&lt;BR /&gt;digitSeparator: false,&lt;BR /&gt;places: 0&lt;BR /&gt;}&lt;BR /&gt;}&lt;BR /&gt;]&lt;BR /&gt;}&lt;BR /&gt;});&lt;BR /&gt;map.add(layer);&lt;BR /&gt;&lt;BR /&gt;const symbol = {&lt;BR /&gt;type: "unique-value", // autocasts as new UniqueValueRenderer()&lt;BR /&gt;field: "REGION",&lt;BR /&gt;defaultSymbol: {&lt;BR /&gt;type: "line-3d",&lt;BR /&gt;field: "arcid",&lt;BR /&gt;// autocasts as new LineSymbol3D()&lt;BR /&gt;symbolLayers: [{&lt;BR /&gt;type: "path", // autocasts as new PathSymbol3DLayer()&lt;BR /&gt;profile: "circle",&lt;BR /&gt;width: 0.05, // width of the tube in meters&lt;BR /&gt;material: { color: [ 0,0,0 ] }&lt;BR /&gt;}]}&lt;BR /&gt;};&lt;/P&gt;&lt;P&gt;const ETLINE = new FeatureLayer({&lt;BR /&gt;url: "&lt;A href="https://services8.arcgis.com/Dxp0iiM83fijnVoI/arcgis/rest/services/ETLine/FeatureServer" target="_blank" rel="noopener nofollow noreferrer"&gt;https://services8.arcgis.com/Dxp0iiM83fijnVoI/arcgis/rest/services/ETLine/FeatureServer&lt;/A&gt;",&lt;BR /&gt;renderer: symbol,&lt;BR /&gt;outFields: ["*"],&lt;BR /&gt;popupTemplate: {&lt;BR /&gt;// autocasts as new PopupTemplate()&lt;BR /&gt;title: "{Cmn_Name}",&lt;BR /&gt;content:&lt;BR /&gt;"&amp;lt;i&amp;gt;{Sci_Name}&amp;lt;/i&amp;gt;&amp;lt;br&amp;gt;" +&lt;BR /&gt;"This tree is in {Condition} condition and is {Height} Meter in height."&lt;BR /&gt;}&lt;BR /&gt;})&lt;BR /&gt;map.layers.add(ETLINE)&lt;/P&gt;&lt;P&gt;// configure parameters for the renderer generator.&lt;BR /&gt;// the layer must be specified along with a field name&lt;BR /&gt;// or arcade expression. The view and other properties determine&lt;BR /&gt;// the appropriate default color and size schemes.&lt;/P&gt;&lt;P&gt;const params = {&lt;BR /&gt;layer: layer,&lt;BR /&gt;field: "Z",&lt;BR /&gt;valueUnit: "meter",&lt;BR /&gt;view: view,&lt;BR /&gt;minValue: 0,&lt;BR /&gt;maxValue: 47,&lt;BR /&gt;symbolType: "3d-volumetric-uniform",&lt;BR /&gt;&lt;BR /&gt;};&lt;/P&gt;&lt;P&gt;// Generate a renderer visualizing a single variable&lt;BR /&gt;// with continuous color and size based on the&lt;BR /&gt;// statistics of the data in the provided layer&lt;BR /&gt;// and field name.&lt;BR /&gt;//&lt;BR /&gt;// This resolves to an object containing several helpful&lt;BR /&gt;// properties, including size/color schemes, statistics,&lt;BR /&gt;// the renderer, and visual variables&lt;BR /&gt;let rendererResult = null;&lt;/P&gt;&lt;P&gt;view.when().then(() =&amp;gt; {&lt;BR /&gt;colorAndSizeRendererCreator&lt;BR /&gt;.createContinuousRenderer(params)&lt;BR /&gt;.then((response) =&amp;gt; {&lt;BR /&gt;// set generated renderer on the layer and add it to the map&lt;BR /&gt;rendererResult = response;&lt;BR /&gt;response.renderer.classBreakInfos[0].symbol = {&lt;BR /&gt;type: "web-style", // autocasts as new WebStyleSymbol()&lt;BR /&gt;styleName: "esriRealisticTreesStyle",&lt;BR /&gt;name: "Acer",&lt;BR /&gt;valueUnit: "meter"&lt;BR /&gt;},&lt;BR /&gt;layer.renderer = response.renderer;&lt;BR /&gt;if (!layer.visible) {&lt;BR /&gt;layer.visible = true;&lt;BR /&gt;}&lt;/P&gt;&lt;P&gt;// generate a histogram for use in the slider. Input the layer&lt;BR /&gt;// and field name to generate it.&lt;BR /&gt;// You can also use an arcade expression instead of&lt;BR /&gt;// a field and normalization field&lt;/P&gt;&lt;P&gt;return histogram({&lt;BR /&gt;layer: layer,&lt;BR /&gt;field: params.field,&lt;BR /&gt;numBins: 100,&lt;BR /&gt;minValue: params.minValue,&lt;BR /&gt;maxValue: params.maxValue&lt;BR /&gt;});&lt;BR /&gt;})&lt;BR /&gt;.then((histogramResult) =&amp;gt; {&lt;BR /&gt;const slider = ColorSizeSlider.fromRendererResult(&lt;BR /&gt;rendererResult,&lt;BR /&gt;histogramResult,&lt;BR /&gt;);&lt;BR /&gt;slider.container = "slider";&lt;BR /&gt;slider.viewModel.precision = 100;&lt;BR /&gt;slider.labelFormatFunction = (value) =&amp;gt; {&lt;BR /&gt;return parseInt(value.toFixed(0)).toLocaleString();&lt;BR /&gt;};&lt;BR /&gt;slider.histogramConfig.standardDeviation = null;&lt;BR /&gt;view.ui.add("containerDiv", "bottom-left");&lt;/P&gt;&lt;P&gt;// when the user slides the handle(s), update the renderer&lt;BR /&gt;// with the updated color and size visual variable objects&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;function changeEventHandler() {&lt;BR /&gt;const renderer = layer.renderer.clone();&lt;BR /&gt;renderer.visualVariables = slider.updateVisualVariables(&lt;BR /&gt;renderer.visualVariables&lt;BR /&gt;);&lt;BR /&gt;layer.renderer = renderer;&lt;BR /&gt;}&lt;BR /&gt;///////////////////////////hit test///////////////////////////////////////&lt;BR /&gt;/* view&lt;BR /&gt;.hitTest(event, { exclude: [view.graphics] })&lt;BR /&gt;.then((hitTestResult) =&amp;gt; {&lt;BR /&gt;// print the information to the panel&lt;BR /&gt;hitresultground.textContent = `${Math.round(&lt;BR /&gt;hitTestResult.ground.distance&lt;BR /&gt;)} m`;&lt;BR /&gt;hitresultcount.textContent = hitTestResult.results.length;&lt;/P&gt;&lt;P&gt;let lastHit = null;&lt;BR /&gt;if (hitTestResult.results.length &amp;gt; 0) {&lt;BR /&gt;lastHit =&lt;BR /&gt;hitTestResult.results[hitTestResult.results.length - 1];&lt;BR /&gt;// create point graphic for each hit on objects&lt;BR /&gt;hitTestResult.results.forEach((result, index) =&amp;gt; {&lt;BR /&gt;const hitObject = new Graphic({&lt;BR /&gt;geometry: result.mapPoint,&lt;BR /&gt;symbol:&lt;BR /&gt;index === 0 ? ETLINE : layer&lt;BR /&gt;});&lt;BR /&gt;view.graphics.add(hitObject);*/&lt;BR /&gt;///////////////////////////////////////////////////////////////////////////////////////////&lt;BR /&gt;&lt;BR /&gt;slider.on( ["thumb-change", "thumb-drag", "min-change", "max-change"], changeEventHandler);&lt;/P&gt;&lt;P&gt;})&lt;BR /&gt;.catch(console.error);&lt;BR /&gt;});&lt;BR /&gt;});&lt;BR /&gt;&amp;lt;/script&amp;gt;&lt;BR /&gt;&amp;lt;/head&amp;gt;&lt;/P&gt;&lt;P&gt;&amp;lt;body&amp;gt;&lt;BR /&gt;&amp;lt;div id="viewDiv"&amp;gt;&amp;lt;/div&amp;gt;&lt;BR /&gt;&amp;lt;div id="containerDiv"&amp;gt;&lt;BR /&gt;&amp;lt;span id="title" class="esri-widget"&amp;gt;Tree Height&amp;lt;/span&amp;gt;&lt;BR /&gt;&amp;lt;div id="slider"&amp;gt;&amp;lt;/div&amp;gt;&lt;BR /&gt;&amp;lt;/div&amp;gt;&lt;BR /&gt;&amp;lt;/body&amp;gt;&lt;BR /&gt;&amp;lt;/html&amp;gt;&lt;/P&gt;</description>
    <pubDate>Thu, 03 Feb 2022 06:04:42 GMT</pubDate>
    <dc:creator>pragati224</dc:creator>
    <dc:date>2022-02-03T06:04:42Z</dc:date>
    <item>
      <title>3D intersection of 2 objects</title>
      <link>https://community.esri.com/t5/arcgis-javascript-maps-sdk-questions/3d-intersection-of-2-objects/m-p/1131973#M75853</link>
      <description>&lt;P&gt;Hi Developers,&lt;/P&gt;&lt;P&gt;I am working on 3D data in ArcGIS API for JavaScript, I have to perform intersection of 2 objects as height of bus with underpass. as the height of bus or any vehical increases at certain height it will be not allowed to go through that, for this purpose i need to perform intersection.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Please help me in my task as soon as posible. I am open for suggestions.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thank You&lt;/P&gt;</description>
      <pubDate>Mon, 10 Jan 2022 11:08:15 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-javascript-maps-sdk-questions/3d-intersection-of-2-objects/m-p/1131973#M75853</guid>
      <dc:creator>pragati224</dc:creator>
      <dc:date>2022-01-10T11:08:15Z</dc:date>
    </item>
    <item>
      <title>Re: 3D intersection of 2 objects</title>
      <link>https://community.esri.com/t5/arcgis-javascript-maps-sdk-questions/3d-intersection-of-2-objects/m-p/1132345#M75862</link>
      <description>&lt;P&gt;Hi&lt;/P&gt;&lt;P&gt;You could use &lt;A href="https://developers.arcgis.com/javascript/latest/api-reference/esri-views-SceneView.html#hitTest" target="_blank" rel="noopener"&gt;view.hitTest&lt;/A&gt;&amp;nbsp;and calculate from the result the difference.&lt;BR /&gt;Check also the sample&amp;nbsp;&lt;A href="https://developers.arcgis.com/javascript/latest/sample-code/sceneview-hittest/" target="_self"&gt;SceneView - hitTest&lt;/A&gt;&amp;nbsp;.&lt;BR /&gt;Which kind of 3D data are you using?&lt;BR /&gt;&lt;BR /&gt;Let me know if this helps?&lt;/P&gt;</description>
      <pubDate>Tue, 11 Jan 2022 07:56:23 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-javascript-maps-sdk-questions/3d-intersection-of-2-objects/m-p/1132345#M75862</guid>
      <dc:creator>SaschaBrunnerCH</dc:creator>
      <dc:date>2022-01-11T07:56:23Z</dc:date>
    </item>
    <item>
      <title>Re: 3D intersection of 2 objects</title>
      <link>https://community.esri.com/t5/arcgis-javascript-maps-sdk-questions/3d-intersection-of-2-objects/m-p/1132446#M75867</link>
      <description>&lt;P&gt;Thanks &amp;nbsp;&amp;nbsp;it is really helpful. I will inform You once it will work in my application&lt;/P&gt;</description>
      <pubDate>Tue, 11 Jan 2022 14:55:54 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-javascript-maps-sdk-questions/3d-intersection-of-2-objects/m-p/1132446#M75867</guid>
      <dc:creator>PragatiSingh</dc:creator>
      <dc:date>2022-01-11T14:55:54Z</dc:date>
    </item>
    <item>
      <title>Re: 3D intersection of 2 objects</title>
      <link>https://community.esri.com/t5/arcgis-javascript-maps-sdk-questions/3d-intersection-of-2-objects/m-p/1139717#M76215</link>
      <description>&lt;P&gt;Hi&amp;nbsp;&lt;a href="https://community.esri.com/t5/user/viewprofilepage/user-id/179132"&gt;@SaschaBrunnerCH&lt;/a&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;I need your precious help in applying hit test between these two objects. one is tree another is Electric line. can you help me in this.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;the code is given below&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;lt;!--&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;A href="https://community.esri.com/t5/arcgis-api-for-javascript-questions/change-symbology-in-colorandsizerenderercreator/m-p/1135358#M76013" target="_blank" rel="noopener"&gt;https://community.esri.com/t5/arcgis-api-for-javascript-questions/change-symbology-in-colorandsizere...&lt;/A&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;--&amp;gt;&lt;/P&gt;&lt;P&gt;&amp;lt;html&amp;gt;&lt;BR /&gt;&amp;lt;head&amp;gt;&lt;BR /&gt;&amp;lt;meta charset="utf-8" /&amp;gt;&lt;BR /&gt;&amp;lt;meta&lt;BR /&gt;name="viewport"&lt;BR /&gt;content="initial-scale=1,maximum-scale=1,user-scalable=no"&lt;BR /&gt;/&amp;gt;&lt;/P&gt;&lt;P&gt;&amp;lt;title&amp;gt;&lt;BR /&gt;Generate univariate continuous size and color visualization in 3D | Sample&lt;BR /&gt;| ArcGIS API for JavaScript 4.22&lt;BR /&gt;&amp;lt;/title&amp;gt;&lt;/P&gt;&lt;P&gt;&amp;lt;link&lt;BR /&gt;rel="stylesheet"&lt;BR /&gt;href="&lt;A href="https://js.arcgis.com/4.22/esri/themes/light/main.css" target="_blank" rel="noopener nofollow noreferrer"&gt;https://js.arcgis.com/4.22/esri/themes/light/main.css&lt;/A&gt;"&lt;BR /&gt;/&amp;gt;&lt;BR /&gt;&amp;lt;script src="&lt;A href="https://js.arcgis.com/4.22/" target="_blank" rel="noopener nofollow noreferrer"&gt;https://js.arcgis.com/4.22/&lt;/A&gt;"&amp;gt;&amp;lt;/script&amp;gt;&lt;/P&gt;&lt;P&gt;&amp;lt;style&amp;gt;&lt;BR /&gt;html,&lt;BR /&gt;body,&lt;BR /&gt;#viewDiv {&lt;BR /&gt;padding: 0;&lt;BR /&gt;margin: 0;&lt;BR /&gt;height: 100%;&lt;BR /&gt;width: 100%;&lt;BR /&gt;}&lt;/P&gt;&lt;P&gt;#containerDiv {&lt;BR /&gt;background-color: white;&lt;BR /&gt;padding: 3px;&lt;BR /&gt;text-align: center&lt;BR /&gt;}&lt;BR /&gt;#slider {&lt;BR /&gt;background-color: white;&lt;BR /&gt;width: 20px;&lt;/P&gt;&lt;P&gt;}&lt;/P&gt;&lt;P&gt;#title {&lt;BR /&gt;font-size: 14pt;&lt;BR /&gt;}&lt;BR /&gt;&amp;lt;/style&amp;gt;&lt;/P&gt;&lt;P&gt;&amp;lt;script&amp;gt;&lt;BR /&gt;require([&lt;BR /&gt;"esri/WebScene",&lt;BR /&gt;"esri/views/SceneView",&lt;BR /&gt;"esri/layers/FeatureLayer",&lt;BR /&gt;"esri/smartMapping/renderers/univariateColorSize",&lt;BR /&gt;"esri/smartMapping/statistics/histogram",&lt;BR /&gt;"esri/widgets/smartMapping/ColorSizeSlider",&lt;BR /&gt;"esri/symbols/PathSymbol3DLayer",&lt;BR /&gt;"esri/smartMapping/renderers/color"&lt;BR /&gt;], (&lt;BR /&gt;WebScene,&lt;BR /&gt;SceneView,&lt;BR /&gt;FeatureLayer,&lt;BR /&gt;colorAndSizeRendererCreator,&lt;BR /&gt;histogram,&lt;BR /&gt;ColorSizeSlider,&lt;BR /&gt;PathSymbol3DLayer,&lt;BR /&gt;color&lt;BR /&gt;) =&amp;gt; {&lt;BR /&gt;const map = new WebScene({&lt;BR /&gt;portalItem: {&lt;BR /&gt;id: "cee32f0d1548477c83323e9476d11903"&lt;BR /&gt;}&lt;BR /&gt;});&lt;/P&gt;&lt;P&gt;// The minSize and maxSize of volumetric symbols are determined&lt;BR /&gt;// based on the view/camera the data will be displayed in.&lt;/P&gt;&lt;P&gt;const view = new SceneView({&lt;BR /&gt;container: "viewDiv",&lt;BR /&gt;map: map&lt;BR /&gt;});&lt;/P&gt;&lt;P&gt;// Create FeatureLayer instance with popupTemplate&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;const layer = new FeatureLayer({&lt;BR /&gt;url: "&lt;A href="https://services8.arcgis.com/Dxp0iiM83fijnVoI/ArcGIS/rest/services/Tree_TH/FeatureServer/0" target="_blank" rel="noopener nofollow noreferrer"&gt;https://services8.arcgis.com/Dxp0iiM83fijnVoI/ArcGIS/rest/services/Tree_TH/FeatureServer/0&lt;/A&gt;",&lt;BR /&gt;visible: true,&lt;BR /&gt;popupTemplate: {&lt;BR /&gt;// autocasts as new PopupTemplate()&lt;BR /&gt;title: "{CITY_NAME}, {CNTRY_NAME}",&lt;BR /&gt;content: "Height: {Z}",&lt;BR /&gt;fieldInfos: [&lt;BR /&gt;{&lt;BR /&gt;fieldName: "Z",&lt;BR /&gt;&lt;BR /&gt;format: {&lt;BR /&gt;digitSeparator: false,&lt;BR /&gt;places: 0&lt;BR /&gt;}&lt;BR /&gt;}&lt;BR /&gt;]&lt;BR /&gt;}&lt;BR /&gt;});&lt;BR /&gt;map.add(layer);&lt;BR /&gt;&lt;BR /&gt;const symbol = {&lt;BR /&gt;type: "unique-value", // autocasts as new UniqueValueRenderer()&lt;BR /&gt;field: "REGION",&lt;BR /&gt;defaultSymbol: {&lt;BR /&gt;type: "line-3d",&lt;BR /&gt;field: "arcid",&lt;BR /&gt;// autocasts as new LineSymbol3D()&lt;BR /&gt;symbolLayers: [{&lt;BR /&gt;type: "path", // autocasts as new PathSymbol3DLayer()&lt;BR /&gt;profile: "circle",&lt;BR /&gt;width: 0.05, // width of the tube in meters&lt;BR /&gt;material: { color: [ 0,0,0 ] }&lt;BR /&gt;}]}&lt;BR /&gt;};&lt;/P&gt;&lt;P&gt;const ETLINE = new FeatureLayer({&lt;BR /&gt;url: "&lt;A href="https://services8.arcgis.com/Dxp0iiM83fijnVoI/arcgis/rest/services/ETLine/FeatureServer" target="_blank" rel="noopener nofollow noreferrer"&gt;https://services8.arcgis.com/Dxp0iiM83fijnVoI/arcgis/rest/services/ETLine/FeatureServer&lt;/A&gt;",&lt;BR /&gt;renderer: symbol,&lt;BR /&gt;outFields: ["*"],&lt;BR /&gt;popupTemplate: {&lt;BR /&gt;// autocasts as new PopupTemplate()&lt;BR /&gt;title: "{Cmn_Name}",&lt;BR /&gt;content:&lt;BR /&gt;"&amp;lt;i&amp;gt;{Sci_Name}&amp;lt;/i&amp;gt;&amp;lt;br&amp;gt;" +&lt;BR /&gt;"This tree is in {Condition} condition and is {Height} Meter in height."&lt;BR /&gt;}&lt;BR /&gt;})&lt;BR /&gt;map.layers.add(ETLINE)&lt;/P&gt;&lt;P&gt;// configure parameters for the renderer generator.&lt;BR /&gt;// the layer must be specified along with a field name&lt;BR /&gt;// or arcade expression. The view and other properties determine&lt;BR /&gt;// the appropriate default color and size schemes.&lt;/P&gt;&lt;P&gt;const params = {&lt;BR /&gt;layer: layer,&lt;BR /&gt;field: "Z",&lt;BR /&gt;valueUnit: "meter",&lt;BR /&gt;view: view,&lt;BR /&gt;minValue: 0,&lt;BR /&gt;maxValue: 47,&lt;BR /&gt;symbolType: "3d-volumetric-uniform",&lt;BR /&gt;&lt;BR /&gt;};&lt;/P&gt;&lt;P&gt;// Generate a renderer visualizing a single variable&lt;BR /&gt;// with continuous color and size based on the&lt;BR /&gt;// statistics of the data in the provided layer&lt;BR /&gt;// and field name.&lt;BR /&gt;//&lt;BR /&gt;// This resolves to an object containing several helpful&lt;BR /&gt;// properties, including size/color schemes, statistics,&lt;BR /&gt;// the renderer, and visual variables&lt;BR /&gt;let rendererResult = null;&lt;/P&gt;&lt;P&gt;view.when().then(() =&amp;gt; {&lt;BR /&gt;colorAndSizeRendererCreator&lt;BR /&gt;.createContinuousRenderer(params)&lt;BR /&gt;.then((response) =&amp;gt; {&lt;BR /&gt;// set generated renderer on the layer and add it to the map&lt;BR /&gt;rendererResult = response;&lt;BR /&gt;response.renderer.classBreakInfos[0].symbol = {&lt;BR /&gt;type: "web-style", // autocasts as new WebStyleSymbol()&lt;BR /&gt;styleName: "esriRealisticTreesStyle",&lt;BR /&gt;name: "Acer",&lt;BR /&gt;valueUnit: "meter"&lt;BR /&gt;},&lt;BR /&gt;layer.renderer = response.renderer;&lt;BR /&gt;if (!layer.visible) {&lt;BR /&gt;layer.visible = true;&lt;BR /&gt;}&lt;/P&gt;&lt;P&gt;// generate a histogram for use in the slider. Input the layer&lt;BR /&gt;// and field name to generate it.&lt;BR /&gt;// You can also use an arcade expression instead of&lt;BR /&gt;// a field and normalization field&lt;/P&gt;&lt;P&gt;return histogram({&lt;BR /&gt;layer: layer,&lt;BR /&gt;field: params.field,&lt;BR /&gt;numBins: 100,&lt;BR /&gt;minValue: params.minValue,&lt;BR /&gt;maxValue: params.maxValue&lt;BR /&gt;});&lt;BR /&gt;})&lt;BR /&gt;.then((histogramResult) =&amp;gt; {&lt;BR /&gt;const slider = ColorSizeSlider.fromRendererResult(&lt;BR /&gt;rendererResult,&lt;BR /&gt;histogramResult,&lt;BR /&gt;);&lt;BR /&gt;slider.container = "slider";&lt;BR /&gt;slider.viewModel.precision = 100;&lt;BR /&gt;slider.labelFormatFunction = (value) =&amp;gt; {&lt;BR /&gt;return parseInt(value.toFixed(0)).toLocaleString();&lt;BR /&gt;};&lt;BR /&gt;slider.histogramConfig.standardDeviation = null;&lt;BR /&gt;view.ui.add("containerDiv", "bottom-left");&lt;/P&gt;&lt;P&gt;// when the user slides the handle(s), update the renderer&lt;BR /&gt;// with the updated color and size visual variable objects&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;function changeEventHandler() {&lt;BR /&gt;const renderer = layer.renderer.clone();&lt;BR /&gt;renderer.visualVariables = slider.updateVisualVariables(&lt;BR /&gt;renderer.visualVariables&lt;BR /&gt;);&lt;BR /&gt;layer.renderer = renderer;&lt;BR /&gt;}&lt;BR /&gt;///////////////////////////hit test///////////////////////////////////////&lt;BR /&gt;/* view&lt;BR /&gt;.hitTest(event, { exclude: [view.graphics] })&lt;BR /&gt;.then((hitTestResult) =&amp;gt; {&lt;BR /&gt;// print the information to the panel&lt;BR /&gt;hitresultground.textContent = `${Math.round(&lt;BR /&gt;hitTestResult.ground.distance&lt;BR /&gt;)} m`;&lt;BR /&gt;hitresultcount.textContent = hitTestResult.results.length;&lt;/P&gt;&lt;P&gt;let lastHit = null;&lt;BR /&gt;if (hitTestResult.results.length &amp;gt; 0) {&lt;BR /&gt;lastHit =&lt;BR /&gt;hitTestResult.results[hitTestResult.results.length - 1];&lt;BR /&gt;// create point graphic for each hit on objects&lt;BR /&gt;hitTestResult.results.forEach((result, index) =&amp;gt; {&lt;BR /&gt;const hitObject = new Graphic({&lt;BR /&gt;geometry: result.mapPoint,&lt;BR /&gt;symbol:&lt;BR /&gt;index === 0 ? ETLINE : layer&lt;BR /&gt;});&lt;BR /&gt;view.graphics.add(hitObject);*/&lt;BR /&gt;///////////////////////////////////////////////////////////////////////////////////////////&lt;BR /&gt;&lt;BR /&gt;slider.on( ["thumb-change", "thumb-drag", "min-change", "max-change"], changeEventHandler);&lt;/P&gt;&lt;P&gt;})&lt;BR /&gt;.catch(console.error);&lt;BR /&gt;});&lt;BR /&gt;});&lt;BR /&gt;&amp;lt;/script&amp;gt;&lt;BR /&gt;&amp;lt;/head&amp;gt;&lt;/P&gt;&lt;P&gt;&amp;lt;body&amp;gt;&lt;BR /&gt;&amp;lt;div id="viewDiv"&amp;gt;&amp;lt;/div&amp;gt;&lt;BR /&gt;&amp;lt;div id="containerDiv"&amp;gt;&lt;BR /&gt;&amp;lt;span id="title" class="esri-widget"&amp;gt;Tree Height&amp;lt;/span&amp;gt;&lt;BR /&gt;&amp;lt;div id="slider"&amp;gt;&amp;lt;/div&amp;gt;&lt;BR /&gt;&amp;lt;/div&amp;gt;&lt;BR /&gt;&amp;lt;/body&amp;gt;&lt;BR /&gt;&amp;lt;/html&amp;gt;&lt;/P&gt;</description>
      <pubDate>Thu, 03 Feb 2022 06:04:42 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-javascript-maps-sdk-questions/3d-intersection-of-2-objects/m-p/1139717#M76215</guid>
      <dc:creator>pragati224</dc:creator>
      <dc:date>2022-02-03T06:04:42Z</dc:date>
    </item>
    <item>
      <title>Re: 3D intersection of 2 objects</title>
      <link>https://community.esri.com/t5/arcgis-javascript-maps-sdk-questions/3d-intersection-of-2-objects/m-p/1145248#M76385</link>
      <description>&lt;P&gt;Hi, &lt;a href="https://community.esri.com/t5/user/viewprofilepage/user-id/550331"&gt;@pragati224&lt;/a&gt;,&amp;nbsp;&lt;/P&gt;&lt;DIV&gt;We don't currently support object intersections in 3D, I'm afraid. But if the power cables are line features, you can try out the&amp;nbsp;&lt;A title="https://developers.arcgis.com/javascript/latest/sample-code/widgets-elevation-profile/" href="https://developers.arcgis.com/javascript/latest/sample-code/widgets-elevation-profile/" target="_blank" rel="noreferrer noopener"&gt;Elevation Profile Widget&lt;/A&gt; and input these cables as &lt;A title="https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-elevationprofile-elevationprofilelineinput.html" href="https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-ElevationProfile-ElevationProfileLineInput.html" target="_blank" rel="noreferrer noopener"&gt;Elevation Profile Lines&lt;/A&gt;. The widget then draws a section along this line, highlighting any intersections with objects in the view (e.g. the trees).&lt;/DIV&gt;</description>
      <pubDate>Thu, 17 Feb 2022 17:26:22 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-javascript-maps-sdk-questions/3d-intersection-of-2-objects/m-p/1145248#M76385</guid>
      <dc:creator>GreteSoosalu</dc:creator>
      <dc:date>2022-02-17T17:26:22Z</dc:date>
    </item>
  </channel>
</rss>

