summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/doc/generic/pst-eucl
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2020-09-29 21:24:17 +0000
committerKarl Berry <karl@freefriends.org>2020-09-29 21:24:17 +0000
commite59068a18380129ad2a2f8db9ba31757ad3741ec (patch)
tree0ad31298fe342f6d22ee9a584096e6573e7dcd48 /Master/texmf-dist/doc/generic/pst-eucl
parentcb751fb6d992d7342f7f82ea76f29caff73e69e5 (diff)
pst-eucl (29sep20)
git-svn-id: svn://tug.org/texlive/trunk@56474 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/doc/generic/pst-eucl')
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/Changes15
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/pst-eucl-doc.bib19
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/pst-eucl-doc.pdfbin1568670 -> 1779040 bytes
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/pst-eucl-doc.tex322
4 files changed, 280 insertions, 76 deletions
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/Changes b/Master/texmf-dist/doc/generic/pst-eucl/Changes
index a80eb43537d..a532ffec146 100644
--- a/Master/texmf-dist/doc/generic/pst-eucl/Changes
+++ b/Master/texmf-dist/doc/generic/pst-eucl/Changes
@@ -1,4 +1,5 @@
pst-eucl.pro --------
+1.04 2020/09/29 - some new functions for 1.75
1.03 2020/01/09 - some new functions for 1.69
1.02 2019/11/21 - add DeterminantTwo,DeterminantThree,DeterminantFour,DeterminantFive.
1.01 2012/09/21 - fix for introduced bug
@@ -6,6 +7,20 @@ pst-eucl.pro --------
pst-eucl.tex --------
+1.75 2020/09/29 - add macro to calc the coefficents of general conic $ax^2+bxy+cy^2+dx+ey+f=0$ through given five points, \pstGeneralConicEquation.
+ - add macro to calc the coefficents of general conic $ax^2+bxy+cy^2+dx+ey+f=0$ of the given ellipse, \pstGeneralEllipseEquation.
+ - add macro to calc the coefficents of general conic $ax^2+bxy+cy^2+dx+ey+f=0$ of the given hyperbola, \pstGeneralHyperbolaEquation.
+ - add macro to calc the coefficents of general conic $ax^2+bxy+cy^2+dx+ey+f=0$ of the given parabola, \pstGeneralParabolaEquation.
+ - add macro to draw the intersections of line AB and general conic $ax^2+bxy+cy^2+dx+ey+f=0$, \pstGeneralConicLineInter.
+ - add macro to draw the intersections of circle OA and general conic $ax^2+bxy+cy^2+dx+ey+f=0$, \pstGeneralConicCircleInter.
+ - add macro to draw the intersections of ellipse and general conic $ax^2+bxy+cy^2+dx+ey+f=0$, \pstGeneralConicEllipseInter.
+ - add macro to draw the intersections of hyperbola and general conic $ax^2+bxy+cy^2+dx+ey+f=0$, \pstGeneralConicHyperbolaInter.
+ - add macro to draw the intersections of parabola and general conic $ax^2+bxy+cy^2+dx+ey+f=0$, \pstGeneralConicParabolaInter.
+ - add macro to draw the intersections of two general conics $ax^2+bxy+cy^2+dx+ey+f=0$, \pstGeneralConicInter.
+ - fix an issue in \pstGeneralHyperbolaCoef that it gets the wrong symmetrical axis when draw quadratic curve 2xy-x+2y+1=0.
+ - update \pstGeneralHyperbolaABCDE to support the quadratic curve equation with a=0, e.g, given five points from curve xy=1.
+ - update the (pos) parameter U|D|L|R to :U|:D|:L|:R in \pstTriangleSSS, \pstTriangleSAS etc,
+ and support (node) to specify a base line to draw the triangle.
1.74 2020/07/15 - add macro to draw the equilateral triangle on a given side AB, \pstETriangleAB.
- add macro to draw the square on a given side AB, \pstSquareAB.
- add macro to draw the regular polygon on a given side AB, \pstRegularPolygonAB.
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/pst-eucl-doc.bib b/Master/texmf-dist/doc/generic/pst-eucl/pst-eucl-doc.bib
index f1d5a1b2ed4..7e9f03b0003 100644
--- a/Master/texmf-dist/doc/generic/pst-eucl/pst-eucl-doc.bib
+++ b/Master/texmf-dist/doc/generic/pst-eucl/pst-eucl-doc.bib
@@ -41,17 +41,17 @@
@ctan{multido,
title = {The Multido package},
-subtitle = {A loop facility for Generic \TeX},
+subtitle = {A loop facility for Generic TeX},
author = {Van Zandt, Timothy and Voß, Herbert and Niepraschk, Rolf},
url = {macros/latex/multido},
urldate = {2018-09-01},
-version = {1.42},
+version = {1.42}
}
@Book{PSTricks2,
author = {Herbert Voß},
- title = {\texttt{PSTricks} -- {G}rafik für \TeX{} und \LaTeX},
+ title = {\texttt{PSTricks} -- {G}rafik f\"ur \TeX{} und \LaTeX},
edition = {7},
publisher = {DANTE {\eV} and Lehmanns Media},
date = {2016},
@@ -88,7 +88,7 @@ version = {1.42},
@Book{tbt,
author = {Victor Eijkhout},
- title = {\TeX\ by Topic -- A \TeX{}nician Reference},
+ title = {\TeX\ by Topic -- {A} \TeX{}nician Reference},
edition = {1},
publisher = {DANTE {\eV} and Lehmanns Media},
year = {2014},
@@ -99,7 +99,7 @@ version = {1.42},
@Article{dtk02.1:voss:mathematischen,
author = {Herbert Voß},
- title = {Die mathematischen Funktionen von Postscript},
+ title = {Die mathematischen {F}unktionen von {P}ostscript},
journal = dtk,
year = 2002,
volume = {1/02},
@@ -108,5 +108,14 @@ version = {1.42},
month = mar,
pages = {40-47},
annote = bretter,
+ abstract = { \PS, faktisch genauso alt wie {\TeX}, ist im
+ Verh{\"a}ltnis dazu allgemein noch weniger bekannt, wenn es
+ darum geht zu beurteilen, was es denn nun im eigentlichen
+ Sinne ist. Au{\ss}erdem wird h{\"a}ufig vergessen, dass
+ sich mit den \PS-Funktionen viele Dinge erledigen lassen,
+ bei denen sonst auf externe Programme zur{\"u}ckgegriffen
+ wird. Dies wird im Folgenden f{\"u}r die mathematischen
+ Funktionen im Zusammenhang mit dem Paket \texttt{pst-plot}
+ gezeigt. }
}
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/pst-eucl-doc.pdf b/Master/texmf-dist/doc/generic/pst-eucl/pst-eucl-doc.pdf
index cbb859381ea..5f06ffd3708 100644
--- a/Master/texmf-dist/doc/generic/pst-eucl/pst-eucl-doc.pdf
+++ b/Master/texmf-dist/doc/generic/pst-eucl/pst-eucl-doc.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/pst-eucl-doc.tex b/Master/texmf-dist/doc/generic/pst-eucl/pst-eucl-doc.tex
index 054dae2eb27..86dbdc3cf7f 100644
--- a/Master/texmf-dist/doc/generic/pst-eucl/pst-eucl-doc.tex
+++ b/Master/texmf-dist/doc/generic/pst-eucl/pst-eucl-doc.tex
@@ -1,6 +1,5 @@
-\PassOptionsToPackage{style=dtk}{biblatex}
-\documentclass[11pt,english,BCOR10mm,DIV=12,bibliography=totoc,parskip=false,smallheadings,
- headexclude,footexclude,oneside,english]{pst-doc}
+\documentclass[11pt,english,BCOR=10mm,DIV=12,bibliography=totoc,parskip=false,headings=small,
+ headinclude=false,footinclude=false,twoside,english]{pst-doc}
\usepackage{pst-eucl}
\let\pstEuclideFV\fileversion
\usepackage{multicol}
@@ -10,20 +9,20 @@
\usepackage[mathscr]{eucal}
\def\eV{e.\kern-1pt{}V\kern-1pt}
-\lstset{pos=l,wide=false,basicstyle=\footnotesize\ttfamily,explpreset={language=[PSTricks]{TeX}}}
+\lstset{pos=l,wide=false,basicstyle=\footnotesize\ttfamily,frame={},rframe={},explpreset={language=[PSTricks]{TeX}}}
%
\def\Argsans#1{$\langle$#1$\rangle$}
\def\DefaultVal#1{(by default #1)}
+\usepackage{biblatex}
\addbibresource{\jobname.bib}
-\lstset{rframe={}}
-
+\RedeclareSectionCommand[tocnumwidth=3em]{subsection}
\title{\texttt{pst-euclide}}
\subtitle{A PSTricks package for drawing geometric pictures; v.\pstEuclideFV}
-\author{Dominique Rodriguez\\Herbert Voß}
-\docauthor{Herbert Voß}
+\author{Dominique Rodriguez\and Herbert Voß\and Liao Xiongfei}
+\docauthor{Herbert Voß/Liao Xiongfei}
\date{\today}
\begin{document}
\maketitle
@@ -57,8 +56,8 @@
\noindent
Thanks to:
Manuel Luque;
-Thomas Söll;
-Liao Xiongfei.
+Thomas Söll.
+
@@ -354,8 +353,8 @@ the rule bar and the segment.
It does not display the ruler bar as default, and you need to setup \Lkeyword{linestyle}
to display it. The star version uses also the star version of the put macro (white background).
-\begin{LTXexample}[pos=t]
-\begin{pspicture}[showgrid=true](-2,-2)(5,5)
+\begin{LTXexample}[width=6cm,pos=l]
+\begin{pspicture}[showgrid=true](-1,-1)(4,4)
\psset{dotscale=0.5}\psset{PointSymbol=*}\footnotesize
\pstGeonode[PosAngle=-90](0.5,1.5){A}
\pstGeonode[PosAngle=-90](2.5,1.5){B}\pstLineAB{A}{B}
@@ -441,18 +440,20 @@ it output $B(x_2,y_2)$ and $C(x_3,y_3)$.
\end{pspicture}
\end{LTXexample}
-The optional parameter \texttt{pos} setup the position of the first node $A$, it should be 'L' for left, 'R' for right, 'U' for up and 'D' for down.
-If you don't input this parameter, the default value is 'L'. The following example explains how to draw an isoceles triangle with the given isoceles sides
+The optional parameter \texttt{pos} setup the position of the first node $A$, it should be ':L' for left, ':R' for right, ':U' for up and ':D' for down.
+You also can specify one another node $X$ to draw a triangle base on the line $AX$. If you don't input this parameter, the default value is ':L'.
+The following example explains how to draw an isoceles triangle with the given isoceles sides
and the vertex angle.
\begin{LTXexample}[width=6cm,pos=l]
\begin{pspicture}[showgrid=true](0,0)(4,4)
\psset{dotscale=0.5}\psset{PointSymbol=*}\footnotesize
-\pstGeonode[PosAngle=205](2,2){A}
-\pstTriangleSAS[linecolor=red!60,PosAngle={-90,90}]{A}(2,40,2){B}{C}
-\pstTriangleSAS[linecolor=blue!60,PosAngle={-90,-90}](U){A}(2,40,2){B}{C}
-\pstTriangleSAS[linecolor=purple!60,PosAngle={90,90}](D){A}(2,40,2){B}{C}
-\pstTriangleSAS[linecolor=green!60,PosAngle={90,-90}](R){A}(2,40,2){B}{C}
+\pstGeonode[PosAngle={205,90}](2,2){A}(4,0){X}
+\pstTriangleSAS[linecolor=red!60,PosAngle={0,90}]{A}(2,40,2){B}{C}
+\pstTriangleSAS[linecolor=blue!60,PosAngle={-90,-90}](:U){A}(2,40,2){B}{C}
+\pstTriangleSAS[linecolor=purple!60,PosAngle={90,90}](:D){A}(2,40,2){B}{C}
+\pstTriangleSAS[linecolor=green!60,PosAngle={90,-90}](:R){A}(2,40,2){B}{C}
+\pstTriangleSAS[linecolor=brown!60,PosAngle={-120,-60}](X){A}(2,40,2){B}{C}
\end{pspicture}
\end{LTXexample}
@@ -490,7 +491,7 @@ For example:
\end{lstlisting}
The macros \Lcs{pstTriangleGC}, \Lcs{pstTriangleHC}, \Lcs{pstTriangleEC}, \Lcs{pstTriangleNC}, \Lcs{pstTriangleLC}
-are used to draw the barycenter $G$, the orthocentre $H$, the escenter $E$, the nine points circle center
+are used to draw the barycenter $G$, the orthocentre $H$, the escenter $E$, the nine points circle center
and the Lemonie point (or symmedian point) of the triangle $ABC$.
\begin{BDef}
@@ -1029,7 +1030,7 @@ The length $L_1$ and $L_2$ can be got from \Lcs{pstDist}, \Lcs{pstDistConst},
\psset{dotscale=0.5}\psset{PointSymbol=*}\footnotesize
\pstGeonode[PosAngle=90](0,1){A}
\pstGeonode[PosAngle=0](3.2,2){C}(3.2,1){D}(3.2,-2){E}
-\pstGeometricMean[PosAngle=90]{C}{A}{\pstDistAB{C}{D}}{\pstDistAB{D}{E}}{B}
+\pstGeometricMean[PosAngle=90]{C}{A}{\pstDistAB{C}{D}}{\pstDistAB{C}{E}}{B}
\pstCircleABC[linecolor=gray!60]{B}{D}{E}{O}
\pstLineAB[linecolor=red!40]{C}{D}
\pstLineAB[linecolor=blue!40]{D}{E}
@@ -1633,11 +1634,11 @@ The macro \Lcs{pstRegularPolygonAB} draw a n-side regular polygon on a given sid
The macro \Lcs{pstRegularPolygonOA} draw a n-side regular polygon with center $O$ and base point $A_0$, and output the other nodes $A_1,A_2,\cdots,A_{n-1}$.
You can use the parameters \Lkeyword{linestyle}, \Lkeyword{linecolor}, \Lkeyword{linewidth}
-to control the line style; and use the parameters \Lkeyword{PointName}, \Lkeyword{PosAngle},
+to control the line style; and use the parameters \Lkeyword{PointName}, \Lkeyword{PosAngle},
\Lkeyword{PointSymbol} to control the point nodes; and use the parameters \Lkeyword{CurveType},
-\Lkeyword{fillstyle}, \Lkeyword{fillcolor} to control the polygon style.
+\Lkeyword{fillstyle}, \Lkeyword{fillcolor} to control the polygon style.
-For the last output point list in macro \Lcs{pstRegularPolygonAB} and \Lcs{pstRegularPolygonOA}, if you do not enter a complete point list,
+For the last output point list in macro \Lcs{pstRegularPolygonAB} and \Lcs{pstRegularPolygonOA}, if you do not enter a complete point list,
the remaining points will be automatically named.
Note that draw regular polygon with side from $A$ to $B$ and side from $B$ to $A$ will get the figure symmetric to $AB$.
@@ -1647,10 +1648,10 @@ Here are some examples.
\begin{pspicture}[showgrid](-1,-2)(3,2)
\psset{unit=0.40cm}\footnotesize\psset{PointSymbol=none,PointNameSep=0.22cm}
\pstGeonode[PosAngle={180,0},PointSymbol=*](0,0){A}(5,0){B}
-\pstETriangleAB[linecolor=red!60,PosAngle=90,PointSymbol=*]{A}{B}{C}
-\pstETriangleAB[linecolor=blue!60,PosAngle=-90,PointSymbol=*,fillstyle=solid,fillcolor=blue!20]{B}{A}{C'}
\pstSquareAB[linecolor=red!60,PosAngle={90,90},PointSymbol=*]{A}{B}{C}{D}
\pstSquareAB[linecolor=blue!60,PosAngle={-90,-90},PointSymbol=*,fillstyle=solid,fillcolor=blue!20,opacity=0.2]{B}{A}{C'}{D'}
+\pstETriangleAB[linecolor=red!60,PosAngle=90,PointSymbol=*]{A}{B}{C}
+\pstETriangleAB[linecolor=blue!60,PosAngle=-90,PointSymbol=*,fillstyle=solid,fillcolor=blue!20]{B}{A}{C'}
\end{pspicture}
\end{LTXexample}
@@ -2182,7 +2183,7 @@ are same with \Lcs{pstGeneralEllipseFle}. They are set to zero if the points are
\begin{LTXexample}[width=6cm,pos=l]
\begin{pspicture}[showgrid=true](-1,-2)(5,4)
-\psset{unit=1.0cm}\footnotesize\psset{PointSymbol=*}
+\psset{unit=0.8cm}\footnotesize\psset{PointSymbol=*}
\psset{CodeFig=true,CodeFigColor=gray!50}
\pstGeonode[PosAngle=180](0,0){A}
\pstGeonode[PosAngle=-90](2,-1){B}
@@ -2490,23 +2491,23 @@ then $TA$ is the tangent line through $A$ and $TB$ is the tangent line through $
\end{pspicture}
\end{LTXexample}
-\subsection{Standard Inversion Parabola}
-The Inversion Parabola $P$ with coordinate translation is defined by vertex $O(x_0,y_0)$,
+\subsection{Standard Conjugate Parabola}
+The Conjugate Parabola $P$ with coordinate translation is defined by vertex $O(x_0,y_0)$,
the half of the focus chord axis $abs(p)$.
Note that the sign of $p$ indicates the direction of the parabola.
The equation can be written as:
-\begin{equation}\label{StandardInversionParabola}
+\begin{equation}\label{StandardConjugateParabola}
(y-y_0)^2=2p(x-x_0)
\end{equation}
and the parametric function can be written as:
-\begin{equation}\label{ParametricFunctionOfStandardInversionParabola}
+\begin{equation}\label{ParametricFunctionOfStandardConjugateParabola}
\left\{\begin{array}{l}
x=\dfrac{t^2}{2p}+x_0\\
y=t+y_0
\end{array}\right.
\end{equation}
-The macro \Lcs{pstIParabola} is used to draw a Standard Inversion Parabola from $y_1$ to $y_2$ with Vertex $O$,
+The macro \Lcs{pstIParabola} is used to draw a Standard Conjugate Parabola from $y_1$ to $y_2$ with Vertex $O$,
the half of the focus chord axis $abs(p)$.
\begin{BDef}
@@ -2514,7 +2515,7 @@ the half of the focus chord axis $abs(p)$.
\end{BDef}
The macro \Lcs{pstIParabolaNode} is used to draw a node whose parameter is the given value $t$ on parabola,
-please refer to equation (\ref{ParametricFunctionOfStandardInversionParabola}).
+please refer to equation (\ref{ParametricFunctionOfStandardConjugateParabola}).
The macro \Lcs{pstIParabolaAbsNode} is used to draw a node whose abscissa is the given value $x_1$ on parabola.
The macro \Lcs{pstIParabolaOrdNode} is used to draw a node whose ordinate is the given value $y_1$ on parabola.
Note that \Lcs{pstIParabolaAbsNode} will create two nodes $A$ and $B$ at most time.
@@ -2889,7 +2890,7 @@ Here is the intersections of a real General Parabola with any kind of lines:
\end{pspicture}
\end{LTXexample}
-When General Parabola becomes a Standard Inversion Parabola, the intersections with any kind of lines:
+When General Parabola becomes a Standard Conjugate Parabola, the intersections with any kind of lines:
\begin{LTXexample}[width=6cm,pos=l]
\begin{pspicture}[showgrid=true](-1,-2)(3,2)
\psset{dotscale=0.5}\psset{PointSymbol=*}\footnotesize
@@ -2954,12 +2955,12 @@ We also use the theorem \ref{ParabolaTangentPointTheorem} to find the tangent no
\end{pspicture}
\end{LTXexample}
-\subsection{General Inversion Parabola}
-The General Inversion Parabola $P$ with coordinate translation and rotation is defined by vertex $O$,
+\subsection{General Conjugate Parabola}
+The General Conjugate Parabola $P$ with coordinate translation and rotation is defined by vertex $O$,
the half of the focus chord axis $abs(p)$, the sign of $p$ indicates the direction of the parabola,
and the rotation angle $\theta$ of the symmetrical axis.
-The equation can be got from the parametric function of the inversion parabola (\ref{ParametricFunctionOfStandardInversionParabola}),
+The equation can be got from the parametric function of the conjugate parabola (\ref{ParametricFunctionOfStandardConjugateParabola}),
using the rotation transform formula (\ref{RotationTransformFormula}), then we have
\begin{equation}
\left\{\begin{array}{l}
@@ -2968,15 +2969,15 @@ y'=(\dfrac{t^2}{2p}+x_0)\sin\theta+(t+y_0)\cos\theta=y_0'+t\cos\theta+t^2\dfrac{
\end{array}\right.
\end{equation}
where the $x_0'$ and $y_0'$ are the coordinate of the given vertex O after rotation.
-So we get the parametric function of the General Inversion Parabola with coordinate translation and rotation as following:
-\begin{equation}\label{ParametricFunctionOfGeneralInversionParabola}
+So we get the parametric function of the General Conjugate Parabola with coordinate translation and rotation as following:
+\begin{equation}\label{ParametricFunctionOfGeneralConjugateParabola}
\left\{\begin{array}{l}
x=x_0-t\sin\theta+t^2\dfrac{\cos\theta}{2p}\\
y=y_0+t\cos\theta+t^2\dfrac{\sin\theta}{2p}
\end{array}\right.
\end{equation}
-The macro \Lcs{pstGeneralIParabola} is used to draw a Standard Inversion Parabola from $y_1$ to $y_2$ with Vertex $O$,
+The macro \Lcs{pstGeneralIParabola} is used to draw a Standard Conjugate Parabola from $y_1$ to $y_2$ with Vertex $O$,
the half of the focus chord axis $abs(p)$.
\begin{BDef}
@@ -2984,7 +2985,7 @@ the half of the focus chord axis $abs(p)$.
\end{BDef}
The macro \Lcs{pstGeneralIParabolaNode} is used to draw a node whose parameter is the given value $t$ on parabola,
-please refer to equation (\ref{ParametricFunctionOfGeneralInversionParabola}).
+please refer to equation (\ref{ParametricFunctionOfGeneralConjugateParabola}).
The macro \Lcs{pstGeneralIParabolaAbsNode} is used to draw a node whose abscissa is the given value $x_1$ on parabola.
The macro \Lcs{pstGeneralIParabolaOrdNode} is used to draw a node whose ordinate is the given value $y_1$ on parabola.
@@ -3327,22 +3328,22 @@ $RQ$ and $PS$ intersect at $Y$, then the intersection points $A$ and $B$ of $XY$
\end{pspicture}
\end{LTXexample}
-\subsection{Standard Inversion Hyperbola}
-The Standard Inversion Hyperbola $H$ with coordinate translation is defined by center $O$,
+\subsection{Standard Conjugate Hyperbola}
+The Standard Conjugate Hyperbola $H$ with coordinate translation is defined by center $O$,
the half of the real axis $a$, the half of the imaginary axis $b$.
The equation can be written as:
-\begin{equation}\label{FunctionOfStandardInversionHyperbola}
+\begin{equation}\label{FunctionOfStandardConjugateHyperbola}
\dfrac{(y-y_0)^2}{a^2}-\dfrac{(x-x_0)^2}{b^2}=1
\end{equation}
and the parametric function can be written as:
-\begin{equation}\label{ParametricFunctionOfStandardInversionHyperbola}
+\begin{equation}\label{ParametricFunctionOfStandardConjugateHyperbola}
\left\{\begin{array}{l}
x=b\tan\alpha+x_0\\
y=a\sec\alpha+y_0
\end{array}\right.
\end{equation}
-The macro \Lcs{pstIHyperbola} is used to draw a Standard Inversion Hyperbola with Center $O$,
+The macro \Lcs{pstIHyperbola} is used to draw a Standard Conjugate Hyperbola with Center $O$,
the half of the real axis $a$, the half of the imaginary axis $b$.
The parameter \texttt{angleY} is used to truncate the height of the figure,
it should be setup from 0 to 90.
@@ -3351,10 +3352,10 @@ it should be setup from 0 to 90.
\Lcs{pstIHyperbola}\OptArgs\Largr{O}\Largr{$a,\,b$}\OptArg{angleY}
\end{BDef}
-The macro \Lcs{pstIHyperbolaNode} is used to draw a node whose parameter is the given value $t$ on Inversion Hyperbola,
-please refer to equation (\ref{ParametricFunctionOfStandardInversionHyperbola}).
-The macro \Lcs{pstIHyperbolaAbsNode} is used to draw the nodes whose abscissa are the given value $x_1$ on Inversion Hyperbola.
-The macro \Lcs{pstIHyperbolaOrdNode} is used to draw the nodes whose ordinate are the given value $y_1$ on Inversion Hyperbola.
+The macro \Lcs{pstIHyperbolaNode} is used to draw a node whose parameter is the given value $t$ on Conjugate Hyperbola,
+please refer to equation (\ref{ParametricFunctionOfStandardConjugateHyperbola}).
+The macro \Lcs{pstIHyperbolaAbsNode} is used to draw the nodes whose abscissa are the given value $x_1$ on Conjugate Hyperbola.
+The macro \Lcs{pstIHyperbolaOrdNode} is used to draw the nodes whose ordinate are the given value $y_1$ on Conjugate Hyperbola.
Note that \Lcs{pstIHyperbolaAbsNode} and \Lcs{pstIHyperbolaOrdNode} will create two nodes $A$ and $B$ at most time.
@@ -3380,8 +3381,8 @@ Note that \Lcs{pstIHyperbolaAbsNode} and \Lcs{pstIHyperbolaOrdNode} will create
\end{pspicture}
\end{LTXexample}
-The macro \Lcs{pstIHyperbolaFocusNode} is used to find the focus nodes of the Inversion Hyperbola,
-and the macro \Lcs{pstIHyperbolaDirectrixLine} is used to find the directrix lines of the Inversion Hyperbola.
+The macro \Lcs{pstIHyperbolaFocusNode} is used to find the focus nodes of the Conjugate Hyperbola,
+and the macro \Lcs{pstIHyperbolaDirectrixLine} is used to find the directrix lines of the Conjugate Hyperbola.
\begin{BDef}
\Lcs{pstIHyperbolaFocusNode}\OptArgs\Largr{O}\Largr{$a,\,b$}\Largb{$F_1$}\Largb{$F_2$}\\
@@ -3784,11 +3785,11 @@ We also use the theorem \ref{HyperbolaTangentPointTheorem} to find the tangent p
\end{pspicture}
\end{LTXexample}
-\subsection{General Inversion Hyperbola}
-The General Inversion Hyperbola $H$ with coordinate translation and rotation is defined by center $O$,
+\subsection{General Conjugate Hyperbola}
+The General Conjugate Hyperbola $H$ with coordinate translation and rotation is defined by center $O$,
the half of the real axis $a$, the half of the imaginary axis $b$,
and the rotation angle $\theta$ of the principal axis.
-The equation can be got from the parametric function of the Standard Inversion Hyperbola equation (\ref{ParametricFunctionOfStandardInversionHyperbola}),
+The equation can be got from the parametric function of the Standard Conjugate Hyperbola equation (\ref{ParametricFunctionOfStandardConjugateHyperbola}),
using the rotation transform formula (\ref{RotationTransformFormula}), then we have
\begin{equation}
\left\{\begin{array}{l}
@@ -3797,15 +3798,15 @@ y'=(b\tan\alpha+x_0)\sin\theta+(a\sec\alpha+y_0)\cos\theta=y_0'+b\tan\alpha\sin\
\end{array}\right.
\end{equation}
where the $x_0'$ and $y_0'$ are the coordinate of the given center $O$ after rotation.
-So we get the parametric function of the General Inversion Hyperbola with coordinate translation and rotation as following:
-\begin{equation}\label{ParametricFunctionOfGeneralInversionHyperbola}
+So we get the parametric function of the General Conjugate Hyperbola with coordinate translation and rotation as following:
+\begin{equation}\label{ParametricFunctionOfGeneralConjugateHyperbola}
\left\{\begin{array}{l}
x=x_0+b\tan\alpha\cos\theta-a\sec\alpha\sin\theta\\
y=y_0+b\tan\alpha\sin\theta+a\sec\alpha\cos\theta
\end{array}\right.
\end{equation}
-The macro \Lcs{pstGeneralIHyperbola} is used to draw a General Inversion Hyperbola with Center $O$,
+The macro \Lcs{pstGeneralIHyperbola} is used to draw a General Conjugate Hyperbola with Center $O$,
the half of the real axis $a$, the half of the imaginary axis $b$,
and the rotation angle $\theta$ of the symmetrical axis.
The parameter \texttt{angleY} is used to truncate the height of the figure,
@@ -3831,11 +3832,11 @@ it should be setup from 0 to 90.
\end{pspicture}
\end{LTXexample}
-The macro \Lcs{pstGeneralIHyperbolaNode} is used to draw a node whose parameter is the given value $t$ on General Inversion Hyperbola,
-please refer to equation (\ref{ParametricFunctionOfGeneralInversionHyperbola}).
+The macro \Lcs{pstGeneralIHyperbolaNode} is used to draw a node whose parameter is the given value $t$ on General Conjugate Hyperbola,
+please refer to equation (\ref{ParametricFunctionOfGeneralConjugateHyperbola}).
-The macro \Lcs{pstGeneralIHyperbolaAbsNode} is used to draw the nodes whose abscissa are the given value $x_1$ on General Inversion Hyperbola.
-The macro \Lcs{pstGeneralIHyperbolaOrdNode} is used to draw the nodes whose ordinate are the given value $y_1$ on General Inversion Hyperbola.
+The macro \Lcs{pstGeneralIHyperbolaAbsNode} is used to draw the nodes whose abscissa are the given value $x_1$ on General Conjugate Hyperbola.
+The macro \Lcs{pstGeneralIHyperbolaOrdNode} is used to draw the nodes whose ordinate are the given value $y_1$ on General Conjugate Hyperbola.
Note that \Lcs{pstGeneralIHyperbolaAbsNode} and \Lcs{pstGeneralIHyperbolaOrdNode} will create two nodes $A$ and $B$ at most time.
@@ -3863,9 +3864,9 @@ Note that \Lcs{pstGeneralIHyperbolaAbsNode} and \Lcs{pstGeneralIHyperbolaOrdNode
\end{pspicture}
\end{LTXexample}
-The macro \Lcs{pstGeneralIHyperbolaFocusNode} is used to find the focus nodes of the General Inversion Hyperbola,
-the macro \Lcs{pstGeneralIHyperbolaVertexNode} is used to find the vertex nodes of the General Inversion Hyperbola,
-and the macro \Lcs{pstGeneralIHyperbolaDirectrixLine} is used to find the directrix lines of the General Inversion Hyperbola.
+The macro \Lcs{pstGeneralIHyperbolaFocusNode} is used to find the focus nodes of the General Conjugate Hyperbola,
+the macro \Lcs{pstGeneralIHyperbolaVertexNode} is used to find the vertex nodes of the General Conjugate Hyperbola,
+and the macro \Lcs{pstGeneralIHyperbolaDirectrixLine} is used to find the directrix lines of the General Conjugate Hyperbola.
\begin{BDef}
\Lcs{pstGeneralIHyperbolaFocusNode}\OptArgs\Largr{O}\Largr{$a,\,b$}\OptArg{$\theta$}\Largb{$F_1$}\Largb{$F_2$}\\
@@ -3901,7 +3902,7 @@ as the other one is the center of the hyperbola.
\end{LTXexample}
-The macro \Lcs{pstGeneralIHyperbolaLineInter} is used to find the intersections $C$ and $D$ of the general inversion hyperbola and the given line $AB$.
+The macro \Lcs{pstGeneralIHyperbolaLineInter} is used to find the intersections $C$ and $D$ of the general conjugate hyperbola and the given line $AB$.
\begin{BDef}
\Lcs{pstGeneralIHyperbolaLineInter}\OptArgs\Largr{O}\Largr{$a,\,b$}\OptArg{$\theta$}\Largb{$A$}\Largb{$B$}\Largb{$C$}\Largb{$D$}
@@ -3930,7 +3931,7 @@ so there are only one intersection $M$ and $P$ for each line, and the second nod
\end{pspicture}
\end{LTXexample}
-The macro \Lcs{pstGeneralIHyperbolaPolarNode} is used to find the polar point $T$ of chord $AB$ on the general inversion hyperbola.
+The macro \Lcs{pstGeneralIHyperbolaPolarNode} is used to find the polar point $T$ of chord $AB$ on the general conjugate hyperbola.
\begin{BDef}
\Lcs{pstGeneralIHyperbolaPolarNode}\OptArgs\Largr{O}\Largr{$a,\,b$}\OptArg{$\theta$}\Largb{$A$}\Largb{$B$}\Largb{$T$}
@@ -3951,7 +3952,7 @@ We also use the theorem \ref{HyperbolaPolarPointTheorem} to find the polar point
\end{pspicture}
\end{LTXexample}
-The macro \Lcs{pstGeneralIHyperbolaTangentNode} is used to find the tangent point $A$ and $B$ of point $T$ outside of the general inversion hyperbola.
+The macro \Lcs{pstGeneralIHyperbolaTangentNode} is used to find the tangent point $A$ and $B$ of point $T$ outside of the general conjugate hyperbola.
\begin{BDef}
\Lcs{pstGeneralIHyperbolaTangentNode}\OptArgs\Largr{O}\Largr{$a,\,b$}\OptArg{$\theta$}\Largb{$T$}\Largb{$A$}\Largb{$B$}
@@ -3970,6 +3971,187 @@ We also use the theorem \ref{HyperbolaTangentPointTheorem} to find the tangent p
\end{pspicture}
\end{LTXexample}
+\vspace{20pt}
+\subsection{General Conics}
+A General Conic is defined by the quadratic curve equation
+\begin{equation}\label{QuadraticCurveEquation}
+ax^2+bxy+cy^2+dx+ey+f=0
+\end{equation}
+it can be reduced to an ellipse, hyperbola or parabola after translation and rotation.
+
+In the previous sections, we use the macros \Lcs{pstGeneralEllipseCoef}, \Lcs{pstGeneralHyperbolaCoef}, \Lcs{pstGeneralParabolaCoef} to define the
+general ellipse, general hyperbola and general parabola from the quadratic curve equation (\ref{QuadraticCurveEquation}).
+Here we provide the macros \Lcs{pstGeneralConicEquation}, \Lcs{pstGeneralEllipseEquation}, \Lcs{pstGeneralHyperbolaEquation}
+and \Lcs{pstGeneralParabolaEquation} to get the coefficients $a,b,c,d,e,f$ of their quadratic curve equation (\ref{QuadraticCurveEquation}).
+
+\vspace{10pt}
+
+\begin{BDef}
+\Lcs{pstGeneralConicEquation}\OptArgs\Largb{A}\Largb{B}\Largb{C}\Largb{D}\Largb{E}\Largb{F}\Largb{a,b,c,d,e,f}\\
+\Lcs{pstGeneralEllipseEquation}\OptArgs\Largr{O}\Largr{a,b}\OptArg{$\theta$}\Largb{a,b,c,d,e,f}\\
+\Lcs{pstGeneralHyperbolaEquation}\OptArgs\Largr{O}\Largr{a,b}\OptArg{$\theta$}\Largb{a,b,c,d,e,f}\\
+\Lcs{pstGeneralParabolaEquation}\OptArgs\Largr{O}\Largb{p}\OptArg{$\theta$}\Largb{a,b,c,d,e,f}
+\end{BDef}
+
+The macro \Lcs{pstGeneralConicEquation} take five points $A,B,C,D,E$ as input parameter;
+the macro \Lcs{pstGeneralEllipseEquation} take the general ellipse parameter $O,a,b,\theta$ as input parameter;
+the macro \Lcs{pstGeneralHyperbolaEquation} take the general hyperbola parameter $O,a,b,\theta$ as input parameter;
+the macro \Lcs{pstGeneralParabolaEquation} take the general parabola parameter $O,p,\theta$ as input parameter.
+They all output the six coefficients $a,b,c,d,e,f$ of the quadratic curve equation.
+
+Note that the output coefficients $a,b,c,d,e,f$ are the variables in \PS\ level,
+they will be dumped out in \PS's console when you set \Lkeyword{CodeFig} to \Lkeyword{true}.
+You can pass them into the macros where need these six coefficients.
+In order to prevent the name conflict in \PS\ level,
+You should setup the name of the coefficients more than three letters, for example,
+
+\vspace{10pt}
+
+\begin{lstlisting}
+% calculate the coefficients CoefA,CoefB,...,CoefF and CoefA',CoefB',...,CoefF'
+\pstGeneralConicEquation{A}{B}{C}{D}{E}{CoefA,CoefB,CoefC,CoefD,CoefE,CoefF}
+\pstGeneralConicEquation{A'}{B'}{C'}{D'}{E'}{CoefA',CoefB',CoefC',CoefD',CoefE',CoefF'}
+% then use them to find the intersections
+\pstGeneralConicInter{CoefA,CoefB,CoefC,CoefD,CoefE,CoefF}{CoefA',CoefB',CoefC',CoefD',CoefE',CoefF'}{I}{J}{I'}{J'}
+\end{lstlisting}
+
+\clearpage
+
+The following example output the coefficients $a,b,c,d,e,f$ for the ellipse defined by five points, and then draw the ellipse using these coefficients to check the result.
+\begin{LTXexample}[width=5cm,pos=l]
+\begin{pspicture}[showgrid=true](-1,-2)(4,3)
+\psset{unit=0.6cm}\footnotesize\psset{PointSymbol=*}
+\psset{CodeFig=false,CodeFigColor=gray!50}
+\pstGeonode[PosAngle={180,-90,90,-90,0}](0,0){A}(2,-1){B}(3,3){C}(4,0){D}(5,2){E}
+\pstGeneralEllipseABCDE[PosAngle=0]{A}{B}{C}{D}{E}{O}{R}{RotAngle}
+\pstGeneralEllipse[linecolor=red!60](O)(R)[RotAngle]
+\pstGeneralEllipseEquation(O)(R)[RotAngle]{a,b,c,d,e,f}
+\pstGeneralEllipseCoef[PosAngle=-80,CodeFigColor=blue!50]{a,b,c,d,e,f}{O'}{R'}{RotAngle1}
+\pstGeneralEllipse[linecolor=blue!60](O')(R')[RotAngle1][0][240]
+\end{pspicture}
+\end{LTXexample}
+
+\vspace{10pt}
+The following example output the coefficients $a,b,c,d,e,f$ for the hyperbola $2xy-x+2y+1=0$, just for example, and then draw the hyperbola using these coefficients to check the result.
+\begin{LTXexample}[width=5cm,pos=l]
+\begin{pspicture}[showgrid=true](-3,-2)(2,2)
+\psset{unit=0.6cm}\footnotesize\psset{PointSymbol=*}
+\psset{CodeFig=false,CodeFigColor=gray!50}
+% 2xy-x+2y+1=0
+\pstGeneralHyperbolaCoef[PosAngle=-100,CodeFigColor=red!50]{0,2,0,-1,2,1}{O_1}{R_1}{RotAngle}
+\pstGeneralHyperbola[linecolor=blue!60](O_1)(R_1)[RotAngle][56]
+\pstGeneralHyperbolaEquation(O_1)(R_1)[RotAngle]{a,b,c,d,e,f}
+\pstGeneralHyperbolaCoef[PosAngle=-10,CodeFigColor=red!60]{a,b,c,d,e,f}{O_2}{R_2}{RotAngle1}
+\pstGeneralHyperbola[linecolor=red](O_2)(R_2)[RotAngle1][25]
+\end{pspicture}
+\end{LTXexample}
+
+\vspace{10pt}
+The following example output the coefficients $a,b,c,d,e,f$ for the parabola defined by five points, and then draw the parabola using these coefficients to check the result.
+\begin{LTXexample}[width=5cm,pos=l]
+\begin{pspicture}[showgrid=true](0,-2)(4,2)
+\psset{unit=0.6cm}\footnotesize\psset{PointSymbol=*}
+\psset{CodeFig=false,CodeFigColor=gray!50}
+% five points from y^2-2x+3=0
+\pstGeonode[PosAngle={90,90,-90,90,-90}](3,1.73205){A}(2,1){B}(2,-1){C}(6,3){D}(6,-3){E}
+\pstGeneralParabolaABCDE[PosAngle=235]{A}{B}{C}{D}{E}{O}{P}{RotAngle}
+\pstGeneralParabola[linecolor=blue!60](O){P}[RotAngle]{-3}{3}
+\pstGeneralParabolaEquation(O){P}[RotAngle]{a,b,c,d,e,f}
+\pstGeneralParabolaCoef[PosAngle=140,CodeFigColor=black!60]{a,b,c,d,e,f}{O_2}{P2}{RotAngle1}
+\pstGeneralParabola[linecolor=red](O_2){P2}[RotAngle1]{-2}{2}
+\end{pspicture}
+\end{LTXexample}
+
+\clearpage
+Here are some macros to find the intersections with the quadratic curve equation (\ref{QuadraticCurveEquation}).
+
+\begin{BDef}
+\Lcs{pstGeneralConicLineInter}\OptArgs\Largb{A}\Largb{B}\Largb{a,b,c,d,e,f}\Largb{C}\Largb{D}\\
+\Lcs{pstGeneralConicCircleInter}\OptArgs\Largb{O}\Largb{A}\Largb{a,b,c,d,e,f}\Largb{C}\Largb{D}\Largb{E}\Largb{F}\\
+\Lcs{pstGeneralConicEllipseInter}\OptArgs\Largr{O}\Largr{m,n}\Largb{a,b,c,d,e,f}\Largb{C}\Largb{D}\Largb{E}\Largb{F}\\
+\Lcs{pstGeneralConicHyperbolaInter}\OptArgs\Largr{O}\Largr{m,n}\Largb{a,b,c,d,e,f}\Largb{C}\Largb{D}\Largb{E}\Largb{F}\\
+\Lcs{pstGeneralConicIHyperbolaInter}\OptArgs\Largr{O}\Largr{m,n}\Largb{a,b,c,d,e,f}\Largb{C}\Largb{D}\Largb{E}\Largb{F}\\
+\Lcs{pstGeneralConicParabolaInter}\OptArgs\Largr{O}\Largb{p}\Largb{a,b,c,d,e,f}\Largb{C}\Largb{D}\Largb{E}\Largb{F}\\
+\Lcs{pstGeneralConicIParabolaInter}\OptArgs\Largr{O}\Largb{p}\Largb{a,b,c,d,e,f}\Largb{C}\Largb{D}\Largb{E}\Largb{F}\\
+\Lcs{pstGeneralConicInter}\Largb{a,b,c,d,e,f}\Largb{a',b',c',d',e',f'}\Largb{C}\Largb{D}\Largb{E}\Largb{F}
+\end{BDef}
+
+\noindent
+The macro \Lcs{pstGeneralConicLineInter} is used to find the intersections $C,D$ of the quadratic curve equation (\ref{QuadraticCurveEquation}) and the given line $AB$.\\[1mm]\noindent
+The macro \Lcs{pstGeneralConicCircleInter} is used to find the intersections $C,D,E,F$ of the quadratic curve equation (\ref{QuadraticCurveEquation}) and the given circle $(x-x_A)^2+(y-y_A)^2=|OA|^2$.\\[1mm]\noindent
+The macro \Lcs{pstGeneralConicEllipseInter} is used to find the intersections $C,D,E,F$ of the quadratic curve equation (\ref{QuadraticCurveEquation}) and the given ellipse $\dfrac{(x-x_O)^2}{m^2}+\dfrac{(y-y_O)^2}{n^2}=1$.\\[1mm]\noindent
+The macro \Lcs{pstGeneralConicHyperbolaInter} is used to find the intersections $C,D,E,F$ of the quadratic curve equation (\ref{QuadraticCurveEquation}) and the given hyperbola $\dfrac{(x-x_O)^2}{m^2}-\dfrac{(y-y_O)^2}{n^2}=1$.\\[1mm]\noindent
+The macro \Lcs{pstGeneralConicIHyperbolaInter} is used to find the intersections $C,D,E,F$ of the quadratic curve equation (\ref{QuadraticCurveEquation}) and the given conjugate hyperbola $\dfrac{(y-y_O)^2}{m^2}-\dfrac{(x-x_O)^2}{n^2}=1$.\\[1mm]\noindent
+The macro \Lcs{pstGeneralConicParabolaInter} is used to find the intersections $C,D,E,F$ of the quadratic curve equation (\ref{QuadraticCurveEquation}) and the given parabola $(x-x_O)^2=2p(y-y_O)$.\\[1mm]\noindent
+The macro \Lcs{pstGeneralConicIParabolaInter} is used to find the intersections $C,D,E,F$ of the quadratic curve equation (\ref{QuadraticCurveEquation}) and the given conjugate parabola $(y-y_O)^2=2p(x-x_O)$.\\[1mm]\noindent
+The macro \Lcs{pstGeneralConicInter} is used to find the intersections $C,D,E,F$ of the quadratic curve equation (\ref{QuadraticCurveEquation}) and the other one.\\\noindent
+
+\begin{LTXexample}[width=5cm,pos=l]
+\begin{pspicture}[showgrid=true](-4,-2)(1,2)\footnotesize
+\psset{unit=0.5cm,PointSymbol=*,dotscale=0.5,PointNameSep=0.24cm}
+\pstGeonode[PosAngle={0,-90}](-2,0){A}(-3,-2){B}
+\pstGeneralEllipseCoef[PosAngle=120]{1,2,4,6,8,1}{O}{R}{RotAngle}
+\pstGeneralEllipse[linecolor=blue!60](O)(R)[RotAngle]
+\pstGeneralConicLineInter[PosAngle={200,110}]{A}{B}{1,2,4,6,8,1}{C}{D}
+\pstGeneralConicCircleInter[PosAngle={-120,120,-65,60}]{O}{B}{1,2,4,6,8,1}{E}{F}{E'}{F'}
+\pstGeneralConicEllipseInter[PosAngle={210,120,-45,45}](O)(3,4){1,2,4,6,8,1}{G}{H}{G'}{H'}
+\pstGeneralConicHyperbolaInter[PosAngle={75,215,45,240}](O)(2,3){1,2,4,6,8,1}{I}{J}{I'}{J'}
+\pstGeneralConicParabolaInter[PosAngle={215,-90},PointName={M,N,none},PointSymbol={*,*,none}](O){8}{1,2,4,6,8,1}{M}{N}{M'}{N'}
+\pstLineAB[linecolor=gray!80]{C}{D}
+\pstCircleOA[linecolor=gray!80]{O}{B}
+\pstEllipse[linecolor=gray!80](O)(3,4)
+\pstHyperbola[linecolor=gray!80](O)(2,3)[56]
+\pstParabola[linecolor=gray!80](O){8}{-4}{4}
+\end{pspicture}
+\end{LTXexample}
+
+\begin{LTXexample}[width=5cm,pos=l]
+\begin{pspicture}[showgrid=true](-3,-2)(1,3)\footnotesize
+\psset{unit=0.5cm,PointSymbol=*,dotscale=0.5,PointNameSep=0.24cm}
+\pstGeonode[PosAngle={-90,-90}](-1.8,1){O}
+\pstEllipse[linecolor=gray!80](O)(4,3)
+\pstGeneralEllipse[linecolor=blue!60](O)(3,4)[32]
+\pstGeneralEllipse[linecolor=cyan!60](O)(3,4)[65]
+\pstGeneralEllipseEquation[CodeFig=false](O)(3,4)[32]{Ea,Eb,Ec,Ed,Ee,Ef}
+\pstGeneralEllipseEquation[CodeFig=false](O)(3,4)[65]{Ea',Eb',Ec',Ed',Ee',Ef'}
+\pstGeneralConicEllipseInter[PosAngle={-20,240,50,150}](O)(4,3){Ea,Eb,Ec,Ed,Ee,Ef}{C}{D}{C'}{D'}
+\pstGeneralConicEllipseInter[PosAngle={150,90,-100,-40}](O)(4,3){Ea',Eb',Ec',Ed',Ee',Ef'}{E}{F}{E'}{F'}
+\pstGeneralConicInter[PosAngle={100,60,240,-50}]{Ea,Eb,Ec,Ed,Ee,Ef}{Ea',Eb',Ec',Ed',Ee',Ef'}{G}{H}{G'}{H'}
+\end{pspicture}
+\end{LTXexample}
+
+Here are some macros to find the tangent line or tangent chord of the quadratic curve equation (\ref{QuadraticCurveEquation}).
+
+\vspace{10pt}
+
+\begin{BDef}
+\Lcs{pstGeneralConicTangentLine}\OptArgs\Largb{A}\Largb{a,b,c,d,e,f}\Largb{B}\\
+\Lcs{pstGeneralConicTangentChord}\OptArgs\Largb{T}\Largb{a,b,c,d,e,f}\Largb{A}\Largb{B}
+\end{BDef}
+
+The macro \Lcs{pstGeneralConicTangentLine} find the Tangent Line of the quadratic curve through
+the point $A$ which is lie on the curve, output the other node $B$ on the tangent line.
+The macro \Lcs{pstGeneralConicTangentChord} find the Tangent Chord of the quadratic curve through
+the point $T$ which is not lie on the curve, output the tangent point $A$ and $B$ on the curve.
+
+\begin{LTXexample}[width=5cm,pos=l]
+\begin{pspicture}[showgrid=true](-2,-2)(2,2)\footnotesize
+\psset{unit=0.3cm,PointSymbol=*,dotscale=0.5,PointNameSep=0.24cm}
+\pstGeonode[PosAngle={-90,-10,190,150,180}](3,1){A}(2,3){B}(-1.5,2){C}(-3,-5){D}(-2.0,-2.2){E}
+\pstGeneralConicEquation{A}{B}{C}{D}{E}{GCoefA,GCoefB,GCoefC,GCoefD,GCoefE,GCoefF}
+\pstGeneralHyperbolaCoef[PosAngle=-30]{GCoefA,GCoefB,GCoefC,GCoefD,GCoefE,GCoefF}{O}{R}{RotAngle}
+\pstGeneralHyperbola[linecolor=blue!40](O)(R)[RotAngle][72]
+\pstGeneralConicTangentLine[PosAngle={-70}]{E}{GCoefA,GCoefB,GCoefC,GCoefD,GCoefE,GCoefF}{F}
+\pstLineAB[linecolor=gray!60,nodesepA=-1]{E}{F}
+\pstGeonode[PosAngle=-90](1.8,-1.5){T}
+\pstGeneralConicTangentChord[PosAngle={20,60}]{T}{GCoefA,GCoefB,GCoefC,GCoefD,GCoefE,GCoefF}{M}{N}
+\pstLineAB[linecolor=red!60]{M}{N}
+\pstLineAB[linecolor=gray!60,nodesepB=-1]{T}{M}
+\pstLineAB[linecolor=gray!60,nodesepB=-1]{T}{N}
+\end{pspicture}
+\end{LTXexample}
+
+\clearpage
\section{Geometric Transformations}
The geometric transformations are the ideal tools to construct geometric figures. All
@@ -4534,7 +4716,7 @@ and \Lkeyword{PosAngleB} to change the default behavior.
This function put a point at the intersection between two curves
defined by a function. $x_0$ is an intersection approximated value of
-the abscissa. It is obviously possible to ise this function several
+the abscissa. It is obviously possible to use this function several
time if more than one intersection is present. Each function is
describerd in \PS in the same way as the description used by
the \Lcs{psplot} macro of \PST. A constant function can be
@@ -5401,5 +5583,3 @@ crossing a given point.
\end{document}
-
-