From 70771fdd630861447604f23838c15b7ae233ff4c Mon Sep 17 00:00:00 2001 From: Sven Schneider Date: Tue, 22 Dec 2020 15:49:23 +0100 Subject: [PATCH] added new vis using ciurcular building data with different colors according to Martinas GMLids and Layer classification --- public/.gitignore | 4 + .../circularTiles/L1_yellow/b3dms/R.b3dm | Bin 0 -> 29771 bytes .../circularTiles/L1_yellow/tileset.json | 130 ++++ .../circularTiles/L2_red/b3dms/R.b3dm | Bin 0 -> 129583 bytes .../circularTiles/L2_red/tileset.json | 108 +++ .../circularTiles/L3_green/b3dms/R.b3dm | Bin 0 -> 87005 bytes .../circularTiles/L3_green/tileset.json | 110 +++ .../circularTiles/L4_brown/b3dms/R.b3dm | Bin 0 -> 152152 bytes .../circularTiles/L4_brown/tileset.json | 110 +++ .../circularTiles/target_black/b3dms/R.b3dm | Bin 0 -> 12495 bytes .../circularTiles/target_black/tileset.json | 118 ++++ public/circData.js | 653 ++++++++++++++++++ public/circularData.html | 63 ++ 13 files changed, 1296 insertions(+) create mode 100644 public/.gitignore create mode 100644 public/buildingTiles/circularTiles/L1_yellow/b3dms/R.b3dm create mode 100644 public/buildingTiles/circularTiles/L1_yellow/tileset.json create mode 100644 public/buildingTiles/circularTiles/L2_red/b3dms/R.b3dm create mode 100644 public/buildingTiles/circularTiles/L2_red/tileset.json create mode 100644 public/buildingTiles/circularTiles/L3_green/b3dms/R.b3dm create mode 100644 public/buildingTiles/circularTiles/L3_green/tileset.json create mode 100644 public/buildingTiles/circularTiles/L4_brown/b3dms/R.b3dm create mode 100644 public/buildingTiles/circularTiles/L4_brown/tileset.json create mode 100644 public/buildingTiles/circularTiles/target_black/b3dms/R.b3dm create mode 100644 public/buildingTiles/circularTiles/target_black/tileset.json create mode 100644 public/circData.js create mode 100644 public/circularData.html diff --git a/public/.gitignore b/public/.gitignore new file mode 100644 index 0000000..4d0f726 --- /dev/null +++ b/public/.gitignore @@ -0,0 +1,4 @@ +/node_modules +npm-debug.log +.DS_Store +/*.env diff --git a/public/buildingTiles/circularTiles/L1_yellow/b3dms/R.b3dm b/public/buildingTiles/circularTiles/L1_yellow/b3dms/R.b3dm new file mode 100644 index 0000000000000000000000000000000000000000..57fc2a60689e0914cc1068cfafd2d767b7c70285 GIT binary patch literal 29771 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

+%|_Z-bMH0!A0%_TF2$KTN4sO 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 U%F@lgj_gv$-Giot{`cVj0~eytWB>pF literal 0 HcmV?d00001 diff --git a/public/buildingTiles/circularTiles/L2_red/tileset.json b/public/buildingTiles/circularTiles/L2_red/tileset.json new file mode 100644 index 0000000..6f3d024 --- /dev/null +++ b/public/buildingTiles/circularTiles/L2_red/tileset.json @@ -0,0 +1,108 @@ +{ + "asset": { + "version": "0.0" + }, + "geometricError": 60.372285006912044, + "root": { + "refine": "ADD", + "boundingVolume": { + "region": [ + 0.16042278896694803, + 0.8514758183340863, + 0.16045106439644147, + 0.8514996024839743, + 233.458193, + 301.62112 + ] + }, + "content": { + "uri": "b3dms/R.b3dm", + "boundingVolume": { + "region": [ + 0.16042278896694803, + 0.8514758183340863, + 0.16045106439644147, + 0.8514996024839743, + 233.458193, + 301.62112 + ] + } + }, + "geometricError": 0.0 + }, + "properties": { + "gmlID": {}, + "StoreysBelowGround": { + "maximum": 2, + "minimum": 0 + }, + "LoD1_datenquelleBodenhoehe": { + "maximum": 2000, + "minimum": 1000 + }, + "baublockNummer": { + "maximum": 107226, + "minimum": 107205 + }, + "dachgeschossausbau": { + "maximum": 3000, + "minimum": -1000 + }, + "gebaeudekennzeichen_1": {}, + "hoeheFirst": { + "maximum": 307.5, + "minimum": 242.1 + }, + "CreationDate": {}, + "geschossflaeche": { + "maximum": 1482, + "minimum": 10 + }, + "alkisId": {}, + "gmlIdALKISLageBezeichnung_1": {}, + "StoreysAboveGround": { + "maximum": 7, + "minimum": 1 + }, + "YearOfConstruction": { + "maximum": 2017, + "minimum": 1929 + }, + "baublockseitenNummer": { + "maximum": 4, + "minimum": 1 + }, + "LoD1_datenquelleLage": { + "maximum": 1000, + "minimum": 1000 + }, + "umbauterRaum": { + "maximum": 11395, + "minimum": 28 + }, + "grundflaeche": { + "maximum": 741, + "minimum": 2 + }, + "FeatureType": {}, + "MeasuredHeight": { + "maximum": 59.7, + "minimum": 1 + }, + "statusDesGebaeudes": { + "maximum": 1, + "minimum": 1 + }, + "LocalityName": {}, + "ThoroughfareNumber": {}, + "ThoroughfareName": {}, + "Longitude": { + "maximum": 9.193168808297884, + "minimum": 9.191674771677906 + }, + "Latitude": { + "maximum": 48.78733347939904, + "minimum": 48.786123496366585 + } + } +} \ No newline at end of file diff --git a/public/buildingTiles/circularTiles/L3_green/b3dms/R.b3dm b/public/buildingTiles/circularTiles/L3_green/b3dms/R.b3dm new file mode 100644 index 0000000000000000000000000000000000000000..bb362daa9e99dc7bc83cc49ec71199a898f02e0e GIT binary patch literal 87005 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%0DDGl= zwOY?4(f5ngl?HWf?HfJksF$}9XXt5$9qak2@Vup43<6~v;`0d);EwVMPGs=Rxr~x&loptQKDqkGZ>l3qZhJC^eTX^{k zMLV`Z>wNY}jq8lEpzeSvbS-@K0FBpy#6050&z#muWwj7^4;F z3fP^p6fo44I8oC#dw@-vef6+g^iRyf8IBb*EHg`0UfH`%E8nxf#&t$nQ1|lFvd{Hs z@!cC2w2(wj%)%MYS!URdJ*v{8?mJrg>V6v68D&9T{I(yxw{AFncf}Uhb7B_GaK1Lf za7=TZQ5Ix$?vUu*;i7Ygo)bMe!?DR3dd?)zSn^yF^h6zJIF2|&&*#bWMS7-R;E6iU zu+MXbp0mjFAmyZUhkop+;|%+!5t~PzuaW2cpeObh&M*sSkCo}HT=}(P;QWvsn6}>^gYz@{n=QzhaHZvoSr3ygPX8_omlVu9PhoNK3x1 za)wzrn|ui>h2 zFYlk6VV^L=Y+=tT^K;4vq=Rp%TxXO8b)PnCBQ<$@vpe@v6MYtjaS0^ zl?cpPxkBYSqb#VaKW(-5)wUj~%dtjoQJ`qw<80rSldlzrgdlz%*y$g{Ovv7uE%nZY^!gWSj@EB+=kZ2BZ(Hx@ZL>*^X9%tBo zG}lQqXSrxj);+O2&d`%H9Ah-k>)(M{;EDa3Gt9ynFOTN=!kk#1$bt+#IotkpDebdn zZB@szC*;qjH1{?8`18D%X2nBZt(Hw~DDT?^O?B=sB3~ zQ9n{@)_W3n#qR_afY5oEQvguQO>7=o`3xCox0)kEo$t!VKQf! zg|qW_dDJhh7yRz0zmnJ7SmhmZ+9P$WSl`Y25@+aXhD|)SKs`38rnpbn<{#IVGSC4MNZ7Z z8MeC_He~sJf7+Yl)zs~qWUe#Hg1YY>ZX=bRzR7*HOjCWlV;0VEjG1AN%x|n_HG9>c zdcY@holzFl6?|TFGJPgg)F)=)4Cfa!ti$f6>g#Ds{o^~TGS?YpLEXkK4qt;2GrW6V zXs-89%)%MYFJ{>AT20gor`P)TUGvLaXOsnX8SPej`}W9`?*62u>aPEKxZXc83ukz)GQ;dcTIK#OhlRW#8XKv6F#~)|d=Q%^qL*#j#{+?<5peO1$!~V$`9>Z|* zyoYkqxmZ7TERQqv*_?wwztv@`b9c zoi107Js6il>yUl(kK~P|bx0+elLuZ{sMg;)*Z;!DtwY%4J(@c7(l`DsUtS7f=((Ic zzb8*Q=!rVc619(1OY@(7Kb|iw8!@r&xj~-ef}TwtEv9)#XUH#>wd(67WbK|jsqR=g zMXr72Y#i5Nd85elCV7qtdZLaqJU-68yb-51tUAQMx#;B0;jIyAv--NZ^5$|M36LXrlMZ04b&aht0u&-*YR5$!IM}E2M zSefgLvY>8l>{{=h59qtRu7~S6F$-tdC(N+(&%USjE%}uEN%|`?*BNC&-FNg}W!jES z-dK9CQq(7A;SBqr8Fq8v%j%X(vA&ywpOd-HC=2Q$vfB6#+_lMjxLSTr%)%LtTQjW5 zpsDJ~fa?F&_qfb;Mp;mI&G)AJRgcFvf8ae{QJ#;3&alsOhMpPZd4N1e2R%{88TL;jM)ROVbEJ#rPdz907tXMaIK%SRkY{;%Us3$s z7STqi;|!0Fv+47fDCM-Tw3ZE?)jV{MdfW6Pc|LkxT$wz_w0K21tzFlyzx7xMJM`%+ z<?Ayg;6LLC*?ZUsM_`IjIGbvoy{y3ui-b?o@{CxvahOuuW4gyQB__ z7J5fLUN@vZIYUn~Y(jdT^7OkWwVG$$A>|omL7i4N(p}-w7-`0}SzgiZn1wT}7c=a) zuuaNKOOI;LR=!W;I-@M8+y9%(cS%|3{(eebN#w*VoMF40VN(WeR7&0aO1o62nZ|WS zSy1=JdHM|W-HY6f)AMs;7S6Emnqi0DS+7hP^Me+@yphIrMp;nz%^z-G)3r0)uXL%e z*C%G-49Be*wrlNrWz^?CXvH!bX(2i|2F_5|yIoW7&Y!Y;OKwbai+0B>oZ*~h#CkDL z94nk*79&RUr$qCoi{?+gKGBmi?DIy9<`;?PB^S+0x+nHQ&amA%!(*U%P)Z|Dnm=_< z%)%LZ8nFh?G?zNl{drr^6Z;uwn1!>Ub*HKy{g~pv^6paUS-M78MfYiw=o+C4wY#g> zGitqKUH$FVqi)U)jq0S9zdlI4tKmi;XXyDDdFGJksGuk6IQxF{GBx_zEVbz*f1D8; zOP-_2Gc)L!_o-hEtUu?k^~JAooXz}ofjTkkMSs8dq!5PXJwu-T$ul|Vi8{{k_&D1X zGtOTtb-u5=I!bOfbhY>G4jw7@*+y<&pPZqm5o^jkQ=fX-KWEM%-`C~G%bZ~r&QLcj zbG7%7?2&H0mY)-|aEA3_hPAr!iT|dzseg9XG@0v+vY?LEtzKFuOSDeb>l3qZhJE6n zuz5kxQrquWKU=iYzh&cFa)GXZ-6=}}Lmk~S_R&3RFWsY-M7v`a&ae-fVe7xS>96(G zM0LxeW#S%nk@AePpzhMKweG&JXZX}sO}!!~X5kFStr=!rv^($3AMRIQt=v=QI-@M8 zD|IkZdVlp+ckew-^mz%haE5c18HQtp>x{A>qj^xG`O`)7r{3=9$r<)}&d~Eo@_dmz zM+7}l#~Jod&d_rld3GUBPtX%}oMB%wV&lp4N%Ew5UO#qhTh1^GXFrC$EWe%msr+J_ z*Ho3}lK#CuWZ{P&pNX_gdJbjOFmfb6}kHIK_Lu1ca!HM#doKO zoCEKgEW7_Ku6$K~fyx-@Q&M@o&dx4L`mZxT|UoS~-~wyRe$ zWqraqc}s_dA>|omLEYJxBc);cx4CPs&(DcjIKz4|!;U|HNp_F9TRE9A#?N&|Sx{HU zwc7hm509k9HFEPd;tbo}4C^-Tlzg-QUCL7rUiNXFQ5Mv7cCGP#SHUB_9M)LRiCH+q zzH5d(^Wipm^nKUmv(=w z|63B*8D&8oecz0mzTd`2-*4mPa|mZRXPIF*R=Cb63o@ENC7M57G=J*#iJqKcpXUrc z-yzS($+LOT6Lp+n|Ktok_mQWaJjHV^y*^=Va)y1$h|zp44I)pPlXXvQTh1^GXZ}2^ zwn3eu4w;ZAN6?(yhprJe(wtn4`e&nZ9ku3NURBp^KNG@EZSAk!<1MRBPxvW>q36Bi zX(3Pg+hn>Y>NwltjMrApyy*XS)k&E%^c3IyJ&K<7%m{j-j_WWb3@QGyh8`Avih8VXq7`UXPwSSnmqHCzghA9Aq+jk$+HT1ioaDP>JxRG z;qh^{=>3}7zBMz|*tIRi-zRa?-$U`y-$U{8HsTCD&9In>CA5Vdv($<+YlW0&lm&H{ zrbbHdhP~}BwX%tR?3jf!tQRxPzqGP8sk-XFe5irKb%t3$wYo?_f`7N2i``U zVV^L=UM*Eq%biupKYL&!h3oJbI78hRb2oT*pHG)|w{PVZIWY@o*ayw96Iu6YB_2!g zm$kQ4xXvgG>P9xT`d%*cy7%?Y%_NZ%vv7vv)(mU&TYc?Z_4WSG!doa@XOsnXt$eGz z<$m%=`xeyG>l3qZhI5t~HYBH+_DqRS{H<=aQMk@13+ih3Z{r)cev|h&J&P3eiCH+q z`PvM_G0k;GS&-4WL!xtsi_RT-PW0pq$0ld!N#_8`MxJ!;&^=Md8IB_(MsvAD^Sq1Z zdEFEHHD}nDIK%S9G5koL>w})C;|$xKGxQY4a335y>Nw+dhB|z9{UDu>KBV)ec=xqB z^(A~>%vrb5m(?#`eaip2wVlivdd?)zv*bzNouYf9jgz6Xksl zIU5zLs$Ko0t30{#Xgv!u%))hZJ@eHX$6NXC+ciZzW0&ZezMG!uha5X+=xK&cT=cH` z+k~g&Tl<%UlxLI$b&U_M_1?8IL;9v-Q@3a%%)%Mgiy1b4-8r@Sphx5f*59(-n=;oKWkKC1^jV>`^jV=N=(9p1 zCuZRc`>q-Gbc46m^hP#+_|P|Gt~1Jly6AOl-3!)d_*#C{#4B=Q7S3?onqk-nxy~pH zG8$tN%^~``g(4?*^8%-<`2d$_JL`^-U=GxR)7o=554TFIa%>Nq=KEu*MM%P3>% z?}&1So_|bi?yG<7NZ#Q2`8iR?nRVfxveLPv64vpWYQ)Y_&W|W(v0%<)ZHpE7Y2 zy1%NNJvslhe0|78IZQeh!mzxr$@63IL>*@{7oCtFYI#lG*6RzEGxVJIWOLtx+w%YR zlV~HU?rmwtf4Z{I2zx zkn)VOpe}3Ya`%Z1nZDmH*YJv*n1wT}7c*=}d?}@KryFuv&q|f+jIy9^@{ZQNn1%0n zljJ6PePR~Quuqs_macax=N`W-XAgcuXOsnXi6?&`E5}DGaO7+~Le_|HS@LXkv zRladRwiK(OoZOwMa-C5Y)V&zq#`o}ho4s*A=8t#G!Wo{Y%`luJxy~pHGFmf8v}SP8 znn9nJ(33Nq>o`MCI`>PZUOwWgK-Zh1jZnuK&Pzs&&bJbsH(hit);)2a;0(tmXPEPp zSc6f{0#D4s8G3Sto=3@ZDdj95%!xYAaBOmho+rsuUU`DSmH8`t?>_64@;e=`Gh z=y`xV%TUf5K~L0i7H3^Aw;OvwuA**KIYZAqD(Y46Lc`kjzd z&vaLdf3e#AXLFA)HYv=@+nqD?G{fHf?4(?2UCuZRc`-B;` z_{wRy;i4<@n6^)-TxXO8b#%^==p5&!bDUnEn1wSO4`x`g?jOpD^=l~aZb?_U&L|7& zYL#8-y)`&fDv?y%E&3;B;SA>jGwj(B%j6UB<&+h9^;E7i%7VHoN89*1ZQtN+-ma-6 za$*+Fa2_yaMODiJ}s`1-aj!5XE^tmVRPTuF7Lcp zS}D88rE;B77Sz#uB|dtO#Y^w8==F(NIKy+58HRHY*BNC&M(0h5&YLbeZ|XVGlQWz{ zI73gGuO*u2^}jD8`V#6m!|~1;deV7CqVti9&PRGq)NzJmlQZY2$EF#w1oHfmKG*X>(DS+I z$x8RfzSbsvKTzXr+2YAc4aZq+r}R(=!}1czGn{h1AM`{WXLx*^bqu_w{GNG23%|dw z_ITZf?k+2{rB$`3c=@q&hMs2Fsk`SZS)ISoN*|X)$}`G>y1c4x--=c*yB(YAN+Ks_ z;SB4=46DC+uJUx;Y3)`wm&SEQSy0!0x63!P++z2|#`!rh3uo9T%&=SC<|^+zcUIf? z>-`$n8D&9TiO8nj&o5{Bnp~ac7WIi)IKw_@hJAkHRb|A%Z?swMyK7u$lm&J4StyA< zd*!9iUg={Kvv7vv)(pcw$aO|pkkK3>(H!EUIYjTD=*b!OCC<>3#;ru--9_VF_e33M z*zQJ*<{pXWB^S+0x+k^+XPAYvYgOX4ZyvnpZ&v!0EZ##pPwy{nqidPk)R)3%^w+%0 z%c}eGehOh%b_~)sES%zRyZl-RL(eAU`5Sp|4SJ%EvuB9~yaBUl>&`q&%Z6sH69EBziB%P45NiZG>4k!+J5pUTqSqjV(6E-(ce1;=Q0E z=R~K!nQ~)rDkvc%B97{dsaotGs=Rxb}iaS)8E?c z&Y|yY6zz^#IK%N^hHWVqqn#?#A}(xNX@%>IvY_tI5eyVxFJg2--?OW}mcOMF2Sf04f`H(#K z2Xms1Gdw=do>g8^X1l-D>@W2d>sB|dlO!ER-Q5MwEcQ8owoey66&If&LViwMD+?rw72f5BD3o@ERB$`89G>7Q@6FoV@ zzQh@Nit8L2?=Bkex+m&5E7I;vhfI`5b5CJTYzNLT3ujMcTv6v`&C)vDKU;qnHR**T zd9TrWzAp8p)C<3>(MuL;t$tY?!hRf4S(|ZqzBc^$&c9{Dz_WC_^4j~CrfCfpuhVtN zcot;S-~CW6@!0~cddb7`sAg_yZI=b!#)s>M|4No*xiZZw>JzhYhV^2GMJ0Zx&TT$bE4%iT%ymXtP}l0W2YkCyR=B5}sV#|| zn1wTJcQdTS>dWebW#(zUzx!V1I-@M8yVT9%{q^NBzMrMpZjlqSaE5)?48ykNI-@Me z#Cx1Hj$Aa3^!h|k&ajRCj?s81^u#(7I%GTxvVl8)Q~ljD`~&Ltlpmt&_X>1R;5i!a z^{77aU1HAg{aw!5-8`=jd7`d5_CZM>(|hTjz~rDOmPa{#$k3Cs%+-h0f$fT`ADpQw zCy-8jmW{pxQ_qRzafY6p-Tiz({dCP$fAr*E;!??TCwV>=^gOZnkQx`bOCA1s6`3>4 z!WnudlV=O6&jL@>afUfL`~AUp)mgUh{J-wG8aI?Ymr~BBgE_H0&d`%H{Ej+NUNq#y z@;F0JBQ}gY#l5vBf;sV>Zq6_ZXDgoFt0oNY?C+K`PrQ3B(Yx+$de>cVcg(^W_FXe< zbn^S^t7Y%;_wG7Bq&%Z6sJp&ljd$Xu45=S|cQhYIoZ)yd!!{i_sAhQV{uvK1lDW<( z3+jqhYU8Wr-s1i6t0t1jiCH+qF=mD>u9~OL=~!N^|JaK%*BNC&-P-o6-1J??KKia> zugHm6IKwe!hV9wCLakc+8~@~qkIGzUlm&J4UCuuG?r1N4ceGxgn1wT(U(7J;Tg%n2 zYW?hQoHbT_cXW~RjIyAPz8l+3-^J~t@8Z_$6SHuJ^NSgluyBDIeg9E^|5FL#ySR&# zXOsnX^j+f;eYd%rzS~?M@0f)%oU_cZp6M^EmjVaej=sCy{p6(# zAAMK6UZ0qSGo0(puoGXrq^eKu_s^R)M0{6#k@AePppL%ZRHE-wb<_8$>h+0PIK%nc z4BP(MO7*7?pYW}oG)jD*YLW7cvY?JWyW^$L3Q6=?A$|VDES%vvzzoB=oa>CT;4#p- zO1}q4=Qw@5qmDByk27pPI;To>E_TtHLHES+I73g)ut?r5CafY5ojMmT+t-W2e_SQY|9L^bL;q2>W3EJ0t`lu_%+>&e38Z3_1U;$c# z)u;1jbk&hs?#I*AAvMY?oNcL-qlMKQsYbW0X2@!gXA*geXMDnQPSX_a)7p2dL)Vs6 zIKwQQ+2#J)XEi6O*P1s`VoTPS-hcEy--?PSygVmo=xK(X{ zy0x}elHL1}yY00w{n#-JXIL+0*sOkiv}&&3{J-YaSGdk73+k-4a9_3BjihrwUv%>} z;tbo}4BOl}LHly)VD(V^y$aVEWkFr@72kRjF1UOpM%~bJViwM@@0wxQwp?eF1sRPM ziN=wO#*rlI6FoV@HZo!~9wZt^E*eL=C)OEfn1!>9pTd-V!z%`My!)qGo1P=QN`Hq@ zyzkwBat{5bnR4(%l|aU>Vj5@m?cvJrgR2JiCI1nkGh)AwZKyc*Rt&7@e=S63lqGRt zd*$qs%7Luxcf{XCl<4m;y6NvQhUDZ7Jx#IYl5(w0ZLwL> z4C{>RFehhkO7|$Wy%htQ&;6oSqw#)`#=H2uOhd{U-=%@l{#wPr=`%lt zus`E!DF@b-3uw~C5Qd)B$@3@jtQGV`9cK%2>MQcivVq;juc}6@26_HWp5n7DB4@pw zjg_^7D+ZqZ<#&}c%);4d*{Z13Dh9%|LSS$B`(h3$Ql3#3 z)Y0GAl<04Iy6JCvhO`l9*zRW7?sSWiSFdc~W*bfAI-@M8TU>md_sf?uq>JO5x<$KV z7S6Emnqgti2&K!uvVjtw9V*uuWkKD0$!&bu@teF##io+TiCH+qachQQALKftEXZgM zk!TLlKRY0Dq9cot*{Qb(=C zjhjJ!W9;7YF*{uFrt9S_OdSS43Z^~-*g-Rt%u}*b6 zYctm@Q(H8y7oz*8Sw5lfXLxzxk-T#>e~O$lPo!v3&Hd`Uh7}dg-h4Gp%llka8~H1R zFg(7xbR9R9{!Xa4HWZ$y<1E%YO8fQgZS-DjWrZ{D`8;@X9kNjm4bcui{D%5b*Alwt zU$K*P?1?WP$@?Ri6Wf6^%);693VpTtX*<={QO%U09X7bP-$?gW-Q3d4>ytC|G{dlM zxy~pH_LpI6TS#w|J?dWEEKF}BJa*2oKFzR{shu_3lBH_uka`N&8D&A;*hg1+FBZ>~ zhE}WR7WIi)IKw_+hB9|<86H94!-4$tld-+IWY@oI3CQf zl?VH2;q`W@J3el%aGg;W)H#ty;| zIn7IYeWE94I374dPnut(XX$Sdife7rMyTTq`zL4US%*AlgD2`Z!@gw1M0qrS7UsmZ zJ?#=Ov1+qHhF+CSkpy*y+*3$k-d+G{q;TD4R8`bx2V>)d;XW%%Cvwwagb zibUhcMdL`%iJl=0`q|$x8V`k@SZ6|qjAubMtlvle zmD`U=Z!dHE=g@e6nBKeSOXEF^>eF3+hyU}3i~IVd4+vrJO#R$nFKeRjL~g?nhMsfD zb0B&433{TAvzZ;f@h={n=ictANv~0b;+Oe z++ry{uC$*s^qd{^ENCOtafWrq+4KF|`}R#-l3qZhJC^e%Q@Y`Un0I*T=>$=IIc6wg1T0RwtAadMoIUS zaOm}kSvbS-V1_AeqWxE_cgK})JTZ>zjIyAv&e7Jsj^FL{zS^saB-$ObaE4>W49kpf z;QwXTWU2L{(Q#a7lm&HrBj0pSoa^zO>(tOIa$*+FaLzKr?iyLqUvb4t(o5@y#c`cc z7SyR@B7OT;yzMQyD8D{23uicAn_+ohANMUwyx%)!Ro^(SGs=Rxvq#@_mq_*aEK}~$ z>l3qZhUY3X4CfxMGs=RD&YKdQH(fL*>-`fwIm0=GGb2wU9gcVIiHy!wQU>LubDW+N z#~)|d=Q-n^bdGb;xmfq)I%L>Cg(oufd?CmRa-xni>`R=X=XJU#*ZP$su9EZ_2QfBL z#~HQ*XQQ){lhU%&GCg6bX(_3r!$zcMCg$8<@$ST&oUF8AxjD&UW0R9?VTlQ&Gqclj zXumr#Pi9s|VmgtriCN>*JSq8_u?dCSZ@cOKWH&4^Cn>edaMI*@(ngRzEF&?;7M2^- zbWfz>#}%b^q8XXPlhX&JB|rLCJB-fC9GRRXf)?( zGeLaHQ}l`=?)AAy2)O1HYWw#XR6ne$M*<{{p5RYcOp?|hP+DIv2sZqn)oMPKjWl0S zQ1)hL2NmJ%FzTIxKNa`7$P4bc|10`Zw|0} UK362+h}CJ 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 literal 0 HcmV?d00001 diff --git a/public/buildingTiles/circularTiles/target_black/tileset.json b/public/buildingTiles/circularTiles/target_black/tileset.json new file mode 100644 index 0000000..a205056 --- /dev/null +++ b/public/buildingTiles/circularTiles/target_black/tileset.json @@ -0,0 +1,118 @@ +{ + "asset": { + "version": "0.0" + }, + "geometricError": 35.93947937894208, + "root": { + "refine": "ADD", + "boundingVolume": { + "region": [ + 0.16043612181516045, + 0.8514852982081099, + 0.1604435899169862, + 0.8514899865142226, + 237.745486, + 262.385603 + ] + }, + "content": { + "uri": "b3dms/R.b3dm", + "boundingVolume": { + "region": [ + 0.16043612181516045, + 0.8514852982081099, + 0.1604435899169862, + 0.8514899865142226, + 237.745486, + 262.385603 + ] + } + }, + "geometricError": 0.0 + }, + "properties": { + "gebaeudekennzeichen_1": {}, + "anzahlDerEinBisZweiZimmerWohnungen": { + "maximum": 3, + "minimum": 1 + }, + "LoD1_datenquelleBodenhoehe": { + "maximum": 1000, + "minimum": 1000 + }, + "gmlIdALKISLageBezeichnung_2": {}, + "geschossflaeche": { + "maximum": 1470, + "minimum": 537 + }, + "StoreysAboveGround": { + "maximum": 6, + "minimum": 5 + }, + "umbauterRaum": { + "maximum": 4655, + "minimum": 1761 + }, + "MeasuredHeight": { + "maximum": 22.4, + "minimum": 22 + }, + "FeatureType": {}, + "baublockseitenNummer": { + "maximum": 3, + "minimum": 1 + }, + "gmlID": {}, + "YearOfConstruction": { + "maximum": 1991, + "minimum": 1969 + }, + "anzahlDerDreiBisVierZimmerWohnungen": { + "maximum": 10, + "minimum": 5 + }, + "statusDesGebaeudes": { + "maximum": 1, + "minimum": 1 + }, + "LoD1_datenquelleLage": { + "maximum": 1000, + "minimum": 1000 + }, + "gmlIdALKISLageBezeichnung_1": {}, + "StoreysBelowGround": { + "maximum": 2, + "minimum": 0 + }, + "dachgeschossausbau": { + "maximum": 3000, + "minimum": 3000 + }, + "hoeheFirst": { + "maximum": 266.8, + "minimum": 265.3 + }, + "gebaeudekennzeichen_2": {}, + "CreationDate": {}, + "alkisId": {}, + "baublockNummer": { + "maximum": 107226, + "minimum": 107226 + }, + "grundflaeche": { + "maximum": 210, + "minimum": 105 + }, + "LocalityName": {}, + "ThoroughfareNumber": {}, + "ThoroughfareName": {}, + "Longitude": { + "maximum": 9.19274055217104, + "minimum": 9.192576333508102 + }, + "Latitude": { + "maximum": 48.78678252491634, + "minimum": 48.78667977173829 + } + } +} \ No newline at end of file diff --git a/public/circData.js b/public/circData.js new file mode 100644 index 0000000..502b99e --- /dev/null +++ b/public/circData.js @@ -0,0 +1,653 @@ +$(function () { + Cesium.Ion.defaultAccessToken = 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiI5ODI4ZTYyZS1mMTg2LTQ5NGEtYjdiOS02ODg2NzVhNjc0MTAiLCJpZCI6MjkwNCwiaWF0IjoxNTM1MTA5OTAzfQ.kyDX_0ScvJBkYnvXI0DW5NfZbiaRL5ezwtAUhxYnk1Y'; + + var imageryViewModels = []; + imageryViewModels.push(new Cesium.ProviderViewModel({ + name: 'Sentinel-2', + iconUrl: Cesium.buildModuleUrl('Widgets/Images/ImageryProviders/sentinel-2.png'), + tooltip: 'Sentinel-2 cloudless.', + creationFunction: function () { + return new Cesium.IonImageryProvider({ assetId: 3954 }); + } + })); + + imageryViewModels.push(new Cesium.ProviderViewModel({ + name: 'Blue Marble', + iconUrl: Cesium.buildModuleUrl('Widgets/Images/ImageryProviders/blueMarble.png'), + tooltip: 'Blue Marble Next Generation July, 2004 imagery from NASA.', + creationFunction: function () { + return new Cesium.IonImageryProvider({ assetId: 3845 }); + } + })); + + var viewer = new Cesium.Viewer('cesiumContainer', + { + imageryProvider: new Cesium.IonImageryProvider({ assetId: 3954 }), + + terrainProvider : new Cesium.CesiumTerrainProvider({ + url: Cesium.IonResource.fromAssetId(1) + }), + scene3DOnly: false, + shouldAnimate: true, + animation: true, + infoBox: true, + baseLayerPicker: true, + fullscreenButton: false, + timeline: false, + navigationHelpButton: true, + navigationInstructionsInitiallyVisible: false, + homeButton: false, + selectionIndicator: true, + geocoder: true, + // imageryProviderViewModels: imageryViewModels + }); + + // var layer = viewer.imageryLayers.addImageryProvider( + // new Cesium.IonImageryProvider({ assetId: 3 }) + // ); + + var imageryLayer = viewer.imageryLayers.addImageryProvider( + new Cesium.IonImageryProvider({ assetId: 3954 }) + ); + + var canvas = viewer.canvas; + canvas.setAttribute('tabindex', '0'); // needed to put focus on the canvas + canvas.addEventListener('click', function() { + canvas.focus(); + }); + canvas.focus(); + var scene = viewer.scene; + + // var osmBuildings = viewer.scene.primitives.add( + // new Cesium.Cesium3DTileset({ + // url: Cesium.IonResource.fromAssetId(96188), + // }) + // ); + + ///////////////////////////// Target ////////////////////////// + + var target_tileset = viewer.scene.primitives.add(new Cesium.Cesium3DTileset({ + url: 'buildingTiles/circularTiles/target_black/tileset.json', + show: true + })); + + + + target_tileset.readyPromise.then(function (target_tileset) { + + var R = 0; // roll + var P = 0; // pitch + var Yaw = 0; // yaw + var height =53; + var cartographic = Cesium.Cartographic.fromCartesian(target_tileset.boundingSphere.center); + var surface = Cesium.Cartesian3.fromRadians(cartographic.longitude, cartographic.latitude, 0.0); + var offset = Cesium.Cartesian3.fromRadians(cartographic.longitude, cartographic.latitude, height); + var translation = Cesium.Cartesian3.subtract(offset, surface, new Cesium.Cartesian3()); + + //var rotMat = new Cesium.Matrix3(); + var rotation = new Cesium.Matrix3.fromHeadingPitchRoll(new Cesium.HeadingPitchRoll(Yaw, P, R)); + + target_tileset.modelMatrix = Cesium.Matrix4.fromRotationTranslation(rotation,translation); + + + return zoomAll(target_tileset); + }); + + target_tileset.readyPromise.then(function(target_tileset){ + target_tileset.style = new Cesium.Cesium3DTileStyle({ + color: "color('black',0.5)", + }) + }); + + + + + ///////////////////////////// Layer one ////////////////////////// + + var L1 = viewer.scene.primitives.add(new Cesium.Cesium3DTileset({ + url: 'buildingTiles/circularTiles/L1_yellow/tileset.json', + show: true, + + })); + + L1.readyPromise.then(function (L1) { + return zoomAll(L1); + }); + + L1.readyPromise.then(function (L1) { + + var R = 0; // roll + var P = 0; // pitch + var Yaw = 0; // yaw + var height =53; + var cartographic = Cesium.Cartographic.fromCartesian(L1.boundingSphere.center); + var surface = Cesium.Cartesian3.fromRadians(cartographic.longitude, cartographic.latitude, 0.0); + var offset = Cesium.Cartesian3.fromRadians(cartographic.longitude, cartographic.latitude, height); + var translation = Cesium.Cartesian3.subtract(offset, surface, new Cesium.Cartesian3()); + + //var rotMat = new Cesium.Matrix3(); + var rotation = new Cesium.Matrix3.fromHeadingPitchRoll(new Cesium.HeadingPitchRoll(Yaw, P, R)); + + L1.modelMatrix = Cesium.Matrix4.fromRotationTranslation(rotation,translation); + + return zoomAll(L1); + }); + + + L1.readyPromise.then(function(L1){ + L1.style = new Cesium.Cesium3DTileStyle({ + color: "color('yellow',1)", + }) + }); + + ///////////////////////////// Layer 2 ////////////////////////// + + var L2 = viewer.scene.primitives.add(new Cesium.Cesium3DTileset({ + url: 'buildingTiles/circularTiles/L2_red/tileset.json', + show: true, + + })); + + L2.readyPromise.then(function (L2) { + return zoomAll(L2); + }); + + L2.readyPromise.then(function (L2) { + + var R = 0; // roll + var P = 0; // pitch + var Yaw = 0; // yaw + var height =53; + var cartographic = Cesium.Cartographic.fromCartesian(L2.boundingSphere.center); + var surface = Cesium.Cartesian3.fromRadians(cartographic.longitude, cartographic.latitude, 0.0); + var offset = Cesium.Cartesian3.fromRadians(cartographic.longitude, cartographic.latitude, height); + var translation = Cesium.Cartesian3.subtract(offset, surface, new Cesium.Cartesian3()); + + //var rotMat = new Cesium.Matrix3(); + var rotation = new Cesium.Matrix3.fromHeadingPitchRoll(new Cesium.HeadingPitchRoll(Yaw, P, R)); + + L2.modelMatrix = Cesium.Matrix4.fromRotationTranslation(rotation,translation); + + return zoomAll(L2); + }); + + + L2.readyPromise.then(function(L2){ + L2.style = new Cesium.Cesium3DTileStyle({ + color: "color('red',1)", + }) + }); + + + ///////////////////////////// Layer 3 ////////////////////////// + + var L3 = viewer.scene.primitives.add(new Cesium.Cesium3DTileset({ + url: 'buildingTiles/circularTiles/L3_green/tileset.json', + show: true, + + })); + + L3.readyPromise.then(function (L3) { + return zoomAll(L3); + }); + + L3.readyPromise.then(function (L3) { + + var R = 0; // roll + var P = 0; // pitch + var Yaw = 0; // yaw + var height =53; + var cartographic = Cesium.Cartographic.fromCartesian(L3.boundingSphere.center); + var surface = Cesium.Cartesian3.fromRadians(cartographic.longitude, cartographic.latitude, 0.0); + var offset = Cesium.Cartesian3.fromRadians(cartographic.longitude, cartographic.latitude, height); + var translation = Cesium.Cartesian3.subtract(offset, surface, new Cesium.Cartesian3()); + + //var rotMat = new Cesium.Matrix3(); + var rotation = new Cesium.Matrix3.fromHeadingPitchRoll(new Cesium.HeadingPitchRoll(Yaw, P, R)); + + L3.modelMatrix = Cesium.Matrix4.fromRotationTranslation(rotation,translation); + + return zoomAll(L3); + }); + + + L3.readyPromise.then(function(L3){ + L3.style = new Cesium.Cesium3DTileStyle({ + color: "color('green',1)", + }) + }); + + + ///////////////////////////// Layer 3 ////////////////////////// + + var L4 = viewer.scene.primitives.add(new Cesium.Cesium3DTileset({ + url: 'buildingTiles/circularTiles/L4_brown/tileset.json', + show: true, + + })); + + L4.readyPromise.then(function (L4) { + return zoomAll(L4); + }); + + L4.readyPromise.then(function (L4) { + + var R = 0; // roll + var P = 0; // pitch + var Yaw = 0; // yaw + var height =53; + var cartographic = Cesium.Cartographic.fromCartesian(L4.boundingSphere.center); + var surface = Cesium.Cartesian3.fromRadians(cartographic.longitude, cartographic.latitude, 0.0); + var offset = Cesium.Cartesian3.fromRadians(cartographic.longitude, cartographic.latitude, height); + var translation = Cesium.Cartesian3.subtract(offset, surface, new Cesium.Cartesian3()); + + //var rotMat = new Cesium.Matrix3(); + var rotation = new Cesium.Matrix3.fromHeadingPitchRoll(new Cesium.HeadingPitchRoll(Yaw, P, R)); + + L4.modelMatrix = Cesium.Matrix4.fromRotationTranslation(rotation,translation); + + return zoomAll(L4); + }); + + + L4.readyPromise.then(function(L4){ + L4.style = new Cesium.Cesium3DTileStyle({ + color: "color('CORAL',1)", + }) + }); + + + var camera = viewer.camera; + var controller = scene.screenSpaceCameraController; + var r = 0; + var center = new Cesium.Cartesian3(); + + var hpRoll = new Cesium.HeadingPitchRoll(); + var hpRange = new Cesium.HeadingPitchRange(); + var speed = 0.1; + var deltaRadians = Cesium.Math.toRadians(3.0); + + var position = Cesium.Cartesian3.fromDegrees(9.190471, 48.786782, 0.0); + var speedVector = new Cesium.Cartesian3(); + var fixedFrameTransform = Cesium.Transforms.localFrameToFixedFrameGenerator('north', 'west'); + + + + viewer.scene.globe.enableLighting = true; // set lighting to true + + + var zoomAll = function (tileset) { + return new Promise(function (resolve, reject) { + if (!tileset) { reject("Tileset is undifined"); } + viewer.camera.viewBoundingSphere(tileset.boundingSphere, new Cesium.HeadingPitchRange(0, -0.5, 1500)); + viewer.camera.lookAtTransform(Cesium.Matrix4.IDENTITY); + resolve(); + }); + } + + // HTML overlay for showing feature name on mouseover + var nameOverlay = document.createElement('div'); + viewer.container.appendChild(nameOverlay); + nameOverlay.className = 'backdrop'; + nameOverlay.style.display = 'none'; + nameOverlay.style.position = 'absolute'; + nameOverlay.style.bottom = '0'; + nameOverlay.style.left = '0'; + nameOverlay.style['pointer-events'] = 'none'; + nameOverlay.style.padding = '4px'; + nameOverlay.style.backgroundColor = 'green'; + + // Information about the currently selected feature + var selected = { + feature: undefined, + originalColor: new Cesium.Color() + }; + + // Information about the currently highlighted feature + var highlighted = { + feature: undefined, + originalColor: new Cesium.Color() + }; + + var selectedEntity = new Cesium.Entity(); + + // Color a feature yellow on hover. + viewer.screenSpaceEventHandler.setInputAction(function onMouseMove(movement) { + // If a feature was previously highlighted, undo the highlight + if (Cesium.defined(highlighted.feature)) { + highlighted.feature.color = highlighted.originalColor; + highlighted.feature = undefined; + } + + // Pick a new feature + var pickedFeature = viewer.scene.pick(movement.endPosition); + if (!Cesium.defined(pickedFeature)) { + nameOverlay.style.display = 'none'; + return; + } + + // A feature was picked, so show it's overlay content + nameOverlay.style.display = 'block'; + nameOverlay.style.bottom = viewer.canvas.clientHeight - movement.endPosition.y + 'px'; + nameOverlay.style.left = movement.endPosition.x + 'px'; + var name = pickedFeature.getProperty('name'); + if (!Cesium.defined(name)) { + name = pickedFeature.getProperty('id'); + } + nameOverlay.textContent = name; + + // Highlight the feature if it's not already selected. + if (pickedFeature !== selected.feature) { + highlighted.feature = pickedFeature; + Cesium.Color.clone(pickedFeature.color, highlighted.originalColor); + pickedFeature.color = Cesium.Color.AQUA; + } + }, Cesium.ScreenSpaceEventType.MOUSE_MOVE); + + // Color a feature on selection and show metadata in the InfoBox. +var clickHandler = viewer.screenSpaceEventHandler.getInputAction(Cesium.ScreenSpaceEventType.LEFT_CLICK); +viewer.screenSpaceEventHandler.setInputAction(function onLeftClick(movement) { + // If a feature was previously selected, undo the highlight + if (Cesium.defined(selected.feature)) { + selected.feature.color = selected.originalColor; + selected.feature = undefined; + } + + // Pick a new feature + var pickedFeature = viewer.scene.pick(movement.position); + if (!Cesium.defined(pickedFeature)) { + clickHandler(movement); + return; + } + + // Select the feature if it's not already selected + if (selected.feature === pickedFeature) { + return; + } + selected.feature = pickedFeature; + + // Save the selected feature's original color + if (pickedFeature === highlighted.feature) { + Cesium.Color.clone(highlighted.originalColor, selected.originalColor); + highlighted.feature = undefined; + } else { + Cesium.Color.clone(pickedFeature.color, selected.originalColor); + } + + // Highlight newly selected feature + pickedFeature.color = Cesium.Color.WHITE; + + // Set feature infobox description + var featureName = pickedFeature.getProperty('name'); + selectedEntity.name = featureName; + selectedEntity.description = 'Loading

'; + viewer.selectedEntity = selectedEntity; + selectedEntity.description = '' + + '' + + '' + + '' + + '' + + '' + + '' + + '' + + '' + + '' + + '' + + '' + + '' + + '' + + '' + + '' + + '
Bld function' + pickedFeature.getProperty('Function') + '
gmlID' + pickedFeature.getProperty('gmlIDStr') + '
Dachgeschossausbau' + pickedFeature.getProperty('dachgeschossausbau') + '
Lon' + pickedFeature.getProperty('Longitude') + '
Lat' + pickedFeature.getProperty('Latitude') + '
Geschossflaeche (sqm)' + pickedFeature.getProperty('geschossflaeche') + '
YearOfConstruction' + pickedFeature.getProperty('YearOfConstruction') + '
MeasuredHeight (m):' + pickedFeature.getProperty('MeasuredHeight') + '
HoeheFirst (m)' + pickedFeature.getProperty('hoeheFirst') + '
HoeheTrauf (m)' + pickedFeature.getProperty('hoeheTrauf') + '
Grundflaeche (sqm)' + pickedFeature.getProperty('grundflaeche') + '
StoreysAboveGround: ' + pickedFeature.getProperty('StoreysAboveGround') + '
StoreysBelowGround: ' + pickedFeature.getProperty('StoreysBelowGround') + '
Durchfahrtsstr.: ' + pickedFeature.getProperty('ThoroughfareName') + '
Hausnummer.: ' + pickedFeature.getProperty('ThoroughfareNumber') + '
'; +}, Cesium.ScreenSpaceEventType.LEFT_CLICK); + + var scene = viewer.scene; + var longitude; + var latitude; + var fid; + var featuretype; + var gmlid; + var selID = new Array(); + var cnt = 0; + var lastPickedObject; + + var viewModel = { + rightClickAction: 'properties', + middleClickAction: 'hide' + }; + + Cesium.knockout.track(viewModel); + + var handler = new Cesium.ScreenSpaceEventHandler(scene.canvas); + + + handler.setInputAction(function (movement) { + // makes camera go to a certain position given by the coordinates below + + var feature = viewer.scene.pick(movement.position); + if (!Cesium.defined(feature)) { + console.log("no feature defined") + return; + } + var propertyNames = feature.getPropertyNames(); + var lat = feature.getProperty("Latitude"); + var lon = feature.getProperty("Longitude"); + var tmp = feature.getProperty("YearOfConstruction"); + + viewer.camera.flyTo({ + destination: Cesium.Cartesian3.fromDegrees(lon, lat, 900), + maximumHeight: 1500.0, + orientation: { + heading: Cesium.Math.toRadians(0.0), + pitch: Cesium.Math.toRadians(-90.0), + roll: Cesium.Math.toRadians(45.0) + }, + duration: 2 + }); }, Cesium.ScreenSpaceEventType.LEFT_CLICK); + + + + handler.setInputAction(function (movement) { + var feature = viewer.scene.pick(movement.position); + if (!Cesium.defined(feature)) { + return; + } + var action = viewModel.rightClickAction; + action === 'properties' + printProperties(movement, feature) + }, Cesium.ScreenSpaceEventType.RIGHT_CLICK); + + + function printProperties(movement, feature) { + console.log('Properties:'); + var propertyNames = feature.getPropertyNames(); + var length = propertyNames.length; + for (var i = 0; i < length; ++i) { + var propertyName = propertyNames[i]; + if (propertyName == 'gmlIdALKISLageBezeichnung_1' || + propertyName == 'gmlIdALKISLageBezeichnung_2' || + propertyName == 'gmlIdALKISLageBezeichnung_3' || + propertyName == 'gmlIdALKISLageBezeichnung_4' || + propertyName == 'gmlIdALKISLageBezeichnung_5' || + propertyName == 'gmlIdALKISLageBezeichnung_6') + console.log(' ' + propertyName + ': ' + 'zensiert'); + else + console.log(' ' + propertyName + ': ' + feature.getProperty(propertyName)); + } + + // Evaluate feature description + //console.log('Description : ' + tileset.style.meta.description.evaluate(scene.frameState, feature)); + } + + handler.setInputAction(function (movement) { + var feature = viewer.scene.pick(movement.position); + if (!Cesium.defined(feature)) { + return; + } + + var action = viewModel.middleClickAction; + if (action === 'hide') { + feature.show = false; + } + }, Cesium.ScreenSpaceEventType.MIDDLE_CLICK); + + + + /* + return Cesium.when(tileset.readyPromise).then(function (tileset) { + tileset.style = new Cesium.Cesium3DTileStyle({ + + color: { + + conditions: [ + + + ["${Latitude} >= 48.8170", "color('purple', 0.5)"], + + ["${Latitude} >= 48.7950", "color('red')"], + + ["${Latitude} >= 48.7830", "color('orange')"], + + ["${Latitude} >= 48.7710", "color('yellow')"], + + ["${Latitude} >= 48.7690", "color('lime')"], + + ["${Latitude} >= 48.7570", "color('cyan')"], + + ["${Latitude} >= 48.7470", "color('CORNFLOWERBLUE')"], + + ["${Latitude} >= 48.7370", "color('DARKMAGENTA')"], + + ["true", "color('lightblue')"] + + ] + + } + + }); + }); +*/ + +function showLegend() { + $("#legend").css("display", "block"); +} +function hideLegend() { + $("#legend").css("display", "none"); +} + +// Legend - Colour Table +function emptyColourTable() { + $(".inner").empty(); +} + +/* +function setHeightTable() { + $(".inner").append( "" + + "" + + "" + + "" + + "" + + "" + + "" + + "" + + "
     113007
