Take the 2-minute tour ×
Geographic Information Systems Stack Exchange is a question and answer site for cartographers, geographers and GIS professionals. It's 100% free, no registration required.

Is there some way to create lines from geometry stored in a Blob field? It's a SDE-database line feature class that has crashed in some way, but I can still get the raw data and the feature class works in a third party application. No, I can't recover the database from a backup, because it turns out our IT department only stores backups 7 days.

The said third party application reads it's data from a view made of the data table and geometry table. This view I have exported to a regular file geodatabase (to be on the safe side with experiments). So, I need to somehow extract the geometry data from the Blob field, so I can recreate the lines. I'm having a hard time finding anything like this on Google.

There's also a field named ENTITY, and one named NUMOFPTS. I'm guessing these have got something to do with the Blob field (named POINTS).

share|improve this question
    
This question is related to one of my other Questions –  Bananapa Feb 1 '13 at 8:05

1 Answer 1

up vote 2 down vote accepted

Here is documentation on ArcSDE Compressed Binary :

Internally, all ArcSDE coordinates are 64-bit positive integers between 0 and 2147483647 (if defined using a 32-bit coordinate reference) or between 0 and 9007199254740990 (if defined using a 64-bit coordinate reference). Note that 64-bit coordinates are actually limited to a 53-bit range so that no information is lost when converting to or from double precision floating point representation.

Because real-world coordinates are often neither positive nor integer, ArcSDE data requires an offset distance (a false origin) to ensure numbers are positive and a minimum resolution multiplier (called the scale) to convert real numbers to integers. Offset distances are specified in the same units as the data. The scale can be any positive value up to 2147483645.

The scale can be any positive value up to 2147483645 if using a 32-bit coordinate reference, and up to 9007199254740990 if using a 64-bit coordinate reference.

Update

Before taking this approach, I recommend trying to fix your database. It that fails, try using the C API to retrieve geometry.

share|improve this answer
    
Thanks! Although I can't find anything in there to help me extract the geometry from my Blobs. Have any ideas? –  Bananapa Feb 1 '13 at 14:51
    
@Bananapa Did you look at the "physical representation" section? Really, though, before taking this approach I recommend trying to un-crash your database. What 3rd party app is able to read the data? Perhaps that app uses the SDE C API. –  Kirk Kuykendall Feb 1 '13 at 18:27
    
I contacted the makers of the third party application, and we were able to export the geometries. Since our IT department didn't store the backups longer than 7 days, backup was not an option. –  Bananapa Feb 4 '13 at 14:44

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.