Example: Create a Rotated View of a Map

Most projections and displays use a default, "North up" orientation.   We can easily create a map that shows a rotated view, that is, an orientation other than "North up."  The primary topic to learn how to create displays that are rotated is the Rotated Views topic.  That topic provides an illustrated, step-by-step guide to rotated views, including both vector and raster layers.  It also shows the recommended technique for creating North arrows in "portable" form, as well as the use of rotated views and portable North arrows in Layouts.


New!  One click North arrows - In this topic, we create the North arrow manually, using a combination of styling to create various elements of the North arrow in a single record.   This provide great flexibility, but it involves more tinker time.   Creating North arrows using the techniques shown below continues to be a useful method in many circumstances, but most users will simply turn on a North arrow virtual layer as shown in the North Arrow topic.


This example topic illustrates use of rotated views using a  Bing street map image server layer, to show how even layers fetched on the fly from a web server can be rotated.  It also shows an alternate way of creating North arrows that is initially simpler, but ultimately much less convenient than the more sophisticated method illustrated in the Rotated Views topic.   


Rotated views are also covered in two videos, the Rotated Views video, which shows a simple way to create North arrows that is used in this example, and the Portable North Arrows video, which shows the more sophisticated technique also used within the Rotated Views topic.  


To fit into this documentation, illustrations show a small Manifold desktop, with only a few panes, docked to the right side.  In real life we use a much larger Manifold desktop, and more panes would be turned on, with panes docked to the left or to the right, or undocked, as we prefer.   Right-click a pane's tab to change where it is docked.  Manifold will remember that new arrangement for our next session.


We first create a map using a Bing streets image server as a base layer.  We save our new project using the name Florida.





We pan and zoom to the desired view and save the current Location, giving the location the name Florida.





Next, in the Project pane we Copy the Map component and Paste it, renaming the copy Hotine Florida.   We double-click the new Hotine Florida map to open it, and use the Location to set the view to be the same as the Map.


We will want to know the approximate center latitude and longitude of the view.  One way to do that is to pop open the Florida location.



We can read out the approximate center of the view from the open window, seen above undocked, or use the position of the cursor as reported in the Status Bar.   The location has a center  approximately -81 longitude and 28 latitude.  Positioning the cursor on the center of the Florida peninsula gives about -81 longitude and 29 latitude.   We will use those numbers as a center for rotation.


We can close the location window by right-clicking the title bar and choosing Close.





To change the projection used by Hotine Florida, we choose the Info pane.   Not all controls in the Info pane will fit into the small desktop size used for illustrations in this topic:  The Description setting for the Bing component is out of view at the very bottom of the Info pane.


 We click the coordinate system picker button to change the coordinate system (projection) used by the map.





In the menu that appears we choose More.  The Coordinate System dialog appears.



A rotated map view uses the Hotine Oblique Mercator (B) projection. "Hotine" in English is pronounced with the first syllable sounding like the "ho" part of "hot" and the second syllable sounding like "teen," with the stress on the first syllable.  It is named after the inventor, Brigadier General Martin Hotine, who led the UK's Ordnance Survey for many years.


Because the center latitude and longitude of the area of interest must be specified, each such use of the Hotine Oblique Mercator is a custom, one-of-a-kind coordinate system.    We provide a memorable name, Hotine Florida, and in the Type box we choose Hotine Oblique Mercator (B) from the long list of options.


To create a rotated view, we enter the center latitude and longitude, and then in the Rectified grid box we  enter the rotation angle in degrees (positive numbers for clockwise rotation, negative numbers for counterclockwise rotation).   The center latitude and longitude values we can read from the Florida location that we thoughtfully created and opened, in this case a Center latitude of 28 and a Center longitude of -81.  We use a slightly higher latitude than in the location, 29, to move the center of rotation closer to the center of the land mass of the Florida peninsula.  We want to rotate the display 70 degrees counterclockwise, so we enter a value of -70 into the Rectified grid box.  Press OK.





The initial view is pretty wild, since the map will zoom to fit the contents, which show the entire world as presented by Bing.  





We can zoom box manually to the Florida peninsula, or use the Florida location to jump directly to a useful view, as seen above.   

Adding a North Arrow

When a projection shows "North up" a North arrow is less important to show orientation, but when a projection is rotated so North is no longer up, a North arrow is a good idea to show orientation.


New!  One click North arrows - In this topic, we create the North arrow manually, using a combination of styling to create various elements of the North arrow in a single record.   This provide great flexibility, but it involves more tinker time.   Creating North arrows using the techniques shown below continues to be a useful method in many circumstances, but most users will simply turn on a North arrow virtual layer as shown in the North Arrow topic.


