A Suitable Function for Terrain, Mountain Modeling












2












$begingroup$


On Google Maps and various other mapping programs, one can see contour lines that correspond to elevation. Sometimes these contour lines are concentric corresponding to a mountain.



My question is what would be the most suitable function to represent such data? I thought the simplest choice would be multiple Gaussian "bumps" placed additively on a map; whose composition would define a certain map? Are there any other functional representation methods that could give this output?



My next goal would be fitting such function to a set of elevation data collected on a grid.










share|cite|improve this question









$endgroup$








  • 1




    $begingroup$
    The answer probably depends on what you are going to use it for. My starting point would be 2-d interpolation of which there are many methods. en.wikipedia.org/wiki/Multivariate_interpolation
    $endgroup$
    – user121049
    Feb 1 at 16:09










  • $begingroup$
    Thanks for the share. I will be going over the links referenced in the article. My goal: is finding a "flattest path" from source to a destination. That would probably trigger another question here! But if you've heard of any approaches, please do share. I worked with discretized PDEs, ODEs, and level sets before.
    $endgroup$
    – BB_ML
    Feb 1 at 16:17


















2












$begingroup$


On Google Maps and various other mapping programs, one can see contour lines that correspond to elevation. Sometimes these contour lines are concentric corresponding to a mountain.



My question is what would be the most suitable function to represent such data? I thought the simplest choice would be multiple Gaussian "bumps" placed additively on a map; whose composition would define a certain map? Are there any other functional representation methods that could give this output?



My next goal would be fitting such function to a set of elevation data collected on a grid.










share|cite|improve this question









$endgroup$








  • 1




    $begingroup$
    The answer probably depends on what you are going to use it for. My starting point would be 2-d interpolation of which there are many methods. en.wikipedia.org/wiki/Multivariate_interpolation
    $endgroup$
    – user121049
    Feb 1 at 16:09










  • $begingroup$
    Thanks for the share. I will be going over the links referenced in the article. My goal: is finding a "flattest path" from source to a destination. That would probably trigger another question here! But if you've heard of any approaches, please do share. I worked with discretized PDEs, ODEs, and level sets before.
    $endgroup$
    – BB_ML
    Feb 1 at 16:17
















2












2








2


1



$begingroup$


On Google Maps and various other mapping programs, one can see contour lines that correspond to elevation. Sometimes these contour lines are concentric corresponding to a mountain.



My question is what would be the most suitable function to represent such data? I thought the simplest choice would be multiple Gaussian "bumps" placed additively on a map; whose composition would define a certain map? Are there any other functional representation methods that could give this output?



My next goal would be fitting such function to a set of elevation data collected on a grid.










share|cite|improve this question









$endgroup$




On Google Maps and various other mapping programs, one can see contour lines that correspond to elevation. Sometimes these contour lines are concentric corresponding to a mountain.



My question is what would be the most suitable function to represent such data? I thought the simplest choice would be multiple Gaussian "bumps" placed additively on a map; whose composition would define a certain map? Are there any other functional representation methods that could give this output?



My next goal would be fitting such function to a set of elevation data collected on a grid.







functions contour-integration 3d surfaces






share|cite|improve this question













share|cite|improve this question











share|cite|improve this question




share|cite|improve this question










asked Feb 1 at 16:02









BB_MLBB_ML

6,07652644




6,07652644








  • 1




    $begingroup$
    The answer probably depends on what you are going to use it for. My starting point would be 2-d interpolation of which there are many methods. en.wikipedia.org/wiki/Multivariate_interpolation
    $endgroup$
    – user121049
    Feb 1 at 16:09










  • $begingroup$
    Thanks for the share. I will be going over the links referenced in the article. My goal: is finding a "flattest path" from source to a destination. That would probably trigger another question here! But if you've heard of any approaches, please do share. I worked with discretized PDEs, ODEs, and level sets before.
    $endgroup$
    – BB_ML
    Feb 1 at 16:17
















  • 1




    $begingroup$
    The answer probably depends on what you are going to use it for. My starting point would be 2-d interpolation of which there are many methods. en.wikipedia.org/wiki/Multivariate_interpolation
    $endgroup$
    – user121049
    Feb 1 at 16:09










  • $begingroup$
    Thanks for the share. I will be going over the links referenced in the article. My goal: is finding a "flattest path" from source to a destination. That would probably trigger another question here! But if you've heard of any approaches, please do share. I worked with discretized PDEs, ODEs, and level sets before.
    $endgroup$
    – BB_ML
    Feb 1 at 16:17










1




1




$begingroup$
The answer probably depends on what you are going to use it for. My starting point would be 2-d interpolation of which there are many methods. en.wikipedia.org/wiki/Multivariate_interpolation
$endgroup$
– user121049
Feb 1 at 16:09




