Loading...
Searching...
No Matches
location_window_building_example.dart
Go to the documentation of this file.
1import 'package:navigine_sdk/navigine_sdk.dart';
2
6class LocationWindowBuildingExample {
8 DemoBuildingListener? _buildingListener;
9
10 LocationWindowBuildingExample() {
11 _demonstrateBuildingListenerRegistration();
12 }
13
14 void _demonstrateBuildingListenerRegistration() {
15 if (_locationWindow == null) {
16 print('LocationWindow not available yet');
17 return;
18 }
19
20 _buildingListener = DemoBuildingListener();
21
22 // [dart_LocationWindow_addBuildingListener]
23 _locationWindow!.addBuildingListener(_buildingListener!);
24 print('Added building listener');
25 // [dart_LocationWindow_addBuildingListener]
26
27 // [dart_LocationWindow_removeBuildingListener]
28 _locationWindow!.removeBuildingListener(_buildingListener!);
29 print('Removed building listener');
30 // [dart_LocationWindow_removeBuildingListener]
31 }
32}
33
34class DemoBuildingListener implements BuildingListener {
35 // [dart_BuildingListener_onActiveBuildingFocused]
36 @override
37 void onActiveBuildingFocused(Building activeBuilding) {
38 // [dart_Building_getSublocations]
39 final floors = activeBuilding.getSublocations();
40 print('Focused building, floor count: ${floors.length}');
41 // [dart_Building_getSublocations]
42
43 // [dart_Building_getActiveSublocationId]
44 final activeFloorId = activeBuilding.getActiveSublocationId();
45 print('Active sublocation id: $activeFloorId');
46 // [dart_Building_getActiveSublocationId]
47
48 // [dart_Building_setActiveSublocationId]
49 activeBuilding.setActiveSublocationId(activeFloorId);
50 // [dart_Building_setActiveSublocationId]
51 }
52 // [dart_BuildingListener_onActiveBuildingFocused]
53
54 // [dart_BuildingListener_onActiveBuildingLeft]
55 @override
56 void onActiveBuildingLeft() {
57 print('Camera left all building areas');
58 }
59 // [dart_BuildingListener_onActiveBuildingLeft]
60
61 // [dart_BuildingListener_onActiveSublocationChanged]
62 @override
63 void onActiveSublocationChanged(int activeSublocationId) {
64 print('Active floor changed to sublocation id: $activeSublocationId');
65 }
66 // [dart_BuildingListener_onActiveSublocationChanged]
67}