To add North arrows to a display manually we add a drawing layer to the map, and then in that drawing layer we create a line oriented vertically in a non-rotated display.  Extensive Style capabilities for drawings make it easy to add an arrow head to the end of the line, so it appears as an arrow pointing North.   


The Rotated Views topic shows the recommended technique, using automatically computed geometry, for creating North arrows in "portable" form.  The technique of using automatically computed geometry is covered in the Portable North Arrows video.  


This example topic shows an alternate way of creating North arrows that is initially simpler, but ultimately much less convenient than the more sophisticated method illustrated in the Rotated Views topic.     We begin by creating a new, blank drawing.


We choose File - Create - New Drawing.



We enter North Arrow as the Name for the new drawing and press Create Drawing.  Using a clearly descriptive name will later on make it easier to know the contents of each layer tab if our map has many layers.


We will now add a vertical line to the drawing, using the techniques described in the Editing Drawings topic.  





To create a line, with the focus on the North Arrow drawing in the map, we choose Create Line for the cursor control in the main toolbar.  We click the lower point of the line and then we click the upper point, approximately directly above the lower point.  We can use Snap to Bearing in snap modes, if we like, to ensure the line is perfectly vertical.





Using Snap to Bearing is the easy way to ensure a perfectly vertical line.   But if we forget to do that, no worries: We can ensure perfect vertical alignment by clicking on the Coordinates tab of the Info pane, which automatically appears when we start adding a new object, using the technique shown in the Rotated Views topic.  In this case, the coordinate values indicate we have drawn a perfectly vertical line.  


Press Add Record to create the line, and then in the main toolbar switch the cursor to Default mode, to avoid starting any new lines when clicking into the map.





We switch to the Style pane to format the line into something that looks more like a North arrow.   We click on the total style button for lines, and then choose More... in the menu to launch the Line Style dialog.



The Line Style dialog allows us to choose many different characteristics of line style all at once.   We choose a width of 4 points and an arrow head symbol for the End of the line, using settings as seen above.  We press OK.





The result is a line that looks like a simple North arrow.   Because the Pseudo Mercator projection is oriented North up, a vertical line with an arrowhead at the top points exactly North in this projection.





We drag and drop the North Arrow drawing into the Rotated Map.   In that map's projection, the line in the North Arrow drawing is also projected on the fly into the rotated Hotine Oblique Mercator projection the map uses.    We have added a North arrow that is a simple, but perfectly serviceable, indication of North in our map.  

Adding an N Label at the Center of the Arrow

Many people prefer to label North arrows with an "N" label or some other indication that this is a North arrow.   The easiest way to do that with a line object is to use Edit - Schema to edit the schema for the North Arrow Table to add a text field.  We can then put the letter N or the word North or whatever into the text field and then create a label layer from the North Arrow drawing.  The label will automatically appear at the mid-point of the line, with the text aligned to whatever is the direction of the line in the view.  That technique is shown in the Rotated Views topic.


Adding an N Label at the Beginning of the Arrow

The Rotated Views topic also shows how to add an N label at the beginning of the North arrow, using a computed field in a more sophisticated, "portable" technique.   A simpler, but more limited, way of doing the same thing is shown below.





We begin by double-clicking the North Arrow Table to open the table.  We will add a text field to hold the N character that our label will show.


We choose Edit - Schema to open the Schema dialog.  


Press the Add command button.



Choose Field in the drop down menu.



In the Field dialog we enter the name Text for the new field and choose a data type of nvarchar.  


Press OK.   



The new field appears in provisional, bluish color in the schema.  


We review our work and then press Save Changes to update the table.  If we detected an error or wanted to change something, we could press Close to exit the dialog without making any changes.





Instantly, the table is updated with a new field named Text. The new field at present contains NULL, since it has not been populated with any value.





We close the table.  With the focus on the North Arrow drawing in the map, we choose Create Point for the cursor control.





We click on the beginning of the North arrow line, with snapping on and using default Snap to Coordinates mode.  The cursor will leap to the end of the line automatically as soon as it nears the end of the line.





In the Info pane that pops open automatically, we double-click into the Text box to add N as the text.    We press Add Record to update the record.   We have just added a point object to the North Arrow drawing.





We switch the mouse cursor back to default mode.





Next, we right-click onto the North Arrow drawing and choose Create - New Labels.



We enter a descriptive name, N Label, in the Name box, we choose Text as the Text field to use, and we press Create Labels.  A new labels component called N Label appears in the Project pane.





