File:Catalan trisection.svg
From testwiki
Jump to navigation
Jump to search
Original file (SVG file, nominally 700 × 750 pixels, file size: 1 KB)
Contents
This file is from Wikimedia Commons and may be used by other projects. The description on its file description page there is shown below.
Summary
| DescriptionCatalan trisection.svg |
English: Eugéne Catalan's trisection of the angle, as redrawn from Catalan 1885. The blue curve is a parabola, and the red curve is its negative pedal curve, the Tschirnhausen cubic. To trisect a given angle, place the angle at the focus F of the parabola, with one side along line FA to the apex of the parabola, and extend the other side to cross the Tschirnhausen cubic at point D; thus, the angle to be trisected is angle AFD. Extend a tangent line to the Tschirnhausen cubic at D, crossing the parabola at point B. By the negative pedal property, DBF is a right angle. Then Catalan proves, using the remaining labeled points as auxiliary points in the proof, that angle BFD is one third of angle AFD. |
| Date | |
| Source | Own work based on: Catalan, Eugène (1885). "Extrait d'une lettre de M. Catalan à propos d'une trisectrice". Journal de mathématiques spéciales à l'usage des candidats aux écoles polytechnique, normale et centrale 4: 229–233. DOI:2268/196510. |
| Author | David Eppstein |
| SVG development InfoField |
Source code
from PADS import SVG
import sys
scale = 1000
rot = -0.5 + 0.75**0.5*1j
p1 = 12j*scale
p2 = 5*scale
p3 = (5+13j)*scale
p4 = 1j*scale
q1 = (p1+p2)/2
q2 = (p2+p3)/2
q3 = (p3+p4)/2
o = (-3.1-6.125j)*scale
bbox = (0.7+0.75j)*scale
svg = SVG.SVG(bbox,sys.stdout)
def pp(point):
return "%s %s" % ((point+o).real,(point+o).imag)
svg.group(style={"fill":"none", "stroke-width":"2"})
svg.element('path d="'+" ".join(["M",pp(q1),"Q",pp(q2),pp(q3)])+'"',
stroke=SVG.colors.blue)
svg.element('path d="'+" ".join(["M",pp(p1),"C",pp(p2),pp(p3),pp(p4)])+'"',
stroke=SVG.colors.red)
svg.ungroup()
def blossom(points,param):
while len(points) > 1:
points = [param*points[i]+(1-param)*points[i+1]
for i in range(len(points)-1)]
return points[0]
apex = blossom([q1,q2,q3],0.5)
p = blossom([q1,q2,q3],0.635)
q = blossom([p1,p2,p3,p4],0.635)
def xintercept(a,b):
"""Point on line ab intersecting x-axis"""
lo = -2
hi = 2
for i in range(50):
mid = (lo+hi)/2
midpoint = blossom([a,b],mid)
if midpoint.imag > apex.imag:
hi = mid
else:
lo = mid
return midpoint
focus = xintercept(p,p + 1j*(q-p))
r = focus+q-p
ctr = (focus+q)/2
extra = xintercept(r,p)
svg.group(fill=SVG.colors.none,stroke=SVG.colors.black)
for (a,b) in [(focus,p),(focus,q),(focus,r),(p,q),(p,r),(q,r),((p1+p4)/2,(p2+p3)/2)]:
svg.segment(a+o,b+o)
svg.ungroup()
svg.group(fill=SVG.colors.yellow,stroke=SVG.colors.black)
for point in [focus,apex,p,q,r,ctr,extra]:
svg.circle(point+o,4)
svg.ungroup()
svg.group(style={"font-family":"Times,serif", "font-style":"italic", "font-size":"30"})
svg.text("A",apex+o+5+24j)
svg.text("B",p+o+5-5j)
svg.text("C",r+o-27+24j)
svg.text("D",q+o-24-5j)
svg.text("E",extra+o+5+24j)
svg.text("F",focus+o+5+24j)
svg.text("G",ctr+o-12-12j)
svg.ungroup()
svg.close()
Licensing
David Eppstein, the copyright holder of this work, hereby publishes it under the following license:
| This file is made available under the Creative Commons CC0 1.0 Universal Public Domain Dedication. | |
| The person who associated a work with this deed has dedicated the work to the public domain by waiving all of their rights to the work worldwide under copyright law, including all related and neighboring rights, to the extent allowed by law. You can copy, modify, distribute and perform the work, even for commercial purposes, all without asking permission.
http://creativecommons.org/publicdomain/zero/1.0/deed.enCC0Creative Commons Zero, Public Domain Dedicationfalsefalse |
Captions
Catalan's trisection of the angle
Items portrayed in this file
depicts
5 October 2025
1,034 byte
image/svg+xml
6845c0ef229f750425a34fc10d87c0714db546a9
File history
Click on a date/time to view the file as it appeared at that time.
| Date/Time | Thumbnail | Dimensions | User | Comment | |
|---|---|---|---|---|---|
| current | 22:20, 5 October 2025 | 700 × 750 (1 KB) | wikimediacommons>David Eppstein | Uploaded own work with UploadWizard |
File usage
There are no pages that use this file.