Top 5 Recent Articles
- Biography (1)
- Blog (26)
- Changes (1)
- Customers (1)
- Education (2)
- General Software (21)
- Image Catalog (2)
- Licensing (1)
- ManifoldGIS (3)
- MySQL Spatial (2)
- Networking and Routing (including Optimization) (3)
- Oracle Spatial (57)
- PostGIS (20)
- Press Releases (1)
- Source code (6)
- Space Curves (1)
- Spatial DB comparison (1)
- SQL (1)
- SQL Server Blog (13)
- SQL Server Spatial (General) (15)
- SQL Server Spatial (LRS) (37)
- Stored Procedure (2)
- XML (5)
Tip #1 – Extracting the Spatial Extent of an Image and Saving in a Drawing
This tip comes from a question Atelier Cassini asked on the Directions Magazine discussion list. He writes:
“I would like to create a box drawing around an image. Do I need to know the exact dimension of that image or can I draw it automatically?”
While one cannot do this automatically, one can use a single SQL SELECT statement to extract the boundary of an image and write it into a drawing component.
Let us assume that the target drawing is called “MyDrawing” and that the source image is called “SpatialDBAdvisor”.
The method I recommended was to create a new Query component and then add the following SQL SELECT statement into that component.
INSERT INTO MyDrawing ([Geom (I)]) SELECT Project( AssignCoordSys( CGeom(CGeomWKB( "POLYGON(("&min([Easting (I)])&" "& min([Northing (I)])&", "& min([Easting (I)])&" "& max([Northing (I)])&", "& max([Easting (I)])&" "& max([Northing (I)])&", "& max([Easting (I)])&" "& min([Northing (I)])&", "& min([Easting (I)])&" "& min([Northing (I)])&"))")), CoordSys("SpatialDBAdvisor" AS Component)), CoordSys("MyDrawing" As Component)) FROM [SpatialDBAdvisor]
If your image data is in geographics (ie Latitude/Longitude) then you should replace the Easting and Northing intrinsics with their Longitude/Latitude equivalents.
I hope this is useful.