<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xml:base="https://blog.muninn-project.org"  xmlns:dc="http://purl.org/dc/elements/1.1/">
<channel>
 <title>The Muninn Project - Trenches</title>
 <link>https://blog.muninn-project.org/taxonomy/term/70</link>
 <description></description>
 <language>en</language>
<item>
 <title>The Geometries of Vimy Ridge, 100 years ago</title>
 <link>https://blog.muninn-project.org/node/111</link>
 <description>&lt;div class=&quot;field field-name-body field-type-text-with-summary field-label-hidden&quot;&gt;&lt;div class=&quot;field-items&quot;&gt;&lt;div class=&quot;field-item even&quot; property=&quot;content:encoded&quot;&gt;&lt;p&gt;The Battle of Vimy Ridge began 100 years ago on April 9th through 12th, 1917. It holds importance in the Canadian consciousness in that this was the first time that the Canadian Corps fought as a single unit on the Western Front with the 1st, 2nd, 3rd and 4th Division deployed side-by-side&lt;a href=&quot;#one&quot;&gt;&lt;sup&gt;1&lt;/sup&gt;&lt;/a&gt;. With a lot of patient geo-referencing work and a joint efforts between Muninn, the &lt;a href=&quot;http://cefresearch.ca/&quot;&gt;Canadian Expeditionary Force Study Group&lt;/a&gt; and &lt;a href=&quot;http://wikiwar.net/&quot;&gt;Wikiwar&lt;/a&gt;, a number of the units locations, place names and trenches have been extracted. The simplest way at the moment to visualize &lt;a href=&quot;http://www.openhistoricalmap.org/#map=16/50.3710/2.7678&amp;amp;layers=D&quot;&gt;the locations is through the Open Historical Map&lt;/a&gt; which is an OSM-like website that records historical mapping data and can export the raw geometries for further use. &lt;/p&gt;
&lt;p&gt;At the time of the Battle of Vimy Ridge, the &lt;a href=&quot;http://www.openhistoricalmap.org/#map=15/50.3635/2.6529&amp;amp;layers=D&quot;&gt;Headquarters of the Canadian Corps&lt;/a&gt; were located near &lt;a href=&quot;https://en.wikipedia.org/wiki/Camblain-l%27Abb%C3%A9&quot;&gt;Camblain-l&#039;Abbé&lt;/a&gt;  (&lt;a href=&quot;https://www.gallery.ca/en/see/collections/artwork.php?mkey=5393&quot;&gt;Painted by David B. Milne&lt;/a&gt; in 1917). The &lt;a href=&quot;http://www.openhistoricalmap.org/#map=16/50.3424/2.6752&amp;amp;layers=D&quot;&gt;1st Canadian Division Headquarters&lt;/a&gt; was located in &lt;a href=&quot;https://en.wikipedia.org/wiki/%C3%89coivres&quot;&gt;Écoivres&lt;/a&gt; near the banks of the La Scarpe river. &lt;a href=&quot;http://www.openhistoricalmap.org/way/198183972&quot;&gt;It&#039;s troops were the southernmost deployed&lt;/a&gt; with the 17th Corps at their right and the &lt;a href=&quot;http://www.openhistoricalmap.org/way/198183971&quot;&gt;2nd Canadian Division&lt;/a&gt; at their left. The &lt;a href=&quot;http://www.openhistoricalmap.org/#map=16/50.3658/2.6625&amp;amp;layers=D&quot;&gt;2nd Canadian Division Headquarters&lt;/a&gt; was in a farmer&#039;s field near route D58 (There is &lt;a href=&quot;https://www.google.ca/maps/place/50%C2%B021&#039;56.9%22N+2%C2%B039&#039;43.2%22E/@50.3666907,2.6645968,3a,75y,90t/data=!3m6!1e1!3m4!1sCPt2UUy3zIfjq5GK5Xfb7g!2e0!7i13312!8i6656!4m5!3m4!1s0x0:0x0!8m2!3d50.3658!4d2.662&quot;&gt;a google street view pictures of the houses and farms at that current location&lt;/a&gt;). The &lt;a href=&quot;http://www.openhistoricalmap.org/way/198183970&quot;&gt;3rd Canadian Division&lt;/a&gt; was next to the left and the &lt;a href=&quot;http://www.openhistoricalmap.org/#map=15/50.3754/2.6723&amp;amp;layers=D&quot;&gt;3rd Canadian Division Headquarters&lt;/a&gt; was located in &lt;a href=&quot;https://en.wikipedia.org/wiki/Villers-au-Bois&quot;&gt;Villers-au-Bois&lt;/a&gt;. The 4th Division was the northernmost with its flank against the 1st Corps and &lt;a href=&quot;http://www.openhistoricalmap.org/#map=14/50.3861/2.6583&amp;amp;layers=D&quot;&gt;the 4th Division Headquarters&lt;/a&gt; located in a farmer&#039;s field near route D65.&lt;/p&gt;
&lt;h2&gt;
	How accurate is this information?&lt;/h2&gt;
