问题标签 [spatialite]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
613 浏览

python - Python:SpatiaLite 表到具有日期时间格式的 numpy recarray?

我在QGIS 用户论坛上发布了这个问题,但它可能技术性太强,因此我也借此机会在这里尝试一下。

我的计划是有一个 QGIS 插件,它读取和绘制与矢量图层中选定点相对应的时间序列数据(这些点代表不同的测量站,我需要快速查看每个测量站的时间序列,有时在几个站相同的情节)。因此,我需要 Python 从 Spatialite 表中读取时间序列数据,然后使用 Matplotlib.plot 绘制它:

但似乎我没有得到正确的数据类型,因为 matplotlib 不接受我的“日期时间”。下面显示了一个打印表2,我猜小u表示它是unicode而不是datetime?

打印表2

recarray([(u'2011-04-20 09:42:00', 703.46000000000004), (u'2011-04-20 09:43:00', 705.35000000000002), ... dtype=[('date_time', '|O4'), ('值', '

我不是程序员,绝对是一个完整的 Python 和 Spatialite 初学者,所以非常感谢任何帮助!

/JK

0 投票
1 回答
78 浏览

azure - 我需要做什么才能在 Azure 上的 webrole 中运行 spatialite?

我一直在研究在 Azure 上使用 spatialite。SpatiaLite 2.3.1中的预编译二进制文件都是针对 x86 的,并且尝试包含 libspatialite-1.dll 当然是行不通的,因为 Azure 需要 x64。

我只是缺少一些简单的东西,还是我需要尝试将二进制文件编译成 x64 dll?那是我应该走的路吗?

非常感谢任何指导或指向在 Azure 中运行 SpatiaLite 的教程链接。

0 投票
4 回答
2001 浏览

geometry - Get nearest geometry in spatiality using spatial index

I'd like to get the nearest feature to a given point in Spatialite using a spatial SQL query. I'd like to speed it up using index table. Spatial index boundary should be calculated from defined point and a given tolerance, all features that are totally/partly within rtree bounding box should be used in the query.

I have tried several way, but I had always problem with spatial index boundary.

Like this:

SELECT *, Distance(GeomFromText('POINT(19.02658 47.51574)'),mo_utak_polyline.Geometry) as distance FROM mo_utak_polyline WHERE ROWID IN (SELECT pkid FROM idx_mo_utak_polyline_Geometry WHERE xmin > 19.01408 AND xmax < 19.03908 AND ymin > 47.50324 AND ymax < 47.52824) AND distance <=0.0025) ORDER by distance

Or this:

SELECT *,Intersects(GeomFromText('POINT(19.02658 47.51574)'), megyehatar_region.Geometry) as intersects FROM megyehatar_region WHERE ROWID IN (SELECT pkid FROM idx_megyehatar_region_Geometry WHERE xmin > 14.02658 AND xmax < 24.02658 AND ymin > 42.51574 AND ymax < 52.51574) AND intersects=1

I can always get features that are totally contained by my index defined bounding box. It causes a huge problem for me, e.g. when I try to query line features, when their length is totally different, it can be 1 cm or even 1000 km, so it is hard to set the size of spatial index bounding box.

Which do you think the best way to do it?

How to change this part of the query

SELECT pkid FROM idx_mo_utak_polyline_Geometry WHERE xmin > 19.01408 AND xmax < 19.03908 AND ymin > 47.50324 AND ymax < 47.52824)

to return not only the features that are contained by the bounding box, but also those intersects with it?

Thanks in advance!

0 投票
2 回答
435 浏览

ruby-on-rails - ActiveRecord 将字段设置为 SQL 表达式

我正在使用 Ruby 1.8.7 和 Rails 2.3.8,并且有多个位置由纬度和经度表示。我正在使用 SQLite SpatiaLite 扩展将坐标转换为众所周知的二进制 (WKB) 格式。我关心的是如何让 ActiveRecord 执行插入或更新,调用适当的 SpatiaLite 转换方法。我想做这样的事情:

这可能与 ActiveRecord 吗?

我已经尝试过 GeoRuby,但是虽然它能够正确读取 WKB blob,但它无法将它们保存为与 SpatiaLite 相同的格式。

谢谢!

0 投票
2 回答
3030 浏览

sqlite - Spatialite 的 Distance() 函数返回什么单位?

Spatialite能够使用它的Distance()函数计算 2 个几何图形之间的距离。还有其他函数适用于 LINESTRING。但是我不知道它返回的单位是什么。是米吗?如果我有 2 个点,如何在空间查询中计算它们之间的距离?

(作为记录,我使用的是 SRID 4326,即 WSG 86,即旧的传统纬度和经度度)。

0 投票
2 回答
1533 浏览

ios - 为 iOS 构建一个静态库 - 特别是 spatialite

首先,请原谅并指出我是否要使用其他协议来引用另一个线程/帖子。

之前有一个线程如何为 iOS 编译 spatialite,其中最佳答案部分描述了将 spatialite 构建为 iOS 的静态库。答案包括以下文字:

“一旦你拖放了.a(两者都需要在模拟器和真实硬件上工作),你可以通过调用来初始化空间spatialite_init(1)。”

我猜这被翻译成以下的某些版本?

Xcode 4

  1. File->New->New Target->iOS->Framework & Library->Cocoa Touch静态库

  2. 命名库 - libSpatialite_TedS

  3. 将头文件拖到 libSpatialite_TedS -> Copy Headers (这里的问题......在'spatialite2.3.1.zip'下载的'headers'目录中有一个spatialite.h文件。然后在'spatialite'子目录中还有另一个spatialite.h,它不是一个相同的文件,显然是需要的。我们是否只需将头文件从“headers”目录中拖动,然后将目录“spatialite”作为目录拖到我们的 Xcode 静态库“myNewLibrary”的“Copy Headers”区域中'?)

  4. 拖动“.a 文件”libSPATIALITE2.3.1_arm.a & libSPATIALITE2.3.1_x86.a

  5. 我们不应该在“编译源”字段中有一些“.m”文件与这些标题一起使用吗?

现在,没有libSpatialite_TedS在我的项目中引用,当我“Command-B”构建时,项目构建成功。但是,当我在

/Users/Admin/Library/Developer/Xcode/DerivedData/MyProject-gutnkbwqqonzgxbcmfzzzkadqhid/Build/Products/Release-iphonesimulator

我看到了 build 的产品,但它们不包括 libSpatialite_TedS。

这是因为编译器是“智能的”并且识别出项目中没有引用任何 header/.a 文件,因此它不会费心编译它们吗?

而且,这是实现原始海报如何为 iOS 编译空间站目标的正确方法吗?

非常感谢,泰德 S

0 投票
4 回答
9876 浏览

python - Sqlite load_extension 在 Python 中的空间站点失败

我正在尝试使用 Spatialite beta 3.0 版,因为我在 64 位机器上使用 Windows 7。

sqlite3.OperationalError: The specified module could not be found.当我尝试加载时, 我总是遇到可怕的错误libspatialite-4.dll

我尝试了以下方法:

  • libspatialite-4.dll所有其他 dll 放在同一个文件夹中
  • 使用 dll 的完整路径
  • 将dll位置添加到'PATH'环境变量
  • 将 dll 位置作为 Python 代码的一部分附加到 sys.path 属性
  • 复制文件夹中的所有dll c:\windows\system32(重启机器完成)
  • 复制文件夹中的所有 dll c:\windows\sysWoW64(完成重启机器,这应该是 32 位 dll,但我还是试过了)

我的代码如下:

注意 - 我也尝试了完整的路径,但没有运气。我记得在 Windows XP 32 位时遇到了同样的问题。我得到它的工作,但不记得我做了什么:(

更新

我已经在 32 位 Windows 7 上测试了设置,并将所有 dll 放在 System32 文件夹中。因此,这表明 64 位设置存在一些问题。是不是我需要另一个版本的 MSVC(我不认为 Spatialite 网站说这是必要的,所以我可能只需要猜测 - 我安装了 MSVC2010)?

0 投票
2 回答
889 浏览

android - SpatialLite for Android NDK Geos Configure Error

I'm trying to build the following project for Android:

http://code.google.com/p/spatialite-android/

Does anyone know why there may be errors when running ndk-build for LineIntersector.cpp?

I'm running try to compile this on a mac and I'm an NDK newbie. Here is my configure that I run in the geos root

The error appears to be with the ISNAN function

0 投票
1 回答
2018 浏览

php - 每当我使用加载扩展或选择加载扩展时,它都会出现内部服务器错误(sqlite3、spatialite、PHP windows)

请帮忙。我还给出了下面的代码。尝试了很多东西。不工作。

选择了一个空间数据库:

尝试了这些负载扩展:

如果加载扩展被禁用,也尝试了这个功能:

在这里尝试加载扩展:

试过这个查询:

0 投票
2 回答
1623 浏览

android - android - 提示用户输入路径/文件名

我想要求用户从外部存储中选择要打开的文件并接收它的路径。最好我想避免过度编码并使用一些标准方法(众所周知的,系统提供的意图或类似的)。所述文件是 SpatiaLite db 文件 (*.sqlite),因此不会显示在图库中。