SFGeometryEnvelope

Objective-C

@interface SFGeometryEnvelope : NSObject <NSMutableCopying, NSSecureCoding>

Swift

class SFGeometryEnvelope : NSObject, NSMutableCopying, NSSecureCoding

Geometry envelope containing x and y range with optional z and m range

  • X coordinate range

    Declaration

    Objective-C

    @property (nonatomic, strong) NSDecimalNumber *minX;

    Swift

    var minX: NSDecimalNumber! { get set }
  • Undocumented

    Declaration

    Objective-C

    @property (nonatomic, strong) NSDecimalNumber *maxX

    Swift

    var maxX: NSDecimalNumber! { get set }
  • Y coordinate range

    Declaration

    Objective-C

    @property (nonatomic, strong) NSDecimalNumber *minY;

    Swift

    var minY: NSDecimalNumber! { get set }
  • Undocumented

    Declaration

    Objective-C

    @property (nonatomic, strong) NSDecimalNumber *maxY

    Swift

    var maxY: NSDecimalNumber! { get set }
  • Has Z value and Z coordinate range

    Declaration

    Objective-C

    @property (nonatomic) BOOL hasZ;

    Swift

    var hasZ: Bool { get set }
  • Undocumented

    Declaration

    Objective-C

    @property (nonatomic, strong) NSDecimalNumber *minZ

    Swift

    var minZ: NSDecimalNumber! { get set }
  • Undocumented

    Declaration

    Objective-C

    @property (nonatomic, strong) NSDecimalNumber *maxZ

    Swift

    var maxZ: NSDecimalNumber! { get set }
  • Has M value and M coordinate range

    Declaration

    Objective-C

    @property (nonatomic) BOOL hasM;

    Swift

    var hasM: Bool { get set }
  • Undocumented

    Declaration

    Objective-C

    @property (nonatomic, strong) NSDecimalNumber *minM

    Swift

    var minM: NSDecimalNumber! { get set }
  • Undocumented

    Declaration

    Objective-C

    @property (nonatomic, strong) NSDecimalNumber *maxM

    Swift

    var maxM: NSDecimalNumber! { get set }
  • Create with no z or m

    Declaration

    Objective-C

    + (SFGeometryEnvelope *)envelope;

    Return Value

    new geometry envelope

  • Create with the has z and m values

    Declaration

    Objective-C

    + (SFGeometryEnvelope *)envelopeWithHasZ:(BOOL)hasZ andHasM:(BOOL)hasM;

    Parameters

    hasZ

    geometry has z

    hasM

    geometry has m

    Return Value

    new geometry envelope

  • Create with number range

    Declaration

    Objective-C

    + (SFGeometryEnvelope *)envelopeWithMinX:(NSDecimalNumber *)minX
                                     andMinY:(NSDecimalNumber *)minY
                                     andMaxX:(NSDecimalNumber *)maxX
                                     andMaxY:(NSDecimalNumber *)maxY;

    Parameters

    minX

    minimum x

    minY

    minimum y

    maxX

    maximum x

    maxY

    maximum y

    Return Value

    new geometry envelope

  • Create with double range

    Declaration

    Objective-C

    + (SFGeometryEnvelope *)envelopeWithMinXValue:(double)minX
                                     andMinYValue:(double)minY
                                     andMaxXValue:(double)maxX
                                     andMaxYValue:(double)maxY;

    Parameters

    minX

    minimum x

    minY

    minimum y

    maxX

    maximum x

    maxY

    maximum y

    Return Value

    new geometry envelope

  • Create with number range

    Declaration

    Objective-C

    + (SFGeometryEnvelope *)envelopeWithMinX:(NSDecimalNumber *)minX
                                     andMinY:(NSDecimalNumber *)minY
                                     andMinZ:(NSDecimalNumber *)minZ
                                     andMaxX:(NSDecimalNumber *)maxX
                                     andMaxY:(NSDecimalNumber *)maxY
                                     andMaxZ:(NSDecimalNumber *)maxZ;

    Parameters

    minX

    minimum x

    minY

    minimum y

    minZ

    minimum z

    maxX

    maximum x

    maxY

    maximum y

    maxZ

    maximum z

    Return Value

    new geometry envelope

  • Create with double range

    Declaration

    Objective-C

    + (SFGeometryEnvelope *)envelopeWithMinXValue:(double)minX
                                     andMinYValue:(double)minY
                                     andMinZValue:(double)minZ
                                     andMaxXValue:(double)maxX
                                     andMaxYValue:(double)maxY
                                     andMaxZValue:(double)maxZ;

    Parameters

    minX

    minimum x

    minY

    minimum y

    minZ

    minimum z

    maxX

    maximum x

    maxY

    maximum y

    maxZ

    maximum z

    Return Value

    new geometry envelope

  • Create with number range

    Declaration

    Objective-C

    + (SFGeometryEnvelope *)envelopeWithMinX:(NSDecimalNumber *)minX
                                     andMinY:(NSDecimalNumber *)minY
                                     andMinZ:(NSDecimalNumber *)minZ
                                     andMinM:(NSDecimalNumber *)minM
                                     andMaxX:(NSDecimalNumber *)maxX
                                     andMaxY:(NSDecimalNumber *)maxY
                                     andMaxZ:(NSDecimalNumber *)maxZ
                                     andMaxM:(NSDecimalNumber *)maxM;

    Parameters

    minX

    minimum x

    minY

    minimum y

    minZ

    minimum z

    minM

    minimum m

    maxX

    maximum x

    maxY

    maximum y

    maxZ

    maximum z

    maxM

    maximum m

    Return Value

    new geometry envelope

  • Create with double range

    Declaration

    Objective-C

    + (SFGeometryEnvelope *)envelopeWithMinXValue:(double)minX
                                     andMinYValue:(double)minY
                                     andMinZValue:(double)minZ
                                     andMinMValue:(double)minM
                                     andMaxXValue:(double)maxX
                                     andMaxYValue:(double)maxY
                                     andMaxZValue:(double)maxZ
                                     andMaxMValue:(double)maxM;

    Parameters

    minX

    minimum x

    minY

    minimum y

    minZ

    minimum z

    minM

    minimum m

    maxX

    maximum x

    maxY

    maximum y

    maxZ

    maximum z

    maxM

    maximum m

    Return Value

    new geometry envelope

  • Create

    Declaration

    Objective-C

    + (SFGeometryEnvelope *)geometryEnvelopeWithGeometryEnvelope:
        (SFGeometryEnvelope *)geometryEnvelope;

    Parameters

    geometryEnvelope

    geometry envelope

    Return Value

    new geometry envelope

  • Initialize with no z or m

    Declaration

    Objective-C

    - (instancetype)init;

    Swift

    init!()

    Return Value

    new geometry envelope

  • Initialize with the has z and m values

    Declaration

    Objective-C

    - (instancetype)initWithHasZ:(BOOL)hasZ andHasM:(BOOL)hasM;

    Swift

    init!(hasZ: Bool, andHasM hasM: Bool)

    Parameters

    hasZ

    geometry has z

    hasM

    geometry has m

    Return Value

    new geometry envelope

  • Initialize with number range

    Declaration

    Objective-C

    - (instancetype)initWithMinX:(NSDecimalNumber *)minX
                         andMinY:(NSDecimalNumber *)minY
                         andMaxX:(NSDecimalNumber *)maxX
                         andMaxY:(NSDecimalNumber *)maxY;

    Swift

    init!(minX: NSDecimalNumber!, andMinY minY: NSDecimalNumber!, andMaxX maxX: NSDecimalNumber!, andMaxY maxY: NSDecimalNumber!)

    Parameters

    minX

    minimum x

    minY

    minimum y

    maxX

    maximum x

    maxY

    maximum y

    Return Value

    new geometry envelope

  • Initialize with double range

    Declaration

    Objective-C

    - (instancetype)initWithMinXValue:(double)minX
                         andMinYValue:(double)minY
                         andMaxXValue:(double)maxX
                         andMaxYValue:(double)maxY;

    Swift

    init!(minXValue minX: Double, andMinYValue minY: Double, andMaxXValue maxX: Double, andMaxYValue maxY: Double)

    Parameters

    minX

    minimum x

    minY

    minimum y

    maxX

    maximum x

    maxY

    maximum y

    Return Value

    new geometry envelope

  • Initialize with number range

    Declaration

    Objective-C

    - (instancetype)initWithMinX:(NSDecimalNumber *)minX
                         andMinY:(NSDecimalNumber *)minY
                         andMinZ:(NSDecimalNumber *)minZ
                         andMaxX:(NSDecimalNumber *)maxX
                         andMaxY:(NSDecimalNumber *)maxY
                         andMaxZ:(NSDecimalNumber *)maxZ;

    Swift

    init!(minX: NSDecimalNumber!, andMinY minY: NSDecimalNumber!, andMinZ minZ: NSDecimalNumber!, andMaxX maxX: NSDecimalNumber!, andMaxY maxY: NSDecimalNumber!, andMaxZ maxZ: NSDecimalNumber!)

    Parameters

    minX

    minimum x

    minY

    minimum y

    minZ

    minimum z

    maxX

    maximum x

    maxY

    maximum y

    maxZ

    maximum z

    Return Value

    new geometry envelope

  • Initialize with double range

    Declaration

    Objective-C

    - (instancetype)initWithMinXValue:(double)minX
                         andMinYValue:(double)minY
                         andMinZValue:(double)minZ
                         andMaxXValue:(double)maxX
                         andMaxYValue:(double)maxY
                         andMaxZValue:(double)maxZ;

    Swift

    init!(minXValue minX: Double, andMinYValue minY: Double, andMinZValue minZ: Double, andMaxXValue maxX: Double, andMaxYValue maxY: Double, andMaxZValue maxZ: Double)

    Parameters

    minX

    minimum x

    minY

    minimum y

    minZ

    minimum z

    maxX

    maximum x

    maxY

    maximum y

    maxZ

    maximum z

    Return Value

    new geometry envelope

  • Initialize with number range

    Declaration

    Objective-C

    - (instancetype)initWithMinX:(NSDecimalNumber *)minX
                         andMinY:(NSDecimalNumber *)minY
                         andMinZ:(NSDecimalNumber *)minZ
                         andMinM:(NSDecimalNumber *)minM
                         andMaxX:(NSDecimalNumber *)maxX
                         andMaxY:(NSDecimalNumber *)maxY
                         andMaxZ:(NSDecimalNumber *)maxZ
                         andMaxM:(NSDecimalNumber *)maxM;

    Swift

    init!(minX: NSDecimalNumber!, andMinY minY: NSDecimalNumber!, andMinZ minZ: NSDecimalNumber!, andMinM minM: NSDecimalNumber!, andMaxX maxX: NSDecimalNumber!, andMaxY maxY: NSDecimalNumber!, andMaxZ maxZ: NSDecimalNumber!, andMaxM maxM: NSDecimalNumber!)

    Parameters

    minX

    minimum x

    minY

    minimum y

    minZ

    minimum z

    minM

    minimum m

    maxX

    maximum x

    maxY

    maximum y

    maxZ

    maximum z

    maxM

    maximum m

    Return Value

    new geometry envelope

  • Initialize with double range

    Declaration

    Objective-C

    - (instancetype)initWithMinXValue:(double)minX
                         andMinYValue:(double)minY
                         andMinZValue:(double)minZ
                         andMinMValue:(double)minM
                         andMaxXValue:(double)maxX
                         andMaxYValue:(double)maxY
                         andMaxZValue:(double)maxZ
                         andMaxMValue:(double)maxM;

    Swift

    init!(minXValue minX: Double, andMinYValue minY: Double, andMinZValue minZ: Double, andMinMValue minM: Double, andMaxXValue maxX: Double, andMaxYValue maxY: Double, andMaxZValue maxZ: Double, andMaxMValue maxM: Double)

    Parameters

    minX

    minimum x

    minY

    minimum y

    minZ

    minimum z

    minM

    minimum m

    maxX

    maximum x

    maxY

    maximum y

    maxZ

    maximum z

    maxM

    maximum m

    Return Value

    new geometry envelope

  • Initialize

    Declaration

    Objective-C

    - (instancetype)initWithGeometryEnvelope:(SFGeometryEnvelope *)geometryEnvelope;

    Swift

    init!(geometryEnvelope: SFGeometryEnvelope!)

    Parameters

    geometryEnvelope

    geometry envelope

    Return Value

    new geometry envelope

  • Get the min x value

    Declaration

    Objective-C

    - (double)minXValue;

    Swift

    func minXValue() -> Double

    Return Value

    x coordinate

  • Set the min x value

    Declaration

    Objective-C

    - (void)setMinXValue:(double)x;

    Swift

    func setMinXValue(_ x: Double)

    Parameters

    x

    x coordinate

  • Get the max x value

    Declaration

    Objective-C

    - (double)maxXValue;

    Swift

    func maxXValue() -> Double

    Return Value

    x coordinate

  • Set the max x value

    Declaration

    Objective-C

    - (void)setMaxXValue:(double)x;

    Swift

    func setMaxXValue(_ x: Double)

    Parameters

    x

    x coordinate

  • Get the min y value

    Declaration

    Objective-C

    - (double)minYValue;

    Swift

    func minYValue() -> Double

    Return Value

    y coordinate

  • Set the min y value

    Declaration

    Objective-C

    - (void)setMinYValue:(double)y;

    Swift

    func setMinYValue(_ y: Double)

    Parameters

    y

    y coordinate

  • Get the max y value

    Declaration

    Objective-C

    - (double)maxYValue;

    Swift

    func maxYValue() -> Double

    Return Value

    y coordinate

  • Set the max y value

    Declaration

    Objective-C

    - (void)setMaxYValue:(double)y;

    Swift

    func setMaxYValue(_ y: Double)

    Parameters

    y

    y coordinate

  • Get the min z value

    Declaration

    Objective-C

    - (double)minZValue;

    Swift

    func minZValue() -> Double

    Return Value

    z coordinate

  • Set the min z value

    Declaration

    Objective-C

    - (void)setMinZValue:(double)z;

    Swift

    func setMinZValue(_ z: Double)

    Parameters

    z

    z coordinate

  • Get the max z value

    Declaration

    Objective-C

    - (double)maxZValue;

    Swift

    func maxZValue() -> Double

    Return Value

    z coordinate

  • Set the max z value

    Declaration

    Objective-C

    - (void)setMaxZValue:(double)z;

    Swift

    func setMaxZValue(_ z: Double)

    Parameters

    z

    z coordinate

  • Get the min m value

    Declaration

    Objective-C

    - (double)minMValue;

    Swift

    func minMValue() -> Double

    Return Value

    m coordinate

  • Set the min m value

    Declaration

    Objective-C

    - (void)setMinMValue:(double)m;

    Swift

    func setMinMValue(_ m: Double)

    Parameters

    m

    m coordinate

  • Get the max m value

    Declaration

    Objective-C

    - (double)maxMValue;

    Swift

    func maxMValue() -> Double

    Return Value

    m coordinate

  • Set the max m value

    Declaration

    Objective-C

    - (void)setMaxMValue:(double)m;

    Swift

    func setMaxMValue(_ m: Double)

    Parameters

    m

    m coordinate

  • True if has Z coordinates

    Declaration

    Objective-C

    - (BOOL)is3D;

    Swift

    func is3D() -> Bool

    Return Value

    has z

  • True if has M measurements

    Declaration

    Objective-C

    - (BOOL)isMeasured;

    Swift

    func isMeasured() -> Bool

    Return Value

    has m

  • Get the x range

    Declaration

    Objective-C

    - (double)xRange;

    Swift

    func xRange() -> Double

    Return Value

    x range

  • Get the y range

    Declaration

    Objective-C

    - (double)yRange;

    Swift

    func yRange() -> Double

    Return Value

    y range

  • Get the z range

    Declaration

    Objective-C

    - (NSDecimalNumber *)zRange;

    Swift

    func zRange() -> NSDecimalNumber!

    Return Value

    z range

  • Get the m range

    Declaration

    Objective-C

    - (NSDecimalNumber *)mRange;

    Swift

    func mRange() -> NSDecimalNumber!

    Return Value

    m range

  • Determine if the envelope is of a single point

    Declaration

    Objective-C

    - (BOOL)isPoint;

    Swift

    func isPoint() -> Bool

    Return Value

    true if a single point bounds

  • Get the top left point

    Declaration

    Objective-C

    - (SFPoint *)topLeft;

    Swift

    func topLeft() -> SFPoint!

    Return Value

    top left point

  • Get the bottom left point

    Declaration

    Objective-C

    - (SFPoint *)bottomLeft;

    Swift

    func bottomLeft() -> SFPoint!

    Return Value

    bottom left point

  • Get the bottom right point

    Declaration

    Objective-C

    - (SFPoint *)bottomRight;

    Swift

    func bottomRight() -> SFPoint!

    Return Value

    bottom right point

  • Get the top right point

    Declaration

    Objective-C

    - (SFPoint *)topRight;

    Swift

    func topRight() -> SFPoint!

    Return Value

    top right point

  • Get the left mid point

    Declaration

    Objective-C

    - (SFPoint *)leftMid;

    Swift

    func leftMid() -> SFPoint!

    Return Value

    left mid point

  • Get the bottom mid point

    Declaration

    Objective-C

    - (SFPoint *)bottomMid;

    Swift

    func bottomMid() -> SFPoint!

    Return Value

    bottom mid point

  • Get the right mid point

    Declaration

    Objective-C

    - (SFPoint *)rightMid;

    Swift

    func rightMid() -> SFPoint!

    Return Value

    right mid point

  • Get the top mid point

    Declaration

    Objective-C

    - (SFPoint *)topMid;

    Swift

    func topMid() -> SFPoint!

    Return Value

    top mid point

  • Get the left line

    Declaration

    Objective-C

    - (SFLine *)left;

    Swift

    func left() -> SFLine!

    Return Value

    left line

  • Get the bottom line

    Declaration

    Objective-C

    - (SFLine *)bottom;

    Swift

    func bottom() -> SFLine!

    Return Value

    bottom line

  • Get the right line

    Declaration

    Objective-C

    - (SFLine *)right;

    Swift

    func right() -> SFLine!

    Return Value

    right line

  • Get the top line

    Declaration

    Objective-C

    - (SFLine *)top;

    Swift

    func top() -> SFLine!

    Return Value

    top line

  • Get the envelope mid x

    Declaration

    Objective-C

    - (double)midX;

    Swift

    func midX() -> Double

    Return Value

    mid x

  • Get the envelope mid y

    Declaration

    Objective-C

    - (double)midY;

    Swift

    func midY() -> Double

    Return Value

    mid y

  • Get the envelope centroid point

    Declaration

    Objective-C

    - (SFPoint *)centroid;

    Swift

    func centroid() -> SFPoint!

    Return Value

    centroid point

  • Determine if the envelope is empty

    Declaration

    Objective-C

    - (BOOL)isEmpty;

    Swift

    func isEmpty() -> Bool

    Return Value

    true if empty

  • Determine if intersects with the provided envelope

    Declaration

    Objective-C

    - (BOOL)intersectsWithEnvelope:(SFGeometryEnvelope *)envelope;

    Swift

    func intersects(with envelope: SFGeometryEnvelope!) -> Bool

    Parameters

    envelope

    geometry envelope

    Return Value

    true if intersects

  • Determine if intersects with the provided envelope

    Declaration

    Objective-C

    - (BOOL)intersectsWithEnvelope:(SFGeometryEnvelope *)envelope
                    withAllowEmpty:(BOOL)allowEmpty;

    Swift

    func intersects(with envelope: SFGeometryEnvelope!, withAllowEmpty allowEmpty: Bool) -> Bool

    Parameters

    envelope

    geometry envelope

    allowEmpty

    allow empty ranges when determining intersection

    Return Value

    true if intersects

  • Get the overlapping geometry envelope with the provided envelope

    Declaration

    Objective-C

    - (SFGeometryEnvelope *)overlapWithEnvelope:(SFGeometryEnvelope *)envelope;

    Swift

    func overlap(with envelope: SFGeometryEnvelope!) -> SFGeometryEnvelope!

    Parameters

    envelope

    geometry envelope

    Return Value

    geometry envelope

  • Get the overlapping geometry envelope with the provided envelope

    Declaration

    Objective-C

    - (SFGeometryEnvelope *)overlapWithEnvelope:(SFGeometryEnvelope *)envelope
                                 withAllowEmpty:(BOOL)allowEmpty;

    Swift

    func overlap(with envelope: SFGeometryEnvelope!, withAllowEmpty allowEmpty: Bool) -> SFGeometryEnvelope!

    Parameters

    envelope

    geometry envelope

    allowEmpty

    allow empty ranges when determining overlap

    Return Value

    geometry envelope

  • Get the union geometry envelope combined with the provided envelope

    Declaration

    Objective-C

    - (SFGeometryEnvelope *)unionWithEnvelope:(SFGeometryEnvelope *)envelope;

    Swift

    func union(with envelope: SFGeometryEnvelope!) -> SFGeometryEnvelope!

    Parameters

    envelope

    geometry envelope

    Return Value

    geometry envelope

  • Determine if contains the point

    Declaration

    Objective-C

    - (BOOL)containsPoint:(SFPoint *)point;

    Swift

    func contains(_ point: SFPoint!) -> Bool

    Parameters

    point

    point

    Return Value

    true if contains

  • Determine if contains the point

    Declaration

    Objective-C

    - (BOOL)containsPoint:(SFPoint *)point withEpsilon:(double)epsilon;

    Swift

    func contains(_ point: SFPoint!, withEpsilon epsilon: Double) -> Bool

    Parameters

    point

    point

    epsilon

    epsilon equality tolerance

    Return Value

    true if contains

  • Determine if contains the coordinate

    Declaration

    Objective-C

    - (BOOL)containsX:(double)x andY:(double)y;

    Swift

    func containsX(_ x: Double, andY y: Double) -> Bool

    Parameters

    x

    x value

    y

    y value

    Return Value

    true if contains

  • Determine if contains the coordinate

    Declaration

    Objective-C

    - (BOOL)containsX:(double)x andY:(double)y withEpsilon:(double)epsilon;

    Swift

    func containsX(_ x: Double, andY y: Double, withEpsilon epsilon: Double) -> Bool

    Parameters

    x

    x value

    y

    y value

    epsilon

    epsilon equality tolerance

    Return Value

    true if contains

  • Determine if inclusively contains the provided envelope

    Declaration

    Objective-C

    - (BOOL)containsEnvelope:(SFGeometryEnvelope *)envelope;

    Swift

    func contains(_ envelope: SFGeometryEnvelope!) -> Bool

    Parameters

    envelope

    geometry envelope

    Return Value

    true if contains

  • Determine if inclusively contains the provided envelope

    Declaration

    Objective-C

    - (BOOL)containsEnvelope:(SFGeometryEnvelope *)envelope
                 withEpsilon:(double)epsilon;

    Swift

    func contains(_ envelope: SFGeometryEnvelope!, withEpsilon epsilon: Double) -> Bool

    Parameters

    envelope

    geometry envelope

    epsilon

    epsilon equality tolerance

    Return Value

    true if contains

  • Build a geometry representation of the geometry envelope

    Declaration

    Objective-C

    - (SFGeometry *)buildGeometry;

    Swift

    func buildGeometry() -> SFGeometry!

    Return Value

    geometry, polygon or point