&lt;p&gt;&lt;img alt=&quot;&quot; src=&quot;/sites/default/files/oldTrenchesOverlay.png&quot; style=&quot;width: 282px; height: 200px; float: right;&quot; /&gt;A survey section during the war would be expected to triangulate a feature within 20 yards while out in the field. In actuality areas of high activity were well surveyed and the accuracy of a trench map is often within 5 yards for important features. Since we used hand tracing to extract the trenches some inaccuracy is to be expected. One can do much better by creating a line finding algorithm that traces the trench based on colour separation and that will be the topic of future work. The figure to the right is an &lt;a href=&quot;http://www.openhistoricalmap.org/way/198181924#map=18/50.37149/2.77256&amp;amp;layers=D&quot;&gt;overlay of the German trenches extracted from a trench map over the Open Street Map&#039;s rendering of the current preserve trenches at the&lt;/a&gt; &lt;a href=&quot;https://en.wikipedia.org/wiki/Canadian_National_Vimy_Memorial&quot;&gt;Vimy Ridge Memorial&lt;/a&gt;. The alignment is not perfect, but sufficient for way-finding purposes.&lt;/p&gt;
&lt;p&gt;The location of the Headquarters and the area of operations of the different Divisions, Brigades and Battalions are derived from an aggregate map that was reprojected based on landmarks contained within the current landscape and those within other georeferenced trench maps of the period. The original map was not to scale and large (a 100 meters of so) errors in location can be expected. Of course, features such as a Battalion&#039;s area of operations are very large and even a Brigade headquarters involves multiple tents and/or buildings. The map locations on the original source map were simple icons which created their own spatial inaccuracies and one should expect large errors in the actual location. Whenever possible, you should use these features as general areas and not consider their centroid as the ground truth.&lt;/p&gt;
&lt;p&gt;This represents the best information currently available and the geometries will improve over time as more information is unearthed. All of these geometries are available from the Open Historical Map&#039;s export function which works with all of the tools that were designed for the Open Street Map. &lt;/p&gt;
&lt;h2&gt;
	Where did you get this information?&lt;/h2&gt;
