How do I prepare the atlas maps?

So, I just wanted to talk a little bit of what I do behind the scenes when you submit an atlas map, in case anyone is interested. This also contains some observations that may be interesting to those submitting maps, and small stuff you can do to make my job easier.
  1. I load the map up in a dedicated CC3+ installation for the atlas, which only contains the allowed atlas resources. This means that if I see red X'es, the mapper have used symbols or fills from an invalid source. If this happens, I need to return the map to the mapper for fixing.

  2. I start by running the FFIX command on the map. A lot of the maps I get uses old CC3 installation directory style paths (#) instead of the CC3+ data directory style paths (@), I notice this is especially prevalent when people add fills styles from other map styles. Since the #-references only partially work (they generally load the fill, but they don't handle the dynamic resolution system properly, which leads to performance issues), I need to update them. Proper @-style path is also what people expects from a CC3+ map. Running FFIX converts all of the #-style paths to @-style paths (and more) automatically. Once I do this, I often also notice that the fill style resolution in the map is wrong. This is something the original mapper wouldn't notice if they were using the wrong style paths (# instead of @), but once that is fixed, the fill style resolution issue is visible. If this happens, I need to access the fill style resolution settings from the display speed dialog, and reduce the values until the fills stop pixelating. This is also a performance thing, so I need to be carefull not to lower them too much, you generally don't need the VH quality fills to be the ones loaded when the map is zoomed completely out, that is only needed when you zoom in. Again, the problem with fill style resolutions are mostly an issue if the mapper imported fill styles from other map styles, especially if that style was designed for a completely different detail level.

  3. I then run PURGESYM (Purge symbols) on the map to drop any symbol definition copied into the map that is not in use. Makes things look a bit nicer if the user access the symbol manager.

  4. I then turn on effects, and enables the 'Effects are on when loaded' setting, so that when people browse atlas maps (the real thing, not the web preview) maps are loaded with effects on. Many of the atlas maps does not look proper at all if effects are off.

  5. I then render the map to a png. I always render to the hi-resolution version (which is always 8192 pixels in the largest dimension), rendered with 10% antialias. I then take the high res image and reduce it to 1280 in the largest dimension to put it in as the image for the atlas. Note that if you have used 0-width lines in your map, they will turn out very thin in the final image. This is because CC3+ always renders 0-width lines as thin as possible (that is the definition of 0-width after all), so when it renders to a high resolution image, they will end up being VERY thin. I always encourage people to not use 0-width lines, and instead find the width that fits the line for the use. That also has the advantage of having a line that doesn't change width in relation to other entities as you zoom in on your map. This is also why it is so important to have the 'Scaled' option checked for your fill styles, and find an appropriate value for the scaling. If this is unchecked, it can often look good on the screen, but it looks horrible on a high resolution render because the higher resolution compared to the screen will cause the pattern to be much tinier, and therefore repeating much more.

  6. I then add the map info box (I have this defined as a symbol with text attributes and predefined hotspots, and of course defined to automatically go on the correct sheet), and add the hotspot to make the parent map link to the correct map.

  7. I also need to edit the parent map, and add in both the purple rectangle I use to indicate a hotspot, and add an actual hotspot here. I have made custom drawing tools for this, so that I ensure these things ends up on the correct sheet automatically.

  8. Then, I create the various map notes to add to the map (Contact Information, Copyright, Description, Map Style, Products Required) and fill them with the required text, and delete several unneeded ones (OnNewMacro, Resize, Template). For the 'Products Required' map note, it is very helpful if you tell me exactly which products you used resources from. The keyword here is 'Products'. For example, if you used symbols from CC3 standard overland, CC3 Mike Schley Overland and Herwin Wielink Overland, they are all part of the base CC3+ installation, so there is no need to differentiate between these, the product required is still only Campaign Cartographer 3+. Likewise, if you used several annuals from the same year, I don't really need to know the individual issue numbers, but rather which volume/year you used. Of course, if you used resources from multiple years, I need to know them all. The amount of symbols/fills used is not important, if you used even a single symbol from for example the Vintyri Collection, I need to know that. Also, if a symbol is a pure vector symbol, it is embedded in map, and not actually dependent on having the product the symbol came from installed, so as such, if you only used vector symbols from something, that is not a required product (It is a required product to make that map, but not to view it). The 'Products Required' map note is very important for people downloading and using the atlas maps, since it lets them easily see what products they need to view the map if they see red X'es. The keyword here is what they need to VIEW the current map, not what products they would need to have installed to create that map from scratch.

  9. Done with the CC3+ work, I edit the xml file for the web site, adding in the new map and giving it the coordinates for the hotspot on the parent map that would lead to this one. Finding the coordinates I need is done by loading the image for the parent map into an image map editor, defining a hotspot there, and just grab the coordinates for it. Thanks to the structure of the xml file, it can figure out links back to the parent map automatically, since it is basically a tree structure. All the map pages in the atlas on the web are dynamically created from the entries in this xml file, so adding a new map to the website is just a single line in this xml file with the name of the map, the mapper, and the coordinates.

  10. Finally, I have a script that I run that automatically copy the .fcw files to the appropriate folders on the server, and then also generate the zip file for the atlas download. The website always presents the newest version as available for download, so just by creating it and putting it on the server, that will be the version visitors see.

  11. Also, if there are any additional stuff that should be accessible from the website (description pdf, zoomable image, bonus resources, etc), I just create these files and put them on the server. The website is programmed to look for certain resources, so if the file is there, it shows the button to access it, if not, the button isn't visible. This way, adding a zoomable image doesn't cause me to do any changes at all to the server, I just put a file with the correct name in the correct folder, and the server sees it and presents the button when people visits that map (A zoomable image still takes a lot of time to generate the file for though).
«1

Comments

  • ScottAScottA Surveyor
    Fascinating. I love reading how things work behind the scenes, even if more often than not I don't understand any of it (when it comes to computerese!).
  • Wow, that sounds like a lot of work! Thank you Monsen for all of the hard work you do. I'm a bit thick though so I gonna ask a stupid question. Is there something in particular out of all of this that you wish people who sent maps in for the atlas would do to them before they send them to you? I see a lot of things here but I'm not 100% certain what I could do to make it easier on you and I would hate to send you a map that makes you have to do more work (I tend to be one of the kind of people you mentioned in here that changes things around on my maps from one style to another). It's kind of why I haven't really done much with the atlas. I've been concerned that with all of the changes I make to my maps, people who look at the FCW would just be confused.
  • MonsenMonsen Administrator 🖼️ 46 images Cartographer
    edited January 2018
    Posted By: TonnichiwaIs there something in particular out of all of this that you wish people who sent maps in for the atlas would do to them before they send them to you?
    - Make sure to run FFIX on your map (and if that results in some fills being pixelated, adjust fill style resolution as mentioned in 2.)
    - Make sure to give me a proper list of products required, as explained in detail under 8.
    Those are the two things that are both possible for the submitter to do, and which also saves me some time.
  • I try to remember and purge symbols I'm not actually using in a map, but I know I have forgotten more than once. Thanks for remembering Remy !

    For clickable image maps, the software I have been using started giving me incorrect coordinates.

    What software do you use ? I don't know any xml, I have been using html.
  • MonsenMonsen Administrator 🖼️ 46 images Cartographer
    edited January 2018
    Posted By: JimPFor clickable image maps, the software I have been using started giving me incorrect coordinates.
    What software do you use ?
    Handy Image Mapper and sometimes the desktop version of imagemap editor. None of them are that good really, but I only use them because I need the coordinates, I am not interested in them generating the complete maps for me. I could get the coordinates from an image editor too, but these programs make it easier to set up the hotspots visually and then just grab the coordinates.
  • JimPJimP 🖼️ 280 images Cartographer
    edited January 2018
    Thats the program I have been having difficulty with. They worked for awhile, but around a year after I did them, the html links pointed to elsewhere. This was on my Traveller site. I used the square area because the Traveller sub-sectors are square. But for some reason they changed to Hourglass looking areas.

    Maybe if I used xml that would fix it.

    I'll look at it again. Thanks for the info.

    edit: Thats not very clear.

    I use the rectangle tool to mark what area I need the coordinates of. After I place several of them, the earlier ones go to an hourglass shape, instead of staying square or rectangular.
  • MonsenMonsen Administrator 🖼️ 46 images Cartographer
    Posted By: JimPI use the rectangle tool to mark what area I need the coordinates of. After I place several of them, the earlier ones go to an hourglass shape, instead of staying square or rectangular.
    Yea, I see the same, but it is only a display bug with the program, the corners are still correct, the program is just interpreting its own rectangles badly. But the browser should show the resulting rectangle just fine (a rectangle can never be a hourglass shape in any case).
  • I really like the Zoomable function, and would like to use it on my Myirandios maps. Can you tell us what you use, and how you do it (for a Technoidiot like me)
  • MonsenMonsen Administrator 🖼️ 46 images Cartographer
    You have the 2017 annual, right? Issue 129 contains the information about how to create these, a chapter near the end of the guide.
  • Posted By: Monsen
    Posted By: JimPI use the rectangle tool to mark what area I need the coordinates of. After I place several of them, the earlier ones go to an hourglass shape, instead of staying square or rectangular.
    Yea, I see the same, but it is only a display bug with the program, the corners are still correct, the program is just interpreting its own rectangles badly. But the browser should show the resulting rectangle just fine (a rectangle can never be a hourglass shape in any case).
    I'm not sure why they point to the wrong map areas. It's possible that I deleted a double quote or some other formatting bit by accident. I'll have to check on it later this month.
  • Yes, I have the issue - OMG, I am truly a Technoidiot, I need a Uni degree just to understand it! - stop laughing, Monsen.
  • LoopysueLoopysue ProFantasy 🖼️ 39 images Cartographer
    Oh don't worry! I'm exactly the same ;)

    I read stuff and end up talking to myself "Say what.....? Run me through that again....? Ummmmmm.....? So I press this button and..... Oh.... I don't think its supposed to look like that, Sue!"

    LOL!

    Its just that Remy is a bit of a genius - it runs in the PF Team, but they're all too modest to admit it :P
  • MonsenMonsen Administrator 🖼️ 46 images Cartographer
    Quenten, did you read the chapter named 'Zoomable Web Images'. I know a lot of the stuff in that annual are quite technical, but that chapter should be rather light on the technical details, and with a step-by-step tutorial. Anyhow, I recommend you start by downloading the Zoomify package linked from that chapter and try playing a bit with it. It comes with a lot of examples and documentation.
  • I have just done that, and will try, with extreme trepidation, to accomplish this oh so simple task (!) tomorrow. Let you know how I get on.
  • DogtagDogtag Moderator, Betatester Traveler
    edited January 2018
    Worry not, qwalker of old. You're not going to break anything. Just start out by having fun and monkey with it. You may find that you accidentally learn something (that's usually how it works for me, at least).  :D
  • 6 days later
  • MonsenMonsen Administrator 🖼️ 46 images Cartographer
    To add some more information about the behind the scene stuff.

    The atlas site itself runs custom software written by me, running under the Microsoft .net platform on an IIS webserver. I am using asp.net webforms for this, and although webforms is a bit old, it fit very nicely with what I wanted to do here, but I also considered writing it using Microsoft MVC6 as well, which would also have worked fine. There were advantages and disadvantages with both, really, and I am reasonably familiar with both (I actually teach this stuff at work, but being a teacher generally means doing the basics over and over, but never having time to get really familiar with the more advanced stuff, like a professional developer can/must).

    Anyhow, the main part of the site, the map browser takes it's input from an XML file, and generates pages and imagemaps based on this file. This file is arranged in a hierarchy (tree struvture), so the system will always be able to tell what the parent map of any given map is. So to add a new map to the site, all I have to do is to upload the map image to the correct folder, and then add a single line to this XML file, the rest is automatic. If I want to add other resources, like high res image, description, zoomable image, downloadable .fcw and so on, I just copy the files for these resources into the correct folder on the server, and the system picks this up automatically and display the appropriate buttons.
    All this means that adding a new map to the online browser is one of the simplest part of the process.

    I've attached the .xml used by the system to this post if anyone is interested in seeing how it looks, but of course, this XML is pretty useless without the code running on my server. It is easily readable, but you can't just upload it to your own site and expect to have it understand it and make an atlas for you :)
  • Wouldn't work for me then. My web host uses a different system.
  • MonsenMonsen Administrator 🖼️ 46 images Cartographer
    edited January 2018
    You could easily* write a similar system in another language, like php (which most webhosts allow), but being able to run .net applications are much more rare (especially for free/cheap hosts).

    * If you have programming experience.
  • LoopysueLoopysue ProFantasy 🖼️ 39 images Cartographer
    I'm limited to writing java objects that cause virtual balls to bounce around inside virtual boxes :P

    I just wanted to thank you for all the things you do for this community :)
  • MonsenMonsen Administrator 🖼️ 46 images Cartographer
    Posted By: LoopysueI'm limited to writing java objects that cause virtual balls to bounce around inside virtual boxes
    Well, that is certainly a good start. All my program does is outputting text actually (in the form of html code), which your browser then interprets and makes a nice page from.
  • Php. is possible but I don't know any. My programming skills are in pascal.
  • MonsenMonsen Administrator 🖼️ 46 images Cartographer
    Well, good luck finding a webhost that allows you to run pascal as server side code :)
  • LoopysueLoopysue ProFantasy 🖼️ 39 images Cartographer
    Now there's a name from the past! Pascal, Fortran and BASIC were the 3 languages I had to learn at college way back in.... 1986
  • To make it even werse, it was VAX Pascal, not desktop computer Turbo Pascal.
  • LoopysueLoopysue ProFantasy 🖼️ 39 images Cartographer
    Yes - I learned VAX Pascal.

    The college was extremely proud of its 5 VAX units - state of the art.
  • They taught those languages in my high school too, way back in 1985. They wouldn't even let you near a computer to learn any of that stuff unless you had at least taken intermediate algebra.
  • MonsenMonsen Administrator 🖼️ 46 images Cartographer
    edited January 2018
    Question:
    When I set up the online map view for the atlas, I chose to display the images using a maximum size of 1280 pixels in any direction, as this gives images of a reasonable quality but are also reasonable fast to load when one browse the atlas. Unfortunately, the most common screen resolution is still 1920 by 1080, which means that images more than about 800 pixels in height tend to require scrolling, and cannot be displayed in their entirety on the most common screen. Should I change this, and go for images that are at most 1280 wide and at most 800 tall instead? Do you guys think that will be a better alternative for the online map browser? This will mostly impact maps that are square or portrait format, and will make their details a bit smaller, but with the advantage of seeing the entire map on screen at once. This is obviously a trade-off either way, and I am wondering what you people think is best.
    Obviously, this won't affect the size of the hi-res downloads.
  • No opinion either way - I download the high-res maps, so no need to see perfect detail in the ordinary browser maps, but the speed doesn't worry me anyway.
  • MonsenMonsen Administrator 🖼️ 46 images Cartographer
    edited January 2018
    Posted By: QuentenI download the high-res maps, so no need to see perfect detail in the ordinary browser maps
    This is why I am thinking 800px height may be perfectly acceptable, because those wanting the full details will obviously grab the hi-res and/or the .fcw files.

    I was considering dynamic height at one time, to fit the user's screen, but it turned out that worked very poorly when combined with image maps.
  • MonsenMonsen Administrator 🖼️ 46 images Cartographer
    I prepared a couple of examples so people can compare the difference side by side. Note that these examples should be viewed in a maximized browser window, and also note they are tailored to the most common resolution of 1920x1080, if you are using better resolution than that, you'll obviously want the larger ones, but I am trying to figure out what is best for the majority here.

    Example 1
    Example 2
    Example 3

    Obviously, the bigger version (leftmost images) are nicer, no question about that, but the big question is really: "Is it better with a smaller image where you can see everything in your browser window at once, or is it better with the larger versions where you need to scroll?". Remember that these are the images used when navigating the atlas, so there might be map links and everything down at the bottom where you have to scroll to. And also remember, the hi-res images will always be available for download to see the map in their full glory. Still, it is important that the "browse maps" look nice too, which is why I am pondering all of this.
Sign In or Register to comment.