DJI Mobile SDK Documentation

      class DJIFlyZoneInformation

      @interface DJIFlyZoneInformation : NSObject
      Header:DJIFlyZoneInformation.h
      Inherits From:NSObject
      Description:

      This class contains information about a fly zone. type should be used to understand the type of fly zone to know which information in this class is valid.

      Class Members:
      Information
      property
      property type
      @property(nonatomic, readonly) DJIFlyZoneType type
      Header:DJIFlyZoneInformation.h
      Description:

      Returns the type fly zone.

      See Also:

      DJIFlyZoneType

      property
      property flyZoneID
      @property(nonatomic, readonly) NSUInteger flyZoneID
      Header:DJIFlyZoneInformation.h
      Description:

      Returns the fly zone's ID. This is required if unlocking a fly zone.

      property
      property name
      @property(nonatomic, readonly) NSString* name
      Header:DJIFlyZoneInformation.h
      Description:

      The name of the fly zone.

      property
      property reason
      @property(nonatomic, readonly) DJIFlyZoneReason reason
      Header:DJIFlyZoneInformation.h
      Description:

      Returns the reason of the fly zone DJIFlyZoneReason.

      See Also:

      DJIFlyZoneReason

      Location
      property
      property center
      @property(nonatomic, readonly) CLLocationCoordinate2D center
      Header:DJIFlyZoneInformation.h
      Description:

      The coordinate of the fly zone's center. Only used for GEO and NFZ fly zones.

      Geometry
      property
      property radius
      @property(nonatomic, readonly) double radius
      Header:DJIFlyZoneInformation.h
      Description:

      The radius of the fly zone in meters. If the fly zone is a truncated cone, then the radius is the bottom of the cone. Only used for GEO and NFZ fly zones.

      property
      property shape
      @property(nonatomic, readonly) DJIFlyZoneShape shape
      Header:DJIFlyZoneInformation.h
      Description:

      The shape of the fly zone. This shape is only used for GEO (always cylinder) and NFZ fly zones.

      See Also:

      DJIFlyZoneShape

      GEO Fly Zone Category
      property
      property category
      @property(nonatomic, readonly) DJIFlyZoneCategory category
      Header:DJIFlyZoneInformation.h
      Description:

      The category of the fly zone.

      See Also:

      DJIFlyZoneCategory

      Sub Fly Zones
      property
      property subFlyZones
      @property(nonatomic, readonly, nullable) NSArray<DJISubFlyZoneInformation *> *subFlyZones
      Header:DJIFlyZoneInformation.h
      Description:

      Information about the Sub fly zones. If empty, then the fly zone is a circle fly zone. If populated, this fly zone is a Poly fly zone and the sub fly zone information will take precedence over information in DJIFlyZoneInformation. DJIFlyZoneInformation should only be used for fly zone identifying information.

      See Also:

      DJISubFlyZoneInformation

      Unlocking Enabled
      method
      method setUnlockingEnabled:withCompletion
      -(void)setUnlockingEnabled:(BOOL)enabled withCompletion:(DJICompletionBlock)completion
      Header:DJIFlyZoneInformation.h
      Description:

      Disables the unlocked fly zones. This is useful if the aircraft is shared between users. It is not supported by Inspire 1 series or Phantom 3 series. For the other products, it is supported when isCustomUnlockZoneSupported is YES.

      Input Parameters:
      BOOL enabledYES to enable the unlocked fly zone.
      DJICompletionBlock completioncompletion block to receive the result.
      method getUnlockingEnabledWithCompletion
      -(void)getUnlockingEnabledWithCompletion:(void (^_Nonnull)(BOOL enabled, NSError *_Nullable error))completion
      Header:DJIFlyZoneInformation.h
      Description:

      YES if the unlocked fly zone is enabled. It is not supported by Inspire 1 series or Phantom 3 series. For the other products, it is supported when isCustomUnlockZoneSupported is YES.

      Input Parameters:
      BOOL enabledYES if the visual stabilization is enabled.
      NSError *_Nullable errorError retrieving the value.
      void (^_Nonnull)(BOOL enabled, NSError *_Nullable error) completionCompletion block to receive the result.
      Time
      property
      property startTime
      @property(nonatomic, readonly) NSString* startTime
      Header:DJIFlyZoneInformation.h
      Description:

      The timestamp of when the flight warning or flight restriction begins, formatted in UTC (yyyy-MM-dd HH:mm:ss). This is used for temporary flight restrictions. When the time is not available from the server, DJIFlyZoneInformationInvalidTimestamp will be returned.

      property
      property endTime
      @property(nonatomic, readonly) NSString* endTime
      Header:DJIFlyZoneInformation.h
      Description:

      The timestamp of when the flight warning or flight restriction ends, formatted in UTC (YYYY-MM-DD hh:mm:ss). When the time is not available from the server, DJIFlyZoneInformationInvalidTimestamp will be returned.

      Unlock Time
      property
      property unlockStartTime
      @property(nonatomic, readonly) NSString* unlockStartTime
      Header:DJIFlyZoneInformation.h
      Description:

      The timestamp when the fly zone is unlocked, formatted in UTC (YYYY-MM-DD hh:mm:ss). When the time is not available from the server, DJIFlyZoneInformationInvalidTimestamp will be returned.

      property unlockEndTime
      @property(nonatomic, readonly) NSString* unlockEndTime
      Header:DJIFlyZoneInformation.h
      Description:

      The timestamp the unlocked zone expires, formatted in UTC (YYYY-MM-DD hh:mm:ss). When the time is not available from the server, DJIFlyZoneInformationInvalidTimestamp will be returned.

      const DJIFlyZoneInformationInvalidTimestamp
      extern NSString *const DJIFlyZoneInformationInvalidTimestamp
      Header:DJIFlyZoneInformation.h
      Description:

      DJI Fly Zone Information Invalid Timestamp.

      enum DJIFlyZoneType
      typedef NS_ENUM (uint8_t, DJIFlyZoneType)
      Header:DJIFlyZoneInformation.h
      Description:

      There are three types of fly zones, NFZ, GEO and Poly.

      Enum Members:
      DJIFlyZoneTypeCircleThe circle fly zone is a cylinder or truncated cone volume (see shape) with one of the four restriction levels (see category). Some restrictions can be unlocked while others cannot. Some fly zones also have a 4km buffer around them where flight height is restricted to 120m.
      DJIFlyZoneTypePolyThe Poly fly zone consists of one or more sub fly zones that are cylinders or complex volumes with different height limitations. A height limitation of 0m means flight is completely restricted. This is used by Mavic, Phantom 4 Pro, Inspire 2 and Phantom 4.
      DJIFlyZoneTypeUnknownThe fly zone is of unknown type.
      enum DJIFlyZoneCategory
      typedef NS_ENUM (uint8_t, DJIFlyZoneCategory)
      Header:DJIFlyZoneInformation.h
      Description:

      An enum class represents the category of fly zone.

      Enum Members:
      DJIFlyZoneCategoryWarningWarning zones do not restrict flight and are informational to alert the user. In a warning zone, users should be prompted with a warning message describing the zone.
      DJIFlyZoneCategoryAuthorizationAuthorization zones restrict flight by default, but can be unlocked by a GEO authorized user.
      DJIFlyZoneCategoryRestrictedRestricted zones restrict flight by default and cannot be unlocked by a GEO authorized user. Users should contact flysafe@dji.com if they have authorization to fly in a restricted zone.
      DJIFlyZoneCategoryEnhancedWarningEnhanced warning zones do not restrict flight but are highly recommended to be informational to alert the user. In an enhanced warning zone, users should be prompted with a warning message describing the zone.
      DJIFlyZoneCategoryUnknownUnknown.
      enum DJIFlyZoneReason
      typedef NS_ENUM(uint8_t, DJIFlyZoneReason)
      Header:DJIFlyZoneInformation.h
      Description:

      An enum class contains the reason for the fly zone.

      Enum Members:
      DJIFlyZoneReasonAirportAirport that cannot be unlocked using GEO system.
      DJIFlyZoneReasonMilitaryMilitary authorized zone. This cannot be unlocked using the GEO system.
      DJIFlyZoneReasonSpecialSpecial Zone. This cannot be unlocked using the GEO system.
      DJIFlyZoneReasonCommercialAirportCommercial airport.
      DJIFlyZoneReasonPrivateCommercialAirportPrivate commercial airport.
      DJIFlyZoneReasonRecreationalAirportRecreational airport.
      DJIFlyZoneReasonNationalParkNational park.
      DJIFlyZoneReasonNOAAThe National Oceanic and Atmospheric Administration.
      DJIFlyZoneReasonParcelParcel.
      DJIFlyZoneReasonPowerPlantPower plant.
      DJIFlyZoneReasonPrisonPrison.
      DJIFlyZoneReasonSchoolSchool.
      DJIFlyZoneReasonStadiumStadium.
      DJIFlyZoneReasonProhibitedSpecialUseProhibited special use.
      DJIFlyZoneReasonRestrictedSpecialUseRestriction special use.
      DJIFlyZoneReasonTemporaryFlightRestrictionTemporary flight restriction.
      DJIFlyZoneReasonClassBAirSpaceClass B controlled airspace. See http://www.dji.com/flysafe/geo-system#notes for more information on the controlled airspace (Class B, C, D, E) in the United States.
      DJIFlyZoneReasonClassCAirSpaceClass C controlled airspace. See http://www.dji.com/flysafe/geo-system#notes for more information on the controlled airspace (Class B, C, D, E) in the United States.
      DJIFlyZoneReasonClassDAirSpaceClass D controlled airspace. See http://www.dji.com/flysafe/geo-system#notes for more information on the controlled airspace (Class B, C, D, E) in the United States.
      DJIFlyZoneReasonClassEAirSpaceClass E Controlled Airspace. See http://www.dji.com/flysafe/geo-system#notes for more information on the controlled airspace (Class B, C, D, E) in the United States.
      DJIFlyZoneReasonUnpavedAirportAirport with unpaved runway.
      DJIFlyZoneReasonHeliportHeliport.
      DJIFlyZoneReasonUnknownUnknown.
      enum DJIFlyZoneShape
      typedef NS_ENUM(uint8_t, DJIFlyZoneShape)
      Header:DJIFlyZoneInformation.h
      Description:

      An enum class containing the shape of the fly zone.

      Enum Members:
      DJIFlyZoneShapeCylinderCylinder.
      DJIFlyZoneShapeConeTruncated cone that has a smaller radius on the ground and larger radius in the air.
      DJIFlyZoneShapeUnknownUnknown.
      enum DJIFlyZoneReturnToHomeState
      typedef NS_ENUM (NSUInteger, DJIFlyZoneReturnToHomeState)
      Header:DJIFlyZoneInformation.h
      SDK Key:DJIFlightControllerKey.DJIFlightControllerParamReturnToHomeState
      Description:

      This enum describes whether the aircraft's route when returning to home is clear of, near, or passes through a fly zone.

      Enum Members:
      DJIFlyZoneReturnToHomeStateClearThe aircraft's return to home route is clear of restricted areas.
      DJIFlyZoneReturnToHomeStateNearNoFlyZoneThe aircraft's return to home route is near an authorization or restricted zone.
      DJIFlyZoneReturnToHomeStateCrossNoFlyZoneThe aircraft's return to home route passes through an authorization or restricted zone.
      DJIFlyZoneReturnToHomeStateUnknownUnknown.