Batch of questions - Navigation to Start, Cursor Color, Altitude Graph, Heatm...

Started by G_flow, July 07, 2023, 02:01:03 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

G_flow

Hello, any advice for the following?

1. Navigation to Start - I want to press on a point on a map and then Google Maps or Waze will take me there. It useful when I'm driving to the start point of the track.  I bumped it yesterday but can't find it now.

2. Can I change the cursor color/size? Now it's red.

3. When I'm following a track+recording, I don't see my location on the graph on the "right panel". I do see the altitude graph, but not my position on it.

4. Is there a way to display Strava heat map?

5. Is it possible to display a semi-transparent layer of a map on another map? So for example I can have the satellite map as the base map and on top of it, a semi-transperent topographic map, so I can "see through" the satellite map.

Many thanks!




Juanjo

Hi,

Quote1. Navigation to Start - I want to press on a point on a map and then Google Maps or Waze will take me there. It useful when I'm driving to the start point of the track.  I bumped it yesterday but can't find it now.

you must create a waypoint first. Touching it will open a dialog, at the bottom there are several buttons, the one with the arrow is the one you are looking for.

QuoteCan I change the cursor color/size? Now it's red.

Yes you can, put your custom cursors (png format) on the folder defined in 'Settings - App storage - Cursors Directory' first and then look at 'Settings - User interface - Cursor'

Quote3. When I'm following a track+recording, I don't see my location on the graph on the "right panel". I do see the altitude graph, but not my position on it.

There is another graph for that that will display above the dashboard. Look at 'Settings - User interface - Dashboard - Altitude graph'

Quote4. Is there a way to display Strava heat map?

You must create an entry for it in the onlinemapsources.xml file located on the 'customonlinemaps' subfolder of the folder defined in 'Settings - App storage - Maps directory'. Example of mine here below:

