From 437bccaecc2abaaeadc54d50cc164a0da42137c4 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Albert=20Gallego=20Jim=C3=A9nez?=
<91949040+AlbertGallegoJimenez@users.noreply.github.com>
Date: Mon, 29 Jan 2024 16:54:29 +0100
Subject: [PATCH] v1.1.2
Modification of some plots in the dedicated tool.
Basemaps from the contextily package have been added to the map type plots (i.e. LRR, NSM and SCE).
The numbering of the "Plot Results" tool has been corrected (it used to say 5 and it is actually 4).
---
README.md | 4 +-
requirements.txt | 1 +
...alysis Toolbox.ComputeIntersection.pyt.xml | 2 +
... Analysis Toolbox.CorrectTransects.pyt.xml | 2 +
...n Analysis Toolbox.PerformAnalysis.pyt.xml | 2 +
...ution Analysis Toolbox.PlotResults.pyt.xml | 2 +
src/Shoreline Evolution Analysis Toolbox.pyt | 13 +++---
...oreline Evolution Analysis Toolbox.pyt.xml | 2 +-
.../computeIntersections.cpython-39.pyc | Bin 5677 -> 5815 bytes
.../correctTransects.cpython-39.pyc | Bin 3636 -> 3882 bytes
.../generateTransects.cpython-39.pyc | Bin 3923 -> 3964 bytes
.../performAnalysis.cpython-39.pyc | Bin 5139 -> 5580 bytes
.../__pycache__/plotResults.cpython-39.pyc | Bin 0 -> 4388 bytes
src/tools/computeIntersections.py | 2 +-
src/tools/performAnalysis.py | 2 +-
src/tools/plotResults.py | 4 +-
.../intersect_lines.cpython-39.pyc | Bin 3011 -> 3056 bytes
.../__pycache__/plot_results.cpython-39.pyc | Bin 10671 -> 11876 bytes
.../shoreline_evolution.cpython-39.pyc | Bin 3552 -> 3597 bytes
.../transect_processor.cpython-39.pyc | Bin 2894 -> 2939 bytes
src/tools/utils/plot_results.py | 42 ++++++++++++++++--
src/tools/utils/transect_processor.py | 2 -
22 files changed, 62 insertions(+), 18 deletions(-)
create mode 100644 src/Shoreline Evolution Analysis Toolbox.ComputeIntersection.pyt.xml
create mode 100644 src/Shoreline Evolution Analysis Toolbox.CorrectTransects.pyt.xml
create mode 100644 src/Shoreline Evolution Analysis Toolbox.PerformAnalysis.pyt.xml
create mode 100644 src/Shoreline Evolution Analysis Toolbox.PlotResults.pyt.xml
create mode 100644 src/tools/__pycache__/plotResults.cpython-39.pyc
diff --git a/README.md b/README.md
index 1345f98..f80e05c 100644
--- a/README.md
+++ b/README.md
@@ -42,6 +42,8 @@ Check that you have installed all the required libraries used in the toolbox. Al
* ```shapely```
* ```statsmodels``` (from ArcGIS version 3.2 this package is included in the base ArcGIS ```anaconda``` environment)
* ```cartopy```
+* ```seaborn```
+* ```contextily```
In terms of data, this tool relies on the use of the following two files:
* **Baseline** (Vector - Polyline). This is the reference line used to assess the evolution of the coastal stretch. It can be digitized manually by the user with the help of a background orthophoto, it is recommended to place the baseline **inland**. The baseline must capture the general orientation of the coast.
@@ -51,7 +53,7 @@ In terms of data, this tool relies on the use of the following two files:
### Installation
0. Make sure you have cloned the base ArcGIS ```anaconda``` environment so you can install more packages. More info [here](https://pro.arcgis.com/en/pro-app/latest/arcpy/get-started/clone-an-environment.htm).
-1. Install ```shapely```, ```statsmodels``` and ```cartopy``` packages if you do not have it installed yet.
+1. Install the required packages listed in the *Prerequisites* section if they are not already installed.
2. Download the content in the [src](https://github.com/AlbertGallegoJimenez/shoreline-evolution-tool/tree/main/src) folder.
3. Open the Catalog Pane in ArcGIS Pro and open the downloaded Toolbox (.pyt) to see the tools.
diff --git a/requirements.txt b/requirements.txt
index 4e34f5d..31403b3 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -2,6 +2,7 @@
arcgispro (software) 3.1
arcpy 3.1
cartopy 0.21.1
+contextily 1.5.0
matplotlib 3.6.0
numpy 1.20.1
pandas 1.4.4
diff --git a/src/Shoreline Evolution Analysis Toolbox.ComputeIntersection.pyt.xml b/src/Shoreline Evolution Analysis Toolbox.ComputeIntersection.pyt.xml
new file mode 100644
index 0000000..49ddda9
--- /dev/null
+++ b/src/Shoreline Evolution Analysis Toolbox.ComputeIntersection.pyt.xml
@@ -0,0 +1,2 @@
+
+
20240129115315001.0TRUE
diff --git a/src/Shoreline Evolution Analysis Toolbox.CorrectTransects.pyt.xml b/src/Shoreline Evolution Analysis Toolbox.CorrectTransects.pyt.xml
new file mode 100644
index 0000000..2d9931b
--- /dev/null
+++ b/src/Shoreline Evolution Analysis Toolbox.CorrectTransects.pyt.xml
@@ -0,0 +1,2 @@
+
+
20240129115826001.0TRUE
diff --git a/src/Shoreline Evolution Analysis Toolbox.PerformAnalysis.pyt.xml b/src/Shoreline Evolution Analysis Toolbox.PerformAnalysis.pyt.xml
new file mode 100644
index 0000000..35106ca
--- /dev/null
+++ b/src/Shoreline Evolution Analysis Toolbox.PerformAnalysis.pyt.xml
@@ -0,0 +1,2 @@
+
+
20240129115304001.0TRUE
diff --git a/src/Shoreline Evolution Analysis Toolbox.PlotResults.pyt.xml b/src/Shoreline Evolution Analysis Toolbox.PlotResults.pyt.xml
new file mode 100644
index 0000000..4e46fb0
--- /dev/null
+++ b/src/Shoreline Evolution Analysis Toolbox.PlotResults.pyt.xml
@@ -0,0 +1,2 @@
+
+
20240129095749001.0TRUE
diff --git a/src/Shoreline Evolution Analysis Toolbox.pyt b/src/Shoreline Evolution Analysis Toolbox.pyt
index bcccdf5..37172c5 100644
--- a/src/Shoreline Evolution Analysis Toolbox.pyt
+++ b/src/Shoreline Evolution Analysis Toolbox.pyt
@@ -1,22 +1,23 @@
import arcpy
-# 1. Generate Transects Along Baseline
+# 1a. Generate Transects Along Baseline
from tools.generateTransects import GenerateTransects
-# 2. Correct Transects
+# 1b. Correct Transects
from tools.correctTransects import CorrectTransects
-# 3. Compute Intersections
+# 2. Compute Intersections
from tools.computeIntersections import ComputeIntersection
-# 4. Perform the Shoreline Evolution Analysis
+# 3. Perform the Shoreline Evolution Analysis
from tools.performAnalysis import PerformAnalysis
-# 5. Plot The Analysis Results
+# 4. Plot The Analysis Results
from tools.plotResults import PlotResults
class Toolbox(object):
def __init__(self):
# List of tool classes associated with this toolbox
- self.tools = [GenerateTransects, CorrectTransects, ComputeIntersection, PerformAnalysis, PlotResults]
+ self.tools = [GenerateTransects, CorrectTransects, ComputeIntersection,
+ PerformAnalysis, PlotResults]
diff --git a/src/Shoreline Evolution Analysis Toolbox.pyt.xml b/src/Shoreline Evolution Analysis Toolbox.pyt.xml
index b05ffc7..8436fbc 100644
--- a/src/Shoreline Evolution Analysis Toolbox.pyt.xml
+++ b/src/Shoreline Evolution Analysis Toolbox.pyt.xml
@@ -1,2 +1,2 @@
-
20231121191525001.0TRUE20231121191525c:\program files\arcgis\pro\Resources\Help\gpShoreline Evolution Analysis ToolboxArcToolbox Toolbox
+
20231121191525001.0TRUE20240129115229c:\program files\arcgis\pro\Resources\Help\gpShoreline Evolution Analysis ToolboxArcToolbox Toolbox
diff --git a/src/tools/__pycache__/computeIntersections.cpython-39.pyc b/src/tools/__pycache__/computeIntersections.cpython-39.pyc
index ab4b4c3e806f7a4b6dec2a6e1d54aeb9723de47f..856e01fd36b3c86ad58559bf114f20ce8d0c0b08 100644
GIT binary patch
delta 1331
zcmah}O>Y}j6n%GQVvi>t&y2rfr=fOPltv^dNh?aBs35r#kx&Y0pdv~Yg}!GespG+(
z7f7Wy^1?_#NEN1osMy(vML}gzS)yAOh$V|IjfA>J`~WsZy>A>GLxS+gSMTHc+;h&o
z
E=bb0yp
zHSh16S@xk@-Q`eW1&nJA%&eMn1R5;rs{d(+ij?yIi^H;ZlnUwig97I6hDb_
zb)k2m*@i|t)Q+2>cKwKUeMGx~Ug)2Yp%>wv+SD2GMnCXo69ps>yjk)sJ|V0Y@bpck
ztu&q$R;fv@Px-0PvSesk>d>;bQder(@GkXlJ5lW)N7O3b@~GMh@zYp57dB>fP4P2+
z771jB1is_>B|a$+T7V```4b}DIUzDs$rFrfo|F~o3KIDgiTu~y=3(Q4{rD@*lyLsh
z7^VLB2vyZv7^S*T%0Sa7Qpa9Q39XBKTHxoxS$syiEj0Y*XokjU_I4CIby5xqw$eNp
z8FUP(?#jh^3;|e|&isG=S7Cne$ZDQGhs*w0d5cx)x3C%w{}dKWgCaxx`@u){
zgK3$%s!5i|ariOB#4vp-c-tvYMlSDddEDzeC01pet?z8qHY#j~)p+oO^B5L-casIk
zy()ht>-3{+kKNeiY!x@&o#2;LVa5PM(Ln*_uZU`^Nr=Nsss>5WAqO+6p~S(!_29mj
kNyh+w4horSWLtvX3_i~+KsER&b2f589;kRQ5u~&Er%^{e`2YX_
delta 1139
zcmah|%}*0S6rZ=d(CxO{?ruM5`H-HBC`LX6jY8zWg~T8cf{{QBGD~SKY-ra6<7}Ex
z6TGM-L%h-&FCIJ)4jMlaqy7P&@nGaH@N7cjo29{`Chlb4zS)_5zmGTj>g>yIeO}i!
zg4gz&6ZZa&egGYpMla1y6rFqag6m|ab0v3v(kaYNIZolWv$lI(I)Fs$`24b+aTYUU
zqnXJir)U>)EB3CfJa2+8T+=qnc{LxT8Vk@63)Ao;1&B-XY8BtGW~$d@e;%raaYrNz
zHR;KDFT(VyUL&JquGNdONHs#E)ObKxG#?!$6{rD_)ekoa4Jt$-6|Asg^pet#9s>Tj
ziIGa4fjFUR*$_Z};UO#>!J;QU6N{Rzg)p%i7Gy@6;0`Ry3@TqBp0Nq5@nZm1FWH3B
z^+pIc&O%J9NS-AG`6AW7M5^Tml|r@pkQ}M@=hUQDg9~cig(W0w)m<3(qHcmkE8tpp
zq)jOPWaz_OyBG7liTU2detU!D_g0erTAb$oFb)?#|D{YSoo-Z?C0-oClYR?kW+gA-
zC6Pd~PCzQIyDe@?%q!p%X<_kdns0{_f!hdN&qE_eO)&V^@a34v%wrx)tFQTYJyzBl
zu{X#f&;&|ST~cjjN(~Vz;H7+z+k|~g!8=8hG)P+>1@QQ^iwQM-aYyiWSNCq+RLiEb1|L=e5
z@8`ot8T$EqBhw^`yx{xBPFFu>GfLKWmj4Cx-v1CoS0{gGF7jdP8}#mW#5&>DkXRCo
z_5${ry>QpHXK+$_jDg6iq`~1(#8dWj*^)I$1xbv9X2p;#2*aSPfCVa~p!?YB?shx~
d@QJ@j6q>VGvbe%w$k&qtzW@@1|1SUl
diff --git a/src/tools/__pycache__/correctTransects.cpython-39.pyc b/src/tools/__pycache__/correctTransects.cpython-39.pyc
index 79bc4f545905ccebc437b9f295cda0d5635591ea..4c334389bc4aaf3274b38eea3dae50deabc4296f 100644
GIT binary patch
delta 497
zcmY*VL2DC16y7(p+3e2lj=
z{Z9UXyZzQ`w-e_@)P9`lcr-}ksFP)*?QA#d+}~{7-dykIe>=^1CmW56L6$a)6Haqw
znQk}N4^c8)vsFbodzA?*tRX001&XUs$=`3>z|c;>@LoloGJNRtss;=*JmC}D*lnv(
z!|&`XPWe8Zo3`v*45H~vX9i#aUsaz%9UV7?pE!1($e}-RioiIAKWAX!zPkt>esCAA
zhldterg|Vx;{UvY9gs1NC=zx^I^~mTfPr_3ELOY(-r{R-5jOC%cL%q;8%z2s?Mi$9
zpxm8aCg_&QHG<>HdYX*l4Vt|s&cZC#Mf*%RNOxjg^!jBhKW6HY<~SBhcqGn4gx|#0
ze4Vrw6Ck;S8JOb&T<$ROr<$(%HK5P#1-r!m60G?t(Q{dfY?R@H+6Bt=#S$);(7ThEuiT?J
zEbN@rVy6-Yd)r|c9ENpVBv@j?5aylHAhG6yNDEs~!NtJ;jY{x!4`X=R(mg2%v{tRzZ6Uw5U@}P)WYZ5kb#ab`)jB?cr
z+>PQuk6k*!g+hpD(JK6BoW6ERh{4iE5InevV%;v-x0BZQ%;5;
zPrCEz3_uRcc3mkx>=HXrf*SA3DC&GSGp4p^ybsfTn88!NY~>p|(6Ovk7q7a;sUzD1YnU|^%lAoWGlwY9`
x;veMV8sr#L43p7KEz8d-Ey>K!(=CCh(KXZq!kFTsm1im)_eT)?L
diff --git a/src/tools/__pycache__/performAnalysis.cpython-39.pyc b/src/tools/__pycache__/performAnalysis.cpython-39.pyc
index cada5f089c7f1d0d54cce632642512e049d0fc8b..37ad74ee0ab43a960c9fdb0ba3ac9a5a5c233336 100644
GIT binary patch
delta 1600
zcmZ`(%}*Og6yMpkjqSCKu^}-bC7U=jI24!9(o#x9v8y&R1lcrAEK<672YcQ1F3hY6
zSc_1S_EafNH2(nfP>CGUrc~;!Qm<7%4!vz#sh0|INv~B;o!JG4L}FL_o43FBF>l_y
z8PfYxUqlXvgB*P>fASqXpLh~k1>=p^=O9`(P)#x`P|B$~l#!H&Wdt!+4PBbjWo-ki
zSfVnNOBKmPvW{WNOp`lcY$iaX{r6F3d|@79Qz}#p1T`8%nl}t>$yk@>ujMn@{L}(I
z()7bML#vxKbie7^^be-#yMR$??+@@Z0DkgF7!p}v
z{AO@dw0zqgR!jAi6}0@zd?&XZ-Qjis;2wb0FF)XvGak;v-4g((#|9~f{~~RH2a=N_
zgA{M`=>c0n#%*^+Zt~=Zz&D_Wn89RnxS1Q<9@{^m$+aa#p3E@5k3u6weh(zcpTPil
zjqC?A!$Xuz@rY;Ue0~UxG0Qg?xWSn;PT?IUun6c)@}W2chR8!P-hGnwyN)%vDUOXE
zpTLu!DP&Ka;%ak>x7ZXT$32C@^vRC7rsE`YtUTv9TbMa<#@VLh6)MfzzRb1v-_B)I
zr)_af*6MHy&%<>SC8*No71<6IXj7Le({+Rmghog@Tmb##Zg?;N^?D5=*@WatIPP;h
zi2N9?CV^^$MYontRh@llf$OkTHzC_DoFlg)?|Gvj3MR-`kxQ*1N(zS`?gr%V$oGon
z*^VpW9k3}X5lgHF7Tc9pXY5d-&Ui{`bH>wUPKkX1m|RU%qt#Bu+sReWEOsgJ=efnR
zH0Dc|$huEyFL0?2vfFwCTqJxnJL)tWKy5S&+8e!eu)UhR0nsi%*XiG}-ndMEON{Cx
zR&y
z(gUN7#4J78SS{=7vRaaLvw2^nJO_7KoazxAC`@7#%%-~06ssOekk8ugdr_W}b_T!v-_E~~oAt_{1T0%b+j%f(n7!|ZxVtFw!$uu)qwv|=kfBBnK&>Wh&kk&~C;
zaf3sT5OzFstWMbWmJH26w$E7;K4*JxtBP5%!}xd#snFqNLvF@;K#^?4dInLErdkx1
z(8oogq}JS0FH#OUts|}&*vz`^!z}R#`6c#pTnGw&!4KG*05KuRH@e83Xcvjadxu5l
ze2#&{-~xjrg9QekGH}lNGYFDeygPXbu`Nsm-2V5i$hsn9G(tJsOWS>A16?JL<74S(
Zevag%>7S?>N?n7KfSO}=9^B+Y{Qn$qeboQ}
delta 1164
zcmZ`%OHUI~6rMYM&-4XtMSSqEv@k#r3SN0lu8kaqRG%1d00B-PRqkgS1yf;
zxqkp$m|&t&apMO40lIKI8#lT$F}l=^b7rt0Nhg`_o_oIY-SfEjV;gDl3LXzb>EB%H
zr1UNH+PjQsjUw+5-vsX8e7tWah2?cAQ;-{`7LK^0Vud
zc+5&!srwd0<*K`=4WxV}IoC#mQ6>OKYjj7aX2J5R*_GJ!M^0JxmyPNMhD6*u7Dr-i|+0H|@
z`TvB;^jO7Y$+GZ*ZY4E)eEizrXo5SUu||Ivl}Tx>fNOP9qeVe;rzHVr=7)+{kumNi
z4?JnqLB4ppYKnPLC`c3Xs%FW`8P2`;v`Eam$k{S-F;~E?kj$8_F=yk-9MYPUDHbHC
zSV@uh-b*ek@*^iYirR_C*X)BR%igbipvaJK*DiX}6z3(9e;P%|u0PQShjIv4!$MIs;h`6P9NMPM=jkun%tAd*}F4}!av
zJgt7jYAz{PT#~TfHt7wtcx*bwvH$x16Nn&G?CR{l)MNIce^2|0iY2e4A2B{6F>zp=C}_miH7RJ9EMSGF7v|dc_AkX3hvc?
YnoX}YzmBhvxe)K)*BKT|UWV%a0*L+c^8f$<
diff --git a/src/tools/__pycache__/plotResults.cpython-39.pyc b/src/tools/__pycache__/plotResults.cpython-39.pyc
new file mode 100644
index 0000000000000000000000000000000000000000..559a88216f6027237f8d10df08a13b9d4aab81df
GIT binary patch
literal 4388
zcmb7H&2QVt73Y^ET9zH>1KA`95VpJMT16tH+bjySu8}m(1}+lUu)SMAa7)mfkwlv!
zl^H6r3Hef|x9*|;feo}kbLqAJ%UpZPxwrPP{k@??$&S0bCBerb=j(m`-kV@yp>E(x
z-u{FC?1o|dlRjoI2Op2|$Yl^_Ff%sV^tNKNZ?!Gccy2J8Id2W-aQnn=JIvfRnw9q$
zZEQ46wXhkdSr#STFS96?A^o1cEPOo1BVT}Uqir&yZ84KsZ;iHHEQ}>9tcvdnt1%bv
zDw|_cPKa(Ng{3p&^Uu-mORf&T=9;0
z76!@IFj-H26@&*}kq#5~&Qy-%ap#>O<{;O_(==*t`y-e{gJzasX|+WBjx&jlth{DS4fdn5W}jP
zRWrXaqxsfk&^Z&(j2a$of_*eHW8WmZlg-KAUssMzR_mH0bKml9-Rr{c(_V|!(QB2x
z@CEq6WUkE?*_Ez^5w`D)Fm7ab?PF&|W?jnfj?Fp<1T2|x;W4svM8eDb{(3SP&Zta!
z>j}n49#X%znMO$_y)Sr>!FFmrs%+(vKirzW@s9Xp6`8DOn-Av;n
zvU`5#;2AK3Q(c)dt$(y{O@B;y84s-jzSKbF$#Bn$irdATRVjm6bl!Hsz>t0c*c*>EeWy=E5A9*
z+;m8&yJ-k6YG20IUtgvy>KtjXdQH}qUXUzF3iQSK4&cth=(7Dsb0#cD-7Zo0z(rCe+^Xx)78txdV$17Jn_O_kaV%i
zhStP8OS_D?2U#wvW@$LU_PjK?Y++ELAm_aGE)M)aO*Up~>s>=*1Pr=uoFWyRnI;k&
z(89_8IHR;amon%=PoY4-L$bZ2Qaj#^R-g}$2Vqa!zLd1o?Eh3$&>=LM=zC_x)_byP
zzWTJs!vjx7-6ZNnNB|+97zwyfK#_F4GJ?G2O>Jdw#e3L#_<6HM8TqQ@*>3}pVC2g}
z8u3FceNn}Wh33XXbSy~l??)@67t)`N1J6b#jqwQ)Fl*{~e7&$@|8!jh1!W
zKnoDfY_!bd3PJc=V^mo)PVhA{POVX8$n23bvXL6BYTyFN7enx2!+Ad
zFc;cY=3jk2AAWOC_h1JbtzOGf6w`8m)r~n4Q2!em8S)|3@*|VN`NWi;WacSqJPNK1_5F$Y2Qx$PpMYi+dY_mFw)nLk
z<%~x;(^0H)V2PgYt&V%E)LWbkGIPIrS{qqxu4|rI8bIt~RZ#48%MgFjb9It%tI!dLDo{i1C;zl9v}@5;mq0^Iv2D)Km%PVLoxC$
z2(aMBv6(?TnVDG~>%{sBkoL-A0F0(dWj{)QD3KY#ys{Cns?v$mAQMf@zUY;6D_tbn
z!+}`sQSSqg{IglBT@s_fhzVFsCg+dV6U}@nthc^)AGw+GPN|6XwZiF=VIR>O;>fd2
z=b18wvTeH?WtQ+a(VEwEzZrF6s^7q3(tQQUo~yYEC&u{=>r
z(-KrNDO;p(F6c?zN5>l)s5SJ{@2{Z}fYtnjS-@QW^#9Src*%P3Q0wv)LtT9
zOEe}hrsH5is9+XU8i#n~9T1~(4dCV4H#BW%ddFPCJHPiG>e*<{(=m|FFut$qzTZ#T
zFs63H_g@Wzxabj7j|-2;4~TqBu{6V`W?1uTql0WOmq1+8t-AMI2ejsX
z>{bNz;&efZ!`Xq3sVy90LCJ~y@gZ90B2`WI_ThMX%4It#ccox|m7rMCp03%j{tF)v
BynO%w
literal 0
HcmV?d00001
diff --git a/src/tools/computeIntersections.py b/src/tools/computeIntersections.py
index 9f14178..3bfd39d 100644
--- a/src/tools/computeIntersections.py
+++ b/src/tools/computeIntersections.py
@@ -29,7 +29,7 @@ def getParameterInfo(self):
shoreline_param.filter.list = ['Polyline']
shore_id_param = arcpy.Parameter(
- displayName="Name of ID Shoreline Field",
+ displayName="Name of Shorelines ID Field",
name="id_shore",
datatype="Field",
parameterType="Required",
diff --git a/src/tools/performAnalysis.py b/src/tools/performAnalysis.py
index 432ad2e..adfdb8b 100644
--- a/src/tools/performAnalysis.py
+++ b/src/tools/performAnalysis.py
@@ -7,7 +7,7 @@ class PerformAnalysis(object):
def __init__(self):
"""Define the tool (tool name is the name of the class)."""
self.label = "3. Perform The Analysis"
- self.description = ""
+ self.description = "Perform the Linear Regression Analysis on each transect."
self.canRunInBackground = False
def getParameterInfo(self):
diff --git a/src/tools/plotResults.py b/src/tools/plotResults.py
index b695d67..7652a05 100644
--- a/src/tools/plotResults.py
+++ b/src/tools/plotResults.py
@@ -4,8 +4,8 @@
class PlotResults(object):
def __init__(self):
"""Define the tool (tool name is the name of the class)."""
- self.label = "5. Plot The Analysis Results"
- self.description = ""
+ self.label = "4. Plot The Analysis Results"
+ self.description = "Plot some figures to see the analysis results."
self.canRunInBackground = False
def getParameterInfo(self):
diff --git a/src/tools/utils/__pycache__/intersect_lines.cpython-39.pyc b/src/tools/utils/__pycache__/intersect_lines.cpython-39.pyc
index 11a22c90dd9ff85ad22125fe921e1b822a724730..c951706bf7bf72c1140279e00da98360b617b8b9 100644
GIT binary patch
delta 94
zcmX>s{z05Ok(ZZ?0SH=p=WXPk#N?9ZVigmTT3n(KoRMFYnvJO&nYd*%+J#;fvC|n)C0oJTbTGc0k%XRo&W#<
delta 49
zcmew$epsA4k(ZZ?0SMe?G;QRb#3XL%Vii-8T3n(~oRMFYnvSjYkQqKYwyN8YkTdT*fISP6%?ygS|=%`E;MoFbnA4P-8){-
zdUnUXGfsBhF&45Z4T@2cE7F1lbqX&Ll%HB@5kZhbUnmlyf~S#65meBK2VVNZk0|Hd
zbwY^312dZMo_o%jbAQgyz27_b-hABX?Cg->+4%YE<~vj8;%V}`bK{5B3!PM=#E#dx
z3f)8kTDE&;u~qCut+&uy+fh_#yj_T3?}0(8S(bOBVVC9kvH*sX~fKX1JQ(-bW)B
z3GmyXH%QefiM9)>1E{E=VpFJ@sYtZ*WkUPoTSTzCrlcbh?WR4O67AWL3)-tBO~@?Y
zC(p!aVpA$aY40&f-?LMf?^LGC)A!BKny#lETXdLdTXj>LbsW3oG_=`IADupQ^x(XE
zU2?!Y>DVit<-L6lq%eZs9j|y!FzK7s*&j3(DrJ76Ab$`e7jul;F4d5x;Fgh8+qU>xBO#
zmWwwuqfWJ^W?MDObNL4`jhB=xY?kX4-9=;Bw3}L=iAl<(JH+E-YQ=x?06_YNiLeRvjGBvb5l^n&D~rlZL%w>O9t=tv8A=w3f#KVTebe
z(N0<3qUJ4{n(GkFQ2zhQ>A=MFt`i3D<^sVi&}
zTow>7APu%3$QFzvbtk}cNZbXmI`J9X@o7G2XTHkz;`zE{oizT7?Q*9a;f
z2iP^s3P1;>c{{^jL|rs|4bxB$1rf1TZlD+?mpzQqBPdYW7&L|0&3-C`Y^Ux58lGEF
z8%1Yf0cJxBYIBzi!eX<7u-L6zh7UUaGxt@n?ZyG5Sb`*!BuU~YuO|Q3Vt4fJtSqy6
z{%GRfNEQBLOZ@r7aJPk|=+|4!D~XH5+BwmCfkZC=$DIO@l%0R=Nh?u`Dm8=!o=fJ*
zB7ZEIB`bV6nIv_7Iyp4JoLMq
z*#q#AuFSE*8Vg!*SY{^p;Li2h(PUNW`iZ5!xj;u2rmNsc|kmXdO#1cI5NM=
z-yXco1(2iC6ltsP8mafPOS;z!K4+oJl6z*C*kV{Q=o=;>lANvkk
z`8ooIitsvn38|M6L?mF4Fb_e5lt|HU^Nq|5`2l}Bqfet#nQ(6dC_T-Fpb0`{XSo^3
z)MLLyxp4EdNWF@%gK!x^cy*oMuchumX9#byD@dUW*^d$MOkh6+2vm1v*|R*`WN#o3
zU6Q%`XFwLB;&>|7oI0!@9VDE>-b6|ikr29v{RaEL+bY%Wtp7{J7uc$NV-L^*d>7E5av+`bjrGJTylh;olg_63VX*
z^{;;pbdz+Drf7OgCQ?1=6Pj6)&k}Y)NVMyc)j_YnI^ehaZP2Ew>FPe3r9*UhD@>$0
zsh%bhzTV(=hK_7&KDh`lk)D*`td@LfJL^kTxE8?tde#zt`}UCEgYx4*4*O6xhy>IK
z&FxY-I@+SDqkeaV&@q~)`j!G(YIV%ZSM}}vU~ru7-yKS(<8*=^Kn*Iv2{_69;TiG*
ze``3^^$czxmZ?C7{HgH|hI0>#s`XbCh#DXYNw{PiTR
ziA0QjlN%!g5zHm_E&lnDk3x}pedOpO`xS7mMNm5=v>{`h6;?JGnkjS}p2w_`xQ`UE
zG_BtIpy8TOLA0{7VpFZ|cv{KS3`$L^d5$Z2$LTb>C8DJ#q%U8+Ma@$S>ym$lv%6^GoC(d_*rt(f44L#E8nz>Y0B7KA17V
delta 2251
zcmZuxYit`;7M?rf*yBfR=YbO^PV6Lhnn{|l{Xs=(C>6AH1r#l%Rl$U2$G#J1oEeWf
zGl3+ygpxuLBHgwZ@s^sfNTn;J)vgiZEg^w~5b$$X8m;&NtCjMn5+ET2h~=JZ3J5Wy
z`R3en&b@c$eBV9)o%#FialO4gBJpb^`n<8W>ufwj{&jX@|Ek?yj1!4URJIa_@vT@%
zyQA1)cNRN^KVWs)-NkNU6YB~)RqPRVo7HQli)kVmZPmVwej3~)+#lkj3{|Hk8WvWB
zTTx-frZID%BGL922#v23;q6FFO9v#Hq#Y+E+OZ}V2b(I%5ONDE$Oi+rOIm010r?L~
z&(3|<%y@?D<=lA(49lz;InQw{_GQ~R>1_@K6`Aa2L+W{QEqhm8Av>DW;a6p{xA|3c
zEI^7Zlf1ckcXv*fw+LHJ?F`QHLcpKdo2ilHF*L=v+;Uz@ZIWZnGd)j|=>6Q|PIHjt
z=8kkmiQa)JC4?foBQr*3*on+gUzI!jpsmA#0e+7&aw2sh&s=`7YQ6=`v!8m@5aSs2ewqqy_16$@B_;RfUnHi9{h!SilMSz
z7dxEgql+>;g}KMr`GIv(W|MCL&Fu3P
zz2y1{*YIYSJhQxD=_SK*p@C_U%4M$$OWXkup*P_!mT*CLR;SfPzS6_&|Jf^(k6=u$
zxIQs`;=w7lH<#k|I-0wIoNqpt8D
z&Y?0VuK!)91t5;j(;WOni!*~(jIv`n074XxV;srW6c7}LQFr&5)SJh-Z0|^T75!o%
zt<4Yexr=tqmrKiV3YU%A1~v6s9h|!B$L^aqT`mwYg1_RtClJmdAkFY3!ZQehdQ=6N
z2uLyzgcmqyF<-e!uldT2Mu~kevWL9HLV0Z!X$C>KjY%08<}W``cIsSu)PwgiE{LzA
zbrIoj2rnZb&){+3Iu;-82dG*0{7}hR5^N)Za2%nDfV9Ia2qzF;le+j+)m^N6re_)O
z20D?)-dz#chJ!ab6rW?i8)O#>w~{*hx^VQ$a5dV9R%4A=BSfQ(b{cy=aGJNFdv5aDtMQ7&n@yOu(+G{z
z#Cq^}oShs!O0H-B86Dy$_lME+>b;F{wU-XkewtaAiB#)t5Sm?(&k#5*BDu>EIz)$0
zN)4$R+=y&S`=m8;Jkbbmr1{ggDbdcf_NH5V5?@|g=BH)~S3_dq
zEOw=Gc9)tB{s|Z&(yT#ly%G9!wu8*%8p&%!#>yY?V9X|
z=Jgu23>Pl2?0C;@ztMXEj^aKya^RvbgIiRN96tCf!H;63&GZc0g&|B8y8j1SLj0H5
zsqt)3w58YC%j22rg|H9cELAjxk`B;@=|cMth=6ElmTAKuG4RV7!Nw-^-xKkJa}L(
zO6gQ`WS9iy00}56kz4ookx)wMCY}6_DXg$PS?DHxB*O0`SxNmq54UPjMz`;pc@+14
z58*R}ZxMd^o}WJou>JP%#}y})sA)B!_NhZ^UcF8&h^Ur@6i@I&uA!G4sKGzaO-_(y
qwtcd{D_YjU<9%w1)7FyY7i?j2fqcdOJy{Ot`81WNB*yknWq$+(l}88w
diff --git a/src/tools/utils/__pycache__/shoreline_evolution.cpython-39.pyc b/src/tools/utils/__pycache__/shoreline_evolution.cpython-39.pyc
index e230549c125a0080852c64151218167570af67fd..35ba9aebb6222a7f55a17dc7bf55877b9dc4864d 100644
GIT binary patch
delta 94
zcmaDL-7CYL$ji&c00b?)^EPq|vbbcqSjB{-7MCalXXF>9=49rjDum?c=OpD9=49rjDwO2s=WI@3S<49k
DNRJNa
diff --git a/src/tools/utils/__pycache__/transect_processor.cpython-39.pyc b/src/tools/utils/__pycache__/transect_processor.cpython-39.pyc
index 3dbc1eab9529c2a0d76cca7a205af56a18b617c6..1c2eca8694e2cd818def293305d9dea812919f6a 100644
GIT binary patch
delta 96
zcmX>n_FIfMk(ZZ?0SHK!(=CCh(KXZq!p$v=r#Jx{RUu0N
delta 51
zcmew@c20~pk(ZZ?0SI