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
-
+envelopeWithMinXValue:
andMinYValue: andMinZValue: andMinMValue: andMaxXValue: andMaxYValue: andMaxZValue: andMaxMValue: 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
-
-initWithMinXValue:
andMinYValue: andMinZValue: andMinMValue: andMaxXValue: andMaxYValue: andMaxZValue: andMaxMValue: 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
Return Value
top left point
-
Get the bottom left point
Return Value
bottom left point
-
Get the bottom right point
Return Value
bottom right point
-
Get the top right point
Return Value
top right point
-
Get the left mid point
Return Value
left mid point
-
Get the bottom mid point
Return Value
bottom mid point
-
Get the right mid point
Return Value
right mid point
-
Get the top mid point
Return Value
top mid point
-
Get the left line
Return Value
left line
-
Get the bottom line
Return Value
bottom line
-
Get the right line
Return Value
right line
-
Get the top line
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
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 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
Return Value
geometry, polygon or point