MBMLGeometryFunctions Class Reference
Inherits from | NSObject |
---|---|
Declared in | MBMLGeometryFunctions.h |
Overview
This class implements MBML functions for working with geometric values.
These functions are exposed to the Mockingbird environment via
<Function ... />
declarations in the MBDataEnvironmentModule.xml
file.
For more information on MBML functions, see the MBMLFunction
class.
Accessing components of rectangles
+ rectOrigin:
Returns the origin point of the given rectangle, as a comma-separated string
in the format “x
,
y
”.
+ (id)rectOrigin:(id)param
Parameters
param |
The function’s input parameter. |
---|
Return Value
The function result, the origin point of the rectangle expressed as a comma-separated string.
Discussion
This Mockingbird function accepts a single parameter, an object expression
that’s expected to yield an NSString
or an NSValue
instance. This
expression is interpreted as follows:
If the expression yields a string, it is expected to be a comma-separated string in the format “
origin-x
,
origin-y
,
width
,
height
”.If the expression yields an
NSValue
, it is expected to contain aCGRect
value.All other cases are considered errors.
Expression usage
^rectOrigin(10,20,80,90)
The expression above would return the string “10,20
”.
Declared In
MBMLGeometryFunctions.h
+ rectSize:
Returns the size of the given rectangle, as a comma-separated string
in the format “width
,
height
”.
+ (id)rectSize:(id)param
Parameters
param |
The function’s input parameter. |
---|
Return Value
The function result, the size of the rectangle expressed as a comma-separated string.
Discussion
This Mockingbird function accepts a single parameter, an object expression
that’s expected to yield an NSString
or an NSValue
instance. This
expression is interpreted as follows:
If the expression yields a string, it is expected to be a comma-separated string in the format “
origin-x
,
origin-y
,
width
,
height
”.If the expression yields an
NSValue
, it is expected to contain aCGRect
value.All other cases are considered errors.
Expression usage
^rectSize(10,20,80,90)
The expression above would return the string “80,90
”.
Declared In
MBMLGeometryFunctions.h
+ rectX:
Returns an NSNumber
containing the x coordinate of the given rectangle’s
origin point.
+ (id)rectX:(id)param
Parameters
param |
The function’s input parameter. |
---|
Return Value
The function result, the x coordinate of the rectangle’s origin.
Discussion
This Mockingbird function accepts a single parameter, an object expression
that’s expected to yield an NSString
or an NSValue
instance. This
expression is interpreted as follows:
If the expression yields a string, it is expected to be a comma-separated string in the format “
origin-x
,
origin-y
,
width
,
height
”.If the expression yields an
NSValue
, it is expected to contain aCGRect
value.All other cases are considered errors.
Expression usage
^rectX(10,20,80,90)
The expression above would return the value 10
.
Declared In
MBMLGeometryFunctions.h
+ rectY:
Returns an NSNumber
containing the y coordinate of the given rectangle’s
origin point.
+ (id)rectY:(id)param
Parameters
param |
The function’s input parameter. |
---|
Return Value
The function result, the y coordinate of the rectangle’s origin.
Discussion
This Mockingbird function accepts a single parameter, an object expression
that’s expected to yield an NSString
or an NSValue
instance. This
expression is interpreted as follows:
If the expression yields a string, it is expected to be a comma-separated string in the format “
origin-x
,
origin-y
,
width
,
height
”.If the expression yields an
NSValue
, it is expected to contain aCGRect
value.All other cases are considered errors.
Expression usage
^rectY(10,20,80,90)
The expression above would return the value 20
.
Declared In
MBMLGeometryFunctions.h
+ rectWidth:
Returns an NSNumber
containing the width of the given rectangle.
+ (id)rectWidth:(id)param
Parameters
param |
The function’s input parameter. |
---|
Return Value
The function result, the width of the rectangle.
Discussion
This Mockingbird function accepts a single parameter, an object expression
that’s expected to yield an NSString
or an NSValue
instance. This
expression is interpreted as follows:
If the expression yields a string, it is expected to be a comma-separated string in the format “
origin-x
,
origin-y
,
width
,
height
”.If the expression yields an
NSValue
, it is expected to contain aCGRect
value.All other cases are considered errors.
Expression usage
^rectWidth(10,20,80,90)
The expression above would return the value 80
.
Declared In
MBMLGeometryFunctions.h
+ rectHeight:
Returns an NSNumber
containing the height of the given rectangle.
+ (id)rectHeight:(id)param
Parameters
param |
The function’s input parameter. |
---|
Return Value
The function result, the height of the rectangle.
Discussion
This Mockingbird function accepts a single parameter, an object expression
that’s expected to yield an NSString
or an NSValue
instance. This
expression is interpreted as follows:
If the expression yields a string, it is expected to be a comma-separated string in the format “
origin-x
,
origin-y
,
width
,
height
”.If the expression yields an
NSValue
, it is expected to contain aCGRect
value.All other cases are considered errors.
Expression usage
^rectHeight(10,20,80,90)
The expression above would return the value 90
.
Declared In
MBMLGeometryFunctions.h
Adjusting rectangles
+ insetRect:
Adjusts the given rectangle by applying the specified insets to each edge,
and returns the resulting rectangle as a comma-separated string in the
format “origin-x
,
origin-y
,
width
,
height
”.
+ (id)insetRect:(NSArray *)params
Parameters
params |
The function’s input parameters. |
---|
Return Value
A string containing the adjusted rectangle.
Discussion
This Mockingbird function accepts two pipe-separated object expressions as parameters: the source rectangle and the edge insets.
The source rectangle expression is interpreted as follows:
If the expression yields a string, it is expected to be a comma-separated string in the format “
origin-x
,
origin-y
,
width
,
height
”.If the expression yields an
NSValue
, it is expected to contain aCGRect
value.
The edge insets expression is interpreted as follows:
If the expression yields a string, it is expected to be a comma-separated string in the format “
topInset
,
leftInset
,
bottomInset
,
rightInset
”.If the expression yields an
NSValue
, it is expected to contain aUIEdgeInsets
value.
Any other value for either input parameter is considered an error.
Expression usage
^insetRect(10,10,100,100|-5,-5,15,15)
The expression above would return the string “5,5,90,90
”.
Declared In
MBMLGeometryFunctions.h
+ insetRectTop:
Adjusts the given rectangle by applying an inset to the top edge, and
returns the resulting rectangle as a comma-separated string in the format
“origin-x
,
origin-y
,
width
,
height
”.
+ (id)insetRectTop:(NSArray *)params
Parameters
params |
The function’s input parameters. |
---|
Return Value
A string containing the adjusted rectangle.
Discussion
This Mockingbird function accepts two pipe-separated expressions as parameters: the source rectangle and the inset amount.
The source rectangle expression is interpreted as follows:
If the expression yields a string, it is expected to be a comma-separated string in the format “
origin-x
,
origin-y
,
width
,
height
”.If the expression yields an
NSValue
, it is expected to contain aCGRect
value.
The inset amount is interpreted as a numeric expression indicating the amount by which the edge of the source rectangle will be adjusted.
A negative inset amount makes the rectangle taller by moving the top edge upwards; a positive value makes the rectangle shorter by lowering the top edge.
Expression usage
^insetRectTop(10,10,100,100|-5)
The expression above would return the string “10,5,100,105
”.
Declared In
MBMLGeometryFunctions.h
+ insetRectLeft:
Adjusts the given rectangle by applying an inset to the left edge, and
returns the resulting rectangle as a comma-separated string in the format
“origin-x
,
origin-y
,
width
,
height
”.
+ (id)insetRectLeft:(NSArray *)params
Parameters
params |
The function’s input parameters. |
---|
Return Value
A string containing the adjusted rectangle.
Discussion
This Mockingbird function accepts two pipe-separated expressions as parameters: the source rectangle and the inset amount.
The source rectangle expression is interpreted as follows:
If the expression yields a string, it is expected to be a comma-separated string in the format “
origin-x
,
origin-y
,
width
,
height
”.If the expression yields an
NSValue
, it is expected to contain aCGRect
value.
The inset amount is interpreted as a numeric expression indicating the amount by which the edge of the source rectangle will be adjusted.
A negative inset amount makes the rectangle wider by moving the left edge further leftwards; a positive value makes the rectangle narrower by moving the left edge rightwards.
Expression usage
^insetRectLeft(50,50,50,50|25)
The expression above would return the string “75,50,25,50
”.
Declared In
MBMLGeometryFunctions.h
+ insetRectBottom:
Adjusts the given rectangle by applying an inset to the bottom edge, and
returns the resulting rectangle as a comma-separated string in the format
“origin-x
,
origin-y
,
width
,
height
”.
+ (id)insetRectBottom:(NSArray *)params
Parameters
params |
The function’s input parameters. |
---|
Return Value
A string containing the adjusted rectangle.
Discussion
This Mockingbird function accepts two pipe-separated expressions as parameters: the source rectangle and the inset amount.
The source rectangle expression is interpreted as follows:
If the expression yields a string, it is expected to be a comma-separated string in the format “
origin-x
,
origin-y
,
width
,
height
”.If the expression yields an
NSValue
, it is expected to contain aCGRect
value.
The inset amount is interpreted as a numeric expression indicating the amount by which the edge of the source rectangle will be adjusted.
A negative inset amount makes the rectangle taller by moving the bottom edge downwards; a positive value makes the rectangle shorter by raising the bottom edge.
Expression usage
^insetRectBottom(20,20,100,100|25)
The expression above would return the string “20,20,100,75
”.
Declared In
MBMLGeometryFunctions.h
+ insetRectRight:
Adjusts the given rectangle by applying an inset to the right edge, and
returns the resulting rectangle as a comma-separated string in the format
“origin-x
,
origin-y
,
width
,
height
”.
+ (id)insetRectRight:(NSArray *)params
Parameters
params |
The function’s input parameters. |
---|
Return Value
A string containing the adjusted rectangle.
Discussion
This Mockingbird function accepts two pipe-separated expressions as parameters: the source rectangle and the inset amount.
The source rectangle expression is interpreted as follows:
If the expression yields a string, it is expected to be a comma-separated string in the format “
origin-x
,
origin-y
,
width
,
height
”.If the expression yields an
NSValue
, it is expected to contain aCGRect
value.
The inset amount is interpreted as a numeric expression indicating the amount by which the edge of the source rectangle will be adjusted.
A negative inset amount makes the rectangle larger by moving the right edge further rightwards; a positive value makes the rectangle smaller by moving the right edge leftwards.
Expression usage
^insetRectRight(10,10,50,50|-10)
The expression above would return the string “10,10,60,50
”.
Declared In
MBMLGeometryFunctions.h
Accessing the width and height components of sizes
+ sizeWidth:
Returns an NSNumber
containing the width component of the given size.
+ (id)sizeWidth:(id)param
Parameters
param |
The function’s input parameter. |
---|
Return Value
The function result, the width component of the given size.
Discussion
This Mockingbird function accepts a single parameter, an object expression
that’s expected to yield an NSString
or an NSValue
instance. This
expression is interpreted as follows:
If the expression yields a string, it is expected to be a comma-separated string in the format “
width
,
height
”.If the expression yields an
NSValue
, it is expected to contain aCGSize
value.All other cases are considered errors.
Expression usage
^sizeWidth(10,20)
The expression above would return the value 10
.
Declared In
MBMLGeometryFunctions.h
+ sizeHeight:
Returns an NSNumber
containing the height component of the given size.
+ (id)sizeHeight:(id)param
Parameters
param |
The function’s input parameter. |
---|
Return Value
The function result, the height component of the given size.
Discussion
This Mockingbird function accepts a single parameter, an object expression
that’s expected to yield an NSString
or an NSValue
instance. This
expression is interpreted as follows:
If the expression yields a string, it is expected to be a comma-separated string in the format “
width
,
height
”.If the expression yields an
NSValue
, it is expected to contain aCGSize
value.All other cases are considered errors.
Expression usage
^sizeHeight(10,20)
The expression above would return the value 20
.
Declared In
MBMLGeometryFunctions.h
Accessing the x and y coordinates of points
+ pointX:
Returns an NSNumber
containing the x coordinate of the given point.
+ (id)pointX:(id)param
Parameters
param |
The function’s input parameter. |
---|
Return Value
The function result, the x coordinate of the given point.
Discussion
This Mockingbird function accepts a single parameter, an object expression
that’s expected to yield an NSString
or an NSValue
instance. This
expression is interpreted as follows:
If the expression yields a string, it is expected to be a comma-separated string in the format “
x
,
y
”.If the expression yields an
NSValue
, it is expected to contain aCGPoint
value.All other cases are considered errors.
Expression usage
^pointX(10,20)
The expression above would return the value 10
.
Declared In
MBMLGeometryFunctions.h
+ pointY:
Returns an NSNumber
containing the y coordinate of the given point.
+ (id)pointY:(id)param
Parameters
param |
The function’s input parameter. |
---|
Return Value
The function result, the y coordinate of the given point.
Discussion
This Mockingbird function accepts a single parameter, an object expression
that’s expected to yield an NSString
or an NSValue
instance. This
expression is interpreted as follows:
If the expression yields a string, it is expected to be a comma-separated string in the format “
x
,
y
”.If the expression yields an
NSValue
, it is expected to contain aCGPoint
value.All other cases are considered errors.
Expression usage
^pointY(10,20)
The expression above would return the value 20
.
Declared In
MBMLGeometryFunctions.h