tileedit updates

martins

Orbiter Founder
Orbiter Founder
Joined
Mar 31, 2008
Messages
2,448
Reaction score
462
Points
83
Website
orbit.medphys.ucl.ac.uk
Just to let you know: I am currently migrating the tileedit tool (which allows to visually traverse the planetary texture and elevation quad-trees and has some basic elevation editing capabilities) from Matlab to Qt.

The Matlab dependency was always sub-optimal both for developers (Matlab licenses aren't free) and users (the Matlab runtimes are free but huge). So hopefully both these issues will go away by migrating to Qt.

I am currently in the process of re-implementing everything to the same level of functionality as the Matlab version, before doing any additional stuff. Most of it is there already, except for the elevation-editing part.

If you want to compile for yourself, I have updated the sources on github (https://github.com/mschweiger/orbiter-tileedit). You will need Qt to compile it (I used Qt5.6.3) and then either Qt-Creator or (better) the Qt plugin for Visual Studio for editing and compiling. Note that the Qt version hasn't been merged into the master branch yet, it's in the 1-qt-migration branch.

Let me know of any issues. Out of interest: Do coders here have experience with Qt, or are you using different tools for creating user interfaces?

Edit: Below is a link to the current development version of tileedit. I'll update this occasionally whenever I merge a new feature branch.

tileedit 190726-beta
 

Face

Well-known member
Orbiter Contributor
Addon Developer
Beta Tester
Joined
Mar 18, 2008
Messages
4,390
Reaction score
577
Points
153
Location
Vienna
Out of interest: Do coders here have experience with Qt, or are you using different tools for creating user interfaces?

I have experience with Qt, but only under Python. As for other UI kits, I'm currently using WPF and UWP.
 

kuddel

Donator
Donator
Joined
Apr 1, 2008
Messages
2,064
Reaction score
507
Points
113
Just out of curiosity, while strolling through the Qt download packages...
Did you (martins) had any special reasons for choosing Qt5.6.3 ?
Or was is just the version available at the time you've tried.
I would just like to see whether I can compile your project and thinking of using the (currently) latest 5.12.1 version.

Last time I had contact with Qt was around year 2000, so the "experience" is non-existent I think ;)
 

martins

Orbiter Founder
Orbiter Founder
Joined
Mar 31, 2008
Messages
2,448
Reaction score
462
Points
83
Website
orbit.medphys.ucl.ac.uk
Trying to reconstruct my thought process here ... I think I tried a later version but couldn't make it work with VS2015. This may have just been my own fault of not setting up some configuration item properly, but 5.6.3 seemed to work right away, so I stuck with it. I don't think it matters very much - I would be surprised if it doesn't compile with the later version, but let me know if there are any problems.
 

kuddel

Donator
Donator
Joined
Apr 1, 2008
Messages
2,064
Reaction score
507
Points
113
Thanks for the info.
I'll try Qt 5.12.1 and will report any progress / failures.
...waiting for the 2.9GB download and then installing it might take a minute or two ;)

BTW: I'll use Visual Studio 2015 to build your project.
 

martins

Orbiter Founder
Orbiter Founder
Joined
Mar 31, 2008
Messages
2,448
Reaction score
462
Points
83
Website
orbit.medphys.ucl.ac.uk
Incidentally, if you want to be a developer on the tileedit project just let me know :tiphat:

Same goes for face, since he's been working a lot with the quadtree concept.
 

kuddel

Donator
Donator
Joined
Apr 1, 2008
Messages
2,064
Reaction score
507
Points
113
Hey there,

ecxept for ...
Code:
1>------ Build started: Project: tileedit, Configuration: Debug x64 ------
1>  QtMsBuild: could not locate qt.targets, qt.props; project may not build correctly.
1>  cmap.cpp
1>  ddsread.cpp
1>  elvread.cpp
1>  main.cpp
1>  tile.cpp
1>  tilecanvas.cpp
1>  tileedit.cpp
1>tileedit.cpp(2): fatal error C1083: Cannot open include file: 'ui_tileedit.h': No such file or directory
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========
...
It went "flawlessly" so far ;)

Is 'ui_tileedit.h' missing or should this be created (by Qt)?
 

martins

Orbiter Founder
Orbiter Founder
Joined
Mar 31, 2008
Messages
2,448
Reaction score
462
Points
83
Website
orbit.medphys.ucl.ac.uk
Ah ok. I didn't include that in the repository because I thought this was magically auto-created by Qt. *I* certainly didn't write that file. Let me see if I can figure out what's going on ...

Edit: Just downloaded a fresh clone of the repository, to be really sure, and it does work for me. The file should be generated under tileedit/GeneratedFiles. So maybe there is a Qt version conflict ... Why can't these things just work :shrug:
 

kuddel

Donator
Donator
Joined
Apr 1, 2008
Messages
2,064
Reaction score
507
Points
113
UPDATE: Now it works! I could compile tileedit!
2nd time the file (ui_tileedit.h) was created. One of those "when it doesn't work, try again" instances!
 

martins

Orbiter Founder
Orbiter Founder
Joined
Mar 31, 2008
Messages
2,448
Reaction score
462
Points
83
Website
orbit.medphys.ucl.ac.uk
UPDATE: Now it works! I could compile tileedit!
2nd time the file (ui_tileedit.h) was created. One of those "when it doesn't work, try again" instances!

