VMMSBaseFloor

@interface VMMSBaseFloor : NSObject

Abstract class that contains information for a floor within a building. Encapsulates waypoints (VMMSWaypoint) that are on this floor.

Since

1.1

Warning

DO NOT create instances of this class directly. Instead, create one of the concrete subclsases VMMSMapBuildingFloor or VMMSMapOutdoorBuildingFloor
  • Initializer used if there is not a name for the floor.

    Declaration

    Swift

    - (instancetype)initWithFloorId:(NSString *)uid;

    Parameters

    uid

    ID of the floor.

    Return Value

    A instance of VMMSBaseFloor.

  • Initializer used if there is a name for the floor.

    Declaration

    Swift

    - (instancetype)initWithFloorId:(NSString *)uid andFloorName:(NSString *)name;

    Parameters

    uid

    ID of the floor.

    name

    Name of the floor.

    Return Value

    A instance of VMMSBaseFloor.

  • Initializer used if there is a name for the floor.

    Since

    1.3

    Declaration

    Swift

    - (instancetype)initWithFloorId:(NSString *)uid
                       andFloorName:(NSString *)name
                    andFloorOrindal:(NSString *)ordinal;

    Parameters

    uid

    ID of the floor.

    name

    Name of the floor.

    ordinal

    the floor ordinal.

    Return Value

    A instance of VMMSBaseFloor.

  • Adds a waypoint to the floor.

    Declaration

    Swift

    - (void)addWaypoint:(VMMSWaypoint *)waypoint;

    Parameters

    waypoint

    Waypoint to add.

  • Adds an edge that connects two waypoints.

    Declaration

    Swift

    - (void)addEdgeWithPointOneId:(NSString *)pointOneId
                    andPointTwoId:(NSString *)pointTwoId;

    Parameters

    pointOneId

    ID of first waypoint.

    pointTwoId

    ID of second waypoint.

  • Finds a waypoint with a given ID.

    Declaration

    Swift

    - (VMMSWaypoint *)getWaypointWithId:(NSString *)waypointId;

    Parameters

    waypointId

    ID of waypoint to find.

    Return Value

    Waypoint that is found or nil if not found.

  • Adds a map unit to the floor.

    Since

    1.1

    Declaration

    Swift

    - (void)addMapUnit:(VMMSMapUnit *)mapUnit;

    Parameters

    mapUnit

    The map unit to associate with this floor

  • Find a map unit on this floor

    Since

    1.1

    Declaration

    Swift

    - (VMMSMapUnit *)getMapUnit:(NSString *)mapUnitId;

    Parameters

    mapUnitId

    the unit’s uid

    Return Value

    a reference to a VMMSMapUnit or nil if the unit does not exist on this floor

  • Find the closest waypoint to a location

    Since

    1.1

    Declaration

    Swift

    - (VMMSWaypoint *)findClosestWaypoint:(CLLocationCoordinate2D)location;

    Parameters

    location

    the location to check

    Return Value

    the closest waypoint, or nil if nothing is close

  • Detect if a location is inside a polygon on the map

    Since

    1.1

    Declaration

    Swift

    - (BOOL)point:(CLLocationCoordinate2D)point
        isInPolygon:(NSArray<NSValue *> *)vertices;

    Parameters

    point

    the location to check

    vertices

    the vertices of the polygon

    Return Value

    true if the point is inside, false otherwise

  • uid

    Unique identifer for floor.

    Declaration

    Swift

    @property (readwrite, strong, nonatomic) NSString *uid;
  • Display name for floor.

    Declaration

    Swift

    @property (readwrite, strong, nonatomic) NSString *name;
  • Identifies what number the floor is within the building.

    Warning

    DEPRECATED since 1.3

    Declaration

    Swift

    @property (assign, readwrite, nonatomic) NSInteger floorNumber;
  • Identifies the floor’s ordinal value. An ordinal value of 0 is ground level. Negative values are below ground and positive numbers are above ground.

    Since

    1.3

    Declaration

    Swift

    @property (assign, readwrite, nonatomic) NSInteger ordinal;
  • Contains waypoints that are on this floor.

    Declaration

    Swift

    @property (readwrite, strong, nonatomic)
        NSMutableArray<VMMSWaypoint *> *waypoints;
  • Map of waypoints on this floor where the keys are the waypoint’s uid

    Since

    1.1

    Declaration

    Swift

    @property (readwrite, strong, nonatomic)
        NSMutableDictionary<NSString *, VMMSWaypoint *> *waypointsMap;
  • Contains waypoints that are elevators for this floor.

    Declaration

    Swift

    @property (readwrite, strong, nonatomic)
        NSMutableArray<VMMSWaypoint *> *elevators;
  • Contains waypoints that are exits for this floor.

    Since

    1.1

    Declaration

    Swift

    @property (readwrite, strong, nonatomic)
        NSMutableArray<VMMSWaypoint *> *exitPoints;
  • Contains waypoints that are stairs for this floor.

    Declaration

    Swift

    @property (readwrite, strong, nonatomic) NSMutableArray<VMMSWaypoint *> *stairs;
  • Contains the connected paths for this floor.

    Declaration

    Swift

    @property (readwrite, strong, nonatomic) NSMutableDictionary *floorGraph;
  • Contains the map units for the floor which are used to create map icons/labels.

    Since

    1.1

    Declaration

    Swift

    @property (readwrite, strong, nonatomic)
        NSMutableDictionary<NSString *, VMMSMapUnit *> *mapUnits;
  • The coordinates that make up the perimeter

    Since

    1.1

    Declaration

    Swift

    @property (readwrite, strong, nonatomic) NSArray<NSValue *> *coordinates;
  • Declaration

    Swift

    @interface VMMSBaseFloor : NSObject
  • Declaration

    Swift

    @interface VMMSBaseFloor : NSObject
  • The building that contains this floor

    Since

    1.1

    Declaration

    Swift

    @property (readwrite, nonatomic) VMMSBaseBuilding *mapBuilding;