23-05-2009, 12:48 PM
erased
Post Edited ( 05-23-09 23:49 )
Post Edited ( 05-23-09 23:49 )
FS Earth Tiles v1.0
|
23-05-2009, 12:48 PM
erased
Post Edited ( 05-23-09 23:49 )
25-05-2009, 07:09 PM
Hi all,
I am trying to make a bitmap from Schiphol. With Google Earth I made a KML file and placed it as AreaKML.kml in the working folder. When pressing K nothing happens. What am I doing wrong here ? Thanks, Gerard
Gerard Salden
Netherlands
30-07-2009, 10:07 PM
I found a bug in v1.0 in the xyz type of service. Specifically the bug is apparent when the g***** service protocol version 41 uses z=18 for
the highest resolution and z=17 for the next-to-highest, whilst the URL sent from FSET is using z=1. Example: Use the execellent maptiler http://www.maptiler.org/google-maps-coor...rojection/ applet to confirm the xyz values of a particular lat and long. If you use this manual URL check http://khm2.******.***/kh/v=41&x=71149&s=&y=37708&z=17&s=Galileo (You get a shopping mall) But if you enter in Lat N 60,29',2" and Lon E 15,25',5" with a service section like this in the INI (hostname withheld like everybody else does): [Service4] ServiceCodeing = xyz ServiceUrl = http://khm2.******.***/kh/v=41&%s&s=Galileo and watch the URL as Service4 tries to fetch at resolution 1 it will actually use z=1 ! which looks like this: http://khm2.******.***/kh/v=41&x=71149&s=&y=37708&z=1&s=Galileo (a picture of Northern Europe and Asia) So to fix FSET support of the g***** service there needs to be a bug fixed, also notice the empty &s in the URL string. I do not have the skills to fix this (I think, but I've downloaded the sources and will give it a go). EDIT: OMG! I did it! Well actually the author of FSET had already done it in his code, it was there all the time and I just had to enable it using TileCodeingScript.cs. I have never seen such an extensible, and easy to change, piece of software!! Kudos to the author of this phenomenal program. I'll buy you a beer anytime. So, as I have now fixed GoogleMaps I am not going to waste it by attaching the correct Service section in this thread, please PM me if you want/need GoogelMaps highres photoscenery in FSX. Cheers Post Edited ( 08-01-09 09:13 )
03-08-2009, 07:45 PM
Hello!
I need some help. I have tried for about 2 days to program the service to terraserver, but have had no luck. I would very much appreciate if someone who understands this would help me out. Here is what i did so far: [Service1] ServiceCodeing = xyz ServiceUrl = http://terraserver-usa.com/tile.ashx?t=1&s=10&% #you need to replace the * with a service base url ServerVariations = http://www.terraserver-usa.com/ #Server variations that all have to contain the same Tiles (old versions v=24, v=20) #Server variations that all have to contain the same Tiles I read the read me like 1000 times and still dont understand it. Terraservers website is http://www.terraserver-usa.com Thank you so much for this great program! Matt
04-08-2009, 10:47 AM
Would anyone be so kind as to explain to me "cookie monster style" how to get trees and buildings to show thru the photoscenery? I'd be indebted to you!
Thanks in advance.
04-08-2009, 12:55 PM
Quote:ecvatc wrote:
06-08-2009, 11:23 PM
Quote:ecvatc wrote: The problem is that the tile algorithm terraserver is using is not matching to the algorithm that FSET is using, for example; the Roosevelt island is on FSET coordinates x=2413, y=3078 and z=13, this is on terraserver, http://terraserver-usa.com/tile.ashx? T=1&S=13&Z=18&X=367&Y=2820 (on z=18 FSET is zoomed in too much), so you need to do some mathematics to recode the map parameters. But, why bother, the maps on terraserver are on my quick glimpse inferior to the ones on Yahoo and Google? Cheers
07-08-2009, 12:18 AM
Thanks,
I just wanted to get "public domain" maps on my computer which were not illegal, lol. How would I go about doing this in fset?
02-09-2009, 04:39 PM
Hi, how i can use go.gle earth?
Thanks
12-09-2009, 09:30 AM
Guys, what is the correct link for using GE maps in FSET? I think the link provided with default FSET is outdated...
![]()
14-09-2009, 07:21 AM
Quote:bina wrote: Very strange but it seems that this specific service reactivated the quadrant codeing access method lately which means you could access the old way by just adapting the version number. But it will not help you so much because they changed the captcha thing. It seems that they removed the possibility to enter a displayed code to continue and just present you a sorry and a blocking. Also this sorry and blocking is now presented under the same URL where the tile is expected which is causing FSET's www going crazy and reloading that page over and over. (the going crazy can only be fixed in FSET's main code) Since there are question about the XYZ codeing in relation with other services also I will try to give a shor explanation. You will need to read in the UserDocu.rtf to maybe understand it better. Image a 4*4 matrix of little pictures that all have the same size 256x256 pixel (=1 tile) X X X X X X X X X X X X each X is one of this little picture (tile) So how can you refer to one specific picture in that matrix nowt? Simple by adding 2 numbers/indizes x and y which tells you the location in the matrix The first picture top left would be at X=0, Y=0 The second picture right of the first at X=1, Y=0 Thr picture below the first picture is on a new row which we count with Y so it will have the address X=0, Y=1 with (X,Y) => the matrix looks that way: (0,0) (1,0) (2,0) (3,0) (0,1) (1,1) (2,1) (3,1) (0,2) (1,2) (2,2) (3,2) (0,3) (1,3) (2,3) (3,3) so far it's simple. Now the zoom level comes into play. On the very Top LVL (Zoom 18 in FSET) the whole world is covered with just one tile. That means the matrix dimension is 1x1 and X,Y can only be 0,0. Zoom 18: (0,0) For the next zoom level the tile count doubles in each dimension that means we have 4 tiles for the whole world Zoom 17: (0,0) (1,0) (0,1) (1,1) and doubleing again the world is now covered with 16 tiles: Zoom 16: (0,0) (1,0) (2,0) (3,0) (0,1) (1,1) (2,1) (3,1) (0,2) (1,2) (2,2) (3,2) (0,3) (1,3) (2,3) (3,3) That Zoom lvl is now the third coordinate or the thrid number we need for the full address of a tile. (X,Y,Z) foreaxmple I could now access the Tile (3,2) on zoom 16 with: (3,2,16) or in words X=3, Y=2, Z=16 This is the system as FSET uses it internal although the names is not X,Y,Z but iAreaCodeX, iAreaCodeY, iAreaCodeLevel which are the parameters that you get in the TileCodeingScript.cs (open it with a simple texteditor like notepad) Now the services comes into play. Each service has an own codeing system for the tiles. So the XYZ of one services does not fit the to another one. when you write ServiceCodeing = xyz in FSEarthTiles.ini file then FSET calculates the x,y,z fitting to one know service at that time. The codeing is: (check the TileCodeingScript.cs File) Int64 vServiceZ = iAreaCodeLevel; Int64 vServiceX = iAreaCodeX; Int64 vServiceY; Int32 vYConvertPower = (Int32)(EarthMath.cLevel0CodeDeep - iAreaCodeLevel - 1); //-1 because Service uses positive and negative numbers for Y vServiceY = (1 << vYConvertPower) - 1 - iAreaCodeY; // 1<<vYConvertPower (is equal to 2^vYConvertPower) You see X and Z is the same as FSET handles it and Y is different (has positive and negative numbers) This Y is of course a little strange and special but this is the choose of the service. Now the most simple and logical way of X,Y,Z addressing would be: Int64 vServiceZ = EarthMath.cLevel0CodeDeep - iAreaCodeLevel; Int64 vServiceX = iAreaCodeX; Int64 vServiceY = iAreaCodeY; vResultCode = "&x=" + vServiceX.ToString() + "&y=" + vServiceY.ToString() + "&z=" + vServiceZ.ToString() (note that EarthMath.cLevel0CodeDeep is a constant and has teh value 18.) which marks the Top Level (whole word covered with 1 tile) with z=0 instead z=18 and counting upward (next lvl z=1, next z=2 ...) The z=18 for the top level was a complete free choose when I programmed FSET. I choosed that to work with zoomlevels close to zero and not close to 18. (note it had been a bit better and less confusing with high resolution when I didn't change the sign also and counted upward instead downward) Funny I discovered later that one service used the same (bad) z like you can see further above: ( Int64 vServiceZ = iAreaCodeLevel) Well and what's with this famous specific service1 now? Well they choosed the simple and logic way of XYZ addressing. So if you want to access that way you have to do the codeing in the TileCodeingScript.cs and activate the CSharp ScriptHandling in the FSEarthTiles.ini file: UseCSharpScripts = Yes and make a service entry in the FSEarthTiles.ini file [Service6] ServiceCodeing = xyinvz #for the case we coded: else if (EarthCommon.StringCompare(iUseCode, "xyinvz")) in TileCodeingScript.cs ServiceUrl = ... check some pages back in this thread to see how such a TileCodeingScript.cs adaption was done for another service.
19-09-2009, 12:26 AM
Due to request.. here a working TileCodeScript.cs file which contains the expansions that were addressed in this thread TileCodeingScript.cs --> http://rapidshare.com/files/281966666/Ex...er2009.zip <-- This script supports: ServiceCodeing = xyz ServiceCodeing = X1Y1X2Y2 ServiceCodeing = xyinvz And the quadrant codeing mode: (4 letters is the identification for the quadrant codeing mode whereas those 4 letters are used for the quadrants codeing.) ServiceCodeing = 0123 ServiceCodeing = qrts The TileCodeingScript.cs generates the string (code) that will be inserted into the placeholder %s that you use in the URL parameter ServiceUrl = http://www.DummyService.com/Tile%s.jpg in the FSEarthTiles.ini file. You can replace your TileCodeScript.cs file in your FSEarthTiles folder with this one. Don't forget you have to activate C#-Scripts in the FSEarthTiles.ini with UseCSharpScripts = Yes That this C#-Script will be read in compiled and used when you start FSEarthTiles.
20-09-2009, 12:25 AM
Thanks for the link and the hints, HB-100!
This is what I did to make the Googy work but to no avail, unfortunately! ![]() 1) replaced the old TileCodeScript.cs with the new one. 2) edited FSEartTiles.ini like this: http://khm0.******.***/kh/v=41&%s 3) enabled "UseCSharpScripts" to YES I did nothing else than above. Am I following the right steps?!? Post Edited ( 09-20-09 01:27 )
20-09-2009, 06:24 AM
/kh/v=45&hl=en%s&s=Galileo
really not that difficult. I am somewhat surprised you have difficult. Wasn't it yout hat posted this ?: http://khm0.******.com/kh/v=36&hl=en&x=4...&s=Galileo Ok how to figure such things out? Open TileCodeingScript.cs with a text editor and also when you are maybe not a programmer you could try to match some letters: vResultCode = "&x=" + vServiceX.ToString() + "&y=" + vServiceY.ToString() + "&z=" + vServiceZ.ToString(); /kh/v=36&hl=en &x=41859&s=&y=24718&z=16 &s=Galileo /kh/v=36&hl=en %s &s=Galileo /kh/v=36&hl=en%s&s=Galileo and of course the version is no more 36. p.s. oh and of course this is with ServiceCodeing = xyinvz not qrts maybe that's your problem p.s.2 and of course if tthat services blocks you with the qrts method then it will also block you with the xyinvz method.. it doesnt really matters with which you access for the service its the same. Post Edited ( 09-20-09 07:32 )
21-09-2009, 07:15 PM
See..... even HB gets back to support when he has the time for it
![]() After WT4 he might consider V2 too ![]() j/k ![]() |
« Next Oldest | Next Newest »
|