
<p>Introduction to IDL<sup style="top: -1.8309em;">® </sup></p><p>Revised for Print March, 2016 <br>©2016 Exelis Visual Information Solutions, Inc., a subsidiary of Harris Corporation. All rights reserved. ENVI and IDL are registered trademarks of Harris Corporation. All other marks are the property of their respective owners. </p><p>This document is not subject to the controls of the International Traffic in Arms Regulations <br>(ITAR) or the Export Administration Regulations (EAR). </p><p><strong>Contents </strong></p><p></p><ul style="display: flex;"><li style="flex:1"><strong>1</strong></li><li style="flex:1"><strong>Introduction To IDL </strong></li><li style="flex:1"><strong>5</strong></li></ul><p></p><p>55666677777<br>1.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . <br>1.1.1 What is ENVI? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.1.2 ENVI + IDL, ENVI, and IDL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.1.3 ENVI Resources . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.1.4 Contacting Harris Geospatial Solutions . . . . . . . . . . . . . . . . . . . . . . . . . . 1.1.5 Tutorials . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.1.6 Training . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.1.7 ENVI Support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.1.8 Contacting Technical Support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.1.9 Website . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.1.10 IDL Newsgroup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . </p><p><strong>23</strong></p><ul style="display: flex;"><li style="flex:1"><strong>About This Course </strong></li><li style="flex:1"><strong>9</strong></li></ul><p></p><p>99<br>2.1 Manual Organization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . <br>2.1.1 Programming Style . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . <br>2.2 The Course Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 <br>2.2.1 Installing the Course Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 <br>2.3 Starting IDL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 <br>2.3.1 Windows . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 2.3.2 Max OS X . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 2.3.3 Linux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 </p><p></p><ul style="display: flex;"><li style="flex:1"><strong>A Tour of IDL </strong></li><li style="flex:1"><strong>13 </strong></li></ul><p></p><p>3.1 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 3.2 Scalars and Arrays . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 3.3 Reading Data from Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 3.4 Line Plots . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 3.5 Surface Plots . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 3.6 Contour Plots . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 3.7 Displaying Images . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 3.8 Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 3.9 References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 </p><p></p><ul style="display: flex;"><li style="flex:1"><strong>4</strong></li><li style="flex:1"><strong>IDL Basics </strong></li><li style="flex:1"><strong>23 </strong></li></ul><p></p><p>4.1 IDL Directory Structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 4.2 The IDL Workbench . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 4.3 Exploring the IDL Workbench . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 4.4 Projects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 4.5 Working Directory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 4.6 Preferences . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 4.7 Search Path . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 </p><p>34<br>4.8 The IDL Help System . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 4.9 References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 </p><p></p><ul style="display: flex;"><li style="flex:1"><strong>5</strong></li><li style="flex:1"><strong>Line, Bar, and Scatter Plots </strong></li><li style="flex:1"><strong>35 </strong></li></ul><p></p><p>5.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35 5.2 Graphics Routines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35 5.3 Reflectance Spectra . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36 <br>5.3.1 Plotting Multiple Datasets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37 5.3.2 Adding Annotations to Graphics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38 5.3.3 Saving Graphics Windows . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38 <br>5.4 Boulder Temperature Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39 5.5 Scatterplots . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40 5.6 Bar Plots . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41 5.7 Error Plots . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43 5.8 The Sunspot Cycle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44 5.9 Histogram Plots . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45 5.10 Positioning Plots . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46 5.11 Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48 5.12 References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48 </p><p></p><ul style="display: flex;"><li style="flex:1"><strong>6</strong></li><li style="flex:1"><strong>Data Structures </strong></li><li style="flex:1"><strong>49 </strong></li></ul><p></p><p>6.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49 6.2 Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49 <br>6.2.1 Variable Names . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49 6.2.2 System Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50 <br>6.3 Data Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50 <br>6.3.1 Type Behaviors in IDL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52 6.3.2 Exception to Type Promotion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53 6.3.3 Null Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54 <br>6.4 Arrays . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54 <br>6.4.1 Array Subscripting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56 6.4.2 Multidimensional Arrays . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57 6.4.3 Single-Index Subscripting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58 6.4.4 The Where Function . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58 <br>6.5 Lists and Hashes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59 6.6 Structures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61 6.7 Strings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62 6.8 Pointers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64 6.9 Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64 6.10 Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65 6.11 References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66 </p><p></p><ul style="display: flex;"><li style="flex:1"><strong>7</strong></li><li style="flex:1"><strong>Programming </strong></li><li style="flex:1"><strong>67 </strong></li></ul><p></p><p>7.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67 7.2 Programs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67 <br>7.2.1 Executive Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68 7.2.2 Main . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69 7.2.3 Procedures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70 7.2.4 Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70 7.2.5 The COMPILE_OPT statement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71 <br>7.3 Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72 <br>7.3.1 Parameter Passing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72 <br>7.4 Calling Mechanism . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74 7.5 Operators . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75 </p><p>45<br>7.5.1 Compound Operators . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79 7.5.2 Array Operators . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79 7.5.3 Matrix Multiplication . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80 <br>7.6 Control Statements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80 <br>7.6.1 Compound Statements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80 <br>7.7 Conditional Statements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81 <br>7.7.1 If Statements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81 7.7.2 Case Statements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82 7.7.3 Switch Statements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82 7.7.4 The Definition of True and False . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83 <br>7.8 Loop Statements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84 <br>7.8.1 For Loops . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84 7.8.2 While Loops . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84 7.8.3 Repeat Loops . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85 7.8.4 Foreach loops . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86 <br>7.9 Jump Statements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86 <br>7.9.1 The Break Statement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86 7.9.2 The Continue Statement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86 <br>7.10 IDL Batch Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87 7.11 Timing with TIC and TOC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87 7.12 Programming tips . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88 7.13 Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88 7.14 References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88 </p><p><strong>89</strong></p><ul style="display: flex;"><li style="flex:1"><strong>Images </strong></li><li style="flex:1"><strong>91 </strong></li></ul><p></p><p>8.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91 8.2 What is an Image? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91 8.3 HST Imagery of the Carina Nebula . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92 8.4 Truecolor JPEG Image . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95 8.5 Landsat 7 ETM+ Image . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97 8.6 Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100 8.7 References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101 </p><p></p><ul style="display: flex;"><li style="flex:1"><strong>File Access </strong></li><li style="flex:1"><strong>103 </strong></li></ul><p></p><p>9.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103 9.2 File Types: Text and Binary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103 9.3 File Manipulation Routines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103 9.4 IDL SAVE files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106 9.5 Standard File Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107 <br>9.5.1 Wrappers for Standard Format Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109 9.5.2 User-contributed Routines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109 <br>9.6 Reading Text and Binary Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110 9.7 Low-level File Routines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111 <br>9.7.1 Opening and Closing Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112 9.7.2 Logical Unit Numbers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112 9.7.3 Compressed and XDR-format files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113 9.7.4 Byte Ordering in Binary Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113 9.7.5 Reading and Writing Text Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114 9.7.6 Reading Free Format ASCII Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114 9.7.7 Reading Explicitly Formatted ASCII Files . . . . . . . . . . . . . . . . . . . . . . . . . 115 <br>9.8 Writing Free and Explicitly Formatted ASCII Files . . . . . . . . . . . . . . . . . . . . . . . . 116 <br>9.8.1 Reading and Writing Binary Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117 <br>9.9 Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118 9.10 References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118 </p><p>5</p><p></p><ul style="display: flex;"><li style="flex:1"><strong>10 Surface and Contour Poots </strong></li><li style="flex:1"><strong>119 </strong></li></ul><p></p><p>10.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119 <br>10.1.1 Graphics Routines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119 <br>10.2 Spatial Rainfall Distribution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120 <br>10.2.1 Data Preparation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120 10.2.2 Shaded Surface Plot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121 10.2.3 Filled Contour Plot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122 10.2.4 Combined Surface and Contour Plot . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123 <br>10.3 Digital Elevation Models . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124 <br>10.3.1 Wire Mesh Surface Plot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126 10.3.2 Three-dimensional Contour Plot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127 10.3.3 Texture-mapped Surface Plot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128 10.3.4 A Remark . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129 <br>10.4 Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130 10.5 References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130 </p><p></p><ul style="display: flex;"><li style="flex:1"><strong>11 Analysis </strong></li><li style="flex:1"><strong>133 </strong></li></ul><p></p><p>11.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133 11.2 Interpolation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133 <br>11.2.1 Interpolation with Cubic Splines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133 11.2.2 Gridding Irregularly Spaced Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135 <br>11.3 Curve Fitting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137 <br>11.3.1 Least-squares Linear Fit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137 11.3.2 Least-square User-defined Fit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139 <br>11.4 Signal Processing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141 11.5 Image Processing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143 <br>11.5.1 Histogram Equalization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143 11.5.2 Image Sharpening . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145 11.5.3 Edge Enhancement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146 11.5.4 Fourier Filtering . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147 <br>11.6 Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148 11.7 References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 149 </p><p></p><ul style="display: flex;"><li style="flex:1"><strong>12 Map Projections </strong></li><li style="flex:1"><strong>151 </strong></li></ul><p></p><p>12.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151 <br>12.1.1 Map Projections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151 12.1.2 Graphics Routines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151 <br>12.2 A Simple Map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152 12.3 Landsat 7 ETM Image, Georeferenced . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 156 12.4 General Map Projection Routines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 158 12.5 Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159 12.6 References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159 </p><p><strong>Chapter 1 </strong></p><p><strong>Introduction To IDL </strong></p><p><strong>Contents </strong></p><p><strong>1.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . </strong></p><p>1.1.1 What is ENVI? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.1.2 ENVI + IDL, ENVI, and IDL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.1.3 ENVI Resources . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.1.4 Contacting Harris Geospatial Solutions . . . . . . . . . . . . . . . . . . . . . . . . 1.1.5 Tutorials . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.1.6 Training . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.1.7 ENVI Support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.1.8 Contacting Technical Support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.1.9 Website . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.1.10 IDL Newsgroup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . </p>
Details
-
File Typepdf
-
Upload Time-
-
Content LanguagesEnglish
-
Upload UserAnonymous/Not logged-in
-
File Pages165 Page
-
File Size-