Select to view content in your preferred language

eDraw widget

81576
250
Jump to solution
02-24-2015 01:17 AM
JeremieCornet1
Frequent Contributor

Ehanced draw widget for WebApp Builder for Arcgis

UPDATE 2018/05/09 (new Release v2.8.1) :

  • refactoring
  • use esri/geometry/projection (available since esri js api 3.24) instead of proj4js (external libs)
  • systematic use of geometry engine (no more mercator utils, geometry server...)
  • for polyline, the user can now add an arrow (available since esri js api 3.23)
  • live measure while drawing
  • WARNING : this release needs Esri API >= 3.24

Release 2.8.1 on Github 

(Direct zip link : https://github.com/magis-nc/esri-webappbuilder-widget-eDraw/releases/download/v2.8.1/eDraw.zip )

Demo : https://apps.magis.nc/demo/eDraw/ 

Github  :

https://github.com/magis-nc/esri-webappbuilder-widget-eDraw

Wigdet's Features (improvments of standard Draw widget) :

  • add name and description fields on drawings
  • enable infowindow on drawings (selection)
  • on text drawing, no insert if no name.
  • on modification : enable geometry update (with snapping if wanted : CTRL) and preview symbology changes on the fly
  • list
    • add list of all drawings
    • actions on each drawing : modify / delete / [up / down] / zoom
    • all drawings : zoom, copy, delete, export
    • on drawing infowindow -> select drawing in list
    • on zoom on a drawing -> select drawing on map (and show infoWindow)
    • re-order graphics with drag&drop
  • import/export : allow users to export or import drawings (json format)
    • import can be done with file drag&drop in import popup
  • localStorage
    • dynamic saving on each drawing add/delete/update
    • on widget load : load drawings saved in local Storage
  • draws plus (initially from Larry Stout https://geonet.esri.com/people/Larry_Stout)
    • preview under mouse when adding text or point
    • for text, add font choice, font angle, bold, italic, placement and underline options.
    • add arrow menu for polyline
  • checkbox to hide drawing's layer (and therefore widget UI)
  • add of Nautical unit
  • measure's for points/polylines/polygons with automatic update on element's update (or delete). Measure's can be indidualy disabled/enabled on any graphic.
  • "On the fly" measure when drawing
  • defaults symbols can be specified in config's file
  • use of builtin projection engine (available since esri js api 3.24) instead of proj4js library

This message was updated by Jeremie Cornet (New Release)

250 Replies
GeorgeKatsambas
Frequent Contributor

When you add drawings then use the print utility is there a way for a legend of your drawings to show on the print out?

0 Kudos
JeremieCornet1
Frequent Contributor

Hi George Katsambas‌, as far as i know, graphics cannot be added to the legend.

MichaelMacfarlane
New Contributor

It looks like if you turn on the flag "isOperationalLayer", it will add the graphics as features, which will then show up in the legend. In the Draw widget, they end up being labeled "Override 1", etc. Draw—Web AppBuilder for ArcGIS (Developer Edition) | ArcGIS for Developers 

SamJehle1
Regular Contributor

Hello,

I notice this was mentioned earlier in the thread, but has anyone been able to incorporate multi-line text within this widget? I've gotten a request to add in the capability to this widget and figured I should start here first. It seems like it would be a large undertaking.

0 Kudos
JeremieCornet1
Frequent Contributor

Hi Sam Jehle‌, the TextSymbol does'nt support multi-line in Esri JavaScript API 3.x (the one used by WAB 2D applications) so this is not possible.

SamJehle1
Regular Contributor

Thanks for the quick response, Jeremie.

0 Kudos
by Anonymous User
Not applicable

Jeremie, Outstanding. Fantastic. Moving this to all our viewers stat!

GeoNZ
by
Frequent Contributor

Can someone give an example/better description of how the Local Storage option works?

The way I read it, if in App 1, you set Local storage key to 'xx1234', then if that same user uses App 2 which also has the key 'xx1234', then any drawings made in App 1 will show?

I thought initially that by setting 'Local Storage Key' to a server path then perhaps All users of the App would draw into that common repository....but the help is a little sparse so I'm not really sure what the correct usage of it is?

I want to know if its possible for multiple anonymous users to draw into the same file (held on a server)? (The list of people who can actually access the app and therefore who can draw into the file will be controlled via portal, likely only 2 people max)..kind of like a poor mans enterprise DB I guess.

0 Kudos
JeremieCornet1
Frequent Contributor

Hi NZ GeoCAD‌,

The local storage is a browser storage. It is dependant to the computer, the user (e.g. computer user not arcgis user) and the browser used. Web storage - Wikipedia 

So, no sharing between users is possible.

A user can share his drawings between multiple apps if this conditions are met :

- same computer

- same user

- the applications are all in the same domain (http://mydomain.com/app1 and http://mydomain.com/app2)

- the same storage key is defined for eDraw in all this applications

BobWheeler
Frequent Contributor

Jeremie Cornet‌ - attempting to utilize the latest version 2.8.1 with esri WAB 2.8 - works great but does not appear to be calculating acres properly.  It is almost doubling the values - known 640 acres shows up as 1248 acres. Tested the demo you have here with the same results: ArcGIS Web Application  

This is such an awesome tool and heavily used by my users.  Greatly appreciate your team putting this together.

Thanks!

0 Kudos