Bug 3018 - Indoor/outdoor status is not updated when the node moves
Indoor/outdoor status is not updated when the node moves
Status: NEW
Product: ns-3
Classification: Unclassified
Component: buildings
PC Linux
: P5 normal
Assigned To: Biljana Bojović
Depends on:
  Show dependency treegraph
Reported: 2018-11-23 12:12 EST by Michele Polese
Modified: 2019-08-26 12:03 EDT (History)
3 users (show)

See Also:

patch (4.45 KB, patch)
2018-11-23 12:12 EST, Michele Polese
Details | Diff
Example (2.87 KB, text/x-c++src)
2018-11-23 12:14 EST, Michele Polese

Note You need to log in before you can comment on or make changes to this bug.
Description Michele Polese 2018-11-23 12:12:31 EST
Created attachment 3226 [details]

Currently, if a node moves from outside a building to inside a building (or vice versa), the state of the associated MobilityBuildingInfo object is not updated. You can try the attached example and check. 
The only way to update the MobilityBuildingInfo state is (probably) calling BuildingsHelper::MakeMobilityModelConsistent() multiple times (periodically) during the simulation, but this is not efficient and precise.
The attached patch verifies the consistency of the MobilityBuildingInfo object every time IsIndoor or IsOutdoor are called. This however has an impact (which I did not quantify) on the simulation time in case of wireless simulations with buildings.
Please let me know if my understanding of this issue is correct, and what you think of the proposed solution!
Comment 1 Michele Polese 2018-11-23 12:14:21 EST
Created attachment 3227 [details]
Comment 2 Zoraze Ali 2019-08-26 12:03:42 EDT
Please see: https://gitlab.com/nsnam/ns-3-dev/issues/80