How do I prepare the atlas maps?
Monsen
Administrator 🖼️ 81 images Cartographer
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.
- 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.
- 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.
- 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.
- 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.
- 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.
- 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.
- 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.
- 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.
- 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.
- 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.
- 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).
Comments
- 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.
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.
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.
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
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
* If you have programming experience.
I just wanted to thank you for all the things you do for this community
The college was extremely proud of its 5 VAX units - state of the art.
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.
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.
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.