summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/l3experimental/l3draw/l3draw.sty
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/tex/latex/l3experimental/l3draw/l3draw.sty')
-rw-r--r--Master/texmf-dist/tex/latex/l3experimental/l3draw/l3draw.sty285
1 files changed, 153 insertions, 132 deletions
diff --git a/Master/texmf-dist/tex/latex/l3experimental/l3draw/l3draw.sty b/Master/texmf-dist/tex/latex/l3experimental/l3draw/l3draw.sty
index bca4f693965..15e008bfbe1 100644
--- a/Master/texmf-dist/tex/latex/l3experimental/l3draw/l3draw.sty
+++ b/Master/texmf-dist/tex/latex/l3experimental/l3draw/l3draw.sty
@@ -14,7 +14,7 @@
%% l3draw-state.dtx (with options: `package')
%% l3draw-transforms.dtx (with options: `package')
%%
-%% Copyright (C) 2018-2023 The LaTeX Project
+%% Copyright (C) 2018-2024 The LaTeX Project
%%
%% It may be distributed and/or modified under the conditions of
%% the LaTeX Project Public License (LPPL), either version 1.3c of
@@ -29,7 +29,7 @@
%% File: l3draw.dtx
\RequirePackage{expl3}
-\ProvidesExplPackage{l3draw}{2023-12-08}{}
+\ProvidesExplPackage{l3draw}{2024-01-04}{}
{L3 Experimental core drawing support}
\scan_new:N \s__draw_mark
\scan_new:N \s__draw_stop
@@ -287,9 +287,9 @@
}
\cs_new_protected:Npn \__draw_path_moveto:nn #1#2
{
- \__draw_path_update_limits:nn {#1} {#2}
- \__draw_softpath_moveto:nn {#1} {#2}
- \__draw_path_update_last:nn {#1} {#2}
+ \__draw_path_update_limits:nn {#1} {#2}
+ \__draw_softpath_moveto:nn {#1} {#2}
+ \__draw_path_update_last:nn {#1} {#2}
}
\cs_new_protected:Npn \draw_path_lineto:n #1
{
@@ -299,10 +299,10 @@
}
\cs_new_protected:Npn \__draw_path_lineto:nn #1#2
{
- \__draw_path_mark_corner:
- \__draw_path_update_limits:nn {#1} {#2}
- \__draw_softpath_lineto:nn {#1} {#2}
- \__draw_path_update_last:nn {#1} {#2}
+ \__draw_path_mark_corner:
+ \__draw_path_update_limits:nn {#1} {#2}
+ \__draw_softpath_lineto:nn {#1} {#2}
+ \__draw_path_update_last:nn {#1} {#2}
}
\cs_new_protected:Npn \draw_path_curveto:nnn #1#2#3
{
@@ -317,11 +317,11 @@
}
\cs_new_protected:Npn \__draw_path_curveto:nnnnnn #1#2#3#4#5#6
{
- \__draw_path_update_limits:nn {#1} {#2}
- \__draw_path_update_limits:nn {#3} {#4}
- \__draw_path_update_limits:nn {#5} {#6}
- \__draw_softpath_curveto:nnnnnn {#1} {#2} {#3} {#4} {#5} {#6}
- \__draw_path_update_last:nn {#5} {#6}
+ \__draw_path_update_limits:nn {#1} {#2}
+ \__draw_path_update_limits:nn {#3} {#4}
+ \__draw_path_update_limits:nn {#5} {#6}
+ \__draw_softpath_curveto:nnnnnn {#1} {#2} {#3} {#4} {#5} {#6}
+ \__draw_path_update_last:nn {#5} {#6}
}
\cs_new_protected:Npn \draw_path_close:
{
@@ -354,32 +354,32 @@
\fp_set:Nn \l__draw_path_tmpb_fp { \c__draw_path_curveto_b_fp * #2 }
\use:e
{
- \__draw_path_mark_corner:
- \__draw_path_curveto:nnnnnn
- {
- \fp_to_dim:n
- {
- \c__draw_path_curveto_a_fp * \g__draw_path_lastx_dim
- + \l__draw_path_tmpa_fp
- }
- }
- {
- \fp_to_dim:n
- {
- \c__draw_path_curveto_a_fp * \g__draw_path_lasty_dim
- + \l__draw_path_tmpb_fp
- }
- }
- {
- \fp_to_dim:n
- { \c__draw_path_curveto_a_fp * #3 + \l__draw_path_tmpa_fp }
- }
- {
- \fp_to_dim:n
- { \c__draw_path_curveto_a_fp * #4 + \l__draw_path_tmpb_fp }
- }
- {#3}
- {#4}
+ \__draw_path_mark_corner:
+ \__draw_path_curveto:nnnnnn
+ {
+ \fp_to_dim:n
+ {
+ \c__draw_path_curveto_a_fp * \g__draw_path_lastx_dim
+ + \l__draw_path_tmpa_fp
+ }
+ }
+ {
+ \fp_to_dim:n
+ {
+ \c__draw_path_curveto_a_fp * \g__draw_path_lasty_dim
+ + \l__draw_path_tmpb_fp
+ }
+ }
+ {
+ \fp_to_dim:n
+ { \c__draw_path_curveto_a_fp * #3 + \l__draw_path_tmpa_fp }
+ }
+ {
+ \fp_to_dim:n
+ { \c__draw_path_curveto_a_fp * #4 + \l__draw_path_tmpb_fp }
+ }
+ {#3}
+ {#4}
}
}
\fp_const:Nn \c__draw_path_curveto_a_fp { 1 / 3 }
@@ -395,7 +395,7 @@
{ \fp_eval:n {#2} }
{ \fp_to_dim:n {#3} }
{ \fp_to_dim:n {#4} }
- }
+ }
}
\cs_new_protected:Npn \__draw_path_arc:nnnn #1#2#3#4
{
@@ -411,14 +411,14 @@
{
\fp_compare:nNnTF \l__draw_path_arc_delta_fp > { 115 }
{
- \__draw_path_arc_auxi:ffnnNnn
+ \__draw_path_arc_auxi:eennNnn
{ \fp_to_decimal:N \l__draw_path_arc_start_fp }
{ \fp_eval:n { \l__draw_path_arc_start_fp #3 90 } }
{ 90 } {#2}
#3 {#4} {#5}
}
{
- \__draw_path_arc_auxi:ffnnNnn
+ \__draw_path_arc_auxi:eennNnn
{ \fp_to_decimal:N \l__draw_path_arc_start_fp }
{ \fp_eval:n { \l__draw_path_arc_start_fp #3 60 } }
{ 60 } {#2}
@@ -426,7 +426,7 @@
}
}
\__draw_path_mark_corner:
- \__draw_path_arc_auxi:fnfnNnn
+ \__draw_path_arc_auxi:enenNnn
{ \fp_to_decimal:N \l__draw_path_arc_start_fp }
{#2}
{ \fp_eval:n { abs( \l__draw_path_arc_start_fp - #2 ) } }
@@ -459,7 +459,7 @@
}
}
}
-\cs_generate_variant:Nn \__draw_path_arc_auxi:nnnnNnn { fnf , ff }
+\cs_generate_variant:Nn \__draw_path_arc_auxi:nnnnNnn { ene , ee }
\cs_new_protected:Npn \__draw_path_arc_auxii:nnnNnnnn #1#2#3#4#5#6#7#8
{
\tl_clear:N \l__draw_path_tmp_tl
@@ -605,7 +605,7 @@
{ \__draw_path_rectangle_rounded:nnnn }
{ \__draw_path_rectangle:nnnn }
}
- { \draw_point_transform:n {#1} }
+ {#1}
{#2}
}
\cs_new_protected:Npn \__draw_path_rectangle:nnnn #1#2#3#4
@@ -636,7 +636,7 @@
{
\__draw_point_process:nnn
{
- \__draw_path_grid_auxi:ffnnnn
+ \__draw_path_grid_auxi:eennnn
{ \dim_eval:n { \dim_abs:n {#1} } }
{ \dim_eval:n { \dim_abs:n {#2} } }
}
@@ -648,7 +648,7 @@
{ \__draw_path_grid_auxii:nnnnnn {#1} {#2} {#5} {#4} {#3} {#6} }
{ \__draw_path_grid_auxii:nnnnnn {#1} {#2} {#3} {#4} {#5} {#6} }
}
-\cs_generate_variant:Nn \__draw_path_grid_auxi:nnnnnn { ff }
+\cs_generate_variant:Nn \__draw_path_grid_auxi:nnnnnn { ee }
\cs_new_protected:Npn \__draw_path_grid_auxii:nnnnnn #1#2#3#4#5#6
{
\dim_compare:nNnTF {#4} > {#6}
@@ -657,7 +657,7 @@
}
\cs_new_protected:Npn \__draw_path_grid_auxiii:nnnnnn #1#2#3#4#5#6
{
- \__draw_path_grid_auxiv:ffnnnnnn
+ \__draw_path_grid_auxiv:eennnnnn
{ \fp_to_dim:n { #1 * trunc(#3/(#1)) } }
{ \fp_to_dim:n { #2 * trunc(#4/(#2)) } }
{#1} {#2} {#3} {#4} {#5} {#6}
@@ -681,7 +681,7 @@
\draw_path_lineto:n { #7 , ##1 }
}
}
-\cs_generate_variant:Nn \__draw_path_grid_auxiv:nnnnnnnn { ff }
+\cs_generate_variant:Nn \__draw_path_grid_auxiv:nnnnnnnn { ee }
\bool_new:N \l__draw_path_use_clip_bool
\bool_new:N \l__draw_path_use_fill_bool
\bool_new:N \l__draw_path_use_stroke_bool
@@ -702,7 +702,7 @@
\__draw_path_reset_limits:
}
{ \__draw_path_use:n { #1 , clear } }
- }
+ }
\cs_new_protected:Npn \__draw_path_use:n #1
{
\bool_set_false:N \l__draw_path_use_clip_bool
@@ -820,28 +820,30 @@
%% File: l3draw-points.dtx
\cs_new:Npn \__draw_point_process:nn #1#2
{
- \exp_args:Nf \__draw_point_process_auxi:nn
+ \__draw_point_process_auxi:en
{ \draw_point:n {#2} }
{#1}
}
\cs_new:Npn \__draw_point_process_auxi:nn #1#2
{ \__draw_point_process_auxii:nw {#2} #1 \s__draw_stop }
+\cs_generate_variant:Nn \__draw_point_process_auxi:nn { e }
\cs_new:Npn \__draw_point_process_auxii:nw #1 #2 , #3 \s__draw_stop
{ #1 {#2} {#3} }
\cs_new:Npn \__draw_point_process:nnn #1#2#3
{
- \exp_args:Nff \__draw_point_process_auxiii:nnn
+ \__draw_point_process_auxiii:een
{ \draw_point:n {#2} }
{ \draw_point:n {#3} }
{#1}
}
\cs_new:Npn \__draw_point_process_auxiii:nnn #1#2#3
{ \__draw_point_process_auxiv:nw {#3} #1 \s__draw_mark #2 \s__draw_stop }
+\cs_generate_variant:Nn \__draw_point_process_auxiii:nnn { ee }
\cs_new:Npn \__draw_point_process_auxiv:nw #1 #2 , #3 \s__draw_mark #4 , #5 \s__draw_stop
{ #1 {#2} {#3} {#4} {#5} }
\cs_new:Npn \__draw_point_process:nnnn #1#2#3#4
{
- \exp_args:Nfff \__draw_point_process_auxv:nnnn
+ \__draw_point_process_auxv:eeen
{ \draw_point:n {#2} }
{ \draw_point:n {#3} }
{ \draw_point:n {#4} }
@@ -849,12 +851,13 @@
}
\cs_new:Npn \__draw_point_process_auxv:nnnn #1#2#3#4
{ \__draw_point_process_auxvi:nw {#4} #1 \s__draw_mark #2 \s__draw_mark #3 \s__draw_stop }
+\cs_generate_variant:Nn \__draw_point_process_auxv:nnnn { eee }
\cs_new:Npn \__draw_point_process_auxvi:nw
#1 #2 , #3 \s__draw_mark #4 , #5 \s__draw_mark #6 , #7 \s__draw_stop
{ #1 {#2} {#3} {#4} {#5} {#6} {#7} }
\cs_new:Npn \__draw_point_process:nnnnn #1#2#3#4#5
{
- \exp_args:Nffff \__draw_point_process_auxvii:nnnnn
+ \__draw_point_process_auxvii:eeeen
{ \draw_point:n {#2} }
{ \draw_point:n {#3} }
{ \draw_point:n {#4} }
@@ -866,27 +869,28 @@
\__draw_point_process_auxviii:nw
{#5} #1 \s__draw_mark #2 \s__draw_mark #3 \s__draw_mark #4 \s__draw_stop
}
+\cs_generate_variant:Nn \__draw_point_process_auxvii:nnnnn { eeee }
\cs_new:Npn \__draw_point_process_auxviii:nw
#1 #2 , #3 \s__draw_mark #4 , #5 \s__draw_mark #6 , #7 \s__draw_mark #8 , #9 \s__draw_stop
{ #1 {#2} {#3} {#4} {#5} {#6} {#7} {#8} {#9} }
\cs_new:Npn \draw_point:n #1
- { \__draw_point_to_dim:f { \fp_eval:n {#1} } }
+ { \__draw_point_to_dim:e { \fp_eval:n {#1} } }
\cs_new:Npn \__draw_point_to_dim:n #1
{ \__draw_point_to_dim:w #1 }
-\cs_generate_variant:Nn \__draw_point_to_dim:n { f }
+\cs_generate_variant:Nn \__draw_point_to_dim:n { e }
\cs_new:Npn \__draw_point_to_dim:w ( #1 , ~ #2 ) { #1pt , #2pt }
\cs_new:Npn \draw_point_polar:nn #1#2
{ \draw_point_polar:nnn {#1} {#1} {#2} }
\cs_new:Npn \draw_point_polar:nnn #1#2#3
- { \__draw_draw_polar:fnn { \fp_eval:n {#3} } {#1} {#2} }
+ { \__draw_draw_polar:enn { \fp_eval:n {#3} } {#1} {#2} }
\cs_new:Npn \__draw_draw_polar:nnn #1#2#3
{ \draw_point:n { cosd(#1) * (#2) , sind(#1) * (#3) } }
-\cs_generate_variant:Nn \__draw_draw_polar:nnn { f }
+\cs_generate_variant:Nn \__draw_draw_polar:nnn { e }
\cs_new:Npn \draw_point_unit_vector:n #1
{ \__draw_point_process:nn { \__draw_point_unit_vector:nn } {#1} }
\cs_new:Npn \__draw_point_unit_vector:nn #1#2
{
- \exp_args:Nf \__draw_point_unit_vector:nnn
+ \__draw_point_unit_vector:nnn
{ \fp_eval:n { (sqrt(#1 * #1 + #2 * #2)) } }
{#1} {#2}
}
@@ -899,6 +903,7 @@
{ ( #2 , #3 ) / #1 }
}
}
+\cs_generate_variant:Nn \__draw_point_unit_vector:nnn { e }
\cs_new:Npn \draw_point_intersect_lines:nnnn #1#2#3#4
{
\__draw_point_process:nnnnn
@@ -907,7 +912,7 @@
}
\cs_new:Npn \__draw_point_intersect_lines:nnnnnnnn #1#2#3#4#5#6#7#8
{
- \__draw_point_intersect_lines_aux:ffffff
+ \__draw_point_intersect_lines_aux:eeeeee
{ \fp_eval:n { #1 * #4 - #2 * #3 } }
{ \fp_eval:n { #5 * #8 - #6 * #7 } }
{ \fp_eval:n { #1 - #3 } }
@@ -923,7 +928,7 @@
/ ( #4 * #5 - #6 * #3 )
}
}
-\cs_generate_variant:Nn \__draw_point_intersect_lines_aux:nnnnnn { ffffff }
+\cs_generate_variant:Nn \__draw_point_intersect_lines_aux:nnnnnn { eeeeee }
\cs_new:Npn \draw_point_intersect_circles:nnnnn #1#2#3#4#5
{
\__draw_point_process:nnn
@@ -932,54 +937,54 @@
}
\cs_new:Npn \__draw_point_intersect_circles_auxi:nnnnnnn #1#2#3#4#5#6#7
{
- \__draw_point_intersect_circles_auxii:ffnnnnn
+ \__draw_point_intersect_circles_auxii:eennnnn
{ \fp_eval:n {#1} } { \fp_eval:n {#2} } {#4} {#5} {#6} {#7} {#3}
}
\cs_new:Npn \__draw_point_intersect_circles_auxii:nnnnnnn #1#2#3#4#5#6#7
{
- \__draw_point_intersect_circles_auxiii:ffnnnnn
+ \__draw_point_intersect_circles_auxiii:eennnnn
{ \fp_eval:n { #5 - #3 } }
{ \fp_eval:n { #6 - #4 } }
{#1} {#2} {#3} {#4} {#7}
}
-\cs_generate_variant:Nn \__draw_point_intersect_circles_auxii:nnnnnnn { ff }
+\cs_generate_variant:Nn \__draw_point_intersect_circles_auxii:nnnnnnn { ee }
\cs_new:Npn \__draw_point_intersect_circles_auxiii:nnnnnnn #1#2#3#4#5#6#7
{
- \__draw_point_intersect_circles_auxiv:fnnnnnnn
+ \__draw_point_intersect_circles_auxiv:ennnnnnn
{ \fp_eval:n { sqrt( #1 * #1 + #2 * #2 ) } }
{#1} {#2} {#3} {#4} {#5} {#6} {#7}
}
-\cs_generate_variant:Nn \__draw_point_intersect_circles_auxiii:nnnnnnn { ff }
+\cs_generate_variant:Nn \__draw_point_intersect_circles_auxiii:nnnnnnn { ee }
\cs_new:Npn \__draw_point_intersect_circles_auxiv:nnnnnnnn #1#2#3#4#5#6#7#8
{
- \__draw_point_intersect_circles_auxv:ffnnnnnnn
+ \__draw_point_intersect_circles_auxv:eennnnnnn
{ \fp_eval:n { 1 / #1 } }
{ \fp_eval:n { #4 * #4 } }
{#1} {#2} {#3} {#5} {#6} {#7} {#8}
}
-\cs_generate_variant:Nn \__draw_point_intersect_circles_auxiv:nnnnnnnn { f }
+\cs_generate_variant:Nn \__draw_point_intersect_circles_auxiv:nnnnnnnn { e }
\cs_new:Npn \__draw_point_intersect_circles_auxv:nnnnnnnnn #1#2#3#4#5#6#7#8#9
{
- \__draw_point_intersect_circles_auxvi:fnnnnnnn
+ \__draw_point_intersect_circles_auxvi:ennnnnnn
{ \fp_eval:n { 0.5 * #1 * ( #2 + #3 * #3 - #6 * #6 ) } }
{#1} {#2} {#4} {#5} {#7} {#8} {#9}
}
-\cs_generate_variant:Nn \__draw_point_intersect_circles_auxv:nnnnnnnnn { ff }
+\cs_generate_variant:Nn \__draw_point_intersect_circles_auxv:nnnnnnnnn { ee }
\cs_new:Npn \__draw_point_intersect_circles_auxvi:nnnnnnnn #1#2#3#4#5#6#7#8
{
- \__draw_point_intersect_circles_auxvii:fffnnnn
+ \__draw_point_intersect_circles_auxvii:eeennnn
{ \fp_eval:n { #1 * #2 } }
{ \int_if_odd:nTF {#8} { 1 } { -1 } }
{ \fp_eval:n { sqrt ( #3 - #1 * #1 ) * #2 } }
{#4} {#5} {#6} {#7}
}
-\cs_generate_variant:Nn \__draw_point_intersect_circles_auxvi:nnnnnnnn { f }
+\cs_generate_variant:Nn \__draw_point_intersect_circles_auxvi:nnnnnnnn { e }
\cs_new:Npn \__draw_point_intersect_circles_auxvii:nnnnnnn #1#2#3#4#5#6#7
{
\draw_point:n
{ #6 + #4 * #1 + #2 * #3 * #5 , #7 + #5 * #1 + -1 * #2 * #3 * #4 }
}
-\cs_generate_variant:Nn \__draw_point_intersect_circles_auxvii:nnnnnnn { fff }
+\cs_generate_variant:Nn \__draw_point_intersect_circles_auxvii:nnnnnnn { eee }
\cs_new:Npn \draw_point_intersect_line_circle:nnnnn #1#2#3#4#5
{
\__draw_point_process:nnnn
@@ -988,54 +993,54 @@
}
\cs_new:Npn \__draw_point_intersect_line_circle_auxi:nnnnnnnn #1#2#3#4#5#6#7#8
{
- \__draw_point_intersect_line_circle_auxii:fnnnnnnn
+ \__draw_point_intersect_line_circle_auxii:ennnnnnn
{ \fp_eval:n {#1} } {#3} {#4} {#5} {#6} {#7} {#8} {#2}
}
\cs_new:Npn \__draw_point_intersect_line_circle_auxii:nnnnnnnn #1#2#3#4#5#6#7#8
{
- \__draw_point_intersect_line_circle_auxiii:fffnnnnn
+ \__draw_point_intersect_line_circle_auxiii:eeennnnn
{ \fp_eval:n { (#4-#2)*(#4-#2)+(#5-#3)*(#5-#3) } }
{ \fp_eval:n { 2*((#4-#2)*(#2-#6)+(#5-#3)*(#3-#7)) } }
{ \fp_eval:n { (#6*#6+#7*#7)+(#2*#2+#3*#3)-(2*(#6*#2+#7*#3))-(#1*#1) } }
{#2} {#3} {#4} {#5} {#8}
}
-\cs_generate_variant:Nn \__draw_point_intersect_line_circle_auxii:nnnnnnnn { f }
+\cs_generate_variant:Nn \__draw_point_intersect_line_circle_auxii:nnnnnnnn { e }
\cs_new:Npn \__draw_point_intersect_line_circle_auxiii:nnnnnnnn #1#2#3#4#5#6#7#8
{
- \__draw_point_intersect_line_circle_auxiv:ffnnnnnn
+ \__draw_point_intersect_line_circle_auxiv:eennnnnn
{ \fp_eval:n { #2 * #2 - 4 * #1 * #3 } }
{ \int_if_odd:nTF {#8} { 1 } { -1 } }
{#1} {#2} {#4} {#5} {#6} {#7}
}
-\cs_generate_variant:Nn \__draw_point_intersect_line_circle_auxiii:nnnnnnnn { fff }
+\cs_generate_variant:Nn \__draw_point_intersect_line_circle_auxiii:nnnnnnnn { eee }
\cs_new:Npn \__draw_point_intersect_line_circle_auxiv:nnnnnnnn #1#2#3#4#5#6#7#8
{
- \__draw_point_intersect_line_circle_auxv:fnnnn
+ \__draw_point_intersect_line_circle_auxv:ennnn
{ \fp_eval:n { (-1 * #4 + #2 * sqrt(#1)) / (2 * #3) } }
{#5} {#6} {#7} {#8}
}
-\cs_generate_variant:Nn \__draw_point_intersect_line_circle_auxiv:nnnnnnnn { ff }
+\cs_generate_variant:Nn \__draw_point_intersect_line_circle_auxiv:nnnnnnnn { ee }
\cs_new:Npn \__draw_point_intersect_line_circle_auxv:nnnnn #1#2#3#4#5
{
\draw_point:n
{ #2 + #1 * (#4 - #2), #3 + #1 * (#5 - #3) }
}
-\cs_generate_variant:Nn \__draw_point_intersect_line_circle_auxv:nnnnn { f }
+\cs_generate_variant:Nn \__draw_point_intersect_line_circle_auxv:nnnnn { e }
\cs_new:Npn \draw_point_interpolate_line:nnn #1#2#3
{
\__draw_point_process:nnn
- { \__draw_point_interpolate_line_aux:fnnnn { \fp_eval:n {#1} } }
+ { \__draw_point_interpolate_line_aux:ennnn { \fp_eval:n {#1} } }
{#2} {#3}
}
\cs_new:Npn \__draw_point_interpolate_line_aux:nnnnn #1#2#3#4#5
{
- \__draw_point_interpolate_line_aux:fnnnnn { \fp_eval:n { 1 - #1 } }
+ \__draw_point_interpolate_line_aux:ennnnn { \fp_eval:n { 1 - #1 } }
{#1} {#2} {#3} {#4} {#5}
}
-\cs_generate_variant:Nn \__draw_point_interpolate_line_aux:nnnnn { f }
+\cs_generate_variant:Nn \__draw_point_interpolate_line_aux:nnnnn { e }
\cs_new:Npn \__draw_point_interpolate_line_aux:nnnnnn #1#2#3#4#5#6
{ \draw_point:n { #2 * #3 + #1 * #5 , #2 * #4 + #1 * #6 } }
-\cs_generate_variant:Nn \__draw_point_interpolate_line_aux:nnnnnn { f }
+\cs_generate_variant:Nn \__draw_point_interpolate_line_aux:nnnnnn { e }
\cs_new:Npn \draw_point_interpolate_distance:nnn #1#2#3
{
\__draw_point_process:nn
@@ -1046,14 +1051,14 @@
{
\__draw_point_process:nn
{
- \__draw_point_interpolate_distance:fnnnn
+ \__draw_point_interpolate_distance:ennnn
{ \fp_eval:n {#1} } {#3} {#4}
}
{ \draw_point_unit_vector:n { ( #2 ) - ( #3 , #4 ) } }
}
\cs_new:Npn \__draw_point_interpolate_distance:nnnnn #1#2#3#4#5
{ \draw_point:n { #2 + #1 * #4 , #3 + #1 * #5 } }
-\cs_generate_variant:Nn \__draw_point_interpolate_distance:nnnnn { f }
+\cs_generate_variant:Nn \__draw_point_interpolate_distance:nnnnn { e }
\cs_new:Npn \draw_point_interpolate_arcaxes:nnnnnn #1#2#3#4#5#6
{
\__draw_point_process:nnnn
@@ -1062,30 +1067,30 @@
}
\cs_new:Npn \__draw_point_interpolate_arcaxes_auxi:nnnnnnnnn #1#2#3#4#5#6#7#8#9
{
- \__draw_point_interpolate_arcaxes_auxii:fnnnnnnnn
+ \__draw_point_interpolate_arcaxes_auxii:ennnnnnnn
{ \fp_eval:n {#1} } {#2} {#3} {#4} {#5} {#6} {#7} {#8} {#9}
}
\cs_new:Npn \__draw_point_interpolate_arcaxes_auxii:nnnnnnnnn #1#2#3#4#5#6#7#8#9
{
- \__draw_point_interpolate_arcaxes_auxiii:fnnnnnn
+ \__draw_point_interpolate_arcaxes_auxiii:ennnnnn
{ \fp_eval:n { #1 * (#3) + ( 1 - #1 ) * (#2) } }
{#4} {#5} {#6} {#7} {#8} {#9}
}
-\cs_generate_variant:Nn \__draw_point_interpolate_arcaxes_auxii:nnnnnnnnn { f }
+\cs_generate_variant:Nn \__draw_point_interpolate_arcaxes_auxii:nnnnnnnnn { e }
\cs_new:Npn \__draw_point_interpolate_arcaxes_auxiii:nnnnnnn #1#2#3#4#5#6#7
{
- \__draw_point_interpolate_arcaxes_auxiv:ffnnnnnn
+ \__draw_point_interpolate_arcaxes_auxiv:eennnnnn
{ \fp_eval:n { cosd (#1) } }
{ \fp_eval:n { sind (#1) } }
{#2} {#3} {#4} {#5} {#6} {#7}
}
-\cs_generate_variant:Nn \__draw_point_interpolate_arcaxes_auxiii:nnnnnnn { f }
+\cs_generate_variant:Nn \__draw_point_interpolate_arcaxes_auxiii:nnnnnnn { e }
\cs_new:Npn \__draw_point_interpolate_arcaxes_auxiv:nnnnnnnn #1#2#3#4#5#6#7#8
{
\draw_point:n
{ #3 + #1 * #5 + #2 * #7 , #4 + #1 * #6 + #2 * #8 }
}
-\cs_generate_variant:Nn \__draw_point_interpolate_arcaxes_auxiv:nnnnnnnn { ff }
+\cs_generate_variant:Nn \__draw_point_interpolate_arcaxes_auxiv:nnnnnnnn { ee }
\cs_new:Npn \draw_point_interpolate_curve:nnnnnn #1#2#3#4#5
{
\__draw_point_process:nnnnn
@@ -1094,19 +1099,19 @@
}
\cs_new:Npn \__draw_point_interpolate_curve_auxi:nnnnnnnnn #1#2#3#4#5#6#7#8#9
{
- \__draw_point_interpolate_curve_auxii:fnnnnnnnn
+ \__draw_point_interpolate_curve_auxii:ennnnnnnn
{ \fp_eval:n {#1} }
{#2} {#3} {#4} {#5} {#6} {#7} {#8} {#9}
}
\cs_new:Npn \__draw_point_interpolate_curve_auxii:nnnnnnnnn
#1#2#3#4#5#6#7#8#9
{
- \__draw_point_interpolate_curve_auxiii:fnnnnn
+ \__draw_point_interpolate_curve_auxiii:ennnnn
{ \fp_eval:n { 1 - #1 } }
{#1}
{ {#2} {#3} } { {#4} {#5} } { {#6} {#7} } { {#8} {#9} }
}
-\cs_generate_variant:Nn \__draw_point_interpolate_curve_auxii:nnnnnnnnn { f }
+\cs_generate_variant:Nn \__draw_point_interpolate_curve_auxii:nnnnnnnnn { e }
\cs_new:Npn \__draw_point_interpolate_curve_auxiii:nnnnnn #1#2#3#4#5#6
{
\__draw_point_interpolate_curve_auxiv:nnnnnn {#1} {#2} #3 #4
@@ -1115,10 +1120,10 @@
\prg_do_nothing:
\__draw_point_interpolate_curve_auxvi:n { {#1} {#2} }
}
-\cs_generate_variant:Nn \__draw_point_interpolate_curve_auxiii:nnnnnn { f }
+\cs_generate_variant:Nn \__draw_point_interpolate_curve_auxiii:nnnnnn { e }
\cs_new:Npn \__draw_point_interpolate_curve_auxiv:nnnnnn #1#2#3#4#5#6
{
- \__draw_point_interpolate_curve_auxv:ffw
+ \__draw_point_interpolate_curve_auxv:eew
{ \fp_eval:n { #1 * #3 + #2 * #5 } }
{ \fp_eval:n { #1 * #4 + #2 * #6 } }
}
@@ -1129,12 +1134,12 @@
\prg_do_nothing:
#4 { #5 {#1} {#2} }
}
-\cs_generate_variant:Nn \__draw_point_interpolate_curve_auxv:nnw { ff }
+\cs_generate_variant:Nn \__draw_point_interpolate_curve_auxv:nnw { ee }
\cs_new:Npn \__draw_point_interpolate_curve_auxvi:n #1
{ \__draw_point_interpolate_curve_auxvii:nnnnnnnn #1 }
\cs_new:Npn \__draw_point_interpolate_curve_auxvii:nnnnnnnn #1#2#3#4#5#6#7#8
{
- \__draw_point_interpolate_curve_auxviii:ffffnn
+ \__draw_point_interpolate_curve_auxviii:eeeenn
{ \fp_eval:n { #1 * #5 + #2 * #3 } }
{ \fp_eval:n { #1 * #6 + #2 * #4 } }
{ \fp_eval:n { #1 * #7 + #2 * #5 } }
@@ -1146,7 +1151,7 @@
\draw_point:n
{ #5 * #3 + #6 * #1 , #5 * #4 + #6 * #2 }
}
-\cs_generate_variant:Nn \__draw_point_interpolate_curve_auxviii:nnnnnn { ffff }
+\cs_generate_variant:Nn \__draw_point_interpolate_curve_auxviii:nnnnnn { eeee }
\dim_new:N \l__draw_xvec_x_dim
\dim_new:N \l__draw_xvec_y_dim
\dim_new:N \l__draw_yvec_x_dim
@@ -1172,7 +1177,7 @@
\draw_yvec:n { 0cm , 1cm }
\draw_zvec:n { -0.385cm , -0.385cm }
\cs_new:Npn \draw_point_vec:nn #1#2
- { \__draw_point_vec:ff { \fp_eval:n {#1} } { \fp_eval:n {#2} } }
+ { \__draw_point_vec:ee { \fp_eval:n {#1} } { \fp_eval:n {#2} } }
\cs_new:Npn \__draw_point_vec:nn #1#2
{
\draw_point:n
@@ -1181,39 +1186,39 @@
#1 * \l__draw_xvec_y_dim + #2 * \l__draw_yvec_y_dim
}
}
-\cs_generate_variant:Nn \__draw_point_vec:nn { ff }
+\cs_generate_variant:Nn \__draw_point_vec:nn { ee }
\cs_new:Npn \draw_point_vec:nnn #1#2#3
{
- \__draw_point_vec:fff
+ \__draw_point_vec:eee
{ \fp_eval:n {#1} } { \fp_eval:n {#2} } { \fp_eval:n {#3} }
}
\cs_new:Npn \__draw_point_vec:nnn #1#2#3
{
\draw_point:n
{
- #1 * \l__draw_xvec_x_dim
- + #2 * \l__draw_yvec_x_dim
- + #3 * \l__draw_zvec_x_dim
+ #1 * \l__draw_xvec_x_dim
+ + #2 * \l__draw_yvec_x_dim
+ + #3 * \l__draw_zvec_x_dim
,
#1 * \l__draw_xvec_y_dim
+ #2 * \l__draw_yvec_y_dim
+ #3 * \l__draw_zvec_y_dim
}
}
-\cs_generate_variant:Nn \__draw_point_vec:nnn { fff }
+\cs_generate_variant:Nn \__draw_point_vec:nnn { eee }
\cs_new:Npn \draw_point_vec_polar:nn #1#2
{ \draw_point_vec_polar:nnn {#1} {#1} {#2} }
\cs_new:Npn \draw_point_vec_polar:nnn #1#2#3
- { \__draw_draw_vec_polar:fnn { \fp_eval:n {#3} } {#1} {#2} }
+ { \__draw_draw_vec_polar:enn { \fp_eval:n {#3} } {#1} {#2} }
\cs_new:Npn \__draw_draw_vec_polar:nnn #1#2#3
{
\draw_point:n
{
cosd(#1) * (#2) * \l__draw_xvec_x_dim ,
sind(#1) * (#3) * \l__draw_yvec_y_dim
- }
+ }
}
-\cs_generate_variant:Nn \__draw_draw_vec_polar:nnn { f }
+\cs_generate_variant:Nn \__draw_draw_vec_polar:nnn { e }
\cs_new:Npn \draw_point_transform:n #1
{
\__draw_point_process:nn
@@ -1358,7 +1363,7 @@
{ 0pt }
}
\box_set_ht:Nn \l__draw_main_box
- { \g__draw_ymax_dim + #1 }
+ { \g__draw_ymax_dim - #1 }
}
\bool_new:N \l__draw_baseline_bool
\dim_new:N \l__draw_baseline_dim
@@ -1440,12 +1445,10 @@
\cs_generate_variant:Nn \__draw_softpath_add:n { o, e }
\cs_new_protected:Npn \__draw_softpath_use:
{
- \tl_build_gend:N \g__draw_softpath_main_tl
- \tl_set_eq:NN \l__draw_softpath_tmp_tl \g__draw_softpath_main_tl
+ \tl_build_get_intermediate:NN
+ \g__draw_softpath_main_tl
+ \l__draw_softpath_tmp_tl
\l__draw_softpath_tmp_tl
- \tl_build_gbegin:N \g__draw_softpath_main_tl
- \exp_args:NNV \tl_build_gput_right:Nn
- \g__draw_softpath_main_tl \l__draw_softpath_tmp_tl
}
\cs_new_protected:Npn \__draw_softpath_clear:
{
@@ -1685,7 +1688,7 @@
\tl_put_right:Ne \l__draw_softpath_part_tl
{
\exp_not:N #4
- \__draw_softpath_round_calc:fVnnnn
+ \__draw_softpath_round_calc:eVnnnn
{
\draw_point_interpolate_distance:nnn
\l__draw_softpath_corneri_dim
@@ -1707,7 +1710,7 @@
\__draw_softpath_round_calc:nnnnw {#3} {#4} {#5} {#6}
#1 \s__draw_mark #2 \s__draw_stop
}
-\cs_generate_variant:Nn \__draw_softpath_round_calc:nnnnnn { fV }
+\cs_generate_variant:Nn \__draw_softpath_round_calc:nnnnnn { eV }
\cs_new:Npn \__draw_softpath_round_calc:nnnnw
#1#2#3#4 #5 , #6 \s__draw_mark #7 , #8 \s__draw_stop
{
@@ -1853,10 +1856,7 @@
{ \__draw_transform_shift_absolute:nn } {#1}
}
\cs_new_protected:Npn \__draw_transform_shift_absolute:nn #1#2
- {
- \dim_set:Nn \l__draw_xshift_dim {#1}
- \dim_set:Nn \l__draw_yshift_dim {#2}
- }
+ { \__draw_transform_shift:nnnn { 0pt } { 0pt } {#1} {#2} }
\cs_new_protected:Npn \draw_transform_matrix:nnnn #1#2#3#4
{
\use:e
@@ -1886,14 +1886,35 @@
}
\cs_new_protected:Npn \__draw_transform_shift:nn #1#2
{
- \dim_set:Nn \l__draw_xshift_dim { \l__draw_xshift_dim + #1 }
- \dim_set:Nn \l__draw_yshift_dim { \l__draw_yshift_dim + #2 }
+ \__draw_transform_shift:nnnn
+ \l__draw_xshift_dim
+ \l__draw_yshift_dim
+ {#1} {#2}
+ }
+\cs_new_protected:Npn \__draw_transform_shift:nnnn #1#2#3#4
+ {
+ \dim_set:Nn \l__draw_xshift_dim
+ {
+ \fp_to_dim:n
+ {
+ #1 +
+ ( #3 * \l__draw_matrix_a_fp + #4 * \l__draw_matrix_b_fp )
+ }
+ }
+ \dim_set:Nn \l__draw_yshift_dim
+ {
+ \fp_to_dim:n
+ {
+ #2 +
+ ( #3 * \l__draw_matrix_c_fp + #4 * \l__draw_matrix_d_fp )
+ }
+ }
}
\cs_new_protected:Npn \draw_transform_matrix_invert:
{
\bool_if:NT \l__draw_matrix_active_bool
{
- \__draw_transform_invert:f
+ \__draw_transform_invert:e
{
\fp_eval:n
{
@@ -1917,7 +1938,7 @@
\fp_set:Nn \l__draw_matrix_d_fp
{ \l__draw_matrix_a_fp * #1 }
}
-\cs_generate_variant:Nn \__draw_transform_invert:n { f }
+\cs_generate_variant:Nn \__draw_transform_invert:n { e }
\cs_new_protected:Npn \draw_transform_shift_invert:
{
\dim_set:Nn \l__draw_xshift_dim { -\l__draw_xshift_dim }
@@ -1960,17 +1981,17 @@
\cs_new_protected:Npn \draw_transform_yslant:n #1
{ \draw_transform_matrix:nnnn { 1 } { #1 } { 0 } { 1 } }
\cs_new_protected:Npn \draw_transform_rotate:n #1
- { \__draw_transform_rotate:f { \fp_eval:n {#1} } }
+ { \__draw_transform_rotate:e { \fp_eval:n {#1} } }
\cs_new_protected:Npn \__draw_transform_rotate:n #1
{
- \__draw_transform_rotate:ff
+ \__draw_transform_rotate:ee
{ \fp_eval:n { cosd(#1) } }
{ \fp_eval:n { sind(#1) } }
}
-\cs_generate_variant:Nn \__draw_transform_rotate:n { f }
+\cs_generate_variant:Nn \__draw_transform_rotate:n { e }
\cs_new_protected:Npn \__draw_transform_rotate:nn #1#2
{ \draw_transform_matrix:nnnn {#1} {#2} { -#2 } { #1 } }
-\cs_generate_variant:Nn \__draw_transform_rotate:nn { ff }
+\cs_generate_variant:Nn \__draw_transform_rotate:nn { ee }
%%
%%
%% End of file `l3draw.sty'.