We drag and drop the new N Label layer into the map.  A small letter N in 8 point font appears, barely visible on top of the point object at the beginning of the North arrow line.  We choose the Style pane to style the label.     We click on the total style button and then choose More... from the menu to launch the Label Style dialog.





In the Label Style dialog, we choose white color for the text and  Nunito Sans Bold as the font, in 10 point size.  In the Box tab we enable a box, choosing a circular box with Padding of 10% point and Stroke of 1 point.   We use black color for both foreground and background colors for the box.  Not visible in the above is that in the Symbol tab we applied a 1 point Shadow to the text label, using a medium gray color for the shadow.  That gives a subtle, but effective, sense of presence to the text, created by the slightest hint of dimensionality from the barely-visible drop shadow on the text letters.


We press OK to apply the style changes.





The new label appears in the style we desire.   It automatically takes its position and text from the point object created in the North Arrow drawing.   There is no label on the line object in that drawing because the Text field for the line object is empty, with a <NULL> value.





We click on the Hotine Florida tab and drag and drop the N Label layer into that map.   The new label appears there as well.  Because the colors used in the label's box are the same as the North arrow, it seems to be a part of the North arrow.   Note that the text in the label has not been rotated.  Labels for point objects are not rotated, but printed are printed right-side up.





We can use Style to adjust colors.  For example, instead of black color we can use a dark gray for the North Arrow line and the N Label box.  We have also added a slight, darker gray shadow to the N letter





If we think the North arrow is too close to Florida, we can move it using the Reshape: shift transform as shown in the Manifold Viewer - Rotated Views video.   This is best done in the non-rotated, original Map view, where it is clear how X and Y movements work.     In the illustration above, with the focus on the North Arrow tab, we choose the Shift transform and enter a value of 100000 in the Shift X box.   The blue preview shows how the objects in the layer will move.   We must use the Shift transform to move all objects in the North Arrow drawing together, so the point at the end of the line moves together with the line.  If we like the result, we press the Update Field button to apply the change.





The North arrow moves, and the N Label based on the point also moves.  




It has also moved in the Hotine Florida map.


This is clearly less convenient than simply moving the North arrow interactively with the mouse cursor, using the method illustrated in the Rotated Views topic.



What are the limitations? - We mention that creating North arrows as shown in this topic is a simpler, but more limiting technique than that shown in the Rotated Views topic.  That is because the North arrow is created using two objects in two separate records: a line object in one record that forms the arrow, and a point object in a second record that is used to power the N label.   The problem with that approach is there is no automatic connection between the line and the point objects that form the North arrow.  If we resize or move the line, the point will stay where it is.  To move the North arrow, we must use the Reshape: shift transform operation as shown in the Manifold Viewer - Rotated Views video, which is a much more limiting approach than using the mouse to interactively resize or reposition the North arrow.



Manifold Viewer - Rotated Views -  Learn how to create rotated views, to display maps where North is not always up.  The video shows how to create a rotated map of Italy in seconds, with perfect cartographic accuracy.  See how to create North arrows, labels, and how Manifold can instantly re-project on the fly to create rotated views of web served layers from Bing street maps, satellite photography and much more.   The video uses the free Manifold Viewer and works exactly the same in Release 9 as well.


Manifold Viewer - Portable North Arrows -  Continuing on from the preceding Rotated Views video, we explore a more sophisticated way of creating custom North arrows that can be easily repositioned and recycled.  Instead of creating a North arrow that is a combination of two objects, we use a tiny SQL expression to create a computed geometry field within a single object that automatically tracks any changes, such as creation of new North arrows, resizing or repositioning.  Amazing to see all this can be created in the free Viewer!  Works in Manifold Release 9 too!


See Also





Rotated Views


North Arrow


Scale Bar










Project Pane


Info Pane: Component


Layers Pane






Map Projection


Example: Project Pane Tutorial - In this example we take an extended tour of the Project pane, engaging in a variety of simple but typical moves that are illustrated step by step.


Example: Layers Tutorial - We take a tour of the Layers pane, learning how to manage layer display order, select layers, turn several layers on and off at the same time, alter opacity settings for one or more layers and how to change background color.


Example: Create Maps - Maps are used to show layers that can be drawings, images, and labels.  This topic shows how to create new, blank maps, how to create maps from existing components, and how to create maps from other maps.


Example: How Not to Format a Drawing -  When using Style to format a drawing it is a really bad idea to use the same color for objects that is used for the background color.    It can also be a bad idea to use transparent color.   This topic illustrates why.


Example: Reproject a Drawing - An essential example on changing the projection of a drawing, either within the drawing itself, or by changing the projection of a map window that shows the drawing and on the fly reprojects the drawing for display.