113001
112996
112991
112986
112981
112976
" ); +} +*/ + +/* +function setHeightTable() { + $(".inner").append( "" + + "" + + "" + + "" + + "
     x
y
z
" ); +} +*/ + + +function setHeightTable() { + $(".inner").append( "" + + "" + + "" + + "" + + "" + + "" + + "" + + "
     >30
24
18
12
6
0
" ); +} + + // return Cesium.when(target_tileset.readyPromise).then(function (target_tileset) { + // target_tileset.style = new Cesium.Cesium3DTileStyle({ + + // color: "color('black',1)", + + // /*color: { + + // conditions: [ + + + + // ['Number(${MeasuredHeight}) >= 40', 'rgb(255,0,0)'], + + // ['Number(${MeasuredHeight}) >= 30.', 'rgb(255, 93 , 0)'], + + // ['Number(${MeasuredHeight}) >= 25', 'rgb(255, 180, 0)'], + + // ['Number(${MeasuredHeight}) >= 20', 'rgb(255,255,0)'], + + // ['Number(${MeasuredHeight}) >= 15', 'rgb(0,255,0)'], + + // ['Number(${MeasuredHeight}) >= 10', 'rgb(0,0,255)'], + + // ['Number(${MeasuredHeight}) >= 7.5', 'rgb(75, 0, 130)'], + + // ['Number(${MeasuredHeight}) >= 4', 'rgb(248, 100, 221)'], + + // ['Number(${MeasuredHeight}) >= 0.1', 'rgb(248, 100, 221)'], + + // ['true', 'color("lightblue")'] + + // ] + + // } + // */ + + // }); + // showLegend(); + // setHeightTable(); + // }); + + /* + return Cesium.when(tileset.readyPromise).then(function (tileset) { + tileset.style = new Cesium.Cesium3DTileStyle({ + + color: { + + conditions: [ + + ['Number(${YearOfConstruction}) >= 2015', 'rgb(127,201,127)'], + + ['Number(${YearOfConstruction}) >= 2005', 'rgb(190,174,212)'], + + ['Number(${YearOfConstruction}) >= 1990', 'rgb(253,192,134)'], + + ['Number(${YearOfConstruction}) >= 1975', 'rgb(255,255,153)'], + + ['Number(${YearOfConstruction}) >= 1950', 'rgb(56,108,176)'], + + ['Number(${YearOfConstruction}) >= 1920', 'rgb(240,2,127)'], + + ['Number(${YearOfConstruction}) >= 1900', 'rgb(191,91,23)'], + + ['Number(${YearOfConstruction}) >= 1800', 'rgb(102,102,102)'], + + ['true', 'color("lightblue")'] + + ] + + } + + }); + }); */ + +}); \ No newline at end of file diff --git a/public/circularData.html b/public/circularData.html new file mode 100644 index 0000000..a75ab0b --- /dev/null +++ b/public/circularData.html @@ -0,0 +1,63 @@ + + + + + + + + + + + Stuttgart + + + + + + + + + + + +
+ +

TP2.4 - Prototyp 4: Webbasierte Visualisierung von CFD Simulationsdaten

+ + +
+ + +
+ +
+ + + + + + + + + +
Pressure (Pa)
- 113006

- 112976

+ + +
+ +
+ + + + + + + + \ No newline at end of file -- GitLab