维度扩展的9-交集矩阵实用工具

de9im的Python项目详细描述


作为我继续教育的一部分 shapely、geos、jts和ogc的简单特性规范,我写了一个 使用de-9im矩阵和模式的实用程序包: http://bitbucket.org/sgillies/de9im/。Shapely提供了标准 可能是我最喜欢的ogc标准)谓词作为几何类方法:

>>> from shapely.wkt import loads
>>> p = loads('POLYGON ((1.0 0.0, 0.0 -1.0, -1.0 0.0, 0.0 1.0, 1.0 0.0))')
>>> q = loads('POLYGON ((3.0 0.0, 2.0 -1.0, 1.0 0.0, 2.0 1.0, 3.0 0.0))')
>>> p.disjoint(q)
False
>>> p.intersects(q)
True
>>> p.touches(q)
True

但是如果你想测试这些功能是否只触及一个 仅指?你可能会说,一个“侧面拥抱”。而不是计算交叉口 并检查其几何类型,可以使用de9im包定义 de-9im矩阵模式及其与关系矩阵的比较 特征。下面模式中的0要求 特征的边界是一个0维图形。换句话说:A点:

>>> from de9im import pattern
>>> side_hug = pattern('FF*F0****')
>>> im = p.relate(q)
>>> print im
FF2F01212
>>> side_hug.matches(im)
True

也可以使用熟悉命名的模式:

>>> from de9im.patterns import touches
>>> repr(touches)
"DE-9IM or-pattern: 'FT*******||F**T*****||F***T****'"
>>> touches.matches(im)
True

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java检查整数是0还是检查变量是null更好?   java Android Kotlin(初学者)使用File(),并从ACTION\u GET\u内容返回Uri   java JavaFx在“内部场景”和根场景之间切换   spring将XMLBean配置转换为java配置   java JPA HIBERNATE映射列两次(embeddedID和POJO)   c#单态模式模型在什么情况下适用?   java请求。getRemoteUser在特定时间后返回null?   spring boot中PUT api控制器的java my单元测试用例失败   java在字符串中互换地解析和替换值   java Android JNI在应用程序中检测到错误:调用JNI GetMethodID时出现挂起异常   JavaSpringDataMongo:使用非简单键持久化映射   爪哇玻璃鱼连接被拒绝   java如何在用户注册时发送特定电子邮件id的自动回复?   Java列表:实例化时和之后的赋值之间的差异