$begingroup$
The answer probably depends on what you are going to use it for. My starting point would be 2-d interpolation of which there are many methods. en.wikipedia.org/wiki/Multivariate_interpolation
$endgroup$
– user121049
Feb 1 at 16:09












$begingroup$
Thanks for the share. I will be going over the links referenced in the article. My goal: is finding a "flattest path" from source to a destination. That would probably trigger another question here! But if you've heard of any approaches, please do share. I worked with discretized PDEs, ODEs, and level sets before.
$endgroup$
– BB_ML
Feb 1 at 16:17






$begingroup$
Thanks for the share. I will be going over the links referenced in the article. My goal: is finding a "flattest path" from source to a destination. That would probably trigger another question here! But if you've heard of any approaches, please do share. I worked with discretized PDEs, ODEs, and level sets before.
$endgroup$
– BB_ML
Feb 1 at 16:17












2 Answers
2






active

oldest

votes


















2












$begingroup$

This is a huge question...



It depends on the precision you'd like and on the kind of input data you have.



For discrete methods, you can use Delaunay triangulation. See for example Delaunay Triangulation Algorithm and Application to Terrain Generation. You have commercial packages like https://www.geo-media.com/solutions/logiciel-covadis/modele-numerique-de-terrain.



enter image description here



You also have continuous methods that can be based on spline surfaces.



enter image description here






share|cite|improve this answer











