diff options
author | Norbert Preining <norbert@preining.info> | 2024-03-27 03:02:20 +0000 |
---|---|---|
committer | Norbert Preining <norbert@preining.info> | 2024-03-27 03:02:20 +0000 |
commit | 31fa8cd73bab8480d38dae3a89ca578f337d6bbd (patch) | |
tree | ba550e99e0cb15dbf5405369d536b12b051c5155 /macros/latex/contrib/tkz/tkz-elements/latex/tkz_elements_ellipse.lua | |
parent | 904f56f2c26edc7eb11d5a27579bccbeca29c618 (diff) |
CTAN sync 202403270302
Diffstat (limited to 'macros/latex/contrib/tkz/tkz-elements/latex/tkz_elements_ellipse.lua')
-rw-r--r-- | macros/latex/contrib/tkz/tkz-elements/latex/tkz_elements_ellipse.lua | 28 |
1 files changed, 15 insertions, 13 deletions
diff --git a/macros/latex/contrib/tkz/tkz-elements/latex/tkz_elements_ellipse.lua b/macros/latex/contrib/tkz/tkz-elements/latex/tkz_elements_ellipse.lua index 98800f791e..f20b87a44f 100644 --- a/macros/latex/contrib/tkz/tkz-elements/latex/tkz_elements_ellipse.lua +++ b/macros/latex/contrib/tkz/tkz-elements/latex/tkz_elements_ellipse.lua @@ -1,6 +1,6 @@ -- tkz_elements-ellipses.lua --- date 2024/02/04 --- version 2.00c +-- date 2024/03/25 +-- version 2.20c -- Copyright 2024 Alain Matthes -- This work may be distributed and/or modified under the -- conditions of the LaTeX Project Public License, either version 1.3 @@ -90,18 +90,14 @@ function ellipse: tangent_at (pt) end function ellipse: tangent_from (pt) - local da,db,zx,zy,zz,u,v,L,U,V - zx = 2 * self.Rx * math.cos(self.slope) - zy = 2 * self.Rx * math.sin(self.slope) - zz = self.Fb + point(zx,zy) - s1,s2 = intersection_cc_ (pt,self.Fa,self.Fb,zz) - u,v = mediator_ (s2,self.Fa) - L = line: new (u,v) - U,U = intersection_le (L,self) + local u,v,U,V,w,s1,s2,s3,s4 + w = report_ (self.Fb,self.Fa,2 * self.Rx) + s1,s2 = intersection_cc_ (pt,self.Fa,self.Fb,w) u,v = mediator_ (s1,self.Fa) - L = line: new (pt,u) - V,V = intersection_le (L,self) - return line : new (pt,U), line : new (pt,V) + U = intersection_ll_ (u,v,self.Fb,s1) + u,v = mediator_ (s2,self.Fa) + V = intersection_ll_ (u,v,self.Fb,s2) + return line : new (pt,U) , line : new (pt,V) end function ellipse: in_out (pt) @@ -117,4 +113,10 @@ function ellipse: in_out (pt) return false end end + +function ellipse: orthoptic_circle () + local r = math.sqrt(self.Rx*self.Rx+self.Ry*self.Ry) + return circle : radius (self.center, r) +end + return ellipse
\ No newline at end of file |