<html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;" class="">Hello Andreas,<div class=""><br class=""></div><div class="">That's a great compilation and overview of sea level change and its effects! Your full Earth 3D scene is really striking. I made my views in pieces because I wanted to use the full resolution of the GEBCO half minute grid dataset, hence the at first glance somewhat odd size and scale, with 667 km in 720 pixels/vertices vertically, but that's just 6° = 360' = 720 x 0.5'. Even if I'd love to make a complete overview like yours, I doubt many desktop computers would swallow 933,120,000 (360 x 120 x 180 x 120) vertices with coordinates, normals and colors and be able to render the resulting 1,866,240,000 tris it in somewhat smooth animation. It might be possible with LOD models, but I haven't gotten that far yet.</div><div class=""><br class=""></div><div class="">X3DOM is a really nifty web integration tool, and together with X3D so far the simplest way I've found of integrating 3D content on web pages. As I learn more, I can see that it's more capable than I thought at first, but then the learning curve also turns upwards steeply. It still has some way to go before it could become a generally acceptable standard for industry though. I was involved in a project a few years back where various 3D platforms were evaluated for a major investment, and what tripped most of them were lack of stable (meaning more than a few developers involved) and secure (meaning extensive test suites and quality management) development, and deficits in documentation, rather than their actual capabilities. Unfortunately, that's a problem with most opensource projects I've been involved in or in touch with.</div><div class=""><br class=""></div><div class="">Best regards,</div><div class=""><br class=""></div><div class="">Magnus Zeisig</div><div class=""><br class=""><div><br class=""><blockquote type="cite" class=""><div class="">25 feb. 2019 kl. 16:48 skrev Andreas Plesch <<a href="mailto:andreasplesch@gmail.com" class="">andreasplesch@gmail.com</a>>:</div><br class="Apple-interchange-newline"><div class=""><div dir="ltr" class=""><div dir="ltr" class=""><div dir="auto" class=""><div class="">Thanks for sharing a nice use case for X3D on the web.</div><div dir="auto" class=""><br class=""></div><div dir="auto" class="">For a past global sea-level change demonstration I used a much subsampled DEM for a GeoElevationgrid in geodetic coordinates and a transparent, constant heights, GeoElevationgrid with matching gridding for the sea-level. The height attribute value can be dynamically modified using a slider and a bit of JavaScript via the DOM.</div><div dir="auto" class=""><br class=""></div><div dir="auto" class="">The yScale field is reserved for vertical exaggeration for both grids which is helpful for visualization of large areas or the globe. It is dynamic as well.</div><div dir="auto" class=""><br class=""></div><div dir="auto" class="">GeoElevationgrid is really useful for such global or continent scale datasets along with the other geospatial nodes since the distortions of map projections can be sidestepped this way.</div><div dir="auto" class=""><br class=""></div><div dir="auto" class="">The geospatial nodes are also useful for direct consumption of lat.long. located data, or if the effect of the Earth's curvature is considered important for the scene.</div><div dir="auto" class=""><br class=""></div><div dir="auto" class="">Here is a prototype of such a X3D scene:</div><div dir="auto" class=""><br class=""></div><div dir="auto" class=""><a href="https://beta.observablehq.com/@andreasplesch/sea-level-past-present-and-future" class="">https://beta.observablehq.com/@andreasplesch/sea-level-past-present-and-future</a><br class=""></div><div dir="auto" class=""><br class=""></div><div dir="auto" class="">It uses a new approach to notebooks and was initially a test of how well x3dom fits in such a notebook environment. But it could be just as well a regular web page.</div><div dir="auto" class=""><br class=""></div><div class="">Apart from being a X3D browser, x3dom is geared towards integration into the web. Generally, web technologies work well with it. </div><div dir="auto" class=""><br class=""></div><div dir="auto" class="">Andreas</div><div dir="auto" class=""><br class=""></div><div class="gmail_quote" dir="auto"><div dir="ltr" class="">On Fri, Feb 22, 2019, 10:37 PM  <<a href="mailto:x3d-public-request@web3d.org" target="_blank" class="">x3d-public-request@web3d.org</a> wrote:<br class=""></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><br class="">
Date: Thu, 21 Feb 2019 21:12:50 -0700<br class="">
From: GPU Group <<a href="mailto:gpugroup@gmail.com" rel="noreferrer" target="_blank" class="">gpugroup@gmail.com</a>><br class="">
To: Magnus Zeisig <<a href="mailto:magnus.zeisig@tele2.se" rel="noreferrer" target="_blank" class="">magnus.zeisig@tele2.se</a>><br class="">
<br class="">
Magnus, I think your spherical world with overlapping rectangles and<br class="">
anchors is great - a great way to do it.<br class="">
-Doug<br class="">
<br class="">
more on geospatial..<br class="">
<br class="">
The web3d geospatial has 3 options for coordinate systems:<br class="">
1. GC geocentric<br class="">
2. GD geodetic or lat,long<br class="">
3. UTM<br class="">
I'm not sure if/how a GeoElelvationGrid would work with GC.<br class="">
GD and UTM get a little funny around the poles. But lets say you use one of<br class="">
these. Then for sea level you set heights to 1, and yscale to 0, to get<br class="">
0=sea_level and scale by 10 to get 10.<br class="">
Q. when you say you did them on a plane, do you mean mapping plane, and if<br class="">
so what type of mapping plane ie UTM, stereographic, lambertian conic ...?<br class="">
One idea is expand the number of mapping planes offered in the geospatial<br class="">
component, so if you have a nice grid in some non-utm mapping plane, you<br class="">
don't have to regrid to utm or lat,long.<br class="">
<br class="">
On Thu, Feb 21, 2019 at 11:39 AM Magnus Zeisig <<a href="mailto:magnus.zeisig@tele2.se" rel="noreferrer" target="_blank" class="">magnus.zeisig@tele2.se</a>><br class="">
wrote:<br class="">
<br class="">
> Thank you for the feedback, Doug.<br class="">
><br class="">
> When I produced the 3D scenes in question, I hadn't gotten into the<br class="">
> geonodes yet, put dealt with them as general 3D scenes. Since they aim for<br class="">
> compatibility with a set of videos produced in the plane projection, I<br class="">
> probably would have decided to use that projection, at least for one<br class="">
> version, even if I had been familliar with the geonodes.<br class="">
><br class="">
> If I was to use GeoElevationGrid, would it work to add sea level as a<br class="">
> second GeoElevationGrid with some blue tint and all height values set to 0,<br class="">
> and then scale it with a transform where scale is set to<br class="">
> [1+SeaLevel/EarthRadiusEquator, 1+SeaLevel/EarthRadiusPoles,<br class="">
> 1+SeaLevel/EarthRadiusEquator], if using the ellipsoid approximation? If it<br class="">
> works the way I think, even using the geoid should be OK, since its<br class="">
> variation is only up to 106 m from the ellipsoid, giving an error of up to<br class="">
> 106/6371000*65?0.001 m at the maximum realistic sea level rise of 65 m. I'm<br class="">
> not sure what internal mathematical resolution is used though, since a 1 m<br class="">
> sea level rise would mean a scale factor of just about 1.00000016, which<br class="">
> would be problematic with single-precision floats.<br class="">
><br class="">
> If I understand your suggestion about linking from a geo world right, I<br class="">
> think I did something like that already, although "cheating" just using a<br class="">
> textured sphere and scaled boxes as scene markers:<br class="">
> <a href="http://sealevelrise.se/en/earth_3d1/map1.html" rel="noreferrer noreferrer" target="_blank" class="">http://sealevelrise.se/en/earth_3d1/map1.html</a> . The overlapping<br class="">
> semi-transparents mess up some, as with many 3D tools, but the anchor<br class="">
> principle works and I think should work also with more complex solutions.<br class="">
><br class="">
> I admit several of your other questions/suggestions are shooting a bit<br class="">
> over my head, since I'm no expert in GIS/geodata/geospatial handling, but I<br class="">
> might get there with time.<br class="">
><br class="">
> Best regards,<br class="">
><br class="">
> Magnus<br class="">
><br class="">
><br class="">
> 21 feb. 2019 kl. 17:04 skrev GPU Group <<a href="mailto:gpugroup@gmail.com" rel="noreferrer" target="_blank" class="">gpugroup@gmail.com</a>>:<br class="">
><br class="">
> I think its awkward and some things are missing from x3d geo nodes.<br class="">
> Lets say you have an elevationgrid in an arbitrary mapping plane, with<br class="">
> respect to geoid ie heights measured from sea level.<br class="">
> There's no node that will take that grid as it is and display it on a<br class="">
> spherical earth with the proper adjustments for curved ellipsoidal earth,<br class="">
> including geoid-to-ellipsoidal heights.<br class="">
> If it was a small grid, it could be positioned with a geoLocation node<br class="">
><br class="">
> <a href="http://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/geodata.html#GeoLocation" rel="noreferrer noreferrer" target="_blank" class="">http://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/geodata.html#GeoLocation</a><br class="">
> But what about large areas where an uncorrected grid would be obviously<br class="">
> wrong? Victoria Island in the Arctic Ocean for example?<br class="">
> A similar problem if you keep your elevationGrid and use a GeoTransform to<br class="">
> bring an ellipsoidal earth into your regular scene.<br class="">
><br class="">
> You could convert all your grid points to GeoCentric GC coordinates<br class="">
> offline, and show it as mesh of points in GeoCentric coordinates. But that<br class="">
> makes it awkward / less sensitive to show sea level rise relative to geoid.<br class="">
> Normally we convert geoid heights to ellipsoidal heights to render in geo<br class="">
> space. So a (geoid following) sea would need to be a grid of points<br class="">
> following the geoid, and (somehow) mathematically scaled.<br class="">
><br class="">
> Perhaps on your page listing all of the locations/areas-of-interest, that<br class="">
> could instead be on a geo world, and each area an approximate rectangle on<br class="">
> it, with TouchSensor/Anchor. Then when someone clicks on an area, you go to<br class="">
> your current elevation grid page? Would that work in x3dom?<br class="">
><br class="">
> To do it all on one ellipsoid<br class="">
> A node type that will take your grid in sea-level/geoid relative mapping<br class="">
> plane coordinates which may not be UTM - may be some other mapping plane<br class="">
> especially near the poles- and do the appropriate conversion on each grid<br class="">
> point for rendering and collision/terrain-walking, and do that also with a<br class="">
> grid for sea level too, and provide a way to animate the sea level height<br class="">
> around the world and/or locally (animated geoid? Geoid as an exposed field?<br class="">
> geoid scale factor? special sea level node that includes tide modeling?)<br class="">
> ... that needs work.<br class="">
><br class="">
> Doug Sanden<br class="">
><br class="">
><br class="">
><br class="">
><br class="">
> On Wed, Feb 20, 2019 at 4:16 PM Magnus Zeisig <<a href="mailto:magnus.zeisig@tele2.se" rel="noreferrer" target="_blank" class="">magnus.zeisig@tele2.se</a>><br class="">
> wrote:<br class="">
><br class="">
>> Hello Mike,<br class="">
>><br class="">
>> Thank you for your positive feedback and for the tip about the<br class="">
>> GeoElevationGrid. I admit I hadn't gotten that far yet, but will definitely<br class="">
>> keep it in mind for future 3D mapping projects. For this particular project<br class="">
>> I probably would have decided to stick with the ElevationGrid even if I had<br class="">
>> known though, since I then more easily could match it to a set of "flat"<br class="">
>> videos of the same areas I had already produced and had much of the data<br class="">
>> conversion done already for that purpose.<br class="">
>><br class="">
>> If I understand it right, the GeoElevationGrid can be used both for full<br class="">
>> sphere and partial sphere (if (xDimension - 1) * xSpacing < 360 or<br class="">
>> (zDimension - 1) * zSpacing < 180) topography, but will always result in a<br class="">
>> correct but sometimes impractical spherical projection, also more<br class="">
>> triangular (or really concentric circle sector) than rectangular towards<br class="">
>> the poles? Adding a sea level with adjustment should just be a matter of<br class="">
>> adding a corresponding second GeoElevationGrid with all height values 0 and<br class="">
>> scaling it by changing an enclosing Transform scale field?<br class="">
>><br class="">
>> Best regards,<br class="">
>><br class="">
>> Magnus<br class="">
>><br class="">
>><br class="">
>> > 20 feb. 2019 kl. 18:36 skrev Mike McCann <<a href="mailto:mccann@mbari.org" rel="noreferrer" target="_blank" class="">mccann@mbari.org</a>>:<br class="">
>> ><br class="">
>> > Hello Magnus,<br class="">
>> ><br class="">
>> > This is a very intuitive and informative interactive presentation!<br class="">
>> ><br class="">
>> > I agree that X3D/X3DOM is a smoother choice, especially when we have<br class="">
>> limited time and need to do a lot of data preparation.<br class="">
>> ><br class="">
>> > I notice that you use a single ElevationGrid and can understand why, as<br class="">
>> it?s simpler to integrate the Sea level adjustment component of your<br class="">
>> application.<br class="">
>> ><br class="">
>> > Just a note regarding dealing with geospatial data: X3DOM also has the<br class="">
>> Geospatial component ? if GeoElevationGrid were used then other data might<br class="">
>> be more easily added to the scene using latitude, longitude, elevation<br class="">
>> coordinates, rather than having to first convert to custom coordinates<br class="">
>> needed for each ElevationGrid.<br class="">
>> ><br class="">
>> > -Mike<br class="">
>> ><br class="">
>> >> On Feb 20, 2019, at 3:25 AM, Magnus Zeisig <<a href="mailto:magnus.zeisig@tele2.se" rel="noreferrer" target="_blank" class="">magnus.zeisig@tele2.se</a>><br class="">
>> wrote:<br class="">
>> >><br class="">
>> >> I just wanted to say thank you to the community and developers for<br class="">
>> providing a great, quick and simple tool to get 3D scenes done and<br class="">
>> published. It took me a week of spare time from completing the first<br class="">
>> "Hello, X3DOM!" tutorial to having a set of 370 coastal areas around the<br class="">
>> world in interactive 3D on the web, most of that time required to massage<br class="">
>> geodata from GEBCO and GeoNames into proper format:<br class="">
>> <a href="http://sealevelrise.se/en/earth_3d1/" rel="noreferrer noreferrer" target="_blank" class="">http://sealevelrise.se/en/earth_3d1/</a><br class="">
>> >><br class="">
>> >> At least initially looking more for a quick tool to get the job done<br class="">
>> than to really learn all the nuts and bolts of X3D and X3DOM, I've probably<br class="">
>> made a lot of beginners' mistakes, and I'm sure I'll revisit and improve<br class="">
>> the project as I learn more, but for now, it's up, working and looking<br class="">
>> good. Once more, thank you!<br class="">
>> >><br class="">
>> >> As a background, I'm not all new to 3D. I wrote my first 2-pass (light<br class="">
>> and shadow) 3D renderer back in 1981, in BASIC on a micro-computer with a<br class="">
>> 2.2 MHz 8 bit Z80-processor and 32 KB RAM, taking 2 weeks to render a 332<br class="">
>> face mesh model (608 tris) in high resolution (2304x1152 px). In 1995-1996,<br class="">
>> I created my first 3D scenes on the web using VRML, and later worked with<br class="">
>> software like RayDream Studio, POV-Ray, Carrara and Poser. 2007-2008 I went<br class="">
>> into virtual worlds like Second Life and OpenSimulator, and contributed<br class="">
>> some code to OpenSimulator. Lately, I've created some 3D web content using<br class="">
>> WebGL and ThreeJS, and contributed some to the ThreeJS documentation.<br class="">
>> >><br class="">
>> >> I left VRML when the existing viewers went defunct on Macintosh in the<br class="">
>> late 1990's, leaving it without a properly functioning viewer for a while,<br class="">
>> and since I didn't hear much about VRML afterwards, I assumed it more or<br class="">
>> less dead. I'm happy to see I was wrong and that its offspring X3D is still<br class="">
>> alive and kicking. While e.g. ThreeJS has its charm for some projects, it's<br class="">
>> overkill for others, and at least for this project, X3D/X3DOM definitely<br class="">
>> was a smoother choice.<br class="">
>> >><br class="">
>> >><br class="">
>> >> _______________________________________________<br class="">
>> >> x3d-public mailing list<br class="">
>> >> <a href="mailto:x3d-public@web3d.org" rel="noreferrer" target="_blank" class="">x3d-public@web3d.org</a><br class="">
>> >> <a href="http://web3d.org/mailman/listinfo/x3d-public_web3d.org" rel="noreferrer noreferrer" target="_blank" class="">http://web3d.org/mailman/listinfo/x3d-public_web3d.org</a><br class="">
>> ><br class="">
>> ><br class="">
>> > _______________________________________________<br class="">
>> > x3d-public mailing list<br class="">
>> > <a href="mailto:x3d-public@web3d.org" rel="noreferrer" target="_blank" class="">x3d-public@web3d.org</a><br class="">
>> > <a href="http://web3d.org/mailman/listinfo/x3d-public_web3d.org" rel="noreferrer noreferrer" target="_blank" class="">http://web3d.org/mailman/listinfo/x3d-public_web3d.org</a><br class="">
>><br class="">
>><br class="">
>> _______________________________________________<br class="">
>> x3d-public mailing list<br class="">
>> <a href="mailto:x3d-public@web3d.org" rel="noreferrer" target="_blank" class="">x3d-public@web3d.org</a><br class="">
>> <a href="http://web3d.org/mailman/listinfo/x3d-public_web3d.org" rel="noreferrer noreferrer" target="_blank" class="">http://web3d.org/mailman/listinfo/x3d-public_web3d.org</a><br class="">
>><br class="">
><br class="">
><br class="">
-------------- next part --------------<br class="">
An HTML attachment was scrubbed...<br class="">
URL: <<a href="http://web3d.org/pipermail/x3d-public_web3d.org/attachments/20190221/aacfb921/attachment-0001.html" rel="noreferrer noreferrer" target="_blank" class="">http://web3d.org/pipermail/x3d-public_web3d.org/attachments/20190221/aacfb921/attachment-0001.html</a>><br class="">
<br class="">
------------------------------<br class="">
<br class="">
Subject: Digest Footer<br class="">
<br class="">
_______________________________________________<br class="">
x3d-public mailing list<br class="">
<a href="mailto:x3d-public@web3d.org" rel="noreferrer" target="_blank" class="">x3d-public@web3d.org</a><br class="">
<a href="http://web3d.org/mailman/listinfo/x3d-public_web3d.org" rel="noreferrer noreferrer" target="_blank" class="">http://web3d.org/mailman/listinfo/x3d-public_web3d.org</a><br class="">
<br class="">
<br class="">
------------------------------<br class="">
<br class="">
End of x3d-public Digest, Vol 119, Issue 66<br class="">
*******************************************<br class="">
</blockquote></div></div>
</div></div>
_______________________________________________<br class="">x3d-public mailing list<br class=""><a href="mailto:x3d-public@web3d.org" class="">x3d-public@web3d.org</a><br class="">http://web3d.org/mailman/listinfo/x3d-public_web3d.org<br class=""></div></blockquote></div><br class=""></div></body></html>