$endgroup$





















    0












    $begingroup$

    RBF based interpolation worked great. I divide the world in degree blocks e.. 31-32 lat 40-41 lon would be one block, I sample about 40k elevation pts from each block and fit RBF Gaussian bumps, or multiquadric functions to smaller sections of a block. I save W matrix and lat, lons for the fit and I have my continuous function to recreate the terrain at any point.



    https://hal.archives-ouvertes.fr/hal-00308008/document






    share|cite|improve this answer











    $endgroup$














      Your Answer





      StackExchange.ifUsing("editor", function () {
      return StackExchange.using("mathjaxEditing", function () {
      StackExchange.MarkdownEditor.creationCallbacks.add(function (editor, postfix) {
      StackExchange.mathjaxEditing.prepareWmdForMathJax(editor, postfix, [["$", "$"], ["\\(","\\)"]]);
      });
      });
      }, "mathjax-editing");

      StackExchange.ready(function() {
      var channelOptions = {
      tags: "".split(" "),
      id: "69"
      };
      initTagRenderer("".split(" "), "".split(" "), channelOptions);

      StackExchange.using("externalEditor", function() {
      // Have to fire editor after snippets, if snippets enabled
      if (StackExchange.settings.snippets.snippetsEnabled) {
      StackExchange.using("snippets", function() {
      createEditor();
      });
      }
      else {
      createEditor();
      }
      });

      function createEditor() {
      StackExchange.prepareEditor({
      heartbeatType: 'answer',
      autoActivateHeartbeat: false,
      convertImagesToLinks: true,
      noModals: true,
      showLowRepImageUploadWarning: true,
      reputationToPostImages: 10,
      bindNavPrevention: true,
      postfix: "",
      imageUploader: {
      brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
      contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
      allowUrls: true
      },
      noCode: true, onDemand: true,
      discardSelector: ".discard-answer"
      ,immediatelyShowMarkdownHelp:true
      });


      }
      });














      draft saved

      draft discarded


















      StackExchange.ready(
      function () {
      StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fmath.stackexchange.com%2fquestions%2f3096411%2fa-suitable-function-for-terrain-mountain-modeling%23new-answer', 'question_page');
      }
      );

      Post as a guest















      Required, but never shown

























      2 Answers
      2






      active

      oldest

      votes








      2 Answers
      2






      active

      oldest

      votes









      active

      oldest

      votes






      active

      oldest

      votes









      2












      $begingroup$

      This is a huge question...



      It depends on the precision you'd like and on the kind of input data you have.



      For discrete methods, you can use Delaunay triangulation. See for example Delaunay Triangulation Algorithm and Application to Terrain Generation. You have commercial packages like https://www.geo-media.com/solutions/logiciel-covadis/modele-numerique-de-terrain.



      enter image description here



      You also have continuous methods that can be based on spline surfaces.



      enter image description here






      share|cite|improve this answer











      $endgroup$


















        2












        $begingroup$

        This is a huge question...



        It depends on the precision you'd like and on the kind of input data you have.



        For discrete methods, you can use Delaunay triangulation. See for example Delaunay Triangulation Algorithm and Application to Terrain Generation. You have commercial packages like https://www.geo-media.com/solutions/logiciel-covadis/modele-numerique-de-terrain.



        enter image description here



        You also have continuous methods that can be based on spline surfaces.



        enter image description here






        share|cite|improve this answer











        $endgroup$
















          2












          2








          2





          $begingroup$

          This is a huge question...



          It depends on the precision you'd like and on the kind of input data you have.



          For discrete methods, you can use Delaunay triangulation. See for example Delaunay Triangulation Algorithm and Application to Terrain Generation. You have commercial packages like https://www.geo-media.com/solutions/logiciel-covadis/modele-numerique-de-terrain.



          enter image description here



          You also have continuous methods that can be based on spline surfaces.



          enter image description here






          share|cite|improve this answer











          $endgroup$



          This is a huge question...



          It depends on the precision you'd like and on the kind of input data you have.



          For discrete methods, you can use Delaunay triangulation. See for example Delaunay Triangulation Algorithm and Application to Terrain Generation. You have commercial packages like https://www.geo-media.com/solutions/logiciel-covadis/modele-numerique-de-terrain.



          enter image description here



          You also have continuous methods that can be based on spline surfaces.



          enter image description here







          share|cite|improve this answer














          share|cite|improve this answer



          share|cite|improve this answer








          edited Feb 1 at 16:25

























          answered Feb 1 at 16:18









          mathcounterexamples.netmathcounterexamples.net

          26.9k22158




          26.9k22158























              0












              $begingroup$

              RBF based interpolation worked great. I divide the world in degree blocks e.. 31-32 lat 40-41 lon would be one block, I sample about 40k elevation pts from each block and fit RBF Gaussian bumps, or multiquadric functions to smaller sections of a block. I save W matrix and lat, lons for the fit and I have my continuous function to recreate the terrain at any point.



              https://hal.archives-ouvertes.fr/hal-00308008/document






              share|cite|improve this answer











              $endgroup$


















                0












                $begingroup$

                RBF based interpolation worked great. I divide the world in degree blocks e.. 31-32 lat 40-41 lon would be one block, I sample about 40k elevation pts from each block and fit RBF Gaussian bumps, or multiquadric functions to smaller sections of a block. I save W matrix and lat, lons for the fit and I have my continuous function to recreate the terrain at any point.



                https://hal.archives-ouvertes.fr/hal-00308008/document






                share|cite|improve this answer











                $endgroup$
















                  0












                  0








                  0





                  $begingroup$

                  RBF based interpolation worked great. I divide the world in degree blocks e.. 31-32 lat 40-41 lon would be one block, I sample about 40k elevation pts from each block and fit RBF Gaussian bumps, or multiquadric functions to smaller sections of a block. I save W matrix and lat, lons for the fit and I have my continuous function to recreate the terrain at any point.



                  https://hal.archives-ouvertes.fr/hal-00308008/document






                  share|cite|improve this answer











                  $endgroup$



                  RBF based interpolation worked great. I divide the world in degree blocks e.. 31-32 lat 40-41 lon would be one block, I sample about 40k elevation pts from each block and fit RBF Gaussian bumps, or multiquadric functions to smaller sections of a block. I save W matrix and lat, lons for the fit and I have my continuous function to recreate the terrain at any point.



                  https://hal.archives-ouvertes.fr/hal-00308008/document







                  share|cite|improve this answer














                  share|cite|improve this answer



                  share|cite|improve this answer








                  edited Feb 25 at 11:47

























                  answered Feb 9 at 19:52









                  BB_MLBB_ML

                  6,07652644




                  6,07652644






























                      draft saved

                      draft discarded




















































                      Thanks for contributing an answer to Mathematics Stack Exchange!


                      • Please be sure to answer the question. Provide details and share your research!

                      But avoid



                      • Asking for help, clarification, or responding to other answers.

                      • Making statements based on opinion; back them up with references or personal experience.


                      Use MathJax to format equations. MathJax reference.


                      To learn more, see our tips on writing great answers.




                      draft saved


                      draft discarded














                      StackExchange.ready(
                      function () {
                      StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fmath.stackexchange.com%2fquestions%2f3096411%2fa-suitable-function-for-terrain-mountain-modeling%23new-answer', 'question_page');
                      }
                      );

                      Post as a guest















                      Required, but never shown





















































                      Required, but never shown














                      Required, but never shown












                      Required, but never shown







                      Required, but never shown

































                      Required, but never shown














                      Required, but never shown












                      Required, but never shown







                      Required, but never shown







                      Popular posts from this blog

                      MongoDB - Not Authorized To Execute Command

                      How to fix TextFormField cause rebuild widget in Flutter

                      in spring boot 2.1 many test slices are not allowed anymore due to multiple @BootstrapWith