]> www.wagner.pp.ru Git - sites/home_page.git/blobdiff - geography/fGIS/EPU.html
Added fGIS
[sites/home_page.git] / geography / fGIS / EPU.html
diff --git a/geography/fGIS/EPU.html b/geography/fGIS/EPU.html
new file mode 100644 (file)
index 0000000..596966b
--- /dev/null
@@ -0,0 +1,125 @@
+<HTML>
+<HEAD>
+<TITLE>Environmental Planning Utilities</TITLE>
+</HEAD>
+<BODY>
+[<A HREF=index.html><I>f(</I><B>GIS</B><I>)</I> home</A>]
+<HR>
+<H1>Environmental Planning Utilities</H1>
+
+<H3>Overview</H3>
+Environmental planning utilities is set of stand-alone programs, which
+performs GIS operations on <A HREF="http://www.mnplan.state.mn.us/EPPL7/">EPPL7</A> data files. EPPL stands for &quot;Environmental Planning Program Language&quot;. When I begin to reimplement some EPPL commands trying to overcome some
+limitations of 16-bit DOS environment, I found that it is complete waste of effort - attempt to implement yet another scripting language while we have such
+a wonderful things as Unix shell or <A HREF=http://www.scriptics.com>Tcl</A>.
+<P>
+So, it is not a language, but set of utilities. They are designed to operate
+non-interactively, from batch files or scripts. Interactive front end is 
+provided by <A HREF=index.html><I>f(</I><B>GIS</B><I>)</I></A>.
+<P>
+<H3>Utilities</H3>
+
+EPU include:
+       <UL>
+        <LI><B>border</B> - converts raster to vector by plotting vector
+          lines on every class change of vector file. Exceeds some limitation
+          of EPPL7 border command and have more elaborate algorithm of line
+          smoothing, but currently is not able to label polygons with points
+          and generate Arc/Info-like topology. I've invented 
+           <A HREF=topology.html>algorithm</A> to do
+          so, but it is still awaiting implementation.
+         (<A HREF=man/border.1.html>man page</A>)
+        <LI><B>cluster</B> Assigns unique numbers to clusters of points in
+         space which are separated by some boundaries. Curently supported
+         types of boundaries include:
+         <OL>
+          <LI>Lines plotted in the raster with particular attribute
+             (like EPPL7 <B>cluster</B> command).
+          <LI>Class changes of the existing raster (counting unique polygons)
+          <LI>Lines of vector file (like EPPL7 <B>rasterize</B> command).
+             (<B>buggy</B>)
+         </OL>
+         Supports more up to 65534 polygons on map without limitations of EPPL7,        which have troubles with more than 32767 temporary polygons.
+        <A HREF=man/cluster.1.html>(man page)</a>.
+        <LI><B>fill</B> - Fills small holes in raster data files left after
+      rasterization or combining of several maps.
+       Returns non-zero exit code if there are some holes left and another
+       pass is neccessary (<A HREF=man/fill.1.html>man page</A>)
+
+        <LI><B>outtable</B> - computes tabular reports from set of maps.
+         Works siginificantly faster than EPPL outtable due to different
+         storage structures, especially  on files which are results from 
+         <B>cluster</B> command. (<A HREF=man/outtable.1.html>man page</A>)
+        <LI><B>intable</B> - creates map from existing maps and 
+             substitution table (<A HREF=man/intable.1.html>man page</A>)
+        <LI><B>mapcalc</B> - anything which can be compute from limited
+                        surrounding of point. Extendent descendant of
+             EPPL7 <B>evaluate</B> command. Also replaces such EPPL commands
+            as <B>moving</B>, <B>jumping</B>, <B>neighbour</B> and <B>border</B>
+         (EPP version) (<A HREF=man/mapcalc.1.html>man page</A>).
+         <P>
+         <B>Not written yet</B>
+         <P>
+        <LI><B>mapclass</B> which does same thing as mapcalc for maps
+            whose values cannot be interpreted is numbers. Descendant of
+            EPPL7 multi-file <B>RECLASS</B> command. <A
+            HREF=man/mapclass.1.html>(man page)</a>. See also <A
+            HREF=man/reclass1.1.html>reclass1</a>
+         <P>
+         <B>Not written yet</B>
+         <P>
+        <LI><B>thiessen</B> - anything which requires computation of distance
+to far points. Replaces EPPL7 commands <B>radius</B>, <B> buffer</B>, 
+         <B>guarded</B>. Planned to overcome 16384 colums limitation of EPPL7 
+         RADIUS command.
+        (<A HREF=man/thiessen.1.html>man page</A>)
+          
+         <P>
+         <B>Not written yet</B> 
+         <P>
+        <LI><B>interpolate</B> spatial interpolations. Planned methods:
+           Inverse distantion, Kriging, <A HREF=/~vitus/loi.html>Landscape-oriented interpolation</A>. 
+         <P>
+         <B>Not written yet</B> 
+         <P>
+        <LI><B>transform</B> anything which changes coordinate system,
+         including projection transformation. Projection handling code is
+         based on <A HREF="http://kai.er.usgs.gov">USGS Public Domain
+Projection program.</A>
+         <P>
+         <B>Not written yet</B>
+         <P>
+        <LI><B>conversion tools</B> various format conversions. Currently
+         only <a href=man/dgt2gen.1.html>dgt2gen</a> is written . Second most important part is
+         <B>epptoppm</B> and <B>ppmtoepp</B> which would allow to interoperate
+          with lots of formats already supported by netpbm library.
+         
+        <LI><B>raster file manipulation tools</B> - set of small things,
+          which operate with raster files on low level. This includes
+          <A HREF=man/eheader.1.html>eheader</a> which views and edits
+          header of EPP file (only program of EPU which can be compilied
+          as 16-bit DOS application), <A
+         HREF=man/window.1.html>window</a> which cuts a rectangular region from
+        map, <A HREF=man/mosaic.1.html>mosaic</a> which combines several maps
+        together and <A HREF=man/clip.1.html>clip</a> which cuts a part 
+        from map using
+        an area of given class from other maps as cutted region boundary.
+        <LI><b>extents</b> print table of minimal and maximal
+coordinates for each class. (<A href=man/extents.1.html>man page</a>)
+        <LI><b>neighbours</b>. - for each class in file prints list
+          of classes, which are neighbouring to it.
+           (<a href=man/neighbours.1.html>man page</a>).
+       </UL> 
+<H3>System requirements</H3>
+
+EPU should work on any system which is 32-bit and has ANSI C compilier.
+They have been tested under <B>Linux</B>, <B>Solaris/Sparc</B> and
+<B>MS-DOS</B> with <B>DOS4GW</B> extender (Watcom C 10.0). It is essential
+that system should support concept of standard input/output and exit codes,
+so porting to Win32 should be trivial, but porting to MacOS would require
+major redesign.
+
+<HR>
+[<A HREF=index.html><I>f(</I><B>GIS</B><I>)</I> home</A>]
+</BODY>
+</HTML>