emp3-web icon indicating copy to clipboard operation
emp3-web copied to clipboard

In Cesium, Feature.remove does not remove from map if the Feature being removed is in another Feature Container

Open sjpinizzotto opened this issue 8 years ago • 4 comments

Add an NBC Area, Add an NBC single point graphic to the NBC Area graphic. the point's parent should be the NBC Area. Both should show on map.

Now remove the NBC area. The point still shows, but the map API thinks it is gone.

sjpinizzotto avatar Feb 03 '17 19:02 sjpinizzotto

I tested by plotting a mil std multipoint as the parent , and a single point as the children of the multipoint. Then I try removing the child single point but the engine is never getting the request to remove the feature from the map. engineInterface.feature.remove function is never called. Re assigning this issue as a core issue.

alberto-acevedo avatar Feb 03 '17 20:02 alberto-acevedo

I tested again in V3 and when adding a feature to another feature, the children feature has the folllowing values:

coreParent --> parent feature coreId parentCoreId --> overlay of parent feature parentId --> undefined

In V2 I check for parentId to determine the parent feature. In V3 parentId is undefined and parentCoreId is used instead.

alberto-acevedo avatar Feb 03 '17 21:02 alberto-acevedo

Just for the record. I debugged the code in the storage class and the children feature ends up having 2 parents: the overlay (parentCoreId) and the coreParent (feature parent). When removing the parent feature, the child feature is not getting removed from map or from the core because the child has the overlay as another parent. The process of adding a feature as a child of another feature in the API tester is not a move operation like we had in V2. The process is the adding of parent references to the child feature. Do we have the capability of moving features in the core and API ? I need to investigate.

alberto-acevedo avatar Oct 12 '17 20:10 alberto-acevedo

tested and after removing of NBC Area, the NBC single point stays on the map and I can see it in the API side (client API tester). This test shows that I could not replicate the issue of the NBC single point not getting detected by the API. Keeping the issue open until there is a tester available to validate this issue.

alberto-acevedo avatar Oct 12 '17 20:10 alberto-acevedo