Coder Social home page Coder Social logo

Comments (15)

robertlipe avatar robertlipe commented on June 6, 2024

I looked into this some time ago. Now that we have a Qt floor that includes
QJsonDocument (I think) the Points case would be super straight-forward and
a lovely starter project for someone wanting to get their feet wet. Tracks
and Routes would map to MultiLineStrings easily. There would be some
special casing for their weird handling at the antimeridian, but I'd bet we
could ship millions of copies before anyone noticed we got that wrong.

We don't really have concepts of Polygons and such. We could possibly
special case if first and end points were the same. We have a few formats
that have this concept (KML, shapefile) but it's not fundamental to us
given the "GPS" in "GPSBabel".

Anyone wanting to tackle this, please sign up.

On Thu, Sep 8, 2016 at 11:38 AM, Andre-John Mas [email protected]
wrote:

It would be useful to be able to export directly to GeoJSON. Currently I
need to convert to GPX and then with another application GPX to GeoJSON.
Having native GeoJSON would be useful.

GeoJSON is covered by RFC-7946 https://tools.ietf.org/html/rfc7946


You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
#53, or mute the thread
https://github.com/notifications/unsubscribe-auth/AIUh79St_CPj-WWLUI8c9DzNjO61aRaiks5qoDohgaJpZM4J4MxH
.

from gpsbabel.

GPSBabelDeveloper avatar GPSBabelDeveloper commented on June 6, 2024

For waypoints, you can sort of see what this would look like with commit 4ce284a It probably doesn't validate, but the output for trivial waypoints (no alt) sure looks pretty GeoJSON-y. The serialization is probably not super memory efficient, but I'm not sure it has to be. Do you (or anyone else) want to run with it? My (scarce) nights and weekends are better devoted to fixing the problems in the 1.5.3 release I made in Jan (sigh) and rolling up the fixes to date over a feature requested by one user. There may have been a second, but this has been on my distant radar for a while...

from gpsbabel.

GPSBabelDeveloper avatar GPSBabelDeveloper commented on June 6, 2024

Added in ecbf040 and a few fast-follow submits to fix issues with older Qt.

from gpsbabel.

HarelM avatar HarelM commented on June 6, 2024

What about conversion from GeoJson to other formats? I see that the tests in the above commit are only referring to GeoJson as Output...?
Since this was not supported when I started using GPSBabel I wrote it (in C#).
If this helps feel free to translate the code (conversion from GPX to GeoJson):
https://github.com/IsraelHikingMap/Site/blob/master/IsraelHiking.API/Converters/GpxGeoJsonConverter.cs
It uses LINQ and some C# specific operators (like ?? which is a null check + assignment) which reduces the amount of code a bit but the general idea is there.

from gpsbabel.

robertlipe avatar robertlipe commented on June 6, 2024

from gpsbabel.

HarelM avatar HarelM commented on June 6, 2024

I'll see if I can find the relevant C++ neurons.
Do you have a getting started readme for first compilation and coding conventions?
I work on windows.
Do you want me to open a new issue for geojson as input?

from gpsbabel.

robertlipe avatar robertlipe commented on June 6, 2024

from gpsbabel.

HarelM avatar HarelM commented on June 6, 2024

Thanks for the intro. I'll try to setup the environment and compile the code, we'll see how it goes from there.
Let me know if you want me to create a windows developer getting started manual (I can add it to the readme.md file if you'd like).
Assuming I'll be able to make it work will the next official release will only be a year from now?

from gpsbabel.

robertlipe avatar robertlipe commented on June 6, 2024

from gpsbabel.

HarelM avatar HarelM commented on June 6, 2024

I think geo-stuff is very interesting, I don't think people are less interested in it.
I just think in terms of standards - companies and developers understand now (as opposed to ten years ago) that you don't need to invent the wheel every time you write a program (especially when you want to pass data from one program to the other) - just take something that is a standard and use it.
I use GPSBabel in my site in order to be able to support legacy format, but the output is always GPX, standard, not interest (IMHO).
To be more practical, I tried to compile the project on my PC and got the following error:

11:57:27: Running steps for project GPSBabel...
11:57:27: Starting: "C:\Qt\5.8\msvc2015_64\bin\qmake.exe" D:\Github\GPSBabel\GPSBabel.pro -spec win32-msvc2015 "CONFIG+=debug" "CONFIG+=qml_debug"
11:57:27: The process "C:\Qt\5.8\msvc2015_64\bin\qmake.exe" exited normally.
11:57:27: Starting: "C:\Qt\Tools\QtCreator\bin\jom.exe" qmake_all
Error: File Makefile doesn't exist.
11:57:27: The process "C:\Qt\Tools\QtCreator\bin\jom.exe" exited with code 2.
Error while building/deploying project GPSBabel (kit: Desktop Qt 5.8.0 MSVC2015_64bit)
The kit Desktop Qt 5.8.0 MSVC2015_64bit has configuration issues which might be the root cause for this problem.
When executing step "qmake"
11:57:28: Elapsed time: 00:01.

As I said, I'm new to Qt and I'm not sure how to solve this one, googling didn't help much and my c/c++ skills were around visual studio which does all the hard work behind the scenes so I'm not very good with all the makefiles etc... (Last time I used it was in the university, around 8 years ago...)
I also needed to add goejson.cc to the pro file but that was not a real problem, although the way the IDE did it was different than what's currently written, which is weird IMO.

from gpsbabel.

HarelM avatar HarelM commented on June 6, 2024

Well, it seems that the failed compilation above creates a cxproj file I can use with visual studio to compile. unfortunately, ftruncate in mtk_logger.cc is unix specific function... :-( has this project was successfully built lately on windows?

from gpsbabel.

GPSBabelDeveloper avatar GPSBabelDeveloper commented on June 6, 2024

from gpsbabel.

robertlipe avatar robertlipe commented on June 6, 2024

from gpsbabel.

HarelM avatar HarelM commented on June 6, 2024

made it work with the following lines:

#ifdef __WIN32__
#include <io.h>
#define ftruncate _chsize
#endif

I managed to compile it and run it only on debug. break point is hitting, finally to the interesting part... :-)

from gpsbabel.

HarelM avatar HarelM commented on June 6, 2024

There's a sln file and vcxproj file, but they seem to be old, do you want me to replace them when I check-in my code or do you want the qmake should do the hard work, there are some things that are misconfigured there like the win8.0 sdk.

from gpsbabel.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.