&lt;p&gt;The trenches and trench name information were extracted from maps M_81_000287 and M_89_000382 in the Imperial War Museum&#039;s archive.  The parameters for the reprojection are described in &lt;a href=&quot;#ref1&quot; title=&quot;Reference 1&quot;&gt;[1]&lt;/a&gt;, &lt;a href=&quot;#ref2&quot; title=&quot;Reference 2&quot;&gt;[2]&lt;/a&gt; and this &lt;a href=&quot;http://rdf.muninn-project.org/ontologies/btmaps.html&quot;&gt;ontology document&lt;/a&gt;. Tracing was done manually and exported to both shape files and RDF before being imported to the Open Historical Map. &lt;/p&gt;
&lt;p&gt;The location of the headquarters and units during the onset of the battle are derived from the aggregate &quot;map 7&quot; from the &lt;em&gt;Official History of the Canadian Army in the First World War: Canadian Expeditionary Force, 1914-191&lt;/em&gt;9 (&lt;a href=&quot;#ref3&quot; title=&quot;Reference 3&quot;&gt;[3]&lt;/a&gt;). The original book was scrubbed for image quality and reprocessed by the good folks at the &lt;a href=&quot;http://cefresearch.ca/&quot;&gt;Canadian Expeditionary Force Study Group&lt;/a&gt; before its map was reprojected and bounding areas created before being exported to the Open Historical map.&lt;/p&gt;
&lt;p&gt;&lt;a name=&quot;one&quot; id=&quot;one&quot;&gt;1.&lt;/a&gt; The 5th Canadian Division was not fully formed at the time and it&#039;s units were absorbed by the other Divisions.&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;!--break--&gt;&lt;hr /&gt;
&lt;h3&gt;References&lt;/h3&gt;
&lt;div class=&quot;references&quot;&gt;
&lt;ol&gt;
&lt;li id=&quot;reference1&quot;&gt;&lt;a name=&quot;ref1&quot; id=&quot;ref1&quot;&gt;&lt;span class=&quot;biblio-authors&quot;&gt;&lt;a href=&quot;/biblio?render=overlay&amp;amp;f%5Bauthor%5D=39&quot; rel=&quot;nofollow&quot;&gt;R.  Warren&lt;/a&gt; and &lt;a href=&quot;/biblio?render=overlay&amp;amp;f%5Bauthor%5D=40&quot; rel=&quot;nofollow&quot;&gt;Evans, D.&lt;/a&gt;&lt;/span&gt;, &lt;/a&gt;&lt;a href=&quot;/node/113&quot;&gt;“&lt;span class=&quot;biblio-title&quot;&gt;Translating Maps and Coordinates from the Great War&lt;/span&gt;”&lt;/a&gt;, in &lt;span style=&quot;font-style: italic;&quot;&gt;Proceedings of the Terra Cognita Workshop at ISWC 2014&lt;/span&gt;, Riva Del Garda, IT, 2014.&lt;span class=&quot;Z3988&quot; title=&quot;ctx_ver=Z39.88-2004&amp;amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Adc&amp;amp;rft.title=Translating+Maps+and+Coordinates+from+the+Great+War&amp;amp;rft.date=2014&amp;amp;rft.aulast=Warren&amp;amp;rft.aufirst=Robert&amp;amp;rft.au=Evans%2C+David&amp;amp;rft.au=Evans%2C+David&amp;amp;rft.au=Evans%2C+David&amp;amp;rft.place=Riva+Del+Garda%2C+IT&quot;&gt;&lt;/span&gt; &lt;/li&gt;
&lt;li id=&quot;reference2&quot;&gt;&lt;a name=&quot;ref2&quot; id=&quot;ref2&quot;&gt;&lt;span class=&quot;biblio-authors&quot;&gt;&lt;a href=&quot;/biblio?render=overlay&amp;amp;f%5Bauthor%5D=1&quot; rel=&quot;nofollow&quot; class=&quot;biblio-local-author&quot;&gt;R. H.  Warren&lt;/a&gt; and &lt;a href=&quot;/biblio?render=overlay&amp;amp;f%5Bauthor%5D=40&quot; rel=&quot;nofollow&quot;&gt;Evans, D.&lt;/a&gt;&lt;/span&gt;, &lt;/a&gt;&lt;a href=&quot;/node/114&quot;&gt;“&lt;span class=&quot;biblio-title&quot;&gt;From the Trenches - {API} Issues in Linked Geo Data&lt;/span&gt;”&lt;/a&gt;, in &lt;span style=&quot;font-style: italic;&quot;&gt;Linking Geospatial Data Workshop&lt;/span&gt;, London, UK, 2014.&lt;span class=&quot;Z3988&quot; title=&quot;ctx_ver=Z39.88-2004&amp;amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Adc&amp;amp;rft.title=From+the+Trenches+-+%7BAPI%7D+Issues+in+Linked+Geo+Data&amp;amp;rft.date=2014&amp;amp;rft.aulast=Warren&amp;amp;rft.aufirst=Robert&amp;amp;rft.au=Evans%2C+David&amp;amp;rft.au=Evans%2C+David&amp;amp;rft.au=Evans%2C+David&amp;amp;rft.pub=World+Wide+Web+Consortium+%28W3C%29&amp;amp;rft.place=London%2C+UK&quot;&gt;&lt;/span&gt; &lt;/li&gt;
&lt;li id=&quot;reference3&quot;&gt;&lt;a name=&quot;ref3&quot; id=&quot;ref3&quot;&gt;&lt;span class=&quot;biblio-authors&quot;&gt;&lt;a href=&quot;/biblio?render=overlay&amp;amp;f%5Bauthor%5D=38&quot; rel=&quot;nofollow&quot;&gt;G. W. L.  Nicholson&lt;/a&gt;&lt;/span&gt;, &lt;/a&gt;&lt;a href=&quot;/node/112&quot;&gt;&lt;span class=&quot;biblio-title&quot; style=&quot;font-style: italic;&quot;&gt;Official History of the Canadian Army in the First World War: Canadian Expeditionary Force, 1914-1919&lt;/span&gt;&lt;/a&gt;. Ottawa: Queen&#039;s Printer and Controller of Stationery, 1964.&lt;span class=&quot;Z3988&quot; title=&quot;ctx_ver=Z39.88-2004&amp;amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&amp;amp;rft.title=Official+History+of+the+Canadian+Army+in+the+First+World+War%3A+Canadian+Expeditionary+Force%2C+1914-1919&amp;amp;rft.date=1964&amp;amp;rft.aulast=Nicholson&amp;amp;rft.aufirst=G.&amp;amp;rft.pub=Queen%26%23039%3Bs+Printer+and+Controller+of+Stationery&amp;amp;rft.place=Ottawa&quot;&gt;&lt;/span&gt; &lt;/li&gt;
&lt;/ol&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;form-item form-type-item&quot;&gt;
  &lt;label&gt;Language &lt;/label&gt;
 English
&lt;/div&gt;
&lt;div class=&quot;field field-name-field-tags field-type-taxonomy-term-reference field-label-above&quot;&gt;&lt;div class=&quot;field-label&quot;&gt;Tags:&amp;nbsp;&lt;/div&gt;&lt;div class=&quot;field-items&quot;&gt;&lt;div class=&quot;field-item even&quot; rel=&quot;dc:subject&quot;&gt;&lt;a href=&quot;/taxonomy/term/68&quot; typeof=&quot;skos:Concept&quot; property=&quot;rdfs:label skos:prefLabel&quot; datatype=&quot;&quot;&gt;Vimy&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;field-item odd&quot; rel=&quot;dc:subject&quot;&gt;&lt;a href=&quot;/taxonomy/term/49&quot; typeof=&quot;skos:Concept&quot; property=&quot;rdfs:label skos:prefLabel&quot; datatype=&quot;&quot;&gt;lod&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;field-item even&quot; rel=&quot;dc:subject&quot;&gt;&lt;a href=&quot;/taxonomy/term/118&quot; typeof=&quot;skos:Concept&quot; property=&quot;rdfs:label skos:prefLabel&quot; datatype=&quot;&quot;&gt;Open Historical Map&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;field-item odd&quot; rel=&quot;dc:subject&quot;&gt;&lt;a href=&quot;/taxonomy/term/70&quot; typeof=&quot;skos:Concept&quot; property=&quot;rdfs:label skos:prefLabel&quot; datatype=&quot;&quot;&gt;Trenches&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;field-item even&quot; rel=&quot;dc:subject&quot;&gt;&lt;a href=&quot;/taxonomy/term/119&quot; typeof=&quot;skos:Concept&quot; property=&quot;rdfs:label skos:prefLabel&quot; datatype=&quot;&quot;&gt;GIS&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;</description>
 <pubDate>Fri, 07 Apr 2017 14:51:00 +0000</pubDate>
 <dc:creator>warren</dc:creator>
 <guid isPermaLink="false">111 at https://blog.muninn-project.org</guid>
 <comments>https://blog.muninn-project.org/node/111#comments</comments>
</item>
<item>
 <title>Print your own Battlefield</title>
 <link>https://blog.muninn-project.org/node/89</link>
 <description>&lt;div class=&quot;field field-name-body field-type-text-with-summary field-label-hidden&quot;&gt;&lt;div class=&quot;field-items&quot;&gt;&lt;div class=&quot;field-item even&quot; property=&quot;content:encoded&quot;&gt;&lt;p&gt;The Muninn Project aims to programmatically recreate scenes of historical events using &lt;a href=&quot;http://lod-cloud.net/&quot;&gt;Linked Open Data&lt;/a&gt; - and with the ever-increasing availability of high-quality 3D printers, we are motivated to 3D-print these scenes. In this particular post, we will talk about how to 3D-print a battlefield: the trenches of Vimy Ridge. We believe that 3D-printed models of battlefields, such as the trenches of Vimy Ridge, could be quite useful to archeologists &amp;amp; other individuals studying past historical events, namely the &lt;a href=&quot;http://en.wikipedia.org/wiki/Battle_of_Vimy_Ridge&quot;&gt;Battle of Vimy Ridge&lt;/a&gt;. We will discuss how to retrieve 90m-resolution elevation data inside a bounding box from the &lt;a href=&quot;http://www2.jpl.nasa.gov/srtm/&quot;&gt;Shuttle Radar Topography Mission (SRTM)&lt;/a&gt;, how to scale &amp;amp; project it with the &lt;a href=&quot;http://www.gdal.org/&quot;&gt;Geospatial Data Abstraction Library (GDAL)&lt;/a&gt; and also how to convert it to an &lt;a href=&quot;http://en.wikipedia.org/wiki/STL_%28file_format%29&quot;&gt;STL file&lt;/a&gt; that can be 3D-printed; we will also discuss how to retrieve lists of trench coordinates from the Muninn Project&#039;s &lt;a href=&quot;http://rdf.muninn-project.org/sparql&quot;&gt;SPARQL server&lt;/a&gt;, and how to extrude trenches on our model of Vimy Ridge before 3D-printing it. Lastly, we will discuss issues regarding the size &amp;amp; resolution of our model of Vimy Ridge and suggest how we might improve the quality of our model in the future. Thanks to Lawrence Willett for letting us use his 3D printer.&lt;/p&gt;
&lt;p&gt;In order to 3D-print a battlefield, we first need to determine its bounding box. Currently, the Muninn Project&#039;s SPARQL server provides lists of trench coordinates for Vimy Ridge contained in (2.70251452076269, 50.0620220454661, 2.75071474125368, 50.0722188449797). We chose to 3D-print a model of the trenches of Vimy Ridge that lie inside of this bounding box.&lt;/p&gt;
&lt;p&gt;After determining the bounding box for our battlefield, we need to retrieve the elevation data inside of it. We&#039;ve built &lt;a href=&quot;https://github.com/markfarrell/elevation&quot;&gt;software&lt;/a&gt; - written in a modern descendant of Scheme known as &lt;a href=&quot;http://racket-lang.org/&quot;&gt;Racket&lt;/a&gt; - that allows us a retrieve raster images of elevation data inside of bounding boxes. Our software also allows us to &lt;a href=&quot;http://en.wikipedia.org/wiki/Universal_Transverse_Mercator_coordinate_system&quot;&gt;UTM-project&lt;/a&gt; and scale our raster images to 1m resolution, necessary in order for us to extrude trenches on a 3D-printable model of our battlefield; we use GDAL behind the scenes. Here is a projected &amp;amp; scaled raster image of elevation data for our model of the trenches of Vimy Ridge:&lt;/p&gt;
&lt;p&gt;&lt;img alt=&quot;&quot; src=&quot;http://i.imgur.com/8SyJsa3.png&quot; style=&quot;width: 500px; height: 162px;&quot; /&gt;&lt;/p&gt;
&lt;p&gt;We then &lt;a href=&quot;https://github.com/markfarrell/trenches&quot;&gt;create a raster image&lt;/a&gt; of trench data for Vimy Ridge with the same origin, dimensions, resolution and projection as our raster image of elevation data. First, we retrieve lists of trench coordinates inside of our bounding box using the Muninn Project&#039;s SPARQL server; as mentioned, currently all of the trench data that we have for Vimy Ridge is contained within the bounding box we chose to use for our model. Before getting lists of trench coordinates, we first find all known World War 1 objects inside of this bounding box:&lt;/p&gt;
&lt;table border=&quot;1&quot; cellpadding=&quot;1&quot; cellspacing=&quot;1&quot; style=&quot;width: 500px;&quot;&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;pre&gt;
SELECT DISTINCT ?thing ?state {
  ?thing &amp;lt;http://geovocab.org/geometry#geometry&amp;gt; ?geoma .
  ?thing &amp;lt;http://www.w3.org/1999/02/22-rdf-syntax-ns#type&amp;gt;
         &amp;lt;http://rdf.muninn-project.org/ontologies/military#MilitaryTrench&amp;gt; .
  ?geoma &amp;lt;http://linkedgeodata.org/ontology/posSeq&amp;gt; ?SEQ .
  ?SEQ &amp;lt;http://www.w3.org/1999/02/22-rdf-syntax-ns#type&amp;gt;
       &amp;lt;http://www.w3.org/1999/02/22-rdf-syntax-ns#Seq&amp;gt; .
  ?SEQ ?List ?node .
  ?node &amp;lt;http://www.w3.org/2003/01/geo/wgs84_pos#lat&amp;gt; ?LAT .
  ?node &amp;lt;http://www.w3.org/2003/01/geo/wgs84_pos#long&amp;gt; ?LONG .
  OPTIONAL { ?thing &amp;lt;http://rdf.muninn-project.org/ontologies/graves#hasState&amp;gt; ?state . }
  FILTER (?LAT  &amp;lt; 50.0722188449797 &amp;amp;&amp;amp; ?LAT  &amp;gt; 50.0620220454661)
  FILTER (?LONG &amp;lt; 2.75071474125368 &amp;amp;&amp;amp; ?LONG &amp;gt; 2.70251452076269)
}&lt;/pre&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;Then, we find lists of trench coordinates for each trench object, after filtering out known WW1 objects that are not trenches. For each trench object&lt;em&gt;,&lt;/em&gt; we execute the following SPARQL query, giving us a list of trench coordinates:&lt;/p&gt;
&lt;table border=&quot;1&quot; cellpadding=&quot;1&quot; cellspacing=&quot;1&quot; style=&quot;width: 500px;&quot;&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;pre&gt;
SELECT ?List ?LAT ?LONG {
  &amp;lt;&lt;em&gt;trench&lt;/em&gt;&amp;gt; &amp;lt;http://geovocab.org/geometry#geometry&amp;gt; ?geoma .
  &amp;lt;&lt;em&gt;trench&lt;/em&gt;&amp;gt; &amp;lt;http://www.w3.org/1999/02/22-rdf-syntax-ns#type&amp;gt;
           &amp;lt;http://rdf.muninn-project.org/ontologies/military#MilitaryTrench&amp;gt; .
  ?geoma &amp;lt;http://linkedgeodata.org/ontology/posSeq&amp;gt; ?SEQ .
  ?SEQ &amp;lt;http://www.w3.org/1999/02/22-rdf-syntax-ns#type&amp;gt;
       &amp;lt;http://www.w3.org/1999/02/22-rdf-syntax-ns#Seq&amp;gt; .
  ?SEQ ?List ?node .
  ?node &amp;lt;http://www.w3.org/2003/01/geo/wgs84_pos#lat&amp;gt; ?LAT .
  ?node &amp;lt;http://www.w3.org/2003/01/geo/wgs84_pos#long&amp;gt; ?LONG .
  FILTER (?LAT  &amp;lt; 50.0722188449797 &amp;amp;&amp;amp; ?LAT  &amp;gt; 50.0620220454661)
  FILTER (?LONG &amp;lt; 2.75071474125368 &amp;amp;&amp;amp; ?LONG &amp;gt; 2.70251452076269)
} ORDER BY ASC(?List)&lt;/pre&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;where &lt;em&gt;trench&lt;/em&gt; is the &lt;a href=&quot;http://en.wikipedia.org/wiki/Uniform_resource_identifier&quot;&gt;Uniform Resource Identifer (URI)&lt;/a&gt; for the trench object.&lt;/p&gt;
&lt;p&gt;We then &lt;a href=&quot;https://github.com/markfarrell/utm&quot;&gt;UTM-project&lt;/a&gt; each list of trench coordinates, and afterwards &lt;a href=&quot;https://github.com/markfarrell/sort-by-distance&quot;&gt;sort&lt;/a&gt; them by finding the shortest path between the two coordinates closest and farthest from the origin in each list. Finally, we are to produce a raster image of our trench data for Vimy Ridge: for each projected &amp;amp; sorted list of trench coordinates we create a &quot;drawing pen&quot;, set its line-width to the desired the width of our trenches, set the grayscale value of its colour to the desired depth of our trenches and then draw lines between each sliding pair of coordinates in each list of coordinates, saving our drawing as a raster image:&lt;/p&gt;
&lt;p&gt;&lt;img alt=&quot;&quot; src=&quot;http://i.imgur.com/zL6pO8U.png&quot; style=&quot;width: 496px; height: 161px; border-width: 2px; border-style: solid;&quot; /&gt;&lt;/p&gt;
&lt;p&gt;Once we have projected &amp;amp; scaled raster images for both our elevation data and trench data, we then create a trench-extruded terrain mesh in &lt;a href=&quot;http://www.blender.org/&quot;&gt;Blender&lt;/a&gt;, which we can export to an STL file for 3D-printing. Secondly, we create a plane mesh with the same dimensions as our raster images, subdividing it so that it has the same resolution as our raster images as well. Thirdly, we add a &lt;em&gt;displace modifier &lt;/em&gt;to set the height values of each point on our plane to each corresponding grayscale colour value of pixels on our elevation raster image. Lastly, we add another &lt;em&gt;displace modifier&lt;/em&gt;, extruding trenches with the raster of image of trench data that we created:&lt;/p&gt;
&lt;p&gt;&lt;img alt=&quot;&quot; src=&quot;http://i.imgur.com/T9CGAdg.png?2&quot; style=&quot;width: 500px; height: 167px;&quot; /&gt;&lt;/p&gt;
&lt;p&gt;Finally, we export the trench-extruded terrain mesh that we created as an STL file, which we send to the 3D printer:&lt;/p&gt;
&lt;p&gt;&lt;img alt=&quot;&quot; src=&quot;http://i.imgur.com/5IEthbD.png?2&quot; style=&quot;height: 172px; width: 500px;&quot; /&gt;&lt;/p&gt;
&lt;p&gt;We were able to produce a 3D-printed model of the trenches of Vimy Ridge with comparable quality &amp;amp; resolution to that of our digital 3D model. In the future, we&#039;d like to increase the size of our 3D-printed model to include more of Vimy Ridge, namely the ridge itself. This may prove somewhat difficult because the polygon count of our trenched-extruded terrain mesh in Blender, and hence our STL file, might grow too high to view, export and print; in other words, we might hit our current hardware limitations when we try to 3D-print a larger battlefield. Though, we might be able to overcome these potential limitations by either (a) increasing our computing power (b) using Blender &lt;em&gt;as a library &lt;/em&gt;to avoid the need to render our trench-extruded terrain mesh in Blender before exporting it or by (c) printing separate parts of our model and gluing them together afterwards.&lt;/p&gt;
&lt;p&gt;We encourage you to try printing your own battlefield using the methods &amp;amp; software provide in this blog post - let us know how you made out! Stay tuned for more information on 3D-printing your own historical battlefields.&lt;/p&gt;
&lt;p&gt;P.S. This is what it looks like when 3D-printing fails:&lt;/p&gt;
&lt;table border=&quot;1&quot; cellpadding=&quot;1&quot; cellspacing=&quot;1&quot; style=&quot;width: 500px;&quot;&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;
				&lt;img alt=&quot;&quot; src=&quot;http://i.imgur.com/wxELaNv.png?1&quot; style=&quot;width: 216px; height: 80px;&quot; /&gt;&lt;/td&gt;
&lt;td&gt;
				&lt;img alt=&quot;&quot; src=&quot;http://i.imgur.com/gMvNZHe.png?1&quot; style=&quot;width: 270px; height: 80px;&quot; /&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;
	 &lt;/p&gt;
&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;form-item form-type-item&quot;&gt;
  &lt;label&gt;Language &lt;/label&gt;
 English
&lt;/div&gt;
&lt;div class=&quot;field field-name-field-tags field-type-taxonomy-term-reference field-label-above&quot;&gt;&lt;div class=&quot;field-label&quot;&gt;Tags:&amp;nbsp;&lt;/div&gt;&lt;div class=&quot;field-items&quot;&gt;&lt;div class=&quot;field-item even&quot; rel=&quot;dc:subject&quot;&gt;&lt;a href=&quot;/taxonomy/term/93&quot; typeof=&quot;skos:Concept&quot; property=&quot;rdfs:label skos:prefLabel&quot; datatype=&quot;&quot;&gt;3D Printing&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;field-item odd&quot; rel=&quot;dc:subject&quot;&gt;&lt;a href=&quot;/taxonomy/term/90&quot; typeof=&quot;skos:Concept&quot; property=&quot;rdfs:label skos:prefLabel&quot; datatype=&quot;&quot;&gt;Vimy Ridge&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;field-item even&quot; rel=&quot;dc:subject&quot;&gt;&lt;a href=&quot;/taxonomy/term/70&quot; typeof=&quot;skos:Concept&quot; property=&quot;rdfs:label skos:prefLabel&quot; datatype=&quot;&quot;&gt;Trenches&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;field-item odd&quot; rel=&quot;dc:subject&quot;&gt;&lt;a href=&quot;/taxonomy/term/89&quot; typeof=&quot;skos:Concept&quot; property=&quot;rdfs:label skos:prefLabel&quot; datatype=&quot;&quot;&gt;Elevation&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;field-item even&quot; rel=&quot;dc:subject&quot;&gt;&lt;a href=&quot;/taxonomy/term/91&quot; typeof=&quot;skos:Concept&quot; property=&quot;rdfs:label skos:prefLabel&quot; datatype=&quot;&quot;&gt;SRTM&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;field-item odd&quot; rel=&quot;dc:subject&quot;&gt;&lt;a href=&quot;/taxonomy/term/13&quot; typeof=&quot;skos:Concept&quot; property=&quot;rdfs:label skos:prefLabel&quot; datatype=&quot;&quot;&gt;SPARQL&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;field-item even&quot; rel=&quot;dc:subject&quot;&gt;&lt;a href=&quot;/taxonomy/term/92&quot; typeof=&quot;skos:Concept&quot; property=&quot;rdfs:label skos:prefLabel&quot; datatype=&quot;&quot;&gt;GDAL&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;field-item odd&quot; rel=&quot;dc:subject&quot;&gt;&lt;a href=&quot;/taxonomy/term/81&quot; typeof=&quot;skos:Concept&quot; property=&quot;rdfs:label skos:prefLabel&quot; datatype=&quot;&quot;&gt;Racket&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;field-item even&quot; rel=&quot;dc:subject&quot;&gt;&lt;a href=&quot;/taxonomy/term/96&quot; typeof=&quot;skos:Concept&quot; property=&quot;rdfs:label skos:prefLabel&quot; datatype=&quot;&quot;&gt;Scheme&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;field-item odd&quot; rel=&quot;dc:subject&quot;&gt;&lt;a href=&quot;/taxonomy/term/97&quot; typeof=&quot;skos:Concept&quot; property=&quot;rdfs:label skos:prefLabel&quot; datatype=&quot;&quot;&gt;LISP&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;field-item even&quot; rel=&quot;dc:subject&quot;&gt;&lt;a href=&quot;/taxonomy/term/87&quot; typeof=&quot;skos:Concept&quot; property=&quot;rdfs:label skos:prefLabel&quot; datatype=&quot;&quot;&gt;Blender&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;</description>
 <pubDate>Fri, 27 Mar 2015 15:11:43 +0000</pubDate>
 <dc:creator>m4farrel</dc:creator>
 <guid isPermaLink="false">89 at https://blog.muninn-project.org</guid>
 <comments>https://blog.muninn-project.org/node/89#comments</comments>
</item>
</channel>
</rss>
