diff options
Diffstat (limited to 'Master/texmf-dist/tex/latex/tkz-elements')
24 files changed, 118 insertions, 73 deletions
diff --git a/Master/texmf-dist/tex/latex/tkz-elements/tkz-elements.sty b/Master/texmf-dist/tex/latex/tkz-elements/tkz-elements.sty index 0a11787d21e..597a0508506 100644 --- a/Master/texmf-dist/tex/latex/tkz-elements/tkz-elements.sty +++ b/Master/texmf-dist/tex/latex/tkz-elements/tkz-elements.sty @@ -1,5 +1,5 @@ % encoding : utf8 -% tkz-elements.sty v2.25c +% tkz-elements.sty v2.30c % 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 @@ -11,7 +11,7 @@ % This work has the LPPL maintenance status “maintained”. % The Current Maintainer of this work is Alain Matthes. -\ProvidesPackage{tkz-elements}[2024/04/27 v2.25c Graphic Object Library] +\ProvidesPackage{tkz-elements}[2024/07/16 version 2.30c Graphic Object Library] \RequirePackage{luacode} \directlua{require "tkz_elements_main"} @@ -34,20 +34,19 @@ V={}} \luacode} {\endluacode} - + % new version of the next macro proposed by Sanskar Singh \def\tkzGetNodes{\directlua{% - for K,V in pairs(z) do - local n,sd,ft - n = string.len(K) - if n >1 then - _,_,ft, sd = string.find( K , "(.+)(.)" ) - if sd == "p" then K=ft.."'" end - _,_,xft, xsd = string.find( ft , "(.+)(.)" ) - if xsd == "p" then K=xft.."'".."'" end - end - tex.print("\\coordinate ("..K..") at ("..V.re..","..V.im..") ;\\\\") -end} -} + for K,V in pairs(z) do + local n,sd,ft + n = string.len(K) + if n >1 then + _,_,ft, sd = string.find( K , "(.+)(.)" ) + if sd == "p" then K=ft.."'" end + _,_,xft, xsd = string.find( ft , "(.+)(.)" ) + if xsd == "p" then K=xft.."'".."'" end + end + tex.sprint("\string\\coordinate ("..K..") at ("..V.re..","..V.im..") ; \string\r") +end}} \def\tkzUseLua#1{\directlua{tex.print(tostring(#1))}} \makeatletter diff --git a/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_circle.lua b/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_circle.lua index 1999b8a0732..e17ccb2ebb4 100644 --- a/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_circle.lua +++ b/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_circle.lua @@ -1,6 +1,6 @@ -- tkz_elements-circles.lua --- date 2024/04/27 --- version 2.25c +-- date 2024/07/16 +-- version 2.30c -- 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 diff --git a/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_class.lua b/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_class.lua index b6a1bf7a5a2..3ded691d539 100644 --- a/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_class.lua +++ b/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_class.lua @@ -1,6 +1,6 @@ -- tkz_elements_class.lua --- date 2024/04/27 --- version 2.25c +-- date 2024/07/16 +-- version 2.30c -- from class.lua (Simple Lua Classes from Lua-users wiki) -- Compatible with Lua 5.1 (not 5.0). -- http://lua-users.org/wiki/SimpleLuaClasses DavidManura diff --git a/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_ellipse.lua b/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_ellipse.lua index a98cf40a63c..7581c19d7a9 100644 --- a/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_ellipse.lua +++ b/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_ellipse.lua @@ -1,6 +1,6 @@ -- tkz_elements-ellipses.lua --- date 2024/04/27 --- version 2.25c +-- date 2024/07/16 +-- version 2.30c -- 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 diff --git a/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_functions_circles.lua b/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_functions_circles.lua index 40f2a4ebbf7..88f9040b7f0 100644 --- a/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_functions_circles.lua +++ b/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_functions_circles.lua @@ -1,6 +1,6 @@ -- tkz_elements_functions_circles.lua --- date 2024/04/27 --- version 2.25c +-- date 2024/07/16 +-- version 2.30c -- 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 diff --git a/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_functions_intersections.lua b/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_functions_intersections.lua index 69dcd6ace32..fe253e9aa23 100644 --- a/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_functions_intersections.lua +++ b/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_functions_intersections.lua @@ -1,6 +1,6 @@ -- tkz_elements_intersections.lua --- date 2024/04/27 --- version 2.25c +-- date 2024/07/16 +-- version 2.30c -- 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 diff --git a/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_functions_lines.lua b/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_functions_lines.lua index 401ad46dda1..a5504593c06 100644 --- a/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_functions_lines.lua +++ b/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_functions_lines.lua @@ -1,6 +1,6 @@ -- tkz_elements_functions_lines.lua --- date 2024/04/27 --- version 2.25c +-- date 2024/07/16 +-- version 2.30c -- 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 diff --git a/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_functions_maths.lua b/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_functions_maths.lua index a71c0f7c278..c3f7e54ffd3 100644 --- a/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_functions_maths.lua +++ b/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_functions_maths.lua @@ -1,6 +1,6 @@ -- tkz_elements_functions_maths.lua --- date 2024/04/27 --- version 2.25c +-- date 2024/07/16 +-- version 2.30c -- 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 diff --git a/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_functions_matrices.lua b/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_functions_matrices.lua index 43712140477..c80420090f4 100644 --- a/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_functions_matrices.lua +++ b/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_functions_matrices.lua @@ -1,6 +1,6 @@ -- tkz_elements_functions_matrices.lua --- date 2024/04/27 --- version 2.25c +-- date 2024/07/16 +-- version 2.30c -- 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 diff --git a/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_functions_points.lua b/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_functions_points.lua index f1c4dc5d412..e2366e25e3d 100644 --- a/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_functions_points.lua +++ b/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_functions_points.lua @@ -1,6 +1,6 @@ -- tkz_elements_functions_points.lua --- date 2024/04/27 --- version 2.25c +-- date 2024/07/16 +-- version 2.30c -- 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 diff --git a/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_functions_regular.lua b/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_functions_regular.lua index 5e92b4d5987..0f74d28fe98 100644 --- a/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_functions_regular.lua +++ b/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_functions_regular.lua @@ -1,6 +1,6 @@ -- tkz_elements_functions_regular.lua --- date 2024/04/27 --- version 2.25c +-- date 2024/07/16 +-- version 2.30c -- 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 diff --git a/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_functions_triangles.lua b/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_functions_triangles.lua index d4523d1826b..02d3058a161 100644 --- a/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_functions_triangles.lua +++ b/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_functions_triangles.lua @@ -1,6 +1,6 @@ -- tkz_elements_functions_triangles.lua --- date 2024/04/27 --- version 2.25c +-- date 2024/07/16 +-- version 2.30c -- 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 @@ -259,6 +259,15 @@ function feuerbach_tr_ (a,b,c) intersection_cc_ (e,m,jb,hb), intersection_cc_ (e,m,jc,hc) end + +function similar_ (a,b,c) + local x,y,z,g + g = centroid_ (a,b,c) + x = homothety_ (g,-2,a) + y = homothety_ (g,-2,b) + z = homothety_ (g,-2,c) + return x,y,z +end -------------------- -- ellipse -- -------------------- diff --git a/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_line.lua b/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_line.lua index 9304768f311..797365f33f4 100644 --- a/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_line.lua +++ b/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_line.lua @@ -1,6 +1,6 @@ -- tkz_elements_lines.lua --- date 2024/04/27 --- version 2.25c +-- date 2024/07/16 +-- version 2.30c -- 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 @@ -324,11 +324,25 @@ function line: mediator () m = midpoint_ (self.pa,self.pb) return line : new (rotation_ (m,-math.pi/2,self.pb),rotation_ (m,math.pi/2,self.pb)) end + +function line : perpendicular_bisector () + local m + m = midpoint_ (self.pa,self.pb) + return line : new (rotation_ (m,-math.pi/2,self.pb),rotation_ (m,math.pi/2,self.pb)) +end + ------------------- -- Result -> circle ------------------- -function line: circle () +function line: circle (swap) + if swap == nil then + swap = false + end + if swap then + return circle : new (self.pb,self.pa) + else return circle : new (self.pa,self.pb) + end end function line: circle_swap () diff --git a/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_main.lua b/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_main.lua index 10ee2195196..142f00c8ed0 100644 --- a/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_main.lua +++ b/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_main.lua @@ -1,6 +1,6 @@ -- tkz_elements-main.lua --- date 2024/04/27 --- version 2.25c +-- date 2024/07/16 +-- version 2.30c -- 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 diff --git a/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_matrices.lua b/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_matrices.lua index 981ac680946..035e8a0a33e 100644 --- a/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_matrices.lua +++ b/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_matrices.lua @@ -1,6 +1,6 @@ -- tkz_elements_matrices.lua --- date 2024/04/27 --- version 2.25c +-- date 2024/07/16 +-- version 2.30c -- 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 diff --git a/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_misc.lua b/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_misc.lua index 94c9c555c08..daa3e21872b 100644 --- a/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_misc.lua +++ b/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_misc.lua @@ -1,6 +1,6 @@ -- tkz_elements_functions_maths.lua --- date 2024/04/27 --- version 2.25c +-- date 2024/07/16 +-- version 2.30c -- 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 diff --git a/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_parallelogram.lua b/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_parallelogram.lua index fd0a3533a3d..d471976d066 100644 --- a/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_parallelogram.lua +++ b/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_parallelogram.lua @@ -1,6 +1,6 @@ -- tkz_elements_parallelogram.lua --- date 2024/04/27 --- version 2.25c +-- date 2024/07/16 +-- version 2.30c -- 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 diff --git a/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_point.lua b/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_point.lua index 4eb4b549d15..e29779ef791 100644 --- a/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_point.lua +++ b/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_point.lua @@ -1,6 +1,6 @@ -- tkz_elements_point.lua --- date 2024/04/27 --- version 2.25c +-- date 2024/07/16 +-- version 2.30c -- 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 diff --git a/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_quadrilateral.lua b/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_quadrilateral.lua index e77e0af5615..6625b9d7898 100644 --- a/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_quadrilateral.lua +++ b/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_quadrilateral.lua @@ -1,6 +1,6 @@ -- tkz_elements_quadrilateral.lua --- date 2024/04/27 --- version 2.25c +-- date 2024/07/16 +-- version 2.30c -- 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 diff --git a/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_rectangle.lua b/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_rectangle.lua index 2c07f78399d..fdc30845018 100644 --- a/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_rectangle.lua +++ b/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_rectangle.lua @@ -1,6 +1,6 @@ -- tkz_elements-rectangle.lua --- date 2024/04/27 --- version 2.25c +-- date 2024/07/16 +-- version 2.30c -- 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 diff --git a/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_regular.lua b/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_regular.lua index 0641a858ded..a4527c779b9 100644 --- a/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_regular.lua +++ b/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_regular.lua @@ -1,6 +1,6 @@ -- tkz_elements_regular.lua --- date 2024/04/27 --- version 2.25c +-- date 2024/07/16 +-- version 2.30c -- 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 diff --git a/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_square.lua b/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_square.lua index 1852c0ded40..93860b825c9 100644 --- a/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_square.lua +++ b/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_square.lua @@ -1,6 +1,6 @@ -- tkz_elements-square.lua --- date 2024/04/27 --- version 2.25c +-- date 2024/07/16 +-- version 2.30c -- 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 diff --git a/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_triangle.lua b/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_triangle.lua index c6dd2c37573..84b10273dad 100644 --- a/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_triangle.lua +++ b/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_triangle.lua @@ -1,6 +1,6 @@ -- tkz_elements_triangles.lua --- date 2024/04/27 --- version 2.25c +-- date 2024/07/16 +-- version 2.30c -- 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 @@ -57,19 +57,19 @@ end -- points -- ----------------------- function triangle: trilinear (a,b,c) - return barycenter_ ( {self.pa,a*self.a },{self.pb,b*self.b},{self.pc,c*self.c} ) + return barycenter_ ({self.pa,a*self.a},{self.pb,b*self.b},{self.pc,c*self.c}) end function triangle: barycentric (a,b,c) - return barycenter_ ( {self.pa,a },{self.pb,b},{self.pc,c} ) + return barycenter_ ({self.pa,a},{self.pb,b},{self.pc,c}) end function triangle: bevan_point () - return circum_center_ ( self : excentral_tr()) + return circum_center_ ( excentral_tr_ ( self.pa , self.pb , self.pc)) end function triangle: mittenpunkt_point () - return lemoine_point_ ( self : excentral_tr()) + return lemoine_point_ ( excentral_tr_ ( self.pa , self.pb , self.pc)) end function triangle: gergonne_point () @@ -322,13 +322,20 @@ function triangle : cevian_circle (p) pta,ptb,ptc = cevian_ (self.pa,self.pb,self.pc,p) return circle : new (circum_circle_ (pta,ptb,ptc),pta) end + +function triangle : symmedial_circle () + local pta,ptb,ptc,p + p = lemoine_point_ ( self.pa , self.pb , self.pc) + pta,ptb,ptc = cevian_ (self.pa,self.pb,self.pc,p) + return circle : new (circum_circle_ (pta,ptb,ptc),pta) +end - function triangle : conway_circle () - local i,t - i = in_center_ (self.pa,self.pb,self.pc) - t = report_ (self.pb,self.pa,length(self.pb,self.pc),self.pa) - return circle : new (i,t) - end +function triangle : conway_circle () + local i,t + i = in_center_ (self.pa,self.pb,self.pc) + t = report_ (self.pb,self.pa,length(self.pb,self.pc),self.pa) + return circle : new (i,t) +end function triangle : pedal_circle (pt) local x,y,z,c @@ -338,7 +345,13 @@ function triangle : pedal_circle (pt) c = circum_center_ (x,y,z) return circle : new (c,x) end - + +function triangle: bevan_circle () + local o,r,s,t + o = circum_center_ ( excentral_tr_ ( self.pa , self.pb , self.pc)) + r,s,t = excentral_tr_ ( self.pa , self.pb , self.pc) +return circle : new (o, r) +end ------------------- -- Result -> triangle ------------------- @@ -392,6 +405,12 @@ function triangle: symmedian () return triangle : new (cevian_ (self.pa,self.pb,self.pc,p)) end +function triangle: symmedial () + local p + p = lemoine_point_ ( self.pa , self.pb , self.pc) + return triangle : new (cevian_ (self.pa,self.pb,self.pc,p)) +end + function triangle: euler () return triangle : new (euler_points_ (self.pa,self.pb,self.pc) ) end @@ -403,6 +422,10 @@ function triangle: pedal (pt) z = projection_ (self.pa,self.pb,pt) return triangle : new (x,y,z) end + +function triangle: similar () + return triangle : new (similar_ (self.pa,self.pb,self.pc) ) +end ------------------- -- Result -> ellipse ------------------- diff --git a/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_vector.lua b/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_vector.lua index 8b26fe4bd32..0dcbbfde61d 100644 --- a/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_vector.lua +++ b/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_vector.lua @@ -1,6 +1,6 @@ -- tkz_elements_vectors.lua --- date 2024/04/27 --- version 2.25c +-- date 2024/07/16 +-- version 2.30c -- 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 |