From ea09f80f82b50cdf4e28c270968932623bc2dc91 Mon Sep 17 00:00:00 2001 From: Arno Kaimbacher Date: Thu, 26 Nov 2020 09:46:10 +0100 Subject: [PATCH] - npm upgrades for three.js, webpack and babel libraries - favicons for webapp (android and apple) --- images/favicon/android-chrome-192x192.png | Bin 0 -> 5588 bytes images/favicon/android-chrome-512x512.png | Bin 0 -> 16304 bytes images/favicon/apple-touch-icon.png | Bin 0 -> 5309 bytes images/favicon/favicon-16x16.png | Bin 0 -> 1040 bytes images/favicon/favicon-32x32.png | Bin 0 -> 1696 bytes images/favicon/favicon.ico | Bin 0 -> 15086 bytes images/favicon/favicon.svg | 14 ++ images/favicon/site.webmanifest | 19 ++ index.html | 41 ++-- package-lock.json | 242 +++++++++++----------- package.json | 20 +- src/js/controls/NorthArrow.js | 2 +- src/js/main.js | 13 +- 13 files changed, 198 insertions(+), 153 deletions(-) create mode 100644 images/favicon/android-chrome-192x192.png create mode 100644 images/favicon/android-chrome-512x512.png create mode 100644 images/favicon/apple-touch-icon.png create mode 100644 images/favicon/favicon-16x16.png create mode 100644 images/favicon/favicon-32x32.png create mode 100644 images/favicon/favicon.ico create mode 100644 images/favicon/favicon.svg create mode 100644 images/favicon/site.webmanifest diff --git a/images/favicon/android-chrome-192x192.png b/images/favicon/android-chrome-192x192.png new file mode 100644 index 0000000000000000000000000000000000000000..5e0417aa3c9bdb563823f61fec5f501b94c9514d GIT binary patch literal 5588 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 ND61-y_Xzdo{{fFC+Zq4> literal 0 HcmV?d00001 diff --git a/images/favicon/apple-touch-icon.png b/images/favicon/apple-touch-icon.png new file mode 100644 index 0000000000000000000000000000000000000000..2b8498de92c19b5c9f03559c13fd2100e9b8dfa3 GIT binary patch literal 5309 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 C{}@jI literal 0 HcmV?d00001 diff --git a/images/favicon/favicon-16x16.png b/images/favicon/favicon-16x16.png new file mode 100644 index 0000000000000000000000000000000000000000..4fbe7b7d5b72ceae5f677c63f9962ecb61c1119c GIT binary patch literal 1040 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!63?wyl`GbKJOS+@4BLl<6e(pbstU$g(vPY0F z14ES>14Ba#1H&(%P{RubhEf9thF1v;3|2E37{m+a>&#eB-_SK(^t=Hp?@!EYHjVB8v<2O?LNLURq#vc|OoC6R-lK z&Fu{T8yNooH=dbhvInHa8f42n)2s6hw{!xz=9?#49G?ob)Z+9k5clK^AZc@XzV(f{ zru!#aUzlfcc!K4LndZl*0~J`F1v~QceB;dxKr4*4cUfJWXL@9+#Yv#{ImVlNfDSX- z(E~K!Y+ak#;VD3)On3KMUt9oG24n+GFg-BQ^w8x0|Ns9@Gd&Cp%Jh;TzhH)lQmYD? zonPzBq&foS4!mj83;a@O%hRXIq?0oD)1NE1z1eQubSz$W^WTr-9`{czZ`|@WXwl?Y zjTeX3F)^|}e%bCXvGu2Fc<0~yZ@xM3{#$3BJ^$kGziYS_oPAlcs#j$C)oa4*5~g*( zFiCl?uuEa#=MSGgHb*c?HYs>%7%MBsM!1CZ zINCTfsVHcw>MGBkI8jl3{e*=pSWKNGT|<3iosE^9y`$N67OZAh`fAL>)7vBI<8$_m zu8t#9nB+Acvu!+O4u4;MTd7pjzS@QIe8a zl4_M)lnSI6j0}tnbPY^&4J<gtxPPn4UDV|430J|-H)OnH$NpatrE9}Eq7%> zIZP5{LvVgtNqJ&XDnogBxn5>oc5!lIL8@MUQTpt6Hc~)E;Z-3KB|(Yh3I#>^X_+~x z3MG{VsS23|CCLm76>}bc;^8O^)6h8OfBKB)(;xZee9%@5v&}!U`@8CWlj) ul{bedoW618#E~;cWR9?(Ztz&(rN{6}T(IPmlj&5T6%3xPelF{r5}E*u!J=mX literal 0 HcmV?d00001 diff --git a/images/favicon/favicon-32x32.png b/images/favicon/favicon-32x32.png new file mode 100644 index 0000000000000000000000000000000000000000..9f304b9bc24c5889c0eec84ca80e78c925eea78d GIT binary patch literal 1696 zcmZ`(X;f236dpij(*p{MTD3t7s7Ug%k>n+cU=UD26Tqb|5W^yhf)EAN;!9XGDEn?8 z38Do;6cLm~S&9fKTN0{xtXdbWYY`Wu2dL>h&gqZ-=s7cUXYPF8z2CiWk#6zvm}R!m z3;;08%ahB8mVi$aBe-%eq;xIlq0MG&eY$A&qc^m)?k8auI=MDi#MLg|hDymb!fvCl-J{emlCzi*XhV0DXSx&-kQPIDVzsONGb``M!S*9 zxRvXCC!cw@5FLP_lu#{upqNyNQEN_98sTj=qbr};RWPL=LkE;jR}vUgV3G=IQxH`N z9Nk6Ybt$dktaDoqqa%-TrvU9MB3%;GTQX5y$=cuX!tp99F@Kc`QAu!N19+Lx&(g_} zO1$c+>J%JJ3DE12N*qH{OPF^Gpjy^|oG~CHm5b^1Y4oN{Mtcsbg>*TsCDRe}r>Z5C zYo{R|>c?YNikUryl!i2VTQ;L3ANOnJY^{7PhOxCuM16vC^%SlCEWJ4c0wBeqTFM@P zED2Ln3|r^i2{S6`DvYBkCaDu4ouI&+R1#`EtS*buRRHTHsS{AG63T-EZ)|lU2Ue$+ zkX6Y@bu!dItVwddl}l?%hjf;v81I8dPX8r~+He*og}E4=`3RIt~4XH{bUr8cgJ>}e%t=H=v z9C(@V&8rgeeSAT{$nYQ9;lmLhUdFr+vm_dxeDXPP$N0U%J&q~&$G0Vpn{K`|(U&hU z^O)&+q~h79meYbY3wga8tg4#!WZoWqSQ<{NTe2&+W9(Urj5|`_ndLcqkzdmFcd6S% zER#Md->ABGuhRqZ&ToU~?G1v)nmvlY{xG06v4fbyI;A-Qvdi?V= zjr80R4Q&}d4J^>bkKo2w!ma=C_^ z>6%9gb3f{}?!15PzJB>C+XHzS=aXtRD>t6u`bJZQWm%WrpX7gD_^PPzJuvFgv{(2Oi2nZHk+poF;$0N zDf#X0vC`D`>&8dbAr|3#pDHDm9(L;DybaIyv=*AmCf3&6c5n1Qf9Ul?i*RAv*Tw9Z zKetj$4-GFlJ_Bri%#MwlnCa%g4{+Ii`=p7%aig*6N1{SoRxuOJjgxJy?rRbR&rUV_ zzCvu$CR=%pE?=#f%?~INbBFboUSqr#EW6A{AzgDkE#tEdanGETeB;AOX5`Y==d$*5 zR&xf8D`Ugl_Uh(e=G(?C8f>@b+tWIEK1=CNyM1qb`)+|cCM56vGU?JoL9Z;cCOi&& z`C&Dwg}~XDwUc3f#`?$7!3*_6^OSZaw5#e}>e5FuRt`T(y8g7d~YUu zd(Pupdc|m>`Q|clsP)^BE&9o%@exwP$o_e;-p^7EXAK<``bL}EJn1zE7k#)f;`(9U z&v@-;b25iSV-Le6E+t3;{Wjl zcn05y5K)XEDj3AX#1O*{9f%eRB7=z$QK7P7&O!*1XW{W<#(Q{!6;N|Yaz3dh!`3Gl~_*4J@ literal 0 HcmV?d00001 diff --git a/images/favicon/favicon.ico b/images/favicon/favicon.ico new file mode 100644 index 0000000000000000000000000000000000000000..67cc1e5d4005ca0a69506a61e2a54baaa83584b7 GIT binary patch literal 15086 zcmeHOeQ;FO6@Mufs2_ulGEzq+?SLP|?DuB(?V?~m{Ag_*tr@CT1+@-nZLQ$v(6IR+ z$>xhBB!qnJCR8D8LPA&!2?P=e5WdOonj)oDnATcUG=e}x$@X`4^EUTA-e%uE_`}Yy zGcV`8d(S=R+;i_e_ndQYI4*%3!|8M!U?SHrmE%%4j!R4&{=S;yK0w*kfK)&CGLFjz z!fn7o6K*yhDi8gpgu$i1mo#um1D7=L|E2+lCuwYf*LdCA{^{2U&kCRB3N`)k?BIVO z&=6qh;rqv_p{2AtR{kG8K^4pu0wrBCOT6E<^%heaAL-gtbwm-5s z7yCW4QTqV#tlr1U&$p@JletD)Ak_u>@R}N0O50>MYkopJtM*tU`gi;JE~V{Ryv5DB zEU7Ns0ox)L=VHHSd-Ocs7-iYmIhcNdCR7F6=pKXen)z(X7`J&*i%;jQ(wX zO53w|SB`-aId)8FuLkCBY?Ar337LiRA?6d$~`|q5nh99*l zZJRQVc$W2um3V)-)@Q#} zv9L0Tjt1=j)>TCRE}tz}+c&Zwi*&`v5J&ld+h^Yfx+Qf!{>c@-yM81ihN2=z*Ua(R z&H5R+Uc;-!UFKEg+foi;eVt={mN?{!^qJaFziEtW_OpHG`xOZ$gX9Qu-^=f`X!6>O z^NKo6HDz1P`?0&z?l%IU4_0owr^^^0R9Re2_Ia1jYQT8y z$lD<9FU=1*+A+!!(pGA|mdHO83?f|>#}9tUT*qo{XwSyjpJZ*9`+zl3N-D#n+aw*Y zdcXaCDV~z=w3W#xiZ+S#AB;DK%-Ntz%<<};t=Y#b%Fe+D@aC=;>)#!)KdeMvDGv1i zX+ejP9q*v~z)WNkqyL_(G=4wRqfxylAcpkhc=ckQe*UrO9HZA@{{K6_T_S(Kc@o=V ze&sFKr8g!&nAc`-mTob(!yi3fwcEOj#fj%Vvq`%G{+CGpx`6$ecxVW?@J0RsxkR*z zHW}t%4@xWEZ1!Sr_&AC`dLrI+BJfOa)Ko2Q5wG_;KmUSIuM|@L1ncgwQ!*Eo`XVd( zr{AoU7mJtPs4YeAL!>iTfM3Ak$h}MBlCo_nr^z2xyT2pXa*rIJSY=qh&dfCu`Te$q zY`Z1x#veM{^p6yF81sv}Ok2vfnFlUJR%U+~)|>rfwKl`iq)pFg)Qa@KY^T*j@#&H+ zrZre!M<~9(7(U*x+$Z4cZ9#18tn=A^;|kn$6RWFu-pMvEZq*g%tP`)_^YwEf{yzMW zfUO)fXS@3EoEFOui6%d-@6tBQG>rc<@S7_tc3So<-(|g+{wT!_XC=9$AY%Ag(PSE} zd`|Y1iD_?Z?=9G9dUa{HdDXHV)}w0ImfUzq_jdB}GFxXLS#(xF8t#}GapV4BdtQLKZ)Rtjgs)}#1mmie)Qt|ZV6Sv>Koc1yJ zddVJ7>KHjaNz0G}EtA?Z#5XTV@sxb0HE7pK_rfT;{(|N##eXC9_6hh(w z4CD2N6i>0E?-XDKeBydK5UG-nsSb;msvcZl~%^*QKtkJuK&Pj@JhSBm3U zrF#st4r2T&An%-LG1MDxCD}=SaSX%nl+si34gJ4KzWc~HBCdy>SJGB3&YLccf#jFu zq15G|TeU9}Ep{&Ay+o~SO4_|teaG#@Q<9%jm4nV&YkWQ=KXZnJv8YlahgzKZWw%cz zo=i@d#{Z}qdf8sX9HJ%KXOII>LrZC!7fYv1B%b7#GxJte4m!_km_@YMybbobMy0Z- z!FyuC^;Zy2$r*;C9JG{Q?mFFrA^Dk{E_^hv6z?K`Cpg#XUaIW1&I{#wDBq(p{-T&5 zt4aHE)n4mdffn|`UtDB)ztiM`p&!S^4F?u|J2{AU=fj~1;qnpqMF?-`$_Zh}h2g+3 zk#wp9_HK4O%BoR=4OPUb;i&*;D0_p~4ZHxp0fp4O-t z7$9EyUD5!f0XiGZZq+>nUo(}S%Du+RnQGbB#a_)%%X?BDCH&fe-6V^ourRAtZ(?(L zF8}l&$7+hab9?0M;{x|=&`M%sdh%Tr@NW^$E-rM>rF`h(wIewNCHh1ju|YU{xX?Y* z;W1BQCiqV{W6_~{hhyetI2VujV|70Juchr4HtDA3 ztTW6mXg8G=Z!!1c4EvPChmN$5_;mr>Vkw{6KZUa=kz=y+QjT=D9HD@K8qoAyY% z`iw^1v&=c#nbEm(9L}v;8J`__1=~J~)!hO9X^dGiV)yrjI0E`jk3|pXc#kvZU_;Ty zT%eP_Mmr1kYC*l<#=Ae9IbJ9iAo%YWVrnHZJl$ns&#~w{L7*i-%0oF?bc(zohezAX zQ0MR!1*ZJHYkI!uq0ZB1EB>lS(JPiywu3Zv0r%fY`(xYvfWfoir+ z?mcsD^3T|Fq{`iv0YQJFd5!ri*Irr%eQpq9QtW4cmDcBajW-u=H2iL9kENW}?ed-0 zGorXzY=4AxK~Pa_j(Z3#bVfn4SMTRH7j7~=S>9tQso0gWoos|S-z8o6pRxogL8y-!HeG1v&)D-mtk>$oe2#FZZ6lTL0+qdG&dD zRmhen+)D$kzsa?imceF`9S!MG$+-vFqWld8jhwAaTdi3%q8t7LDKEKi@INW=2b?X3 zqqHn-mG(8kp9HO#`zg^)_vk(o#th>(Pbn`sJepI<0{rE;pp3+HDfe^JYm2WdIsN7}s)aa#Z&_gF2JJNXx2|J{fseDL)m z@do;L4tr*kz@x-#nOfd!odti$3EXq2m+loG!dLkW<)__&=`-28eM>q`|6=inecEH# z8*|7;yNB=BIM?gn0p8aFPXXdS6z<^hONCehHsQa(+bYxxFvn}4aR~~xl=@0{i-dXs zF4=7S5O}+VZvn!0T1D-v_VVd9d-?Tvj=TG;=iP%U>NLJz>$4py?6llnvC}-iYL8_l z{DecWJ9M{A(90m+d$CvE=WuY}tLQS_ff(*t`1`fM#hx9(Bm8giya(MLrgHdtzx4Dc zjTPjApZpLT>xK2le?|5Mchl}H@1J=k;pVK>6@};?uuK)&5_GK6-%z$aCAU7nKSXzA z3Ofwl!268Fp?AdF+0?#1V9`kH*zf!fLkI9qv1Rn0)vQk=+3NfF6lop%oxef + + tethys + + + + + + + + + + + diff --git a/images/favicon/site.webmanifest b/images/favicon/site.webmanifest new file mode 100644 index 0000000..dd32793 --- /dev/null +++ b/images/favicon/site.webmanifest @@ -0,0 +1,19 @@ +{ + "name": "", + "short_name": "", + "icons": [ + { + "src": "/images/favicons/android-chrome-192x192.png", + "sizes": "192x192", + "type": "image/png" + }, + { + "src": "/images/favicons/android-chrome-512x512.png", + "sizes": "512x512", + "type": "image/png" + } + ], + "theme_color": "#646b63", + "background_color": "#646b63", + "display": "standalone" +} diff --git a/index.html b/index.html index dd940fe..aa20b2a 100644 --- a/index.html +++ b/index.html @@ -3,9 +3,12 @@ + + - 3D Viewer - + GeotiefExplore + @@ -14,26 +17,36 @@ + + + + + + - + + + + + + + - -
- - -
- + + diff --git a/package-lock.json b/package-lock.json index f36769b..261f5a4 100644 --- a/package-lock.json +++ b/package-lock.json @@ -6,25 +6,25 @@ "": { "dependencies": { "proj4": "^2.6.3", - "three": "^0.122.0" + "three": "^0.123.0" }, "devDependencies": { - "@babel/core": "^7.11.1", - "@babel/plugin-proposal-class-properties": "^7.10.4", + "@babel/core": "^7.12.9", + "@babel/plugin-proposal-class-properties": "^7.12.1", "@babel/plugin-transform-runtime": "^7.12.1", - "@babel/preset-env": "^7.11.0", - "babel-loader": "^8.1.0", - "concurrently": "^5.2.0", + "@babel/preset-env": "^7.12.7", + "babel-loader": "^8.2.1", + "concurrently": "^5.3.0", "css-loader": "^5.0.1", "dotenv": "^8.2.0", - "file-loader": "^6.0.0", - "img-loader": "^3.0.1", + "file-loader": "^6.2.0", + "img-loader": "^3.0.2", "less-loader": "^7.1.0", "mini-css-extract-plugin": "^1.3.1", "style-loader": "^2.0.0", "terser-webpack-plugin": "^5.0.3", - "url-loader": "^4.1.0", - "webpack": "^5.4.0", + "url-loader": "^4.1.1", + "webpack": "^5.7.0", "webpack-cli": "^4.2.0", "webpack-merge": "^5.4.0" } @@ -39,25 +39,25 @@ } }, "node_modules/@babel/compat-data": { - "version": "7.12.5", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.12.5.tgz", - "integrity": "sha512-DTsS7cxrsH3by8nqQSpFSyjSfSYl57D6Cf4q8dW3LK83tBKBDCkfcay1nYkXq1nIHXnpX8WMMb/O25HOy3h1zg==", + "version": "7.12.7", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.12.7.tgz", + "integrity": "sha512-YaxPMGs/XIWtYqrdEOZOCPsVWfEoriXopnsz3/i7apYPXQ3698UFhS6dVT1KN5qOsWmVgw/FOrmQgpRaZayGsw==", "dev": true }, "node_modules/@babel/core": { - "version": "7.12.3", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.12.3.tgz", - "integrity": "sha512-0qXcZYKZp3/6N2jKYVxZv0aNCsxTSVCiK72DTiTYZAu7sjg73W0/aynWjMbiGd87EQL4WyA8reiJVh92AVla9g==", + "version": "7.12.9", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.12.9.tgz", + "integrity": "sha512-gTXYh3M5wb7FRXQy+FErKFAv90BnlOuNn1QkCK2lREoPAjrQCO49+HVSrFoe5uakFAF5eenS75KbO2vQiLrTMQ==", "dev": true, "dependencies": { "@babel/code-frame": "^7.10.4", - "@babel/generator": "^7.12.1", + "@babel/generator": "^7.12.5", "@babel/helper-module-transforms": "^7.12.1", - "@babel/helpers": "^7.12.1", - "@babel/parser": "^7.12.3", - "@babel/template": "^7.10.4", - "@babel/traverse": "^7.12.1", - "@babel/types": "^7.12.1", + "@babel/helpers": "^7.12.5", + "@babel/parser": "^7.12.7", + "@babel/template": "^7.12.7", + "@babel/traverse": "^7.12.9", + "@babel/types": "^7.12.7", "convert-source-map": "^1.7.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.1", @@ -355,9 +355,9 @@ } }, "node_modules/@babel/parser": { - "version": "7.12.5", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.12.5.tgz", - "integrity": "sha512-FVM6RZQ0mn2KCf1VUED7KepYeUWoVShczewOCfm3nzoBybaih51h+sYVVGthW9M6lPByEPTQf+xm27PBdlpwmQ==", + "version": "7.12.7", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.12.7.tgz", + "integrity": "sha512-oWR02Ubp4xTLCAqPRiNIuMVgNO5Aif/xpXtabhzW2HWUD47XJsAB4Zd/Rg30+XeQA3juXigV7hlquOTmwqLiwg==", "dev": true, "bin": { "parser": "bin/babel-parser.js" @@ -459,9 +459,9 @@ } }, "node_modules/@babel/plugin-proposal-numeric-separator": { - "version": "7.12.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.12.5.tgz", - "integrity": "sha512-UiAnkKuOrCyjZ3sYNHlRlfuZJbBHknMQ9VMwVeX97Ofwx7RpD6gS2HfqTCh8KNUQgcOm8IKt103oR4KIjh7Q8g==", + "version": "7.12.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.12.7.tgz", + "integrity": "sha512-8c+uy0qmnRTeukiGsjLGy6uVs/TFjJchGXUeBqlG4VWYOdJWkhhVPdQ3uHwbmalfJwv2JsV0qffXP4asRfL2SQ==", "dev": true, "dependencies": { "@babel/helper-plugin-utils": "^7.10.4", @@ -499,9 +499,9 @@ } }, "node_modules/@babel/plugin-proposal-optional-chaining": { - "version": "7.12.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.12.1.tgz", - "integrity": "sha512-c2uRpY6WzaVDzynVY9liyykS+kVU+WRZPMPYpkelXH8KBt1oXoI89kPbZKKG/jDT5UK92FTW2fZkZaJhdiBabw==", + "version": "7.12.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.12.7.tgz", + "integrity": "sha512-4ovylXZ0PWmwoOvhU2vhnzVNnm88/Sm9nx7V8BPgMvAzn5zDou3/Awy0EjglyubVHasJj+XCEkr/r1X3P5elCA==", "dev": true, "dependencies": { "@babel/helper-plugin-utils": "^7.10.4", @@ -1049,13 +1049,12 @@ } }, "node_modules/@babel/plugin-transform-sticky-regex": { - "version": "7.12.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.12.1.tgz", - "integrity": "sha512-CiUgKQ3AGVk7kveIaPEET1jNDhZZEl1RPMWdTBE1799bdz++SwqDHStmxfCtDfBhQgCl38YRiSnrMuUMZIWSUQ==", + "version": "7.12.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.12.7.tgz", + "integrity": "sha512-VEiqZL5N/QvDbdjfYQBhruN0HYjSPjC4XkeqW4ny/jNtH9gcbgaqBIXYEZCNnESMAGs0/K/R7oFGMhOyu/eIxg==", "dev": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4", - "@babel/helper-regex": "^7.10.4" + "@babel/helper-plugin-utils": "^7.10.4" }, "peerDependencies": { "@babel/core": "^7.0.0-0" @@ -1111,14 +1110,14 @@ } }, "node_modules/@babel/preset-env": { - "version": "7.12.1", - "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.12.1.tgz", - "integrity": "sha512-H8kxXmtPaAGT7TyBvSSkoSTUK6RHh61So05SyEbpmr0MCZrsNYn7mGMzzeYoOUCdHzww61k8XBft2TaES+xPLg==", + "version": "7.12.7", + "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.12.7.tgz", + "integrity": "sha512-OnNdfAr1FUQg7ksb7bmbKoby4qFOHw6DKWWUNB9KqnnCldxhxJlP+21dpyaWFmf2h0rTbOkXJtAGevY3XW1eew==", "dev": true, "dependencies": { - "@babel/compat-data": "^7.12.1", - "@babel/helper-compilation-targets": "^7.12.1", - "@babel/helper-module-imports": "^7.12.1", + "@babel/compat-data": "^7.12.7", + "@babel/helper-compilation-targets": "^7.12.5", + "@babel/helper-module-imports": "^7.12.5", "@babel/helper-plugin-utils": "^7.10.4", "@babel/helper-validator-option": "^7.12.1", "@babel/plugin-proposal-async-generator-functions": "^7.12.1", @@ -1128,10 +1127,10 @@ "@babel/plugin-proposal-json-strings": "^7.12.1", "@babel/plugin-proposal-logical-assignment-operators": "^7.12.1", "@babel/plugin-proposal-nullish-coalescing-operator": "^7.12.1", - "@babel/plugin-proposal-numeric-separator": "^7.12.1", + "@babel/plugin-proposal-numeric-separator": "^7.12.7", "@babel/plugin-proposal-object-rest-spread": "^7.12.1", "@babel/plugin-proposal-optional-catch-binding": "^7.12.1", - "@babel/plugin-proposal-optional-chaining": "^7.12.1", + "@babel/plugin-proposal-optional-chaining": "^7.12.7", "@babel/plugin-proposal-private-methods": "^7.12.1", "@babel/plugin-proposal-unicode-property-regex": "^7.12.1", "@babel/plugin-syntax-async-generators": "^7.8.0", @@ -1173,14 +1172,14 @@ "@babel/plugin-transform-reserved-words": "^7.12.1", "@babel/plugin-transform-shorthand-properties": "^7.12.1", "@babel/plugin-transform-spread": "^7.12.1", - "@babel/plugin-transform-sticky-regex": "^7.12.1", + "@babel/plugin-transform-sticky-regex": "^7.12.7", "@babel/plugin-transform-template-literals": "^7.12.1", "@babel/plugin-transform-typeof-symbol": "^7.12.1", "@babel/plugin-transform-unicode-escapes": "^7.12.1", "@babel/plugin-transform-unicode-regex": "^7.12.1", "@babel/preset-modules": "^0.1.3", - "@babel/types": "^7.12.1", - "core-js-compat": "^3.6.2", + "@babel/types": "^7.12.7", + "core-js-compat": "^3.7.0", "semver": "^5.5.0" }, "peerDependencies": { @@ -1213,37 +1212,37 @@ } }, "node_modules/@babel/template": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.10.4.tgz", - "integrity": "sha512-ZCjD27cGJFUB6nmCB1Enki3r+L5kJveX9pq1SvAUKoICy6CZ9yD8xO086YXdYhvNjBdnekm4ZnaP5yC8Cs/1tA==", + "version": "7.12.7", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.12.7.tgz", + "integrity": "sha512-GkDzmHS6GV7ZeXfJZ0tLRBhZcMcY0/Lnb+eEbXDBfCAcZCjrZKe6p3J4we/D24O9Y8enxWAg1cWwof59yLh2ow==", "dev": true, "dependencies": { "@babel/code-frame": "^7.10.4", - "@babel/parser": "^7.10.4", - "@babel/types": "^7.10.4" + "@babel/parser": "^7.12.7", + "@babel/types": "^7.12.7" } }, "node_modules/@babel/traverse": { - "version": "7.12.5", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.12.5.tgz", - "integrity": "sha512-xa15FbQnias7z9a62LwYAA5SZZPkHIXpd42C6uW68o8uTuua96FHZy1y61Va5P/i83FAAcMpW8+A/QayntzuqA==", + "version": "7.12.9", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.12.9.tgz", + "integrity": "sha512-iX9ajqnLdoU1s1nHt36JDI9KG4k+vmI8WgjK5d+aDTwQbL2fUnzedNedssA645Ede3PM2ma1n8Q4h2ohwXgMXw==", "dev": true, "dependencies": { "@babel/code-frame": "^7.10.4", "@babel/generator": "^7.12.5", "@babel/helper-function-name": "^7.10.4", "@babel/helper-split-export-declaration": "^7.11.0", - "@babel/parser": "^7.12.5", - "@babel/types": "^7.12.5", + "@babel/parser": "^7.12.7", + "@babel/types": "^7.12.7", "debug": "^4.1.0", "globals": "^11.1.0", "lodash": "^4.17.19" } }, "node_modules/@babel/types": { - "version": "7.12.6", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.12.6.tgz", - "integrity": "sha512-hwyjw6GvjBLiyy3W0YQf0Z5Zf4NpYejUnKFcfcUhZCSffoBBp30w6wP2Wn6pk31jMYZvcOrB/1b7cGXvEoKogA==", + "version": "7.12.7", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.12.7.tgz", + "integrity": "sha512-MNyI92qZq6jrQkXvtIiykvl4WtoRrVV9MPn+ZfsoEENjiWcBQ3ZSHrkxnJWgWtLX3XXqX5hrSQ+X69wkmesXuQ==", "dev": true, "dependencies": { "@babel/helper-validator-identifier": "^7.10.4", @@ -4415,9 +4414,9 @@ } }, "node_modules/three": { - "version": "0.122.0", - "resolved": "https://registry.npmjs.org/three/-/three-0.122.0.tgz", - "integrity": "sha512-bgYMo0WdaQhf7DhLE8OSNN/rVFO5J4K1A2VeeKqoV4MjjuHjfCP6xLpg8Xedhns7NlEnN3sZ6VJROq19Qyl6Sg==" + "version": "0.123.0", + "resolved": "https://registry.npmjs.org/three/-/three-0.123.0.tgz", + "integrity": "sha512-KNnx/IbilvoHRkxOtL0ouozoDoElyuvAXhFB21RK7F5IPWSmqyFelICK6x3hJerLNSlAdHxR0hkuvMMhH9pqXg==" }, "node_modules/to-fast-properties": { "version": "2.0.0", @@ -4615,9 +4614,9 @@ } }, "node_modules/webpack": { - "version": "5.4.0", - "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.4.0.tgz", - "integrity": "sha512-udpYTyqz8toTTdaOsL2QKPLeZLt2IEm9qY7yTXuFEQhKu5bk0yQD9BtAdVQksmz4jFbbWOiWmm3NHarO0zr/ng==", + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.7.0.tgz", + "integrity": "sha512-U0AshArzQX5X+L2eViVEjrE7nNLUs80BQYcPUyRnaUMT2EyZiIbXAYWL7GLx6qRu0ykxAwXytRoC1+jqWQZExw==", "dev": true, "dependencies": { "@types/eslint-scope": "^3.7.0", @@ -4979,25 +4978,25 @@ } }, "@babel/compat-data": { - "version": "7.12.5", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.12.5.tgz", - "integrity": "sha512-DTsS7cxrsH3by8nqQSpFSyjSfSYl57D6Cf4q8dW3LK83tBKBDCkfcay1nYkXq1nIHXnpX8WMMb/O25HOy3h1zg==", + "version": "7.12.7", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.12.7.tgz", + "integrity": "sha512-YaxPMGs/XIWtYqrdEOZOCPsVWfEoriXopnsz3/i7apYPXQ3698UFhS6dVT1KN5qOsWmVgw/FOrmQgpRaZayGsw==", "dev": true }, "@babel/core": { - "version": "7.12.3", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.12.3.tgz", - "integrity": "sha512-0qXcZYKZp3/6N2jKYVxZv0aNCsxTSVCiK72DTiTYZAu7sjg73W0/aynWjMbiGd87EQL4WyA8reiJVh92AVla9g==", + "version": "7.12.9", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.12.9.tgz", + "integrity": "sha512-gTXYh3M5wb7FRXQy+FErKFAv90BnlOuNn1QkCK2lREoPAjrQCO49+HVSrFoe5uakFAF5eenS75KbO2vQiLrTMQ==", "dev": true, "requires": { "@babel/code-frame": "^7.10.4", - "@babel/generator": "^7.12.1", + "@babel/generator": "^7.12.5", "@babel/helper-module-transforms": "^7.12.1", - "@babel/helpers": "^7.12.1", - "@babel/parser": "^7.12.3", - "@babel/template": "^7.10.4", - "@babel/traverse": "^7.12.1", - "@babel/types": "^7.12.1", + "@babel/helpers": "^7.12.5", + "@babel/parser": "^7.12.7", + "@babel/template": "^7.12.7", + "@babel/traverse": "^7.12.9", + "@babel/types": "^7.12.7", "convert-source-map": "^1.7.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.1", @@ -5279,9 +5278,9 @@ } }, "@babel/parser": { - "version": "7.12.5", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.12.5.tgz", - "integrity": "sha512-FVM6RZQ0mn2KCf1VUED7KepYeUWoVShczewOCfm3nzoBybaih51h+sYVVGthW9M6lPByEPTQf+xm27PBdlpwmQ==", + "version": "7.12.7", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.12.7.tgz", + "integrity": "sha512-oWR02Ubp4xTLCAqPRiNIuMVgNO5Aif/xpXtabhzW2HWUD47XJsAB4Zd/Rg30+XeQA3juXigV7hlquOTmwqLiwg==", "dev": true }, "@babel/plugin-proposal-async-generator-functions": { @@ -5356,9 +5355,9 @@ } }, "@babel/plugin-proposal-numeric-separator": { - "version": "7.12.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.12.5.tgz", - "integrity": "sha512-UiAnkKuOrCyjZ3sYNHlRlfuZJbBHknMQ9VMwVeX97Ofwx7RpD6gS2HfqTCh8KNUQgcOm8IKt103oR4KIjh7Q8g==", + "version": "7.12.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.12.7.tgz", + "integrity": "sha512-8c+uy0qmnRTeukiGsjLGy6uVs/TFjJchGXUeBqlG4VWYOdJWkhhVPdQ3uHwbmalfJwv2JsV0qffXP4asRfL2SQ==", "dev": true, "requires": { "@babel/helper-plugin-utils": "^7.10.4", @@ -5387,9 +5386,9 @@ } }, "@babel/plugin-proposal-optional-chaining": { - "version": "7.12.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.12.1.tgz", - "integrity": "sha512-c2uRpY6WzaVDzynVY9liyykS+kVU+WRZPMPYpkelXH8KBt1oXoI89kPbZKKG/jDT5UK92FTW2fZkZaJhdiBabw==", + "version": "7.12.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.12.7.tgz", + "integrity": "sha512-4ovylXZ0PWmwoOvhU2vhnzVNnm88/Sm9nx7V8BPgMvAzn5zDou3/Awy0EjglyubVHasJj+XCEkr/r1X3P5elCA==", "dev": true, "requires": { "@babel/helper-plugin-utils": "^7.10.4", @@ -5805,13 +5804,12 @@ } }, "@babel/plugin-transform-sticky-regex": { - "version": "7.12.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.12.1.tgz", - "integrity": "sha512-CiUgKQ3AGVk7kveIaPEET1jNDhZZEl1RPMWdTBE1799bdz++SwqDHStmxfCtDfBhQgCl38YRiSnrMuUMZIWSUQ==", + "version": "7.12.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.12.7.tgz", + "integrity": "sha512-VEiqZL5N/QvDbdjfYQBhruN0HYjSPjC4XkeqW4ny/jNtH9gcbgaqBIXYEZCNnESMAGs0/K/R7oFGMhOyu/eIxg==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.10.4", - "@babel/helper-regex": "^7.10.4" + "@babel/helper-plugin-utils": "^7.10.4" } }, "@babel/plugin-transform-template-literals": { @@ -5852,14 +5850,14 @@ } }, "@babel/preset-env": { - "version": "7.12.1", - "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.12.1.tgz", - "integrity": "sha512-H8kxXmtPaAGT7TyBvSSkoSTUK6RHh61So05SyEbpmr0MCZrsNYn7mGMzzeYoOUCdHzww61k8XBft2TaES+xPLg==", + "version": "7.12.7", + "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.12.7.tgz", + "integrity": "sha512-OnNdfAr1FUQg7ksb7bmbKoby4qFOHw6DKWWUNB9KqnnCldxhxJlP+21dpyaWFmf2h0rTbOkXJtAGevY3XW1eew==", "dev": true, "requires": { - "@babel/compat-data": "^7.12.1", - "@babel/helper-compilation-targets": "^7.12.1", - "@babel/helper-module-imports": "^7.12.1", + "@babel/compat-data": "^7.12.7", + "@babel/helper-compilation-targets": "^7.12.5", + "@babel/helper-module-imports": "^7.12.5", "@babel/helper-plugin-utils": "^7.10.4", "@babel/helper-validator-option": "^7.12.1", "@babel/plugin-proposal-async-generator-functions": "^7.12.1", @@ -5869,10 +5867,10 @@ "@babel/plugin-proposal-json-strings": "^7.12.1", "@babel/plugin-proposal-logical-assignment-operators": "^7.12.1", "@babel/plugin-proposal-nullish-coalescing-operator": "^7.12.1", - "@babel/plugin-proposal-numeric-separator": "^7.12.1", + "@babel/plugin-proposal-numeric-separator": "^7.12.7", "@babel/plugin-proposal-object-rest-spread": "^7.12.1", "@babel/plugin-proposal-optional-catch-binding": "^7.12.1", - "@babel/plugin-proposal-optional-chaining": "^7.12.1", + "@babel/plugin-proposal-optional-chaining": "^7.12.7", "@babel/plugin-proposal-private-methods": "^7.12.1", "@babel/plugin-proposal-unicode-property-regex": "^7.12.1", "@babel/plugin-syntax-async-generators": "^7.8.0", @@ -5914,14 +5912,14 @@ "@babel/plugin-transform-reserved-words": "^7.12.1", "@babel/plugin-transform-shorthand-properties": "^7.12.1", "@babel/plugin-transform-spread": "^7.12.1", - "@babel/plugin-transform-sticky-regex": "^7.12.1", + "@babel/plugin-transform-sticky-regex": "^7.12.7", "@babel/plugin-transform-template-literals": "^7.12.1", "@babel/plugin-transform-typeof-symbol": "^7.12.1", "@babel/plugin-transform-unicode-escapes": "^7.12.1", "@babel/plugin-transform-unicode-regex": "^7.12.1", "@babel/preset-modules": "^0.1.3", - "@babel/types": "^7.12.1", - "core-js-compat": "^3.6.2", + "@babel/types": "^7.12.7", + "core-js-compat": "^3.7.0", "semver": "^5.5.0" } }, @@ -5948,37 +5946,37 @@ } }, "@babel/template": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.10.4.tgz", - "integrity": "sha512-ZCjD27cGJFUB6nmCB1Enki3r+L5kJveX9pq1SvAUKoICy6CZ9yD8xO086YXdYhvNjBdnekm4ZnaP5yC8Cs/1tA==", + "version": "7.12.7", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.12.7.tgz", + "integrity": "sha512-GkDzmHS6GV7ZeXfJZ0tLRBhZcMcY0/Lnb+eEbXDBfCAcZCjrZKe6p3J4we/D24O9Y8enxWAg1cWwof59yLh2ow==", "dev": true, "requires": { "@babel/code-frame": "^7.10.4", - "@babel/parser": "^7.10.4", - "@babel/types": "^7.10.4" + "@babel/parser": "^7.12.7", + "@babel/types": "^7.12.7" } }, "@babel/traverse": { - "version": "7.12.5", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.12.5.tgz", - "integrity": "sha512-xa15FbQnias7z9a62LwYAA5SZZPkHIXpd42C6uW68o8uTuua96FHZy1y61Va5P/i83FAAcMpW8+A/QayntzuqA==", + "version": "7.12.9", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.12.9.tgz", + "integrity": "sha512-iX9ajqnLdoU1s1nHt36JDI9KG4k+vmI8WgjK5d+aDTwQbL2fUnzedNedssA645Ede3PM2ma1n8Q4h2ohwXgMXw==", "dev": true, "requires": { "@babel/code-frame": "^7.10.4", "@babel/generator": "^7.12.5", "@babel/helper-function-name": "^7.10.4", "@babel/helper-split-export-declaration": "^7.11.0", - "@babel/parser": "^7.12.5", - "@babel/types": "^7.12.5", + "@babel/parser": "^7.12.7", + "@babel/types": "^7.12.7", "debug": "^4.1.0", "globals": "^11.1.0", "lodash": "^4.17.19" } }, "@babel/types": { - "version": "7.12.6", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.12.6.tgz", - "integrity": "sha512-hwyjw6GvjBLiyy3W0YQf0Z5Zf4NpYejUnKFcfcUhZCSffoBBp30w6wP2Wn6pk31jMYZvcOrB/1b7cGXvEoKogA==", + "version": "7.12.7", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.12.7.tgz", + "integrity": "sha512-MNyI92qZq6jrQkXvtIiykvl4WtoRrVV9MPn+ZfsoEENjiWcBQ3ZSHrkxnJWgWtLX3XXqX5hrSQ+X69wkmesXuQ==", "dev": true, "requires": { "@babel/helper-validator-identifier": "^7.10.4", @@ -8411,9 +8409,9 @@ } }, "three": { - "version": "0.122.0", - "resolved": "https://registry.npmjs.org/three/-/three-0.122.0.tgz", - "integrity": "sha512-bgYMo0WdaQhf7DhLE8OSNN/rVFO5J4K1A2VeeKqoV4MjjuHjfCP6xLpg8Xedhns7NlEnN3sZ6VJROq19Qyl6Sg==" + "version": "0.123.0", + "resolved": "https://registry.npmjs.org/three/-/three-0.123.0.tgz", + "integrity": "sha512-KNnx/IbilvoHRkxOtL0ouozoDoElyuvAXhFB21RK7F5IPWSmqyFelICK6x3hJerLNSlAdHxR0hkuvMMhH9pqXg==" }, "to-fast-properties": { "version": "2.0.0", @@ -8560,9 +8558,9 @@ } }, "webpack": { - "version": "5.4.0", - "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.4.0.tgz", - "integrity": "sha512-udpYTyqz8toTTdaOsL2QKPLeZLt2IEm9qY7yTXuFEQhKu5bk0yQD9BtAdVQksmz4jFbbWOiWmm3NHarO0zr/ng==", + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.7.0.tgz", + "integrity": "sha512-U0AshArzQX5X+L2eViVEjrE7nNLUs80BQYcPUyRnaUMT2EyZiIbXAYWL7GLx6qRu0ykxAwXytRoC1+jqWQZExw==", "dev": true, "requires": { "@types/eslint-scope": "^3.7.0", diff --git a/package.json b/package.json index 851a50e..1372329 100644 --- a/package.json +++ b/package.json @@ -1,25 +1,25 @@ { "dependencies": { "proj4": "^2.6.3", - "three": "^0.122.0" + "three": "^0.123.0" }, "devDependencies": { - "@babel/core": "^7.11.1", - "@babel/plugin-proposal-class-properties": "^7.10.4", + "@babel/core": "^7.12.9", + "@babel/plugin-proposal-class-properties": "^7.12.1", "@babel/plugin-transform-runtime": "^7.12.1", - "@babel/preset-env": "^7.11.0", - "babel-loader": "^8.1.0", - "concurrently": "^5.2.0", + "@babel/preset-env": "^7.12.7", + "babel-loader": "^8.2.1", + "concurrently": "^5.3.0", "css-loader": "^5.0.1", "dotenv": "^8.2.0", - "file-loader": "^6.0.0", - "img-loader": "^3.0.1", + "file-loader": "^6.2.0", + "img-loader": "^3.0.2", "less-loader": "^7.1.0", "mini-css-extract-plugin": "^1.3.1", "style-loader": "^2.0.0", "terser-webpack-plugin": "^5.0.3", - "url-loader": "^4.1.0", - "webpack": "^5.4.0", + "url-loader": "^4.1.1", + "webpack": "^5.7.0", "webpack-cli": "^4.2.0", "webpack-merge": "^5.4.0" }, diff --git a/src/js/controls/NorthArrow.js b/src/js/controls/NorthArrow.js index b864666..5533e86 100644 --- a/src/js/controls/NorthArrow.js +++ b/src/js/controls/NorthArrow.js @@ -98,7 +98,7 @@ export class NortArrow extends Control { let zDirection = zTo.clone().sub(from); this.objectGroup.add(new ArrowHelper(zDirection, from, 6, 0x00bfff, headLength, headWidth)); //8 is the length, Blue = z; 20 and 10 are head length and width - let opt = { r: 200, c: 0x38eeff, o: 0.8 }; + // let opt = { r: 200, c: 0x38eeff, o: 0.8 }; // this._queryMarker = new Mesh(new SphereGeometry(opt.r), // new MeshLambertMaterial({ color: opt.c, opacity: opt.o, transparent: false })); // this._queryMarker.visible = true; diff --git a/src/js/main.js b/src/js/main.js index 7c87c7e..34690e6 100644 --- a/src/js/main.js +++ b/src/js/main.js @@ -39,10 +39,10 @@ class Application { createScene() { - let opt = { r: 200, c: 0x38eeff, o: 0.8 }; + let opt = { r: 200, c: 0x38eeff, o: 0.8 }; this.queryMarker = new Mesh(new SphereGeometry(opt.r), new MeshLambertMaterial({ color: opt.c, opacity: opt.o, transparent: false })); - + this.queryMarker.visible = true; this.queryMarker.position.set(4282010, 2302070, -13616.3); /* Renderer */ @@ -75,11 +75,11 @@ class Application { var aspect = this.width / this.height; var near = 0.1; //This is the distance at which the camera will start rendering scene objects var far = 2000; //Anything beyond this distance will not be rendered - this.camera = new PerspectiveCamera(angle, aspect, near, far); + this.camera = new PerspectiveCamera(angle, aspect, near, far); // this.camera.position.set(0, -0.1, 150); // this.camera.lookAt(new Vector3(0, 0, 0)); - this.camera = new PerspectiveCamera(30, this.width / this.height, 100, 100000); + this.camera = new PerspectiveCamera(30, this.width / this.height, 100, 100000); const dirLight = new DirectionalLight(0xffffff, 1); dirLight.position.set(585000 + 10000, 6135000 + 10000, -500 + 5000); @@ -94,15 +94,16 @@ class Application { const camOffset = camDirection.multiplyScalar(size * 2); this.camera.position.copy(center); this.camera.position.add(camOffset); + // this.camera.position.set(0, 0, 1500); this.camera.near = size * 0.1; this.camera.far = size * 25; this.camera.updateProjectionMatrix(); // create map - this.map = new Map(size, center, this.camera, this.scene, this.renderer.domElement, this.container); + this.map = new Map(size, center, this.camera, this.scene, this.renderer.domElement, this.container); // this.map.minDistance = size*0.75; // this.map.maxDistance = size*15; - + //add map controls: let coordinates = new Coordinates({ camera: this.camera, crs: "EPSG:3034" }).addTo(this.map); // coordinates.addListener('onPoint', (vector) => {