<onlinemapsource uid="100034">
<name>Strava HeatMap</name>
<url><![CDATA[https://strava-heatmap.tiles.freemap.sk/all/hot/{$z}/{$x}/{$y}.png?px=256]]></url>
<website><![CDATA[© Strava]]></website>
<minzoom>1</minzoom>
<maxzoom>19</maxzoom>
<projection>MERCATORESFERICA</projection>
<servers></servers>
<httpparam name="User-Agent">{om}</httpparam>
<cacheable>1</cacheable>
<downloadable>1</downloadable>
<maxtilesday>0</maxtilesday>
<maxthreads>0</maxthreads>
<xop></xop>
<yop></yop>
<zop></zop>
<qop></qop>
<sop></sop>
</onlinemapsource>


If you are not familiar with xml, look at the builtin onlinemapsources.xml file located in the maps directory for inspiration.

Quote5. Is it possible to display a semi-transparent layer of a map on another map? So for example I can have the satellite map as the base map and on top of it, a semi-transperent topographic map, so I can "see through" the satellite map.

Yes it is, in oruxmaps those are called composite maps. On the map selector screen, at the top there are four buttons, click on the one with a plus sign and select 'Composite map'.
Note that all maps being part of the composite must have the same projection and the same tile size.

G_flow

Thank you very much, @Juanjo!! Much appreciated :)

I've managed to check and succeed with Navigation to Start and location on Graph. I'm still checking the suggested 3 solutions for the remaining issues. I'll report soon.

Haldo

Quote from: Juanjo on July 07, 2023, 03:31:52 PM

You must create an entry for it in the onlinemapsources.xml file located on the 'customonlinemaps' subfolder of the folder defined in 'Settings - App storage - Maps directory'. Example of mine here below:


If you are not familiar with xml, look at the builtin onlinemapsources.xml file located in the maps directory for inspiration.


about that.....  I always tried this... mainly for the google maps and earth maps   but I never achieve that.

I use the customonlinemaps as secondary maps location and I put the custom xml file in that dir. But I never found those maps in the list of the available maps.

What am I doing wrong?

Juanjo

Quote from: Haldo on July 11, 2023, 04:47:00 PM
about that.....  I always tried this... mainly for the google maps and earth maps   but I never achieve that.

I use the customonlinemaps as secondary maps location and I put the custom xml file in that dir. But I never found those maps in the list of the available maps.

What am I doing wrong?

Well, many things may go wrong, it's difficult to say without seeing the file.

Here below is an example of a valid file containing only one map definition, you can add as many <onlinemapsource> blocks as you want

<?xml version="1.0" encoding="utf-8"?>
<onlinemapsources>

<onlinemapsource uid="100034">
<name>Strava HeatMap</name>
<url><![CDATA[https://strava-heatmap.tiles.freemap.sk/all/hot/{$z}/{$x}/{$y}.png?px=256]]></url>
<website><![CDATA[© Strava]]></website>
<minzoom>1</minzoom>
<maxzoom>19</maxzoom>
<projection>MERCATORESFERICA</projection>
<servers></servers>
<httpparam name="User-Agent">{om}</httpparam>
<cacheable>1</cacheable>
<downloadable>1</downloadable>
<maxtilesday>0</maxtilesday>
<maxthreads>0</maxthreads>
<xop></xop>
<yop></yop>
<zop></zop>
<qop></qop>
<sop></sop>
</onlinemapsource>

</onlinemapsources>


One important thing is the uid, it is used to uniquely identify the map in the tile cache database. They must be unique not only within your file but within the app, meaning that you can not use in your custom file uids already present in the builtin one. If you do that your entries will be ignored.

Also, when you modify the custom onlinemapsources file, you have to refresh the map list to have them appearing in the list

Haldo

Quote from: Juanjo on July 11, 2023, 05:25:43 PM
Well, many things may go wrong, it's difficult to say without seeing the file.

Here below is an example of a valid file containing only one map definition, you can add as many <onlinemapsource> blocks as you want

<?xml version="1.0" encoding="utf-8"?>
<onlinemapsources>

<onlinemapsource uid="100034">
<name>Strava HeatMap</name>
<url><![CDATA[https://strava-heatmap.tiles.freemap.sk/all/hot/{$z}/{$x}/{$y}.png?px=256]]></url>
<website><![CDATA[© Strava]]></website>
<minzoom>1</minzoom>
<maxzoom>19</maxzoom>
<projection>MERCATORESFERICA</projection>
<servers></servers>
<httpparam name="User-Agent">{om}</httpparam>
<cacheable>1</cacheable>
<downloadable>1</downloadable>
<maxtilesday>0</maxtilesday>
<maxthreads>0</maxthreads>
<xop></xop>
<yop></yop>
<zop></zop>
<qop></qop>
<sop></sop>
</onlinemapsource>

</onlinemapsources>


One important thing is the uid, it is used to uniquely identify the map in the tile cache database. They must be unique not only within your file but within the app, meaning that you can not use in your custom file uids already present in the builtin one. If you do that your entries will be ignored.

Also, when you modify the custom onlinemapsources file, you have to refresh the map list to have them appearing in the list


well...   Since I couldn't make it work this way, I always manually add the two maps I need in the original onlinemapsource.

It works like a charm. But the down part is that everytime the onlinemapsource gets updated I have to do it again.

BTW here is my file. The uid are unique.

<?xml version="1.0" encoding="utf-8"?>
<onlinemapsources>

<onlinemapsource uid="9999">
<name>Google Maps</name>
<url><![CDATA[http://mt{$s}.google.cn/vt/lyrs=m@121&hl={$l}&x={$x}&y={$y}&z={$z}]]></url>
<minzoom>0</minzoom>
<maxzoom>19</maxzoom>
<projection>MERCATORESFERICA</projection>
<servers>0,1,2,3</servers>
<httpparam name=""></httpparam>
<cacheable>1</cacheable>
<downloadable>1</downloadable>
<maxtilesday>0</maxtilesday>
<maxthreads>0</maxthreads>
<xop></xop>
<yop></yop>
<zop></zop>
<qop></qop>
<sop></sop>
</onlinemapsource>

<onlinemapsource uid="9998">
<name>Google Earth</name>
<!--<url><![CDATA[http://khm{$s}.google.cn/kh/v=123&x={$x}&y={$y}&z={$z}]]></url>-->
<url><![CDATA[http://www.google.cn/maps/vt?lyrs=s@168&x={$x}&y={$y}&z={$z}]]></url>
<minzoom>0</minzoom>
<maxzoom>20</maxzoom>
<projection>MERCATORESFERICA</projection>
<servers>0,1,2,3</servers>
<httpparam name=""></httpparam>
<cacheable>1</cacheable>
<downloadable>1</downloadable>
<maxtilesday>0</maxtilesday>
<maxthreads>0</maxthreads>
<xop></xop>
<yop></yop>
<zop></zop>
<qop></qop>
<sop></sop>
</onlinemapsource>

</onlinemapsources>


and of course I am refreshing the list of maps

Haldo

I stopped trying a long ago.. but now I know what was the issue....   I was stupid.

The name of the file MUST be "onlinemapsources"

Mine was without the ending "s"

Now works. Thank you anyway.

Tronpo

Quote from: Haldo on July 12, 2023, 09:28:13 AM
I stopped trying a long ago.. but now I know what was the issue....   I was stupid.

The name of the file MUST be "onlinemapsources"

Mine was without the ending "s"

Now works. Thank you anyway.

How angry it is, how something so simple has bothered you for so long... I understand you.

🅃🅁🄾🄽🄿🄾

G_flow

Quote from: Juanjo on July 07, 2023, 03:31:52 PM

You must create an entry for it in the onlinemapsources.xml file located on the 'customonlinemaps' subfolder of the folder defined in 'Settings - App storage - Maps directory'. Example of mine here below:

<onlinemapsource uid="100034">
<name>Strava HeatMap</name>
<url><![CDATA[https://strava-heatmap.tiles.freemap.sk/all/hot/{$z}/{$x}/{$y}.png?px=256]]></url>
<website><![CDATA[© Strava]]></website>
<minzoom>1</minzoom>
<maxzoom>19</maxzoom>
<projection>MERCATORESFERICA</projection>
<servers></servers>
<httpparam name="User-Agent">{om}</httpparam>
<cacheable>1</cacheable>
<downloadable>1</downloadable>
<maxtilesday>0</maxtilesday>
<maxthreads>0</maxthreads>
<xop></xop>
<yop></yop>
<zop></zop>
<qop></qop>
<sop></sop>
</onlinemapsource>


If you are not familiar with xml, look at the builtin onlinemapsources.xml file located in the maps directory for inspiration.

Yes it is, in oruxmaps those are called composite maps. On the map selector screen, at the top there are four buttons, click on the one with a plus sign and select 'Composite map'.
Note that all maps being part of the composite must have the same projection and the same tile size.

Hello, I've tried today to add the code you inserted to the xml file, but when I looked at the ONLINE maps there wasn't any maps there. Also previous maps disappeared. I think I'm using a unique onlinemapsource file as someone in the community made it custom-made to our needs. Is it possible that I insert the all code of the file and you would implement what is needed? But I don't think I can upload the file here... Any suggestions? Thank you!!


G_flow

Quote from: Juanjo on July 07, 2023, 03:31:52 PM


Yes you can, put your custom cursors (png format) on the folder defined in 'Settings - App storage - Cursors Directory' first and then look at 'Settings - User interface - Cursor'


Thank you for your suggestion, but I don't think the solution works for me. When I followed your instructions, it only resulted in a PNG picture that couldn't be rotated like the red arrowhead shown in the screenshot. What I actually want is to be able to change the size and color of the arrowhead. Do you think it's possible to achieve this? Thank you for your assistance.


Juanjo

Quote from: G_flow on July 15, 2023, 03:50:53 PM
Hello, I've tried today to add the code you inserted to the xml file, but when I looked at the ONLINE maps there wasn't any maps there. Also previous maps disappeared. I think I'm using a unique onlinemapsource file as someone in the community made it custom-made to our needs. Is it possible that I insert the all code of the file and you would implement what is needed? But I don't think I can upload the file here... Any suggestions? Thank you!!

it is not advisable to modify the builtin onlinemapsources.xml file on the maps folder because, when the app is updated, this file may be overwritten.
You have to create your own onlinemapsouces.xml file in the customonlinemaps subfolder. The app would search for maps on both files and will never modify/overwrite your custom one.

The full code is this:
<?xml version="1.0" encoding="utf-8"?>
<onlinemapsources>

<onlinemapsource uid="100034">
<name>Strava HeatMap</name>
<url><![CDATA[https://strava-heatmap.tiles.freemap.sk/all/hot/{$z}/{$x}/{$y}.png?px=256]]></url>
<website><![CDATA[© Strava]]></website>
<minzoom>1</minzoom>
<maxzoom>19</maxzoom>
<projection>MERCATORESFERICA</projection>
<servers></servers>
<httpparam name="User-Agent">{om}</httpparam>
<cacheable>1</cacheable>
<downloadable>1</downloadable>
<maxtilesday>0</maxtilesday>
<maxthreads>0</maxthreads>
<xop></xop>
<yop></yop>
<zop></zop>
<qop></qop>
<sop></sop>
</onlinemapsource>

</onlinemapsources>


You can copy this to a file, save it as onlinemapsources.xml and copy it to the customonlinemaps folder, then goto oruxmaps and refresh the map list, a new map named 'Strava HeatMap' should appear in the list

Juanjo

Quote from: G_flow on July 15, 2023, 04:07:07 PM
Thank you for your suggestion, but I don't think the solution works for me. When I followed your instructions, it only resulted in a PNG picture that couldn't be rotated like the red arrowhead shown in the screenshot. What I actually want is to be able to change the size and color of the arrowhead. Do you think it's possible to achieve this? Thank you for your assistance.

I am not sure I understand what you want to achieve here. If what you mean is 'is it possible to have cursors that can rotate at runtime?' the answer is no.
You can use custom cursors but those are just plain png files. The app will not rotate them in any way.

G_flow

So I'm happy to update that I've managed to deal with the heatmap, that's great, thx!

About the transparent issue:


Quote from: Juanjo on July 07, 2023, 03:31:52 PM

Yes it is, in oruxmaps those are called composite maps. On the map selector screen, at the top there are four buttons, click on the one with a plus sign and select 'Composite map'.
Note that all maps being part of the composite must have the same projection and the same tile size.

I did what you said but I don't see the maps that I wanna use on the list that opens, once I press the plus sign.

The maps I wanna use:

- Offline map
- Online satellite map
- Online Strava heatmap


G_flow

Quote from: Juanjo on July 15, 2023, 05:56:32 PM
I am not sure I understand what you want to achieve here. If what you mean is 'is it possible to have cursors that can rotate at runtime?' the answer is no.
You can use custom cursors but those are just plain png files. The app will not rotate them in any way.

I see, I wish the feature of changing the cursor size and color be implemented soon, sometimes when I navigate the cursor is too small for me and the path on the map is red, which makes it all difficult.

Where can I purpose that to the developers?

Juanjo

Quote from: G_flow on July 18, 2023, 02:50:33 PM
I see, I wish the feature of changing the cursor size and color be implemented soon, sometimes when I navigate the cursor is too small for me and the path on the map is red, which makes it all difficult.

Where can I purpose that to the developers?

This can already be done using custom cursors as I explained you here:
QuoteYes you can, put your custom cursors (png format) on the folder defined in 'Settings - App storage - Cursors Directory' first and then look at 'Settings - User interface - Cursor'

As an example, copy the attached file to the cursors directory on your device, then goto 'Settings - User interface - Cursor' and touch GPS cursor, a list will open containing the 2 builtin cursors and the new one 'North arrow blue'.
BTW, unlike what i said in another post, this cursor will rotate to show the direction you are moving to. To work properly the arrow on the original png must point to the North.