使用gremlinjavascript在JanusGraph中创建和查询地质点

使用gremlinjavascript在JanusGraph中创建和查询地质点,javascript,gremlin,janusgraph,gremlin-server,Javascript,Gremlin,Janusgraph,Gremlin Server,我找不到使用gremlinjavascript客户端(3.4.2)创建包含地质点的顶点的方法 为属性定义的架构如下所示: geopoint=mgmt.makePropertyKey('geopoint').dataType(Geoshape.class).cardinality(org.janusgraph.core.Cardinality.SINGLE).make(); 在阅读JanusGraph的文档时,我应该能够执行以下操作,包括查询和创建: g.addV('location').pro

我找不到使用gremlinjavascript客户端(3.4.2)创建包含地质点的顶点的方法

为属性定义的架构如下所示:

geopoint=mgmt.makePropertyKey('geopoint').dataType(Geoshape.class).cardinality(org.janusgraph.core.Cardinality.SINGLE).make();
在阅读JanusGraph的文档时,我应该能够执行以下操作,包括查询和创建:

g.addV('location').property('geopoint', Geoshape.point(45.944, 18.485));
问题是,我无法使用gremlin客户端在任何地方找到“Geoshape”类型。我还尝试使用GeoJSON和类似{lat:45.848,lng:16.487}的对象作为属性值,但两者都不起作用


这是使用javascript为JanusGraph创建和查询Geoshape.point的方法吗?

因为
Geoshape
是JanusGraph的一项功能,TinkerPop(因此Gremlin)不支持这种功能。您必须依赖JanusGraph来提供该功能,目前为止,我认为他们没有为此提供Javascript扩展。不过,作为一个例子,您可以看到在他们的应用程序中提供了这种支持


目前,在Javascript中执行基于
Geoshape
的查询时,您唯一的解决方法是访问Gremlin服务器,该服务器允许您访问服务器上的
Geoshape
Java类。

从@stephen mallete answer开始,这无法使用Gremlin客户端完成。
但多亏了这一点,我找到了一个很好的解决办法。

再次您好,斯蒂芬,也谢谢您的回答。在我发布问题的第二天,我确实意识到你在告诉我什么。尽管我也发现,多亏了Kelvin Lawrence的一本Gremlin指南书,我可以使用lng和lat属性为双倍的简单顶点进行与geopoint相关的大多数遍历。也许我应该回答我的问题并参考我的发现。