首页 / 浏览问题 / 其他 / 问题详情
supermap中如何表达物体间非空间关系的?
1EXP 2017年03月19日

1个回答

你好,麻烦说一下非空间关系具体指的什么,是指物体的属性描述还是指的其他什么,如果是属性描述的话,supermap中使用属性表来记录物体(对象)的属性信息,如果不是,请用两个具体的物体来说明一下非空间关系指的什么。
5,985EXP 2017年03月20日
不是属性描述,而是物体存在的一些关系。例如业主和房产之间的隶属关系;计算机和内存条之间的组成关系等。
可以用纯属性属性表来记录他们之间的关系,比如有一个字段“业主”,用来记录业主的名字,还有一个字段“房产编号”,里面记录哪些编号的房产属于该业主。如果需要结合空间信息,比如房产在什么位置,属性哪个业主,可以建一个点数据集,点代表房产的位置,里面可以建字段“编号”,记录该房产的编号,字段“业主”,记录该房产属于哪个业主。具体的可以灵活使用
那有没有专门的关系类来管理这些非空间关系呢?这些关系除了仅仅记录关系以外,还考虑到在数据维护过程中一个对象的增加或者删除会影响另一个有关系的对象的增加与删除。
感觉你说的是数据库的触发器技术,要做这样的东西,肯定需要你的开发人员自己开发系统来控制,就算是在数据库里面做也得自己做一个系统
arcgis里有专门的关系类可以描述表达对象间的非空间关系,就是不知道咱们国产的软件中是否也有这样的功能
你是说arcgis的桌面软件arcmap有这样的功能吗,可不可以简单给我说一下你在arcmap中是怎么做的
你好,目前超图的桌面产品idesktop是没有类似数据库触发器的功能,只能通过设置连接表将两个表的属性关联起来,然后通过SQL查询之后手动的修改,想要自动的修改,可以做扩展开发
在ArcCatalog中可以对对象建立关系类,然后进行一系列的设定,包括关系的名称,关系的源和目标,关系的类型(简单关系表示源的增减不会影响目标,复杂关系表示源的增减可以影响目标对象)等,建立好了之后,在对象进行维护时,就会通过关系直接影响其他对象的增减。

ArcCatalog指向的还是数据库技术,做了一个用户可以可视化管理的界面,我们确实没有直接给用户使用的类似产品,但是这个需求是可以通过桌面扩展开发或者组件开发实现的

明白啦,真的十分感谢!
...