我有一个二进制文件" geo.bin"代表一些几何(我认为是OGR WKB)。二进制文件具有构成多边形的点列表。我想读取二进制数据并在我的VBScript脚本中创建一个点数组。
我可以利用已存在的解决方案吗?也许像DbGeometry这样的.NET类?如果是这样,我将如何实例化这样的类?我尝试了以下操作但得到错误" ActiveX组件无法创建对象:' GetObject'":
Dim fso
Set fso = CreateObject("Scripting.FileSystemObject")
Dim logfile
Set logfile = fso.CreateTextFile("A:\Atoll\geotest.log")
'read binary geometry into byte array
Dim stream, bytes
Set stream = CreateObject("ADODB.Stream")
stream.Open
stream.Type = 1
stream.LoadFromFile("A:\Atoll\geo.bin")
bytes = stream.Read
stream.Close
Dim dbgeo: Set dbgeo = GetObject("C:\Windows\Microsoft.NET\Framework64\v4.0.30319\System.Data.Entity.dll", "DbGeometry")
logfile.Write(TypeName(dbgeo) & vbCrLf)
Dim poly: Set poly = dbgeo.FromBinary(bytes)
我也尝试过使用:
Dim dbgeo: Set dbgeo = CreateObject("System.Data.Spatial.DbGeometry")
但是得到了类似的错误。