Allegedly Einstein said it's a sign of madness to try the same thing repeatedly and expect different outcomes. Maybe computers were a bit more predictable in his time :lol:
 

jarmonik

Well-known member
Orbiter Contributor
Addon Developer
Beta Tester
Joined
Mar 28, 2008
Messages
2,651
Reaction score
785
Points
128
I have some experience about the Qt. I wrote MathPlanner application for Linux using the Qt about 20 years ago. I would have probably ported and maintained the application on windows since it would still be usefull but sadly there were no "free" version of Qt available for windows back then. Qt is the best one I know of and I might start using it again, now that's it available. I wonder what new has appeared during the past 20 years. :lol: (no need to answer)
 
Last edited:

Face

Well-known member
Orbiter Contributor
Addon Developer
Beta Tester
Joined
Mar 18, 2008
Messages
4,390
Reaction score
577
Points
153
Location
Vienna
UPDATE: Now it works! I could compile tileedit!
2nd time the file (ui_tileedit.h) was created. One of those "when it doesn't work, try again" instances!

:lol: Yeah, on some conference I attended years ago, an MS dev demonstrated the then "new" WPF MVVM approach and its benefits, only to promptly fail being able to compile with a completely unlogical compiler error. After some minutes being clueless in front of the audience, he just proclaimed "if in doubt, restart Visual Studio". And indeed it compiled just fine after restart.
 

Urwumpe

Not funny anymore
Addon Developer
Donator
Joined
Feb 6, 2008
Messages
37,588
Reaction score
2,312
Points
203
Location
Wolfsburg
Preferred Pronouns
Sire
:lol: Yeah, on some conference I attended years ago, an MS dev demonstrated the then "new" WPF MVVM approach and its benefits, only to promptly fail being able to compile with a completely unlogical compiler error. After some minutes being clueless in front of the audience, he just proclaimed "if in doubt, restart Visual Studio". And indeed it compiled just fine after restart.

You can never use "Rebuild" too often with VS.
 

Face

Well-known member
Orbiter Contributor
Addon Developer
Beta Tester
Joined
Mar 18, 2008
Messages
4,390
Reaction score
577
Points
153
Location
Vienna
You can never use "Rebuild" too often with VS.

Indeed this as well. Solutions start to grow projects over projects, and with some links between them - perhaps riddled with custom batch copy scripts - you often find yourself in the situation that a fresh clone will only build after 2 or 3 rebuilds. Very annoying.
 

Urwumpe

Not funny anymore
Addon Developer
Donator
Joined
Feb 6, 2008
Messages
37,588
Reaction score
2,312
Points
203
Location
Wolfsburg
Preferred Pronouns
Sire
Indeed this as well. Solutions start to grow projects over projects, and with some links between them - perhaps riddled with custom batch copy scripts - you often find yourself in the situation that a fresh clone will only build after 2 or 3 rebuilds. Very annoying.

Also what VS keeps in caches and precompiled header files can quickly be outdated after updating from repository.
 

martins

Orbiter Founder
Orbiter Founder
Joined
Mar 31, 2008
Messages
2,448
Reaction score
462
Points
83
Website
orbit.medphys.ucl.ac.uk
Well, some systems are actually designed to require multiple compiler passes.

When compiling a LaTeX document, my routine is usually

- run latex
- run bibtex
- run latex
- run latex again

to make sure all references and citations are properly updated. I don't actually know if this is still necessary with newer LaTeX versions, but I've got used to it.
 

Urwumpe

Not funny anymore
Addon Developer
Donator
Joined
Feb 6, 2008
Messages
37,588
Reaction score
2,312
Points
203
Location
Wolfsburg
Preferred Pronouns
Sire
to make sure all references and citations are properly updated. I don't actually know if this is still necessary with newer LaTeX versions, but I've got used to it.

AFAIR yes.

But almost all good IDEs for working with LaTeX do this automatically without requiring manual labor.
 

SolarLiner

It's necessary, TARS.
Addon Developer
Joined
Jun 14, 2010
Messages
1,847
Reaction score
2
Points
0
Location
404 ROAD NOT FOUND
Hell, there's even a CLI tool that mathemagically calls latex the right number of times.

I've got a bt too deep in my Linux exploration and has become fairly accustomed to GTK+ now, through PyGObject, GtkSharp and even gtkmm. I've even built a tool with the latter for my music production needs, however now I'm stuck in MSYS trying to get all the appropriate mingw dependencies to get a Windows build going...

Is the Qt version of tileedit open-sourced somewhere? It seems like the UI-side of it would be small enough that I could use that as an example and watch it grow in order to get myself versed in the other side of the Linux UI frameworks... :yes:

EDIT: The first page has the link. How I didn't the only thing of color in that post...
 
Last edited:

paddy2

Addon Developer
Addon Developer
Joined
Jul 21, 2012
Messages
384
Reaction score
1
Points
18
Location
Kent, UK
Any chance it will run 32 Bit or is it 64 Bit only?
 

martins

Orbiter Founder
Orbiter Founder
Joined
Mar 31, 2008
Messages
2,448
Reaction score
462
Points
83
Website
orbit.medphys.ucl.ac.uk
Any chance it will run 32 Bit or is it 64 Bit only?

I haven't tried to build a 32-bit version since I currently only have a 64-bit Qt install, but if you want to give it a try, I don't see a reason why it wouldn't compile for 32-bit targets.
 
Top