Disclaimer: Authors have full rights over their works. Reproduction of any part of the content is prohibited without prior authorization.
SUMMARY
Items Found: 504
- PART 1 Overview
- CHAPTER 1 Spatial Information Management 3
- CHAPTER 2 Overview of Oracle Spatial 19
- CHAPTER 3 Location-Enabling Your Applications 37
- PART 2 Basic Spatial
- CHAPTER 4 The SDO_GEOMETRY Data Type 55
- CHAPTER 5 Loading, Transporting, and Validating Spatial Data 115
- CHAPTER 6 Geocoding 151
- CHAPTER 7 Manipulating SDO_GEOMETRY in Application Programs 207
- PART 3 Spatial and Network Analysis
- CHAPTER 8 Spatial Indexes and Operators 243
- CHAPTER 9 Geometry Processing Functions 305
- CHAPTER 10 Network Modeling 345
- CHAPTER 11 The Routing Engine 417
- PART 4 Visualization
- CHAPTER 12 Defining Maps Using MapViewer 437
- CHAPTER 13 Using Maps in Your Applications 503
- PART 5 Spatial in Applications
- CHAPTER 14 Sample Applications 581
- CHAPTER 15 Case Studies 623
- CHAPTER 16 Tips, Common Mistakes, and Common Errors 663
- PART 6 Appendixes
- APPENDIX A Additional Spatial Analysis Functions 689
- APPENDIX B Linear Referencing 701
- APPENDIX C Topology Data Model in Oracle 713
- APPENDIX D Storing Raster Data in Oracle 725
- APPENDIX E Three-Dimensional Modeling Using Point Clouds
- and TINs in Oracle 743
- INDEX 757
- PART 1 Overview
- CHAPTER 1 Spatial Information Management 3
- Using Spatial Information in Various Industries 5
- Sources of Spatial Data 7
- Managing and Analyzing Spatial Data 7
- Storing Spatial Data in a Database 11
- Spatial Analysis 14
- Benefits of Oracle Spatial 15
- Summary 18
- References 18
- CHAPTER 2 Overview of Oracle Spatial 19
- Technology and Architecture Overview 19
- Getting Started with Oracle Spatial 22
- Data Model: Storing Spatial Data 22
- Location-Enabling 22
- Query and Analysis 24
- Visualizing Spatial Data 27
- Advanced Spatial Engine 29
- Oracle Spatial Technology Products 30
- Locator 30
- Spatial Option 32
- What to Expect in an Oracle Spatial Install 33
- Installing Oracle Spatial in the Database 34
- Upgrades 34
- Understanding a Spatial Install 35
- Checking the Version of a Spatial Install 36
- Summary 36
- v
- CHAPTER 3 Location-Enabling Your Applications 37
- Adding Location Information to Tables 38
- Application-Specific Data 38
- Geographic Data 42
- Metadata for Spatial Tables 45
- Dictionary View for Spatial Metadata 45
- Populating Spatial Metadata for Your Application 49
- Additional Information for Visualization and Network Analysis 50
- Summary 51
- PART 2 Basic Spatial
- CHAPTER 4 The SDO_GEOMETRY Data Type 55
- Types of Spatial Geometries in Oracle 56
- Points 56
- Line Strings 56
- Polygons and Surfaces 57
- Solids 57
- Collections 58
- Logical Implementation of SDO_GEOMETRY 58
- Spatial Data in SQL/MM and OGC 59
- SDO_GEOMETRY Type, Attributes, and Values 60
- SDO_GTYPE Attribute 61
- SDO_SRID Attribute 63
- SDO_POINT Attribute 72
- SDO_ELEM_INFO and SDO_ORDINATES Attributes 74
- Simple Two-Dimensional Geometry Examples 76
- Point 76
- Line String: Connected by Straight Lines 78
- Line String: Connected by Arcs 79
- Polygon: Ring (Boundary) Connected by Straight Lines 80
- Polygon: Ring (Boundary) Connected by Arcs 82
- Rectangle Polygon 82
- Circle Polygon 83
- Complex Two-Dimensional Geometry Examples 84
- Constructing Complex Geometries 85
- SDO_ELEM_INFO for Compound Elements 86
- SDO_ELEM_INFO for Voided Polygon Element 87
- Compound Line String Example 87
- Compound Polygon Example 88
- Polygon with a Void 89
- Collections 91
- Three-Dimensional Examples 95
- Three-Dimensional Points, Lines, and Polygons 97
- Composite Surfaces 102
- Simple Solid 105
- Composite Solid 110
- Collections 112
- Summary 114
- CHAPTER 5 Loading, Transporting, and Validating Spatial Data 115
- Inserting Data into an SDO_GEOMETRY Column 116
- Loading and Converting Spatial Data 117
- Loading from Text Files Using SQL*Loader 117
- Transporting Spatial Data Between Oracle Databases 120
- Loading from External Formats 122
- Converting Between SDO_GEOMETRY and WKT/WKB 124
- Converting SDO_GEOMETRY Data in GML 124
- Extruding a Two-Dimensional Geometry to Three Dimensions 129
- Validating Spatial Data 132
- Validation Functions 132
- Validation Criteria 133
- Composite Solids 140
- Collections 141
- Debugging Spatial Data 142
- REMOVE_DUPLICATE_VERTICES 142
- EXTRACT 143
- APPEND 146
- GETNUMELEM, GETNUMVERTICES, and GETVERTICES 147
- EXTRACT3D 147
- Miscellaneous Functions 149
- Summary 149
- CHAPTER 6 Geocoding 151
- What Is Geocoding? 151
- Architecture of the Oracle Geocoder 153
- Parsing the Input Address 153
- Searching for the Address 154
- Computing the Spatial Coordinates 154
- Setting Up the Reference Data for the Geocoder 156
- Parameter Tables 156
- Data Tables 157
- Using Geocoder Functions 158
- GEOCODE_AS_GEOMETRY 158
- GEOCODE 161
- GEOCODE_ALL 176
- Geocoding Using Structured Addresses 182
- GEOCODE_ADDR 182
- GEOCODE_ADDR_ALL 184
- Reverse Geocoding 184
- REVERSE_GEOCODE 184
- Geocoding Business Data 186
- Adding the Spatial Column 186
- Geocoding the Addresses: The “Naive” Approach 187
- Address Verification and Correction 188
- Automatic Geocoding 193
- The Geocoding Server 196
- Architecture 196
- Installation and Configuration 198
- Using the Geocoder: XML Queries and Responses 200
- Summary 206
- CHAPTER 7 Manipulating SDO_GEOMETRY
- in Application Programs 207
- Manipulating Geometries Using PL/SQL 209
- VARRAY Manipulation Primer 211
- Reading and Writing SDO_GEOMETRY Objects 215
- Creating New Geometries 215
- Extracting Information from Geometries 217
- Modifying Existing Geometries 219
- Manipulating Geometries in Java 223
- Using the JGeometry Class 223
- Using 3D Geometries: the J3D_Geometry Class 229
- Extracting Elements from 3D Geometries: the
- ElementExtractor Class 229
- Using Standard Notations: WKT, WKB, GML 232
- Using ESRI Shapefiles 235
- Summary 240
- PART 3 Spatial and Network Analysis
- CHAPTER 8 Spatial Indexes and Operators 243
- Spatial Indexes 245
- Inserting Metadata for a Spatial Layer Prior to Indexing 246
- Creating a Spatial Index 247
- Spatial Indexing Concepts 247
- Spatial Index Parameters 249
- Spatial Operators 253
- Syntax of Spatial Operators 253
- Semantics of Spatial Operators 254
- Evaluation of Spatial Operators 255
- A Closer Look at Spatial Operators 256
- SDO_WITHIN_DISTANCE Operator 256
- SDO_NN Operator 261
- Operators for Spatial Interactions (Relationships) 268
- Hints for Spatial Operators 280
- Advanced Spatial Index Features 287
- Function-Based Spatial Indexes 287
- Local Partitioned Spatial Indexes 290
- Parallel Indexing 293
- Online Index Rebuilds 294
- Spatial Joins 295
- Three-Dimensional Analysis 298
- Summary 303
- CHAPTER 9 Geometry Processing Functions 305
- Buffering Functions 307
- Relationship Analysis Functions 310
- SDO_DISTANCE 310
- SDO_CLOSEST_POINTS 313
- RELATE 315
- Geometry Combination Functions 320
- SDO_INTERSECTION 321
- SDO_UNION 323
- SDO_DIFFERENCE 323
- SDO_XOR 325
- Geometric Analysis Functions 326
- Area, Length, and Volume Functions 326
- MBR Functions 330
- Miscellaneous Geometric Analysis Functions 333
- Aggregate Functions 337
- Aggregate MBR Function 337
- Other Aggregate Functions 338
- Summary 343
- CHAPTER 10 Network Modeling 345
- General Network Modeling Concepts 347
- Examples of Networks 348
- Oracle Network Data Model 349
- Data Structures: The Network Tables 351
- Node Table 352
- Link Table 352
- Path Table 353
- Path Link Table 354
- Network Metadata 354
- Defining Networks 355
- “Automatic” Network Definition 355
- “Manual” Network Definition 357
- Defining Multiple Networks on the Same Tables 359
- Dropping a Network 363
- Creating Spatial Indexes on Network Tables 363
- Getting Information About a Network 364
- Verifying Network Connectivity 365
- Example Network 366
- Analyzing and Managing Networks Using the Java API 370
- Analyzing Networks: The NetworkManager Class 370
- Limiting the Search Space: The SystemConstraint Class 384
- Advanced Analysis: Network Constraints 385
- Network Structures: The Network, Node, Link, and Path Classes 391
- Creating Networks: The NetworkFactory Class 394
- Debugging Network Structures 396
- Analyzing Networks Using the PL/SQL API 397
- Using a Memory Object 399
- Analyzing Networks 400
- Creating and Updating Networks 403
- Using Network Constraints 405
- The Network Editor 412
- Starting the Editor 412
- Using the Loaded Network 414
- Example Data: The Streets of San Francisco 415
- Summary 416
- CHAPTER 11 The Routing Engine 417
- Architecture 418
- Installation and Configuration 420
- Data Structures 422
- Example Data: The Streets of San Francisco 424
- Partitioning 425
- Using the Router: XML Queries and Responses 427
- Routing Requests 430
- Routing Options 431
- Pregeocoded Start and End Locations 431
- Geographic Start and End Locations 432
- Batch Routing 432
- Summary 434
- PART 4 Visualization
- CHAPTER 12 Defining Maps Using MapViewer 437
- Why Use Maps in Location-Enabled Applications? 437
- Overview of MapViewer and Oracle Maps 440
- Oracle MapViewer 440
- Oracle Maps 442
- Getting Started 443
- Load the Sample Data 444
- Location-Enable the Application Data 445
- Load the Geographical Data 445
- Load Maps, Themes, Style, and Map Cache Definitions
- for MapViewer 445
- Define a Data Source 446
- Install Example Applications 446
- Configuring MapViewer 448
- Using the Administration Console 449
- Configuration Parameters 452
- Defining Maps 457
- Using Map Builder 458
- Using Styles 461
- Using Themes 474
- Using Maps 484
- Defining Map Caches 491
- The USER_SDO_CACHED_MAPS View 491
- Managing Caches Using the MapViewer Console 491
- Creating a New Map Cache 493
- Creating Map Caches Using SQL 495
- Cache Data Structures 498
- Exporting Cache Definitions 498
- Purging and Refreshing Cache 498
- Using External Data Sources 499
- Summary 502
- CHAPTER 13 Using Maps in Your Applications 503
- Overview of MapViewer’s APIs 503
- XML, Java, JSPs, and PL/SQL 503
- JavaScript and Ajax: Oracle Maps 505
- Choosing an API 506
- Anatomy of a Map Request 507
- What: The Information That Should Appear on the Map 507
- Where: The Geographical Area to Be Covered by the Map 508
- How: The Format and Size of the Resulting Map 508
- Interacting with Maps 509
- Controlling the Level of Detail: Zoom In and Zoom Out 509
- Controlling the Area Shown on the Map: Pan and Recenter 509
- Selecting Features: Identify 510
- Choosing the Information to Appear on the Map: Layer Control 510
- Oracle Maps: The JavaScript API 510
- Displaying a Map 511
- Interacting with Maps: Zooming and Panning 514
- Adding Map Decorations 515
- Adding Generic Decorations 515
- Creating an Overview Map 516
- Rectangular (Marquee) Zooming 517
- Adding Dynamic Information: Theme-Based FOIs 519
- Adding Individual FOIs 523
- Controlling Styles 524
- Capturing User Input: Tools and Selectors 525
- Responding to Events 528
- Using the Java API 530
- Map Requests 530
- Zooming and Panning 533
- Theme Control 535
- Style Control 540
- Identification and Queries 540
- Dynamic Features 543
- Legends 543
- Map Decorations 545
- Using the Map Cache 546
- Discovering Data Sources, Maps, Themes 547
- Using JSP Tags 547
- Using the XML API 552
- Simple Map Requests 553
- Adding Themes to a Base Map 555
- Using Multiple Data Sources 556
- Constructing a Map from Themes 557
- Dynamic Themes 558
- Dynamic Features 561
- Legends 563
- The XML Map Response 565
- Using the PL/SQL API 566
- Installing the API 566
- A Simple Example 567
- Using the Administrative API 568
- Browsing Map Definitions 568
- Managing the MapViewer Server 570
- Restarting MapViewer 573
- Web Map Service (OGC WMS) Interface 573
- The GetCapabilities Request 573
- The GetMap Request 575
- The GetFeatureInfo Request 576
- Spatial Reference Systems (SRS) Mapping 578
- Summary 578
- PART 5 Spatial in Applications
- CHAPTER 14 Sample Applications 581
- Data Preparation and Setup 582
- Loading the Geographical Data 582
- Location-Enabling the Application Data 582
- Loading Map, Theme, Style, and Map Cache Definitions
- for MapViewer 583
- Applications Setup 583
- The JavaScript Application 584
- Application Walk-Through 584
- Under the Hood 589
- The Java (JSP) Application 603
- Application Walk-Through 603
- Under the Hood 610
- Summary 622
- CHAPTER 15 Case Studies 623
- Overview of the Case Studies 623
- Spatial Information for Managing the London Bus Network 624
- BusNet 625
- Spatial Data and Oracle Spatial in BusNet 626
- User Interface for Spatial Data in BusNet 628
- BusNet Conclusions 630
- P-Info: A Mobile Application for Police Forces 631
- P-Info Functionality 632
- P-Info Architecture 633
- Use of Oracle Spatial in P-Info 635
- Measurable Added Value of P-Info 637
- Risk Repository for Hazardous Substances 638
- RRGS Technology 640
- Use of Oracle Spatial in the RRGS 642
- From Hazardous Substances to Risk Management 643
- USGS National Land Cover Visualization and Analysis Tool 644
- The Architecture of USGS Visualization and Analysis Tool 647
- Oracle Spatial in USGS Visualization and Analysis Tool 648
- Benefits of USGS Visualization and Analysis Tool 651
- U.S. Department of Defense MilitaryHOMEFRONT LBS 652
- The Architecture of MilitaryHOMEFRONT LBS 654
- Oracle Spatial in MilitaryHOMEFRONT 657
- Mobile MilitaryINSTALLATIONS 660
- Benefits of MilitaryHOMEFRONT LBS 662
- Summary 662
- CHAPTER 16 Tips, Common Mistakes, and Common Errors 663
- Tips 663
- Data Modeling and Loading 663
- Performance of Spatial Operator Query 666
- Performance of Other Spatial Processing Functions 670
- Performance of Inserts, Deletes, and Updates 672
- Best Practices for Scalability and Manageability of Spatial Indexes 673
- Common Mistakes 678
- Bounds, Longitude and Latitude, and Tolerance for Geodetic Data 678
- NULL Values for SDO_GEOMETRY 678
- Use GEOCODE or GEOCODE_ALL 678
- Specify “INDEXTYPE is mdsys.spatial_index” in CREATE INDEX 678
- Always Use Spatial Operators in the WHERE Clause 679
- Use Spatial Functions When No Spatial Index Is Available 679
- Do Not Move, Import, or Replicate MDRT Tables 680
- Network Metadata 680
- Map Metadata 681
- Common Errors 681
- ORA-13226: Interface Not Supported Without a Spatial Index 681
- ORA-13203: Failed to Read USER_SDO_GEOM_METADATA View 681
- ORA-13365: Layer SRID Does Not Match Geometry SRID 681
- ORA-13223: Duplicate Entry for in
- SDO_GEOM_METADATA 682
- ORA-13249, ORA-02289: Cannot Drop Sequence/Table 682
- ORA-13249: Multiple Entries in sdo_index_metadata Table 682
- ORA-13207: Incorrect Use of the Operator 682
- ORA-13000: Dimension Number Is Out of Range 682
- ORA-00904: Invalid Identifier 683
- ORA-00939: Too Many Arguments for Function 683
- ORA-13030: Invalid Dimensionality for the SDO_GEOMETRY,
- or ORA-13364: Layer Dimensionality Does Not Match Geometry
- Dimensions 684
- Summary 685
- PART 6 Appendixes
- APPENDIX A Additional Spatial Analysis Functions 689
- Tiling-Based Analysis 689
- TILED_BINS 689
- TILED_AGGREGATES 691
- Neighborhood Analysis 694
- AGGREGATES_FOR_GEOMETRY 694
- AGGREGATES_FOR_LAYER 695
- Clustering Analysis 696
- SPATIAL_CLUSTERS 696
- Refining the Candidates for Site Selection 697
- Geometry Simplification for Speeding Up Analysis 698
- Summary 699
- APPENDIX B Linear Referencing 701
- Concepts and Definitions 702
- Measure 702
- Linear Referenced Segments 702
- Direction 702
- Shape Points 702
- Offset 703
- Typical Application 703
- Creating Linear Referenced Geometries 705
- SDO_GTYPE in LRS Geometries 705
- Constructing LRS Geometries 706
- Metadata 707
- Spatial Indexes and Spatial Operators on LRS Geometries 707
- Dynamic Segmentation Operations 707
- Clip a Segment 707
- Locate a Point 708
- Project a Point 709
- Intersecting LRS Segments with Standard Geometries 710
- Validation of LRS Segments 710
- Dynamic Segmentation on 3D Geometries 711
- Other Operations 711
- Summary 712
- APPENDIX C Topology Data Model in Oracle 713
- Sharing Boundaries 714
- Benefits of the Topology Data Model 715
- Storing a Topology Data Model in Oracle 715
- Operating on a Topology in Oracle 718
- Creating a Topology 718
- Populating a Topology 719
- Associating a Feature Layer with a Topology 719
- Inserting, Updating, and Populating Feature Layers 720
- Updating Topological Elements 721
- Querying for Topological Relationships 723
- Hierarchical Feature Model 723
- Summary 724
- APPENDIX D Storing Raster Data in Oracle 725
- The SDO_GEORASTER Data Type 726
- Storage for SDO_GEORASTER Data 728
- Metadata in SDO_GEORASTER Data 731
- Populating SDO_GEORASTER Columns 731
- Manipulating Raster Objects 732
- Generating Pyramids 733
- Subsetting 734
- Georeferencing 734
- Attaching Bitmap Masks 736
- Registering NODATA Values 737
- Using Compression in GeoRaster 738
- Visualizing Raster Data in Oracle MapViewer 739
- Summary 741
- APPENDIX E Three-Dimensional Modeling Using Point Clouds
- and TINs in Oracle 743
- Storing Large Point Sets 744
- The SDO_PC Data Type 744
- Populating a Point Cloud 745
- Querying a Point Cloud 748
- Other Manipulation Functions for Point Clouds 749
- Storing Triangulated Irregular Networks 749
- The SDO_TIN Data Type 750
- Populating a TIN 751
- Querying a TIN 754
- Other Manipulation Functions for TINs 755
- Summary 755
- INDEX 757