<?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: Canvas vs SVG in 4.10 API in ArcGIS JavaScript Maps SDK Questions</title>
    <link>https://community.esri.com/t5/arcgis-javascript-maps-sdk-questions/canvas-vs-svg-in-4-10-api/m-p/431334#M39705</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Esri made WebGL the default instead of SVG when the JavaScript API version 4.9 was released in September 2018. The following blog post says, "Starting now, WebGL rendering is out of beta and is the default rendering engine... For now, if you have a requirement to use SVG instead of WebGL for rendering, you will be able to configure your app to use SVG. However, starting with 4.10 (December 2018), WebGL is the only planned rendering mechanism."&lt;/P&gt;&lt;P&gt;&lt;A href="https://www.esri.com/arcgis-blog/products/js-api-arcgis/announcements/jsapi-4-9/"&gt;https://www.esri.com/arcgis-blog/products/js-api-arcgis/announcements/jsapi-4-9/&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Sure enough, when the JavaScript API version 4.10 was released in December 2018, the release notes said, "WebGL is now used for drawing all layers in a MapView."&lt;/P&gt;&lt;P&gt;&lt;A href="https://developers.arcgis.com/javascript/latest/guide/release-notes/index.html"&gt;https://developers.arcgis.com/javascript/latest/guide/release-notes/index.html&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;That means WebGL support in users' browsers is now mandatory even for 2D maps-- not just 3D maps. I am shocked Esri would go from having SVG be the default rendering mechanism to completely dropping all support for it wholesale in a span of only three months. Support for SVG should have been retained for years after whenever WebGL was no longer the default.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Since there are still tons of brand new computers out there that have limited or no support for WebGL, if you want your web applications to function at all, you are now stuck like a brick wall with the JavaScript API version 4.9. Our federal agency will not be able to benefit from any of the improvements in version 4.10 and above for many years because of this decision. On my maxed out, highest-end Dell Latitude, I now see a blank hole instead of a map for every single one of the sample applications. What on earth?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Tue, 19 Feb 2019 16:46:33 GMT</pubDate>
    <dc:creator>StevenGreenwaters</dc:creator>
    <dc:date>2019-02-19T16:46:33Z</dc:date>
    <item>
      <title>Canvas vs SVG in 4.10 API</title>
      <link>https://community.esri.com/t5/arcgis-javascript-maps-sdk-questions/canvas-vs-svg-in-4-10-api/m-p/431331#M39702</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Ok,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I have been away for a while (6 or 7 years) but lately have been busy writing JavaScript viewers and much has transpired in those years.&amp;nbsp; I am migrating a JS viewer from 3.27 to 4.10 and was migrating my custom 3.27 swipe widget to 4.10 and ran into a brick wall with regard to the use of a Canvas in 4.10&amp;nbsp;in lieu of SVG from the 3.27. Looking at the ESRI swipe widget in 3.27 it made heavy use of a layer's domNode because of the use of SVG. Why canvas? Is it superior to SVG? It just seems like a blob of dumb pixels to me, can't do much with it. Please enlighten me!&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 07 Feb 2019 01:08:10 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-javascript-maps-sdk-questions/canvas-vs-svg-in-4-10-api/m-p/431331#M39702</guid>
      <dc:creator>markpenton1</dc:creator>
      <dc:date>2019-02-07T01:08:10Z</dc:date>
    </item>
    <item>
      <title>Re: Canvas vs SVG in 4.10 API</title>
      <link>https://community.esri.com/t5/arcgis-javascript-maps-sdk-questions/canvas-vs-svg-in-4-10-api/m-p/431332#M39703</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;SVG is being replaced by WebGL for performance reasons.&amp;nbsp;&amp;nbsp;I think it was 4.9 that made WebGL the default -&amp;nbsp;I got this information from the release-notes posts.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 07 Feb 2019 11:55:45 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-javascript-maps-sdk-questions/canvas-vs-svg-in-4-10-api/m-p/431332#M39703</guid>
      <dc:creator>NathanSummers1</dc:creator>
      <dc:date>2019-02-07T11:55:45Z</dc:date>
    </item>
    <item>
      <title>Re: Canvas vs SVG in 4.10 API</title>
      <link>https://community.esri.com/t5/arcgis-javascript-maps-sdk-questions/canvas-vs-svg-in-4-10-api/m-p/431333#M39704</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;To add to what Nathan said. WebGL is now used because SVG was limited in the amount of graphics that could be added to its context. With WebGL you can now have multiple thousands of features (graphics) drawn clientside.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;See this Blog post for more info:&lt;/P&gt;&lt;P&gt;&lt;A class="link-titled" href="https://www.esri.com/about/newsroom/arcuser/do-more-with-more/" title="https://www.esri.com/about/newsroom/arcuser/do-more-with-more/"&gt;Do More with More&lt;/A&gt;&amp;nbsp;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 07 Feb 2019 13:56:18 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-javascript-maps-sdk-questions/canvas-vs-svg-in-4-10-api/m-p/431333#M39704</guid>
      <dc:creator>RobertScheitlin__GISP</dc:creator>
      <dc:date>2019-02-07T13:56:18Z</dc:date>
    </item>
    <item>
      <title>Re: Canvas vs SVG in 4.10 API</title>
      <link>https://community.esri.com/t5/arcgis-javascript-maps-sdk-questions/canvas-vs-svg-in-4-10-api/m-p/431334#M39705</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Esri made WebGL the default instead of SVG when the JavaScript API version 4.9 was released in September 2018. The following blog post says, "Starting now, WebGL rendering is out of beta and is the default rendering engine... For now, if you have a requirement to use SVG instead of WebGL for rendering, you will be able to configure your app to use SVG. However, starting with 4.10 (December 2018), WebGL is the only planned rendering mechanism."&lt;/P&gt;&lt;P&gt;&lt;A href="https://www.esri.com/arcgis-blog/products/js-api-arcgis/announcements/jsapi-4-9/"&gt;https://www.esri.com/arcgis-blog/products/js-api-arcgis/announcements/jsapi-4-9/&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Sure enough, when the JavaScript API version 4.10 was released in December 2018, the release notes said, "WebGL is now used for drawing all layers in a MapView."&lt;/P&gt;&lt;P&gt;&lt;A href="https://developers.arcgis.com/javascript/latest/guide/release-notes/index.html"&gt;https://developers.arcgis.com/javascript/latest/guide/release-notes/index.html&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;That means WebGL support in users' browsers is now mandatory even for 2D maps-- not just 3D maps. I am shocked Esri would go from having SVG be the default rendering mechanism to completely dropping all support for it wholesale in a span of only three months. Support for SVG should have been retained for years after whenever WebGL was no longer the default.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Since there are still tons of brand new computers out there that have limited or no support for WebGL, if you want your web applications to function at all, you are now stuck like a brick wall with the JavaScript API version 4.9. Our federal agency will not be able to benefit from any of the improvements in version 4.10 and above for many years because of this decision. On my maxed out, highest-end Dell Latitude, I now see a blank hole instead of a map for every single one of the sample applications. What on earth?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 19 Feb 2019 16:46:33 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-javascript-maps-sdk-questions/canvas-vs-svg-in-4-10-api/m-p/431334#M39705</guid>
      <dc:creator>StevenGreenwaters</dc:creator>
      <dc:date>2019-02-19T16:46:33Z</dc:date>
    </item>
    <item>
      <title>Re: Canvas vs SVG in 4.10 API</title>
      <link>https://community.esri.com/t5/arcgis-javascript-maps-sdk-questions/canvas-vs-svg-in-4-10-api/m-p/431335#M39706</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Some follow-up information. I am also doing extensive work with OpenLayers v5.3.0 and quite surprisingly (shockingly!?) I read this, which I highlighted in bold-italic, on there GitHub site for their next version.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SourceURL: https://github.com/openlayers/openlayers/blob/master/changelog/upgrade-notes.md.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;"New &lt;CODE&gt;prerender&lt;/CODE&gt; and &lt;CODE&gt;postrender&lt;/CODE&gt; layer events replace old &lt;CODE&gt;precompose&lt;/CODE&gt;, &lt;CODE&gt;render&lt;/CODE&gt; and &lt;CODE&gt;postcompose&lt;/CODE&gt; events&lt;/P&gt;&lt;DIV data-commit-hovercards-enabled=""&gt;&lt;DIV&gt;&lt;DIV data-pjax-container=""&gt;&lt;DIV&gt;&lt;DIV&gt;&lt;DIV&gt;&lt;DIV&gt;&lt;DIV data-commit-hovercards-enabled=""&gt;&lt;DIV&gt;&lt;DIV data-pjax-container=""&gt;&lt;DIV&gt;&lt;DIV&gt;&lt;DIV&gt;&lt;DIV&gt;&lt;P&gt;If you were previously registering for &lt;CODE&gt;precompose&lt;/CODE&gt; and &lt;CODE&gt;postcompose&lt;/CODE&gt; events, you should now register for &lt;CODE&gt;prerender&lt;/CODE&gt; and &lt;CODE&gt;postrender&lt;/CODE&gt; events on layers. Instead of the previous &lt;CODE&gt;render&lt;/CODE&gt; event, you should now listen for &lt;CODE&gt;postrender&lt;/CODE&gt;. &lt;EM&gt;&lt;STRONG&gt;Layers are no longer composed to a single Canvas element. Instead, they are added to the map viewport as individual elements&lt;/STRONG&gt;&lt;/EM&gt;".&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Drop of support for the experimental WebGL renderer.&lt;/P&gt;&lt;DIV data-commit-hovercards-enabled=""&gt;&lt;DIV&gt;&lt;DIV data-pjax-container=""&gt;&lt;DIV&gt;&lt;DIV&gt;&lt;DIV&gt;&lt;DIV&gt;&lt;P&gt;&lt;EM&gt;&lt;STRONG&gt;"The WebGL map and layers renderers are gone&lt;/STRONG&gt;&lt;/EM&gt;, replaced by a &lt;CODE&gt;WebGLHelper&lt;/CODE&gt; function that provides a lightweight, low-level access to the WebGL API."&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;If OpenLayers and ESRI were on the same highway it appears they are headed in opposite directions.&amp;nbsp; And lastly, I am so far, quite impressed with OpenLayers v5.3.0, although the jury is still out.&lt;/P&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 19 Feb 2019 19:04:50 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-javascript-maps-sdk-questions/canvas-vs-svg-in-4-10-api/m-p/431335#M39706</guid>
      <dc:creator>markpenton1</dc:creator>
      <dc:date>2019-02-19T19:04:50Z</dc:date>
    </item>
  </channel>
</rss>

