2017-11-27 15:44:06 +00:00
SkIPoint Reference
===
2018-10-16 14:30:28 +00:00
2018-10-08 18:57:48 +00:00
< a name = 'SkIPoint' > < / a >
2018-10-16 14:30:28 +00:00
---
2018-10-08 18:57:48 +00:00
< pre style = "padding: 1em 1em 1em 1em;width: 62.5em; background-color: #f0f0f0 " >
struct < a href = '#SkIPoint' > SkIPoint< / a > {
int32_t < a href = '#SkIPoint_fX' > fX< / a > ;
int32_t < a href = '#SkIPoint_fY' > fY< / a > ;
static constexpr < a href = '#SkIPoint' > SkIPoint< / a > < a href = '#SkIPoint_Make' > Make< / a > (int32_t x, int32_t y);
int32_t < a href = '#SkIPoint_x' > x< / a > () const;
int32_t < a href = '#SkIPoint_y' > y< / a > () const;
bool < a href = '#SkIPoint_isZero' > isZero< / a > () const;
void < a href = '#SkIPoint_set' > set< / a > (int32_t x, int32_t y);
< a href = '#SkIPoint' > SkIPoint< / a > < a href = '#SkIPoint_minus_operator' > operator-()_const< / a > ;
void < a href = '#SkIPoint_addto_operator' > operator+=(const SkIVector& v)< / a > ;
void < a href = '#SkIPoint_subtractfrom_operator' > operator-=(const SkIVector& v)< / a > ;
bool < a href = '#SkIPoint_equals' > equals< / a > (int32_t x, int32_t y) const;
friend bool < a href = '#SkIPoint_equal_operator' > operator==(const SkIPoint& a, const SkIPoint& b)< / a > ;
friend bool < a href = '#SkIPoint_notequal_operator' > operator!=(const SkIPoint& a, const SkIPoint& b)< / a > ;
friend < a href = '#SkIVector' > SkIVector< / a > < a href = '#SkIPoint_subtract_operator' > operator-(const SkIPoint& a, const SkIPoint& b)< / a > ;
friend < a href = '#SkIPoint' > SkIPoint< / a > < a href = '#SkIPoint_add_operator' > operator+(const SkIPoint& a, const SkIVector& b)< / a > ;
};
< / pre >
2017-11-27 15:44:06 +00:00
2018-10-08 18:57:48 +00:00
< a href = '#SkIPoint' > SkIPoint< / a > holds two 32-bit integer coordinates.< table style = 'border-collapse: collapse; width: 62.5em' >
2018-02-01 14:37:32 +00:00
2018-05-16 11:07:07 +00:00
< tr >< th style = 'text-align: left; border: 2px solid #dddddd ; padding: 8px; ' > Type</ th >
2018-10-08 18:57:48 +00:00
< th style = 'text-align: left; border: 2px solid #dddddd ; padding: 8px; ' > Member</ th >
2018-05-16 11:07:07 +00:00
< th style = 'text-align: left; border: 2px solid #dddddd ; padding: 8px; ' > Description</ th ></ tr >
< tr style = 'background-color: #f0f0f0 ; ' >
< td style = 'text-align: left; border: 2px solid #dddddd ; padding: 8px; ' > int32_t</ td >
< td style = 'text-align: left; border: 2px solid #dddddd ; padding: 8px; ' >< a name = 'SkIPoint_fX' >< code > fX</ code ></ a ></ td >
< td style = 'text-align: left; border: 2px solid #dddddd ; padding: 8px; ' >
x-axis value used by < a href = '#IPoint' > IPoint< / a > .
< / td >
< / tr >
< tr >
< td style = 'text-align: left; border: 2px solid #dddddd ; padding: 8px; ' > int32_t</ td >
< td style = 'text-align: left; border: 2px solid #dddddd ; padding: 8px; ' >< a name = 'SkIPoint_fY' >< code > fY</ code ></ a ></ td >
< td style = 'text-align: left; border: 2px solid #dddddd ; padding: 8px; ' >
y-axis value used by < a href = '#IPoint' > IPoint< / a > .
< / td >
< / tr >
< / table >
2018-02-06 14:41:53 +00:00
2018-05-16 11:07:07 +00:00
< a name = 'SkIPoint_Make' > < / a >
2018-10-16 14:30:28 +00:00
---
2017-11-27 15:44:06 +00:00
2018-05-16 11:07:07 +00:00
< pre style = "padding: 1em 1em 1em 1em; width: 62.5em;background-color: #f0f0f0 " >
static constexpr < a href = '#SkIPoint' > SkIPoint< / a > < a href = '#SkIPoint_Make' > Make< / a > (int32_t x, int32_t y)
2017-11-27 15:44:06 +00:00
< / pre >
2018-10-31 16:14:03 +00:00
Sets < a href = '#SkIPoint_fX' > fX< / a > to < a href = '#SkIPoint_Make_x' > x< / a > , < a href = '#SkIPoint_fY' > fY< / a > to < a href = '#SkIPoint_Make_y' > y< / a > .
2017-11-27 15:44:06 +00:00
### Parameters
2018-05-16 11:07:07 +00:00
< table > < tr > < td > < a name = 'SkIPoint_Make_x' > < code > < strong > x< / strong > < / code > < / a > < / td >
2018-10-31 16:14:03 +00:00
< td > integer x-axis value of constructed < a href = 'SkIPoint_Reference#SkIPoint' > SkIPoint< / a > < / td >
2018-05-16 11:07:07 +00:00
< / tr >
< tr > < td > < a name = 'SkIPoint_Make_y' > < code > < strong > y< / strong > < / code > < / a > < / td >
2018-10-31 16:14:03 +00:00
< td > integer y-axis value of constructed < a href = 'SkIPoint_Reference#SkIPoint' > SkIPoint< / a > < / td >
2017-11-27 15:44:06 +00:00
< / tr >
< / table >
### Return Value
2018-10-31 16:14:03 +00:00
< a href = 'SkIPoint_Reference#SkIPoint' > SkIPoint< / a > (< a href = '#SkIPoint_Make_x' > x< / a > , < a href = '#SkIPoint_Make_y' > y< / a > )
2017-11-27 15:44:06 +00:00
### Example
< div > < fiddle-embed name = "e5cf5159525bd3140f288a95fe641fae" >
#### Example Output
~~~~
pt1 == pt2
~~~~
< / fiddle-embed > < / div >
### See Also
2018-10-08 18:57:48 +00:00
< a href = '#SkIPoint_set' > set< / a > () < a href = 'SkPoint_Reference#SkPoint_iset' > SkPoint::iset< / a > < sup > < a href = 'SkPoint_Reference#SkPoint_iset_2' > [2]< / a > < / sup > () < a href = 'SkPoint_Reference#SkPoint_Make' > SkPoint::Make< / a >
2017-11-27 15:44:06 +00:00
2018-10-16 14:30:28 +00:00
< a name = 'Property' > < / a >
2018-02-06 14:41:53 +00:00
2018-05-16 11:07:07 +00:00
< a name = 'SkIPoint_x' > < / a >
2018-10-16 14:30:28 +00:00
---
2017-11-27 15:44:06 +00:00
2018-05-16 11:07:07 +00:00
< pre style = "padding: 1em 1em 1em 1em; width: 62.5em;background-color: #f0f0f0 " >
int32_t < a href = '#SkIPoint_x' > x< / a > () const
2017-11-27 15:44:06 +00:00
< / pre >
2018-10-31 16:14:03 +00:00
Returns x-axis value of < a href = 'SkIPoint_Reference#SkIPoint' > SkIPoint< / a > .
2017-11-27 15:44:06 +00:00
### Return Value
2018-05-16 11:07:07 +00:00
< a href = '#SkIPoint_fX' > fX< / a >
2017-11-27 15:44:06 +00:00
### Example
< div > < fiddle-embed name = "eed4185294f8a8216fc354e6ee6b2e3a" >
#### Example Output
~~~~
pt1.fX == pt1.x()
~~~~
< / fiddle-embed > < / div >
### See Also
2018-10-08 18:57:48 +00:00
< a href = '#SkIPoint_y' > y< / a > () < a href = 'SkPoint_Reference#SkPoint_x' > SkPoint::x< / a > ()
2017-11-27 15:44:06 +00:00
2018-05-16 11:07:07 +00:00
< a name = 'SkIPoint_y' > < / a >
2018-10-16 14:30:28 +00:00
---
2017-11-27 15:44:06 +00:00
2018-05-16 11:07:07 +00:00
< pre style = "padding: 1em 1em 1em 1em; width: 62.5em;background-color: #f0f0f0 " >
int32_t < a href = '#SkIPoint_y' > y< / a > () const
2017-11-27 15:44:06 +00:00
< / pre >
2018-10-31 16:14:03 +00:00
Returns y-axis value of < a href = 'SkIPoint_Reference#SkIPoint' > SkIPoint< / a > .
2017-11-27 15:44:06 +00:00
### Return Value
2018-05-16 11:07:07 +00:00
< a href = '#SkIPoint_fY' > fY< / a >
2017-11-27 15:44:06 +00:00
### Example
< div > < fiddle-embed name = "35c41b8ba7cebf8c9a7a8494e610e14d" >
#### Example Output
~~~~
pt1.fY == pt1.y()
~~~~
< / fiddle-embed > < / div >
### See Also
2018-10-08 18:57:48 +00:00
< a href = '#SkIPoint_x' > x< / a > () < a href = 'SkPoint_Reference#SkPoint_y' > SkPoint::y< / a > ()
2017-11-27 15:44:06 +00:00
2018-05-16 11:07:07 +00:00
< a name = 'SkIPoint_isZero' > < / a >
2018-10-16 14:30:28 +00:00
---
2017-11-27 15:44:06 +00:00
2018-05-16 11:07:07 +00:00
< pre style = "padding: 1em 1em 1em 1em; width: 62.5em;background-color: #f0f0f0 " >
bool < a href = '#SkIPoint_isZero' > isZero< / a > () const
2017-11-27 15:44:06 +00:00
< / pre >
2018-05-16 11:07:07 +00:00
Returns true if < a href = '#SkIPoint_fX' > fX< / a > and < a href = '#SkIPoint_fY' > fY< / a > are both zero.
2017-11-27 15:44:06 +00:00
### Return Value
2018-05-16 11:07:07 +00:00
true if < a href = '#SkIPoint_fX' > fX< / a > is zero and < a href = '#SkIPoint_fY' > fY< / a > is zero
2017-11-27 15:44:06 +00:00
### Example
< div > < fiddle-embed name = "658c1df611b4577cc7e0bb384e95737e" >
#### Example Output
~~~~
pt.isZero() == true
~~~~
< / fiddle-embed > < / div >
### See Also
2018-05-16 11:07:07 +00:00
< a href = 'SkPoint_Reference#SkPoint_isZero' > SkPoint::isZero< / a >
2017-11-27 15:44:06 +00:00
2018-10-16 14:30:28 +00:00
< a name = 'Set' > < / a >
2018-05-16 11:07:07 +00:00
< a name = 'SkIPoint_set' > < / a >
2018-10-16 14:30:28 +00:00
---
2017-11-27 15:44:06 +00:00
2018-05-16 11:07:07 +00:00
< pre style = "padding: 1em 1em 1em 1em; width: 62.5em;background-color: #f0f0f0 " >
void < a href = '#SkIPoint_set' > set< / a > (int32_t x, int32_t y)
2017-11-27 15:44:06 +00:00
< / pre >
2018-10-31 16:14:03 +00:00
Sets < a href = '#SkIPoint_fX' > fX< / a > to < a href = '#SkIPoint_set()_x' > x< / a > and < a href = '#SkIPoint_fY' > fY< / a > to < a href = '#SkIPoint_set()_y' > y< / a > .
2017-11-27 15:44:06 +00:00
### Parameters
2018-05-16 11:07:07 +00:00
< table > < tr > < td > < a name = 'SkIPoint_set_x' > < code > < strong > x< / strong > < / code > < / a > < / td >
< td > new value for < a href = '#SkIPoint_fX' > fX< / a > < / td >
< / tr >
< tr > < td > < a name = 'SkIPoint_set_y' > < code > < strong > y< / strong > < / code > < / a > < / td >
< td > new value for < a href = '#SkIPoint_fY' > fY< / a > < / td >
2017-11-27 15:44:06 +00:00
< / tr >
< / table >
### Example
2018-07-11 05:28:17 +00:00
< div > < fiddle-embed name = "165418b5718d79d8f1682a8a0ee32ba0" >
2017-11-27 15:44:06 +00:00
#### Example Output
~~~~
pt1 == pt2
~~~~
< / fiddle-embed > < / div >
### See Also
2018-05-16 11:07:07 +00:00
< a href = '#SkIPoint_Make' > Make< / a >
2017-11-27 15:44:06 +00:00
2018-05-16 11:07:07 +00:00
< a name = 'SkIPoint_minus_operator' > < / a >
2018-10-16 14:30:28 +00:00
---
2017-11-27 15:44:06 +00:00
2018-05-16 11:07:07 +00:00
< pre style = "padding: 1em 1em 1em 1em; width: 62.5em;background-color: #f0f0f0 " >
2018-10-08 18:57:48 +00:00
< a href = '#SkIPoint' > SkIPoint< / a > operator-() const
2017-11-27 15:44:06 +00:00
< / pre >
2018-10-31 16:14:03 +00:00
Returns < a href = 'SkIPoint_Reference#SkIPoint' > SkIPoint< / a > changing the signs of < a href = '#SkIPoint_fX' > fX< / a > and < a href = '#SkIPoint_fY' > fY< / a > .
2017-11-27 15:44:06 +00:00
### Return Value
2018-10-31 16:14:03 +00:00
< a href = 'SkIPoint_Reference#SkIPoint' > SkIPoint< / a > as (-< a href = '#SkIPoint_fX' > fX< / a > , -< a href = '#SkIPoint_fY' > fY< / a > )
2017-11-27 15:44:06 +00:00
### Example
2018-03-16 15:34:15 +00:00
< div > < fiddle-embed name = "b30d4780475d113a7fed3637af7f0db1" >
2017-11-27 15:44:06 +00:00
#### Example Output
~~~~
pt: 0, 0 negate: 0, 0
pt: -1, -2 negate: 1, 2
pt: 2147483647, -2147483647 negate: -2147483647, 2147483647
pt: -2147483648, -2147483648 negate: -2147483648, -2147483648
~~~~
< / fiddle-embed > < / div >
### See Also
2018-05-16 11:07:07 +00:00
< a href = '#SkIPoint_subtract_operator' > operator-(const SkIPoint& a, const SkIPoint& b)< / a > < a href = '#SkIPoint_subtractfrom_operator' > operator-=(const SkIVector& v)< / a > < a href = 'SkPoint_Reference#SkPoint_minus_operator' > SkPoint::operator-() const< / a >
2017-11-27 15:44:06 +00:00
2018-05-16 11:07:07 +00:00
< a name = 'SkIPoint_addto_operator' > < / a >
2018-10-16 14:30:28 +00:00
---
2017-11-27 15:44:06 +00:00
2018-05-16 11:07:07 +00:00
< pre style = "padding: 1em 1em 1em 1em; width: 62.5em;background-color: #f0f0f0 " >
void < a href = '#SkIPoint_addto_operator' > operator+=(const SkIVector& v)< / a >
2017-11-27 15:44:06 +00:00
< / pre >
Condense embedded formulas.
Bookmaker delimits formulas and equations to allow
representing variables and symbols without tripping
up reference lookup, spell checking, and comment
generation.
Before, formulas were represented with:
some text
#Formula
(x + y, 0)
##
, and more text
This made it difficult to know when spacing should
be preserved before and after the formula. Now,
formulas are represented with:
some text #Formula # (x + y, 0) ##, and more text
The presence or absence of a space between ## and ,
is now significant (before it was not).
Also, formulas are bracketed by <code> in markdown
generation, so that variables stand out better.
See:
https://skia.org/user/api/SkBlendMode_Reference?cl=152781#Dst_Out
for an example.
Also fixed 100 column offenders and added a code
check to identify them. For the moment, 100 column
offenders are outed with SkDebugf but their presence
does not cause bookmaker to fail.
TBR=caryclark@google.com
Docs-Preview: https://skia.org/?cl=152781
Bug: skia:6898
Change-Id: If92a65a234f5d616bf4485984a8d219a6f04821a
Reviewed-on: https://skia-review.googlesource.com/152781
Commit-Queue: Cary Clark <caryclark@skia.org>
Auto-Submit: Cary Clark <caryclark@skia.org>
Reviewed-by: Cary Clark <caryclark@skia.org>
2018-09-13 16:04:30 +00:00
Offsets < a href = '#IPoint' > IPoint</ a > by < a href = '#IVector' > IVector</ a > < a href = '#SkIPoint_addto_operator_v' > v</ a > . Sets < a href = '#IPoint' > IPoint</ a > to < code > \(< a href = '#SkIPoint_fX' > fX</ a > \+ < a href = '#SkIPoint_addto_operator_v' > v</ a > \.< a href = '#SkIPoint_fX' > fX</ a > , < a href = '#SkIPoint_fY' > fY</ a > \+ < a href = '#SkIPoint_addto_operator_v' > v</ a > \.< a href = '#SkIPoint_fY' > fY</ a > \)</ code > .
2017-11-27 15:44:06 +00:00
### Parameters
2018-05-16 11:07:07 +00:00
< table > < tr > < td > < a name = 'SkIPoint_addto_operator_v' > < code > < strong > v< / strong > < / code > < / a > < / td >
< td > < a href = '#IVector' > IVector< / a > to add< / td >
2017-11-27 15:44:06 +00:00
< / tr >
< / table >
### Example
< div > < fiddle-embed name = "4eb2d95c9e9a66f05296e345bb68bd51" > < / fiddle-embed > < / div >
### See Also
2018-05-16 11:07:07 +00:00
< a href = '#SkIPoint_add_operator' > operator+(const SkIPoint& a, const SkIVector& b)< / a > < a href = 'SkPoint_Reference#SkPoint_addto_operator' > SkPoint::operator+=(const SkVector& v)< / a >
2017-11-27 15:44:06 +00:00
2018-05-16 11:07:07 +00:00
< a name = 'SkIPoint_subtractfrom_operator' > < / a >
2018-10-16 14:30:28 +00:00
---
2017-11-27 15:44:06 +00:00
2018-05-16 11:07:07 +00:00
< pre style = "padding: 1em 1em 1em 1em; width: 62.5em;background-color: #f0f0f0 " >
void < a href = '#SkIPoint_subtractfrom_operator' > operator-=(const SkIVector& v)< / a >
2017-11-27 15:44:06 +00:00
< / pre >
Condense embedded formulas.
Bookmaker delimits formulas and equations to allow
representing variables and symbols without tripping
up reference lookup, spell checking, and comment
generation.
Before, formulas were represented with:
some text
#Formula
(x + y, 0)
##
, and more text
This made it difficult to know when spacing should
be preserved before and after the formula. Now,
formulas are represented with:
some text #Formula # (x + y, 0) ##, and more text
The presence or absence of a space between ## and ,
is now significant (before it was not).
Also, formulas are bracketed by <code> in markdown
generation, so that variables stand out better.
See:
https://skia.org/user/api/SkBlendMode_Reference?cl=152781#Dst_Out
for an example.
Also fixed 100 column offenders and added a code
check to identify them. For the moment, 100 column
offenders are outed with SkDebugf but their presence
does not cause bookmaker to fail.
TBR=caryclark@google.com
Docs-Preview: https://skia.org/?cl=152781
Bug: skia:6898
Change-Id: If92a65a234f5d616bf4485984a8d219a6f04821a
Reviewed-on: https://skia-review.googlesource.com/152781
Commit-Queue: Cary Clark <caryclark@skia.org>
Auto-Submit: Cary Clark <caryclark@skia.org>
Reviewed-by: Cary Clark <caryclark@skia.org>
2018-09-13 16:04:30 +00:00
Subtracts < a href = '#IVector' > IVector</ a > < a href = '#SkIPoint_subtractfrom_operator_v' > v</ a > from < a href = '#IPoint' > IPoint</ a > . Sets < a href = '#IPoint' > IPoint</ a > to: < code > \(< a href = '#SkIPoint_fX' > fX</ a > \- < a href = '#SkIPoint_subtractfrom_operator_v' > v</ a > \.< a href = '#SkIPoint_fX' > fX</ a > , < a href = '#SkIPoint_fY' > fY</ a > \- < a href = '#SkIPoint_subtractfrom_operator_v' > v</ a > \.< a href = '#SkIPoint_fY' > fY</ a > \)</ code > .
2017-11-27 15:44:06 +00:00
### Parameters
2018-05-16 11:07:07 +00:00
< table > < tr > < td > < a name = 'SkIPoint_subtractfrom_operator_v' > < code > < strong > v< / strong > < / code > < / a > < / td >
< td > < a href = '#IVector' > IVector< / a > to subtract< / td >
2017-11-27 15:44:06 +00:00
< / tr >
< / table >
### Example
< div > < fiddle-embed name = "a01e533dc7ab34ed728dc4e7a5f1f0ee" > < / fiddle-embed > < / div >
### See Also
2018-05-16 11:07:07 +00:00
< a href = '#SkIPoint_subtract_operator' > operator-(const SkIPoint& a, const SkIPoint& b)< / a > < a href = 'SkPoint_Reference#SkPoint_subtractfrom_operator' > SkPoint::operator-=(const SkVector& v)< / a >
2017-11-27 15:44:06 +00:00
2018-05-16 11:07:07 +00:00
< a name = 'SkIPoint_equals' > < / a >
2018-10-16 14:30:28 +00:00
---
2017-11-27 15:44:06 +00:00
2018-05-16 11:07:07 +00:00
< pre style = "padding: 1em 1em 1em 1em; width: 62.5em;background-color: #f0f0f0 " >
bool < a href = '#SkIPoint_equals' > equals< / a > (int32_t x, int32_t y) const
2017-11-27 15:44:06 +00:00
< / pre >
2018-10-31 16:14:03 +00:00
Returns true if < a href = 'SkIPoint_Reference#SkIPoint' > SkIPoint< / a > is equivalent to < a href = 'SkIPoint_Reference#SkIPoint' > SkIPoint< / a > constructed from (< a href = '#SkIPoint_equals()_x' > x< / a > , < a href = '#SkIPoint_equals()_y' > y< / a > ).
2017-11-27 15:44:06 +00:00
### Parameters
2018-05-16 11:07:07 +00:00
< table > < tr > < td > < a name = 'SkIPoint_equals_x' > < code > < strong > x< / strong > < / code > < / a > < / td >
< td > value compared with < a href = '#SkIPoint_fX' > fX< / a > < / td >
< / tr >
< tr > < td > < a name = 'SkIPoint_equals_y' > < code > < strong > y< / strong > < / code > < / a > < / td >
< td > value compared with < a href = '#SkIPoint_fY' > fY< / a > < / td >
2017-11-27 15:44:06 +00:00
< / tr >
< / table >
### Return Value
2018-10-31 16:14:03 +00:00
true if < a href = 'SkIPoint_Reference#SkIPoint' > SkIPoint< / a > equals (< a href = '#SkIPoint_equals()_x' > x< / a > , < a href = '#SkIPoint_equals()_y' > y< / a > )
2017-11-27 15:44:06 +00:00
### Example
< div > < fiddle-embed name = "64f575d36439d5b69aaed14ffeff1cc4" >
#### Example Output
~~~~
pt: 0, 0 == pt
pt: -1, -2 == pt
pt: 2147483647, -1 == pt
pt: -2147483648, -1 == pt
~~~~
< / fiddle-embed > < / div >
### See Also
2018-05-16 11:07:07 +00:00
< a href = '#SkIPoint_equal_operator' > operator==(const SkIPoint& a, const SkIPoint& b)< / a >
2017-11-27 15:44:06 +00:00
2018-05-16 11:07:07 +00:00
< a name = 'SkIPoint_equal_operator' > < / a >
2018-10-16 14:30:28 +00:00
---
2017-11-27 15:44:06 +00:00
2018-05-16 11:07:07 +00:00
< pre style = "padding: 1em 1em 1em 1em; width: 62.5em;background-color: #f0f0f0 " >
bool < a href = '#SkIPoint_equal_operator' > operator==(const SkIPoint& a, const SkIPoint& b)< / a >
2017-11-27 15:44:06 +00:00
< / pre >
2018-10-31 16:14:03 +00:00
Returns true if < a href = '#SkIPoint_operator==(const SkIPoint& a, const SkIPoint& b)_a' > a< / a > is equivalent to < a href = '#SkIPoint_operator==(const SkIPoint& a, const SkIPoint& b)_b' > b< / a > .
2017-11-27 15:44:06 +00:00
### Parameters
2018-05-16 11:07:07 +00:00
< table > < tr > < td > < a name = 'SkIPoint_equal_operator_a' > < code > < strong > a< / strong > < / code > < / a > < / td >
2018-10-31 16:14:03 +00:00
< td > < a href = 'SkIPoint_Reference#SkIPoint' > SkIPoint< / a > to compare< / td >
2018-05-16 11:07:07 +00:00
< / tr >
< tr > < td > < a name = 'SkIPoint_equal_operator_b' > < code > < strong > b< / strong > < / code > < / a > < / td >
2018-10-31 16:14:03 +00:00
< td > < a href = 'SkIPoint_Reference#SkIPoint' > SkIPoint< / a > to compare< / td >
2017-11-27 15:44:06 +00:00
< / tr >
< / table >
### Return Value
2018-10-31 16:14:03 +00:00
true if < a href = '#SkIPoint_operator==(const SkIPoint& a, const SkIPoint& b)_a' > a< / a > .< a href = '#SkIPoint_fX' > fX< / a > == < a href = '#SkIPoint_operator==(const SkIPoint& a, const SkIPoint& b)_b' > b< / a > .< a href = '#SkIPoint_fX' > fX< / a > and < a href = '#SkIPoint_operator==(const SkIPoint& a, const SkIPoint& b)_a' > a< / a > .< a href = '#SkIPoint_fY' > fY< / a > == < a href = '#SkIPoint_operator==(const SkIPoint& a, const SkIPoint& b)_b' > b< / a > .< a href = '#SkIPoint_fY' > fY< / a >
2017-11-27 15:44:06 +00:00
### Example
< div > < fiddle-embed name = "37ffe2817d720f99e6c252332ce70460" >
#### Example Output
~~~~
pt: 0, 0 == pt
pt: -1, -2 == pt
pt: 2147483647, -1 == pt
pt: -2147483648, -1 == pt
~~~~
< / fiddle-embed > < / div >
### See Also
2018-10-08 18:57:48 +00:00
< a href = '#SkIPoint_equals' > equals< / a > () < a href = '#SkIPoint_notequal_operator' > operator!=(const SkIPoint& a, const SkIPoint& b)< / a >
2017-11-27 15:44:06 +00:00
2018-05-16 11:07:07 +00:00
< a name = 'SkIPoint_notequal_operator' > < / a >
2018-10-16 14:30:28 +00:00
---
2017-11-27 15:44:06 +00:00
2018-05-16 11:07:07 +00:00
< pre style = "padding: 1em 1em 1em 1em; width: 62.5em;background-color: #f0f0f0 " >
bool < a href = '#SkIPoint_notequal_operator' > operator!=(const SkIPoint& a, const SkIPoint& b)< / a >
2017-11-27 15:44:06 +00:00
< / pre >
2018-10-31 16:14:03 +00:00
Returns true if < a href = '#SkIPoint_operator!=(const SkIPoint& a, const SkIPoint& b)_a' > a< / a > is not equivalent to < a href = '#SkIPoint_operator!=(const SkIPoint& a, const SkIPoint& b)_b' > b< / a > .
2017-11-27 15:44:06 +00:00
### Parameters
2018-05-16 11:07:07 +00:00
< table > < tr > < td > < a name = 'SkIPoint_notequal_operator_a' > < code > < strong > a< / strong > < / code > < / a > < / td >
2018-10-31 16:14:03 +00:00
< td > < a href = 'SkIPoint_Reference#SkIPoint' > SkIPoint< / a > to compare< / td >
2018-05-16 11:07:07 +00:00
< / tr >
< tr > < td > < a name = 'SkIPoint_notequal_operator_b' > < code > < strong > b< / strong > < / code > < / a > < / td >
2018-10-31 16:14:03 +00:00
< td > < a href = 'SkIPoint_Reference#SkIPoint' > SkIPoint< / a > to compare< / td >
2017-11-27 15:44:06 +00:00
< / tr >
< / table >
### Return Value
2018-10-31 16:14:03 +00:00
true if < a href = '#SkIPoint_operator!=(const SkIPoint& a, const SkIPoint& b)_a' > a< / a > .< a href = '#SkIPoint_fX' > fX< / a > != < a href = '#SkIPoint_operator!=(const SkIPoint& a, const SkIPoint& b)_b' > b< / a > .< a href = '#SkIPoint_fX' > fX< / a > or < a href = '#SkIPoint_operator!=(const SkIPoint& a, const SkIPoint& b)_a' > a< / a > .< a href = '#SkIPoint_fY' > fY< / a > != < a href = '#SkIPoint_operator!=(const SkIPoint& a, const SkIPoint& b)_b' > b< / a > .< a href = '#SkIPoint_fY' > fY< / a >
2017-11-27 15:44:06 +00:00
### Example
2018-07-19 14:50:44 +00:00
< div > < fiddle-embed name = "dd89dc48dff69b53d99530b120f204bc" >
2017-11-27 15:44:06 +00:00
#### Example Output
~~~~
pt: 0, 0 == pt
pt: -1, -2 == pt
pt: 2147483647, -1 == pt
pt: -2147483648, -1 == pt
~~~~
< / fiddle-embed > < / div >
### See Also
2018-10-08 18:57:48 +00:00
< a href = '#SkIPoint_equal_operator' > operator==(const SkIPoint& a, const SkIPoint& b)< / a > < a href = '#SkIPoint_equals' > equals< / a > ()
2017-11-27 15:44:06 +00:00
2018-05-16 11:07:07 +00:00
< a name = 'SkIPoint_subtract_operator' > < / a >
2018-10-16 14:30:28 +00:00
---
2017-11-27 15:44:06 +00:00
2018-05-16 11:07:07 +00:00
< pre style = "padding: 1em 1em 1em 1em; width: 62.5em;background-color: #f0f0f0 " >
< a href = '#SkIVector' > SkIVector< / a > < a href = '#SkIPoint_subtract_operator' > operator-(const SkIPoint& a, const SkIPoint& b)< / a >
2017-11-27 15:44:06 +00:00
< / pre >
Condense embedded formulas.
Bookmaker delimits formulas and equations to allow
representing variables and symbols without tripping
up reference lookup, spell checking, and comment
generation.
Before, formulas were represented with:
some text
#Formula
(x + y, 0)
##
, and more text
This made it difficult to know when spacing should
be preserved before and after the formula. Now,
formulas are represented with:
some text #Formula # (x + y, 0) ##, and more text
The presence or absence of a space between ## and ,
is now significant (before it was not).
Also, formulas are bracketed by <code> in markdown
generation, so that variables stand out better.
See:
https://skia.org/user/api/SkBlendMode_Reference?cl=152781#Dst_Out
for an example.
Also fixed 100 column offenders and added a code
check to identify them. For the moment, 100 column
offenders are outed with SkDebugf but their presence
does not cause bookmaker to fail.
TBR=caryclark@google.com
Docs-Preview: https://skia.org/?cl=152781
Bug: skia:6898
Change-Id: If92a65a234f5d616bf4485984a8d219a6f04821a
Reviewed-on: https://skia-review.googlesource.com/152781
Commit-Queue: Cary Clark <caryclark@skia.org>
Auto-Submit: Cary Clark <caryclark@skia.org>
Reviewed-by: Cary Clark <caryclark@skia.org>
2018-09-13 16:04:30 +00:00
Returns < a href = '#IVector' > IVector</ a > from < a href = '#SkIPoint_subtract_operator_b' > b</ a > to < a href = '#SkIPoint_subtract_operator_a' > a</ a > ; computed as < code > \(< a href = '#SkIPoint_subtract_operator_a' > a</ a > \.< a href = '#SkIPoint_fX' > fX</ a > \- < a href = '#SkIPoint_subtract_operator_b' > b</ a > \.< a href = '#SkIPoint_fX' > fX</ a > , < a href = '#SkIPoint_subtract_operator_a' > a</ a > \.< a href = '#SkIPoint_fY' > fY</ a > \- < a href = '#SkIPoint_subtract_operator_b' > b</ a > \.< a href = '#SkIPoint_fY' > fY</ a > \)</ code > .
2017-11-27 15:44:06 +00:00
2018-05-16 11:07:07 +00:00
Can also be used to subtract < a href = '#IVector' > IVector< / a > from < a href = '#IVector' > IVector< / a > , returning < a href = '#IVector' > IVector< / a > .
2017-11-27 15:44:06 +00:00
### Parameters
2018-05-16 11:07:07 +00:00
< table > < tr > < td > < a name = 'SkIPoint_subtract_operator_a' > < code > < strong > a< / strong > < / code > < / a > < / td >
< td > < a href = '#IPoint' > IPoint< / a > or < a href = '#IVector' > IVector< / a > to subtract from< / td >
< / tr >
< tr > < td > < a name = 'SkIPoint_subtract_operator_b' > < code > < strong > b< / strong > < / code > < / a > < / td >
< td > < a href = '#IVector' > IVector< / a > to subtract< / td >
2017-11-27 15:44:06 +00:00
< / tr >
< / table >
### Return Value
2018-05-16 11:07:07 +00:00
< a href = '#IVector' > IVector< / a > from < a href = '#SkIPoint_subtract_operator_b' > b< / a > to < a href = '#SkIPoint_subtract_operator_a' > a< / a >
2017-11-27 15:44:06 +00:00
### Example
< div > < fiddle-embed name = "e626e26bf557857b824aa7d03f723e0f" > < / fiddle-embed > < / div >
### See Also
2018-05-16 11:07:07 +00:00
< a href = '#SkIPoint_subtractfrom_operator' > operator-=(const SkIVector& v)< / a >
2017-11-27 15:44:06 +00:00
2018-05-16 11:07:07 +00:00
< a name = 'SkIPoint_add_operator' > < / a >
2018-10-16 14:30:28 +00:00
---
2017-11-27 15:44:06 +00:00
2018-05-16 11:07:07 +00:00
< pre style = "padding: 1em 1em 1em 1em; width: 62.5em;background-color: #f0f0f0 " >
< a href = '#SkIPoint' > SkIPoint< / a > < a href = '#SkIPoint_add_operator' > operator+(const SkIPoint& a, const SkIVector& b)< / a >
2017-11-27 15:44:06 +00:00
< / pre >
2018-05-16 11:07:07 +00:00
Returns < a href = '#IPoint' > IPoint< / a > resulting from < a href = '#IPoint' > IPoint< / a > < a href = '#SkIPoint_add_operator_a' > a< / a > offset by < a href = '#IVector' > IVector< / a > < a href = '#SkIPoint_add_operator_b' > b< / a > , computed as:
Condense embedded formulas.
Bookmaker delimits formulas and equations to allow
representing variables and symbols without tripping
up reference lookup, spell checking, and comment
generation.
Before, formulas were represented with:
some text
#Formula
(x + y, 0)
##
, and more text
This made it difficult to know when spacing should
be preserved before and after the formula. Now,
formulas are represented with:
some text #Formula # (x + y, 0) ##, and more text
The presence or absence of a space between ## and ,
is now significant (before it was not).
Also, formulas are bracketed by <code> in markdown
generation, so that variables stand out better.
See:
https://skia.org/user/api/SkBlendMode_Reference?cl=152781#Dst_Out
for an example.
Also fixed 100 column offenders and added a code
check to identify them. For the moment, 100 column
offenders are outed with SkDebugf but their presence
does not cause bookmaker to fail.
TBR=caryclark@google.com
Docs-Preview: https://skia.org/?cl=152781
Bug: skia:6898
Change-Id: If92a65a234f5d616bf4485984a8d219a6f04821a
Reviewed-on: https://skia-review.googlesource.com/152781
Commit-Queue: Cary Clark <caryclark@skia.org>
Auto-Submit: Cary Clark <caryclark@skia.org>
Reviewed-by: Cary Clark <caryclark@skia.org>
2018-09-13 16:04:30 +00:00
< code > \(< a href = '#SkIPoint_add_operator_a' > a</ a > \.< a href = '#SkIPoint_fX' > fX</ a > \+ < a href = '#SkIPoint_add_operator_b' > b</ a > \.< a href = '#SkIPoint_fX' > fX</ a > , < a href = '#SkIPoint_add_operator_a' > a</ a > \.< a href = '#SkIPoint_fY' > fY</ a > \+ < a href = '#SkIPoint_add_operator_b' > b</ a > \.< a href = '#SkIPoint_fY' > fY</ a > \)</ code > .
2017-11-27 15:44:06 +00:00
2018-05-16 11:07:07 +00:00
Can also be used to offset < a href = '#IPoint' > IPoint< / a > < a href = '#SkIPoint_add_operator_b' > b< / a > by < a href = '#IVector' > IVector< / a > < a href = '#SkIPoint_add_operator_a' > a< / a > , returning < a href = '#IPoint' > IPoint< / a > .
Can also be used to add < a href = '#IVector' > IVector< / a > to < a href = '#IVector' > IVector< / a > , returning < a href = '#IVector' > IVector< / a > .
2017-11-27 15:44:06 +00:00
### Parameters
2018-05-16 11:07:07 +00:00
< table > < tr > < td > < a name = 'SkIPoint_add_operator_a' > < code > < strong > a< / strong > < / code > < / a > < / td >
< td > < a href = '#IPoint' > IPoint< / a > or < a href = '#IVector' > IVector< / a > to add to< / td >
< / tr >
< tr > < td > < a name = 'SkIPoint_add_operator_b' > < code > < strong > b< / strong > < / code > < / a > < / td >
< td > < a href = '#IPoint' > IPoint< / a > or < a href = '#IVector' > IVector< / a > to add< / td >
2017-11-27 15:44:06 +00:00
< / tr >
< / table >
### Return Value
2018-05-16 11:07:07 +00:00
< a href = '#IPoint' > IPoint< / a > equal to < a href = '#SkIPoint_add_operator_a' > a< / a > offset by < a href = '#SkIPoint_add_operator_b' > b< / a >
2017-11-27 15:44:06 +00:00
### Example
< div > < fiddle-embed name = "63f4cba971c6d8434595906f865b5a29" > < / fiddle-embed > < / div >
### See Also
2018-05-16 11:07:07 +00:00
< a href = '#SkIPoint_addto_operator' > operator+=(const SkIVector& v)< / a >
2017-11-27 15:44:06 +00:00
2018-10-16 14:30:28 +00:00
< a name = 'IVector' > < / a >
2017-11-27 15:44:06 +00:00
2018-10-16 14:30:28 +00:00
< a name = 'SkIVector' > < / a >
2018-05-16 11:07:07 +00:00
2018-10-16 14:30:28 +00:00
---
2018-05-16 11:07:07 +00:00
< pre style = "padding: 1em 1em 1em 1em;width: 62.5em; background-color: #f0f0f0 " >
typedef < a href = '#SkIPoint' > SkIPoint< / a > < a href = '#SkIVector' > SkIVector< / a > ;
< / pre >
< a href = '#SkIVector' > SkIVector< / a > provides an alternative name for < a href = '#SkIPoint' > SkIPoint< / a > . < a href = '#SkIVector' > SkIVector< / a > and < a href = '#SkIPoint' > SkIPoint< / a >
2018-05-30 13:21:49 +00:00
can be used interchangeably for all purposes.