Skip to content

Commit 6ac0fce

Browse files
committed
In the process of making the stateless changes. All the changes are implemented in code but the process of updating this paper to represent that is ongoing. I decided to step away from it for a moment, so I just finished renaming compositing_operator to compositing_op. Planning to rename path_factory to path_builder next.
1 parent be63fed commit 6ac0fce

File tree

10 files changed

+221
-1453
lines changed

10 files changed

+221
-1453
lines changed

source/compositing-operator.tex

Lines changed: 17 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1,22 +1,22 @@
11
%!TEX root = io2d.tex
2-
\rSec0 [compositing.operator] {Enum class \tcode{compositing_operator}}
2+
\rSec0 [compositingop] {Enum class \tcode{compositing_op}}
33

4-
\rSec1 [compositing.operator.summary] {\tcode{compositing_operator}
4+
\rSec1 [compositingop.summary] {\tcode{compositing_op}
55
Summary}
66

77
\pnum
8-
The \tcode{compositing_operator} enum class specifies composition algorithms. See Table~\ref{tab:compositing.operator.meanings.basic},
9-
Table~\ref{tab:compositing.operator.meanings.blend} and
10-
Table~\ref{tab:compositing.operator.meanings.hsl} for the meaning of
11-
each \tcode{compositing_operator} enumerator.
8+
The \tcode{compositing_op} enum class specifies composition algorithms. See Table~\ref{tab:compositingop.meanings.basic},
9+
Table~\ref{tab:compositingop.meanings.blend} and
10+
Table~\ref{tab:compositingop.meanings.hsl} for the meaning of
11+
each \tcode{compositing_op} enumerator.
1212

13-
\rSec1 [compositing.operator.synopsis] {\tcode{compositing_operator}
13+
\rSec1 [compositingop.synopsis] {\tcode{compositing_op}
1414
Synopsis}
1515

1616
\begin{codeblock}
1717
namespace std { namespace experimental { namespace drawing { inline namespace
1818
v1 {
19-
enum class compositing_operator {
19+
enum class compositing_op {
2020
// basic
2121
over,
2222
clear,
@@ -53,7 +53,7 @@
5353
} } } }
5454
\end{codeblock}
5555

56-
\rSec1 [compositing.operator.enumerators] {\tcode{compositing_operator}
56+
\rSec1 [compositingop.enumerators] {\tcode{compositing_op}
5757
Enumerators}
5858
\pnum
5959
The tables below specifies the mathematical formula for each enumerator's composition algorithm. The formulas differentiate between three color channels (red, green, and blue) and an alpha channel (transparency). For all channels, valid channel values are in the range $[0.0, 1.0]$.
@@ -157,8 +157,8 @@
157157
clip are not modified.
158158

159159
\begin{libiotwodreqtab4b}
160-
{\tcode{compositing_operator} basic enumerator meanings}
161-
{tab:compositing.operator.meanings.basic}
160+
{\tcode{compositing_op} basic enumerator meanings}
161+
{tab:compositingop.meanings.basic}
162162
\\ \topline
163163
\lhdr{Enumerator}
164164
& \chdr{Bound}
@@ -317,8 +317,8 @@
317317

318318
\pnum
319319
For the enumerators in
320-
Table~\ref{tab:compositing.operator.meanings.blend} and
321-
Table~\ref{tab:compositing.operator.meanings.hsl} the result color's
320+
Table~\ref{tab:compositingop.meanings.blend} and
321+
Table~\ref{tab:compositingop.meanings.hsl} the result color's
322322
alpha channel value formula is as follows: $Ra = Sa + Da \times (1 - Sa)$.
323323
\enternote
324324
Since it is the same formula for all enumerators in those tables, the formula
@@ -329,8 +329,8 @@
329329
All of the blend enumerators and hsl enumerators have a Bound value of 'N/A'.
330330

331331
\begin{libreqtab2}
332-
{\tcode{compositing_operator} blend enumerator meanings}
333-
{tab:compositing.operator.meanings.blend}
332+
{\tcode{compositing_op} blend enumerator meanings}
333+
{tab:compositingop.meanings.blend}
334334
\\ \topline
335335
\lhdr{Enumerator}
336336
& \rhdr{Color}
@@ -507,8 +507,8 @@
507507
\exitnote
508508

509509
\begin{libreqtab2}
510-
{\tcode{compositing_operator} hsl enumerator meanings}
511-
{tab:compositing.operator.meanings.hsl}
510+
{\tcode{compositing_op} hsl enumerator meanings}
511+
{tab:compositingop.meanings.hsl}
512512
\\ \topline
513513
\lhdr{Enumerator}
514514
& \rhdr{Color \& Alpha}

source/experimental-io2d.tex

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@
1919
enum class fill_rule;
2020
enum class line_cap;
2121
enum class line_join;
22-
enum class compositing_operator;
22+
enum class compositing_op;
2323
enum class format;
2424
enum class tiling;
2525
enum class filter;

source/fill-props.tex

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
%!TEX root = io2d.tex
2+
3+
\rSec0 [fillprops] {Class \tcode{fill_props}}
4+
5+
\rSec1 [fillprops.summary] {\tcode{fill_props} summary}
6+
7+
\pnum
8+
FIXME

source/mask-props.tex

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
%!TEX root = io2d.tex
2+
3+
\rSec0 [maskprops] {Class \tcode{mask_props}}
4+
5+
\rSec1 [maskprops.summary] {\tcode{mask_props} summary}
6+
7+
\pnum
8+
FIXME

source/render-props.tex

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
%!TEX root = io2d.tex
2+
3+
\rSec0 [renderprops] {Class \tcode{render_props}}
4+
5+
\rSec1 [renderprops.summary] {\tcode{render_props} summary}
6+
7+
\pnum
8+
The \tcode{render_props} class provides general state information that is applicable to all rendering and composing operations (\ref{surface.render}).
9+
10+
\pnum
11+
It has a Transformation Matrix of type \tcode{matrix_2d}, an Antialiasing Value of type \tcode{antialias}, and a Compositing Operator of type \tcode{compositing_op}.
12+
13+
\rSec1 [renderprops.synopsis] {\tcode{render_props} synopsis}
14+
15+
\begin{codeblock}
16+
namespace std { namespace experimental { namespace io2d { inline namespace v1 {
17+
class surface {
18+
public:
19+
constexpr render_props() noexcept;
20+
constexpr explicit render_props(const matrix_2d& m,
21+
experimental::io2d::antialias = experimental::io2d::good,
22+
experimental::io2d::compositing_op = experimental::io2d::compositing_op::over) noexcept;
23+
24+
// \ref{surface.modifiers.state}, state modifiers:
25+
};
26+
}}}}
27+
\end{codeblock}

source/reqs.tex

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -59,13 +59,13 @@
5959
\pnum
6060
Certain requirements of this \documenttypename{} assume that \tcode{numeric_limits<double>::is_iec559} evaluates to \tcode{true}. The behavior of these requirements is \impldef{\tcode{numeric_limits<double>::is_iec559} evaluates to \tcode{false}} if \tcode{numeric_limits<double>::is_iec559} evaluates to \tcode{false}.
6161

62-
\rSec1 [\iotwod.req.cstdintopttypes] {Exact width integer types}
63-
64-
\pnum
65-
In order to implement this \documenttypename{}, the implementation shall provide the following optional integer types from the \tcode{<cstdint>} header file:
66-
\begin{itemize}
67-
\item \tcode{uint8_t}
68-
\item \tcode{uint16_t}
69-
\item \tcode{uint32_t}
70-
\item \tcode{uint64_t}
71-
\end{itemize}
62+
%\rSec1 [\iotwod.req.cstdintopttypes] {Exact width integer types}
63+
%
64+
%\pnum
65+
%In order to implement this \documenttypename{}, the implementation shall provide the following optional integer types from the \tcode{<cstdint>} header file:
66+
%\begin{itemize}
67+
% \item \tcode{uint8_t}
68+
% \item \tcode{uint16_t}
69+
% \item \tcode{uint32_t}
70+
% \item \tcode{uint64_t}
71+
%\end{itemize}

source/stroke-props.tex

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
%!TEX root = io2d.tex
2+
3+
\rSec0 [strokeprops] {Class \tcode{stroke_props}}
4+
5+
\rSec1 [strokeprops.summary] {\tcode{stroke_props} summary}
6+
7+
\pnum
8+
FIXME

0 commit comments

Comments
 (0)