debian/ 0000755 0000000 0000000 00000000000 11536666117 007202 5 ustar debian/source/ 0000755 0000000 0000000 00000000000 11535140520 010462 5 ustar debian/source/format 0000644 0000000 0000000 00000000014 11535140520 011670 0 ustar 3.0 (quilt)
debian/dirs 0000644 0000000 0000000 00000000146 11535143070 010052 0 ustar /usr/bin
/usr/share/carmetal
/usr/share/applications
/usr/share/pixmaps
/usr/share/mimelnk/application debian/control 0000644 0000000 0000000 00000003011 11536160754 010574 0 ustar Source: carmetal
Section: math
Priority: extra
Maintainer: Yves Combe
Build-Depends: debhelper (>= 7.0.50~), javahelper (>= 0.32), quilt (>= 0.46-7~), ant, ant-optional, docbook-to-man, rhino
Build-Depends-Indep: default-jdk
Standards-Version: 3.9.1
Package: carmetal
Architecture: all
Depends: ${java:Depends}, ${misc:Depends}
Description: dynamic geometry software with highly ergonomic UI
Based on the C.a.R. (Compass and Ruler) project, CaRMetal includes
all of its functionalities - or almost. It propose a different approach
from the graphical interface point of view.
.
- Ruler and compass constructions can be changed by dragging one of the
basic construction points. The construction follows immediately. The
student can check the correctness of the construction and gain new
insight.
- Tracks of points and animated constructions can help to understand
geometric relations. Tracks can be used as new objects to explore.
- With the macros of C.a.R. very complicated constructions become
possible. Macros are also a way to organize the geometric thinking.
- Hiding construction details and using colors make constructions
clearer to read. In C.a.R. lines and circles can also be reduced to the
relevant points.
- Arithmetic computations, numerical solutions, curves and functions
go beyond classical constructions. It is even possible to construct in 3D
using advanced macros.
- Other geometries, hyperbolic or elliptic, can be explored.
- Scripting (javascript based) of figures.
debian/copyright 0000644 0000000 0000000 00000011047 11535171176 011133 0 ustar This software was downloaded from http://db-maths.nuxit.net/CaRMetal/ and it contains part of C.a.R. software from http://www.z-u-l.de/doc_en/index.html
Upstream Author: Eric Hakenholz
Licence: GPL v3
Copyright: 2006 - 2008 Eric Hakenholz (CaRMetal)
Parts of this software come from external sources:
C.a.R: http://www.z-u-l.de/doc_en/index.html
Licence: GPL v3
Copyright: 2004-2008 René Grothmann (C.a.R.)
HotEqn: http://www.esr.ruhr-uni-bochum.de/VCLab/software/HotEqn/HotEqn.html
Licence: GPL v3
Copyright: Stefan Müller Christian Schmid
and René Grothmann (included is a modified version for C.a.R.).
Copyright Notice for licence GPL v3:
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, version 3 of the License.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see .
On Debian systems, the complete text of the GNU General Public
License version 3, can be found in /usr/share/common-licenses/GPL-3.
ColorChooser: https://colorchooser.dev.java.net/
Licence: CDDL or GPL with claspath exception (used here as GPL with claspath exception)
Copyright 2000-2008 Tim Boudreau. All rights reserved.
The contents of this file are subject to the terms of either the GNU
General Public License Version 2 only ("GPL") or the Common
Development and Distribution License("CDDL") (collectively, the
"License"). You may not use this file except in compliance with the
License. You can obtain a copy of the License at
http://www.netbeans.org/cddl-gplv2.html
or nbbuild/licenses/CDDL-GPL-2-CP. See the License for the
specific language governing permissions and limitations under the
License. When distributing the software, include this License Header
Notice in each file and include the License file at
nbbuild/licenses/CDDL-GPL-2-CP. Sun designates this
particular file as subject to the "Classpath" exception as provided
by Sun in the GPL Version 2 section of the License file that
accompanied this code. If applicable, add the following below the
License Header, with the fields enclosed by brackets [] replaced by
your own identifying information:
"Portions Copyrighted [year] [name of copyright owner]"
If you wish your version of this file to be governed by only the CDDL
or only the GPL Version 2, indicate your decision by adding
"[Contributor] elects to include this software in this distribution
under the [CDDL or GPL Version 2] license." If you do not indicate a
single choice of license, a recipient has the option to distribute
your version of this file under either the CDDL, the GPL Version 2 or
to extend the choice of license to its licensees as provided above.
However, if you add GPL Version 2 code and therefore, elected the GPL
Version 2 license, then the option applies only if the new code is
made subject to such option by the copyright holder.
The file PngEncoder.java:
Licence: LGPL v. 2.1 or later
Copyright: 2000 J. David Eisenberg
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public
License along with this library; if not, write to the Free Software
Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA.
A copy of the GNU LGPL may be found at
http://www.gnu.org/copyleft/lesser.html,
On Debian systems, the complete text of the GNU Lesser General Public
License, version 2.1, can be found in the file `/usr/share/common-licenses/LGPL-2.1'.
The Debian packaging is (C) 2007, Yves Combe and is licensed under the GPL version 2 or any later version publied by the Free Software Fondation, see `/usr/share/common-licenses/GPL-2'.
debian/carmetal.lintian-overrides 0000644 0000000 0000000 00000000104 11535172504 014334 0 ustar # lintian bug #539315
carmetal binary: executable-not-elf-or-script
debian/carmetal.sharedmimeinfo 0000644 0000000 0000000 00000000454 11535142715 013701 0 ustar
CaRMetal figure
debian/carmetal.sgml 0000644 0000000 0000000 00000007760 11535142706 011660 0 ustar manpage.1'. You may view
the manual page with: `docbook-to-man manpage.sgml | nroff -man |
less'. A typical entry in a Makefile or Makefile.am is:
manpage.1: manpage.sgml
docbook-to-man $< > $@
The docbook-to-man binary is found in the docbook-to-man package.
Please remember that if you create the nroff version in one of the
debian/rules file targets (such as build), you will need to include
docbook-to-man in your Build-Depends control field.
-->
Combe">
Yves">
janvier 17, 2008">
1">
yves@ycombe.net">
CARMETAL">
Debian">
GNU">
GPL">
]>
&dhemail;
&dhfirstname;
&dhsurname;
2008&dhusername;
&dhdate;
&dhucpackage;
&dhsection;
&dhpackage;dynamic geometry software&dhpackage;DESCRIPTIONThis manual page documents briefly the
&dhpackage; command.This manual page was written for the &debian; distribution
because the original program does not have a manual page.
&dhpackage; is a dinamical geometry software
written in Java. Ruler and compass constructions can be changed by dragging
one of the basic construction points. The construction follows immediately. The
student can check the correctness of the construction and gain new
insight. Carmetal allow exercices generations (jobs) automaticly checked with html export, and html diaporama generations. Arithmetic computations, numerical solutions, curves and functions
go beyond classical constructions. It is even possible to construct in 3D
using advanced macros. Other geometries, hyperbolic or elliptic, can be explored.AUTHORThis manual page was written by &dhusername; &dhemail; for
the &debian; system (but may be used by others). Permission is
granted to copy, distribute and/or modify this document under
the terms of the &gnu; General Public License, Version 2 any
later version published by the Free Software Foundation.
On Debian systems, the complete text of the GNU General Public
License can be found in /usr/share/common-licenses/GPL.
debian/carmetal.install 0000644 0000000 0000000 00000001316 11535144570 012354 0 ustar dist/CaRMetal.jar usr/share/carmetal
utils/*.mcr usr/share/carmetal
utils/*.zir usr/share/carmetal
debian/carmetal.desktop usr/share/applications
debian/x-carmetal.desktop usr/share/mimelnk/application
utils/CaRMetal.png usr/share/pixmaps
utils/fileicon.png usr/share/carmetal
utils/docs/*.txt usr/share/carmetal/docs
utils/docs/images/*.* usr/share/carmetal/docs/images
utils/docs/images/context/*.* usr/share/carmetal/docs/images/context
utils/docs/images/point/*.* usr/share/carmetal/docs/images/point
utils/docs/images/thickness/*.* usr/share/carmetal/docs/images/thickness
utils/docs/images/palettes/*.* usr/share/carmetal/docs/images/palettes
utils/docs/images/scolors/*.* usr/share/carmetal/docs/images/scolors
debian/patches/ 0000755 0000000 0000000 00000000000 11535262212 010614 5 ustar debian/patches/externalRhino.diff 0000644 0000000 0000000 00000000457 11535133463 014303 0 ustar --- a/nbproject/project.properties
+++ b/nbproject/project.properties
@@ -39,7 +39,7 @@
j2ee.platform=1.4
j2ee.server.type=Tomcat55
jar.compress=true
-javac.classpath=
+javac.classpath=/usr/share/java/js.jar
# Space-separated list of extra javac options
javac.compilerargs=
javac.deprecation=true
debian/patches/updateMacros.diff 0000644 0000000 0000000 00003107430 11535262212 014105 0 ustar Update the macros from the binary MacOSX version (source is not up to date)
--- /dev/null
+++ b/utils/buffer.mcr
@@ -0,0 +1,20 @@
+
+
+
+Premier point ?
+Premier coefficient ?
+Deuxième point ?
+Deuxième coefficient ?
+
+
Désigner deux points pondérés (A,a) et (B,b) pour créer le
+barycentre G=Bar{(A,a),(B,b)}
+
+
+Point à -2.73303, 0.92308
+Expression "2" à -2.53303, 0.92308
+Point à 0.1448, 0.1629
+Expression "-1" à 0.3448, 0.1629
+Point à "x(A)+c/(a+c)*(x(C)-x(A))", "y(A)+c/(a+c)*(y(C)-y(A))"
+
+
+
--- a/utils/docs/fr_info.txt
+++ b/utils/docs/fr_info.txt
@@ -1,4 +1,4 @@
-// Help file syntax MODIF 2
+// Help file syntax crODIF 2
// This is the help file for C.a.R., used inside the program
// for context sensitive help, and also to extract HTML
// pages using the Translator program contained in C.a.R.
@@ -22,8 +22,8 @@
.related index online license gui tips localize language
Aide contextuelle
-Ce système d'aide fournit des informations sur l'outil courant (clic sur une
-icône de la palette), sur la dernière action, ou sur toute requête formulée par l'intermédiaire du
+Ce système d'aide fournit des informations sur l'outil courant (clic sur une
+icône de la palette de droite ou de la barre de propriétés ou encore sur une boîte d'entrée de cette barre de propriétés), sur la dernière action, ou sur toute requête formulée par l'intermédiaire du
cadre de recherche :
@@ -41,20 +41,18 @@
Bonnes constructions avec CaRMetal !
Cordialement,
- Eric Hakenholz
-
-
-
+ Eric Hakenholz
//************************************
.online
-.related start tips license
+.related start license
Aide sur Internet
Vous pouvez trouver sur le site de CaRMetal des tutoriels sous forme d'animations flash qui permettront au débutant de se familiariser rapidement avec certaines fonctionnalités du logiciel. Certains tutoriels sont aussi destinés aux utilisateurs avertis : ils sont de toutes façons classés par ordre de difficulté croissante, de une à quatre étoiles.
-Pour avoir quelques exemples supplémentaires de ce qui peut se faire avec CaRMetal, nous vous proposons la lecture des différents articles du webzine CARzine.
-
+Pour avoir quelques exemples supplémentaires de ce qui peut se faire avec CaRMetal, nous vous proposons la lecture des différents articles du webzine CARzine.
+
+//***********************
.license
.related online start
Licence de CaRMetal
@@ -77,7 +75,7 @@
//************************************
.zone_aspect
-.related nom_points gui iconbar macrobar mouse zoom online keyboard
+.related nom_points gui iconbar
Zone de palette "Aspect et couleur"
Cette zone se charge de définir l'aspect des objets à créer, c'est à dire ceux qui ne sont pas encore dans la construction. Si, par exemple, l'outil droite est sélectionné, la partie
@@ -94,13 +92,11 @@
En cliquant sur la dernière icône (indiquant P4 ci-dessus) un menu fait apparaître une palette dédiée au choix du nom des points à venir.
-
//************************************
.gui
-.related zone_aspect iconbar macrobar mouse zoom online keyboard
+.related zone_aspect iconbar
Interface utilisateur
-
La fenêtre principale de CaRMetal, située juste à droite de ce panneau d'aide,
affiche la construction géométrique. La vue de la figure peut être modifié soit par
un déplacement (clic-droit glissé dans une zone vide), soit par un zoom (molette de la souris). Un outil zoom, disponible dans le menu Edition, peut aussi être utilisé pour ces deux actions.
@@ -111,7 +107,7 @@
//************************************
.iconbar
-.related restricted gui settings
+.related gui
La palette principale
Il y a dans la palette principale de CaRMetal (à droite de la fenêtre de construction), des icônes-outils de nature différentes :
@@ -123,17 +119,8 @@
- Des icônes-bascule comme l'icône d'affichage du repère ou encore celle qui permet d'afficher les objets cachés .
//************************************
-.restricted beginner
-.related iconbar
-Palette restreinte
-
--- A FAIRE --
-
-
-
-//************************************
.mouse
-.related gui settings hide point circle move keyboard edit
+.related move edit
La souris
Lorsqu'un outil de construction est sélectionné, le bouton gauche de la
@@ -168,15 +155,14 @@
- Si la touche ctrl ET la touche shift sont enfoncées
pendant le clic-droit sur un autre type d'objet, cet objet devient caché.
- le clic-droit glisser permet de déplacer un objet même quand l'outil "déplacer" n'est pas sélectionné.
- - le clic-droit glisser permet aussi de déplacer les noms des objets (les étiquettes) lorsqu'ils sont visibles dans la fenêtre. Si la touche shift est enfoncée pendant cette opération, le nom peut être déplacer à n'importe quel endroit de la fenêtre. Sinon, l'étiquette du nom restera près de l'objet.
-
+ - le clic-droit glisser permet aussi de déplacer les noms des objets (les étiquettes) lorsqu'ils sont visibles dans la fenêtre. Si la touche shift est enfoncée pendant cette opération, le nom peut être déplacé à n'importe quel endroit de la fenêtre. Sinon, l'étiquette du nom restera près de l'objet.
//************************************
-.background
-.related gui move htmlexport
+.imcenter imstretch imtile background
+.related save
Image de fond de fenêtre
-CaRMetal peut afficher une image derrière la construction courante. La figure doit être enregistrée et l'image (gif ou png) doit se trouver dans le même répertoire que la figure. Cliquer sur l'outil de la zone de palette "Fond : couleur & image" permet de sélectionner le fichier image. Cette icône est une bascule : recliquer dessus lorsqu'elle est sélectionnée aura pour effet d'enlever l'image de fond.
+CaRMetal peut afficher une image derrière la construction courante. Cette image sera encapsulée au fichier après enregistrement, à condition d'enregistrer aussi le classeur. Cliquer sur l'outil de la zone de palette "Fond : couleur & image" permet de sélectionner le fichier image. Cette icône est une bascule : recliquer dessus lorsqu'elle est sélectionnée aura pour effet d'enlever l'image de fond.
La façon dont l'image apparaît en fond de figure est géré par les trois icônes situés dans le coin inférieur droit de cette zone de palette :
@@ -184,7 +170,7 @@
Permet d'étirer l'image pour qu'elle occupe tout le fond de la fenêtre
Permet de centrer l'image de fond
Permet de répéter l'image de fond sous forme de mosaique
-
+
//************************************
.prop_name
@@ -195,7 +181,9 @@
Si un nom d'objet se termine par un nombre, ce nombre est automatiquement placé en indice à l'affichage. Par exemple, si on entre "A1" pour le nom, ce qui sera affiché est A1. Il se peut que dans de rares cas ce ne soit pas ce que vous vouliez voir : il faudra alors simplement utiliser l'alias : entrer "A1" dans cette autre rubrique ne provoque pas la mise en indice automatique.
-Si on demande, par l'intermédiaire de deux icônes dédiés, l'affichage du nom ou de l'alias et de la valeur d'un objet, l'affichage est du type "s=2", où s est le nom ou l'alias de l'objet. Si on termine le nom ou l'alias d'un objet par le caractère de soulignement "_", le signe "=" n'est pas affiché. Par exemple si le nom d'un point est P_ et qu'on demande l'affichage de sa "valeur" (les coordonnées) l'affichage est du type P(2,1;5,2) et non pas P=(2,1;5,2).
+Si on demande, par l'intermédiaire de deux icônes dédiés, l'affichage du nom ou de l'alias et de la valeur d'un objet, l'affichage est du type "s=2", où s est le nom ou l'alias de l'objet. Si on termine le nom ou l'alias d'un objet par le caractère de soulignement "_", le signe "=" n'est pas affiché. Par exemple si le nom d'un point est P_ et qu'on demande l'affichage de sa "valeur" (les coordonnées) l'affichage est du type P(2,1;5,2) et non pas P=(2,1;5,2).
+
+Le nom de certains objets (comme les cercles, les segments, les angles) désigne aussi sa "valeur numérique", et peut être réutilisé comme tel. Par exemple si s1 est le nom d'un segment, il devient possible de créer un cercle fixe de rayon s1/2, de créer une expression contenant s1.
//************************************
.prop_alias
@@ -257,7 +245,7 @@
//************************************
.prop_grid
-.related properties
+.related properties grid
Incrément de la grille
Barre de propriétés, onglet Numérique
Un point libre par définition peut être déplacé n'importe où dans la fenêtre. Mais si on lui impose un incrément autre que 0, ce point va suivre un déplacement discret. Si, par exemple, un point a 0,5 comme incrément, il ne se déplacera que de demi-unité en demi-unité, en suivant les noeuds d'une grille virtuelle 0,5x0,5 centrée sur l'origine du repère interne. On peut aussi définir un incrément pour des points sur objet.
@@ -275,7 +263,6 @@
On peut entrer indifféremment un nombre ou une expression dans ce cadre.
-
//************************************
.prop_angle
.related properties
@@ -396,7 +383,7 @@
//************************************
.prop_showline
-.related properties
+.related properties hide
Bascules montrer/cacher
Barre de propriétés, onglet Aspect
Ces icônes-bascule permettent d'afficher ou de masquer l'objet, sa valeur ou son nom :
@@ -460,20 +447,19 @@
Dans la barre de propriétés, lorsqu'on tape du texte dans certains cadres, on peut utiliser l'icône Insérer ci-contre pour obtenir un menu intitulé "Commandes LaTeX". Les articles de ce menu créeront pour vous automatiquement des formules LaTeX usuelles.
-HotEqn peut afficher beaucoup de formule LaTeX. Les lettres grecques sont supportées (\alpha,\beta, ...), comme beaucoup de symboles LaTeX (\nabla). Bien sûr la notation indice (x_n) ou exposant (x^2) est possible, comme les fractions (\frac{1}{x} ou \dfrac). Les grands opérateurs, comme l'intégrale ou la somme peuvent aussi être affichées, tout comme les limites (\lim_{x \to \infty}).
+HotEqn peut afficher beaucoup de formules LaTeX. Les lettres grecques sont supportées (\alpha,\beta, ...), comme beaucoup de symboles LaTeX (\nabla). Bien sûr la notation indice (x_n) ou exposant (x^2) est possible, comme les fractions (\frac{1}{x}) ou la racine carrée (\sqrt{x}). Les grands opérateurs, comme l'intégrale ou la somme peuvent aussi être affichées, tout comme les limites (\lim_{x \to \infty}).
Les grands crochets ou parenthèses sont très utiles, par exemple pour afficher une matrice :
$\left(\begin{array}{cc}2&3 \\3&4\end{array}\right)$
-Pour de plus amples informations sur les possibilités de HotEqn, vous pouvez vous rendre sur cette page web (en anglais).
+Pour de plus amples informations sur les possibilités de HotEqn, vous pouvez vous rendre sur cette page web (en anglais).
//************************************
.transparent
-.related colors reorder properties
+.related prop_circleline prop_polyline prop_conditionals
Transparence
-
Les objets remplis tels que les polygones ou les cercles peuvent apparaître opaques ou transparents :
@@ -481,11 +467,106 @@
Lorsque l'objet est rempli, on peut le rendre opaque en sélectionnant cette icône dans la barre de propriétés (ongle Aspect): il sera alors susceptible de masquer tous les objets qui ont été créés avant lui dans la construction. Notons qu'on peut aussi combiner l'utilisation de ce paramètre "opaque" avec la notion de niveau de calque.
-Le choix opaque ou transparent peut aussi être fait avant de créer l'objet, dans la zone de palette "Aspect et couleur".
+Le choix opaque ou transparent peut aussi être fait avant de créer l'objet, dans la zone de palette "Aspect et couleur".
+
+//******************************************
+.copy exportpng exporteps
+.related save
+Exporter des images
+
+
+
+Pour copier la fenêtre de construction dans le presse-papier, et ensuite le coller dans un document (image bitmap, c'est à dire en mode point)
+
+Pour exporter la fenêtre de construction au format png (ce qui permet de l'insérer ensuite dans un document). Là encore, l'image obtenue est en mode point.
+
+Comme l'outil précédent, mais l'exportation se fait avec un format vectoriel (donc on évite les disgracieux "escaliers"). Le format eps est utilisé principalement par le logiciel Illustrator.
+
+En utilisant le menu déroulant de gauche, il est également possible d'exporter au format SVG, autre format vectoriel (utilisé par de nombreux logiciels : inkscape, scribus …)
+
+//******************************************
+.move
+.related mouse construction
+Déplacer les objets
+
+L'outil permet par un cliquer-glisser (bouton gauche) de déplacer les objets libres.
+
+Au moment de la sélection de cet outil à la souris on peut savoir quels sont les objets libres : ils "flashent".
+Vivement recommandé : après avoir utilisé n'importe quel autre outil, pour éviter qu'il reste actif, un "échap" permet de revenir à ce mode "mouvoir". Là encore les objets libres "flashent". (Dans l'historique les objets libres sont précédés d'un ">").
+
+Il y a une autre méthode pour déplacer les objets : le cliquer-glisser bouton droit. Ce qui permet de déplacer sans être obligé de quitter l'outil utilisé qui reste alors actif.
+
+On peut déplacer les points, mais aussi les droites, les cercles, les polygones et les coniques : à condition qu'ils aient été définis par des points libres.
+
+Il est possible de déplacer plusieurs points en même temps : les sélectionner avec Shift enfoncé (sauf le dernier).
+//**************************
+.edit
+.related mouse properties
+Modifier un objet
+
+Qaund cet outil est actif, un survol à la souris de la figure donne le nom des objets, même et surtout ceux dont le nom est caché !
+
+Cet outil équivaut un peu au clic-droit sur un objet pour faire apparaître ses propriétés : cette fois c'est le clic gauche.
+Il permet en plus de changer certaines propriétés de plusieurs objets à la fois : sélectionner alors les objets (sauf le dernier) avec la touche Maj.
+
+//*******************************
+.delete undo back
+.related construction
+Supprimer les objets
+
+
+
Cet outil supprime le dernier objet construit. Autre possibilité : utiliser la touche "return".
+
Cet outil supprime l'objet sélectionné, ainsi que tous ceux qui en dépendent. Naturellement, cette action peut produire des effets de bord non désirés, spécialement si les objets utilisent des dépendances complexes. Un conseil : un "échap" immédiatement après l'utilisation de la poubelle permet de revenir au mode "mouvoir" .
+
Celui-ci annule les dernières suppressions.
+
+
+//********************************
+.hide hidden
+.related construction prop_showline mouse
+Cacher/montrer
+
+En fait, il y a deux outils à utiliser conjointement :
+
+
+
Cet outil-bascule permet de montrer ou cacher l'objet dans la construction. Avec "shift+cacher" les objets deviennent "complètement cachés".
+
Tandis que cette autre bascule permet d'afficher ou masquer les objets cachés.
+
+
+Quand un objet a été simplement caché (avec le premier outil) il peut être quand même "affiché" avec le second. Il apparaît alors avec sa couleur, mais un peu plus pâle. Ce qui permet de le déplacer malgré tout, ou encore d'accéder à ses propriétés. Vous pouvez visualiser un tutoriel internet à ce sujet.
+
+//********************************
+.grid numgrid dottedgrid athickness0 athickness1 athickness2 acolor0 acolor1 acolor2 acolor3 acolor4 acolor5
+.related prop_grid point
+Grille
+
+La grille peut être activée/désactivée grâce à cet outil. Quand elle est activée, les axes sont des objets sur lesquels on peut placer des points, avec lesquels on peut créer des intersections, etc. Comme pour les autres objets, il est possible de changer son aspect, et ceci directement grâce aux outils de la palette situés dans "aspect de la grille".
+
+Avant la version 3.5, quand la grille était affichée un point créé était magnétisé par des demi-carreaux, de même qu'un point déplacé avec le bouton droit de la souris.
+A partir de la version 3.5 une grille présente n'est plus magnétique, tout point créé est libre ; sauf s'il est créé avec la touche "alt" enfoncée (grille présente) : alors il est sera attaché aux demi-unités (exception : les points sur les axes). Un clic-droit sur le point en question pour accéder à ses propriétés donnera d'ailleurs ceci :
+
+
+
+Il suffira de décocher l'option pour rendre le point libre.
+
+Comme toute création de point avec la touche shift enfoncée donne un point fixe, la combinaison shift+alt+point donnera un point fixe avec des coordonnées multiples de 0,5 : très commode pour construire rapidement certains types de figure.
+
+Si une figure est enregistrée avec la grille affichée, la grille restera présente à la réouverture du fichier (ou du classeur).
+
+//************************************
+.bi_3Darete bi_3Dcoords bi_3Dcube bi_3Ddode bi_3Dtetra
+.related prop_zindex prop_conditionals boundedpoint
+Constructions 3D
+
+CaRMetal n'est pas un logiciel 3D : on peut construire le "point d'intersection" de deux droites non coplanaires (ce qui pédagogiquement parlant peut être quand même très pertinent) ! Mais le logiciel permet de faire des dessins en perspective "qui tournent", et au très joli rendu. Techniquement c'est un peu complexe, mais un tutoriel internet vous guidera pour ce type de constructions.
+
+On peut aussi utiliser les nombreux fichiers tout faits (testés et utilisés en classe) qui se trouvent dans certains diaporamas du site de CaRMetal.
+
+Dans un même fichier il est possible de construire une figure 2D et une figure 3D qui soient liées (comme un parallélépipède et son patron). Un film (à venir prochainement :-) ! ) vous raconte cette construction.
+
//************************************
.point
-.related nom_points boundedpoint intersection settings mouse properties selfreference
+.related nom_points boundedpoint intersection selfreference
Points
Un point peut être généré par différents outils et de multiples
@@ -494,389 +575,212 @@
outil est sélectionné, flashent de manière à indiquer clairement ce
que vous vous apprêtez à faire :
-
+
+
+Un point peut être attaché ou détaché à tout moment en prenant ses propriétés (clic-droit sur le point) : dans l'onglet Numérique figure un bouton "Attacher" ou "Détacher".
Si la touche "shift" est enfoncée pendant la création, le point sera
-de coordonnées fixe.
+de coordonnées fixes.
-Exemple d'utilisation : faire un "shift-clic" sur un point déjà existant
+Exemple d'utilisation : faire un "shift-clic" sur un point déjà existant
effectue une sorte de clonage du point ciblé. Ceci est particulièrement
utile lorsqu'on souhaite avoir un bon aperçu des positions clé d'un point
dans une figure. Dans certaines circonstances (démarche d'investigation par exemple), cela peut être mieux que l'utilisation d'un lieu ou d'une trace de point... Vous pouvez visualiser un tutoriel internet à ce sujet.
//************************************
.boundedpoint
-.related point line mouse properties
+.related point line function locus
Points sur objets
-Ce sont des points contrains à rester sur une droite, un cercle, une courbe etc... Ils se déplacent de façon continue. Un point peut être attaché ou détaché à tout moment en prenant ses propriétés (clic-droit sur le point) : dans l'onglet Numérique figure un bouton "Attacher" ou "Détacher".
+Ce sont des points contraints à rester sur une droite, un cercle, une courbe, un lieu etc... Un point peut être attaché ou détaché à tout moment en prenant ses propriétés (clic-droit sur le point) : dans l'onglet Numérique figure un bouton "Attacher" ou "Détacher".
-Si l'objet sur lequel on place un point est un polygone ou un cercle, il est possible de demander à ce qu'il soit à l'intérieur de l'objet (enfermé par son périmètre). Cela se fait dans la barre de propriétés, en cochant la case "Dans l'objet" de l'onglet "Numérique".
+Si l'objet sur lequel on place un point est un polygone ou un cercle, il est possible de demander à ce qu'il soit à l'intérieur de l'objet (enfermé par son périmètre). Cela se fait dans la barre de propriétés, en cochant la case "Dans l'objet" de l'onglet "Numérique".
+
+
+
Quand on travaille sur une figure 3D, cet outil spécifique permet de fixer un point dans le polygone représentant un plan ou sur une face de polyèdre.
+
+//***************************************
+.intersection
+.related point selectintersection
+Intersections
+
+
+
+Dans la grande majorité des cas c'est avec l'outil "point" que se crée une intersection entre deux objets (lignes, cercles, coniques, courbes et lieux) : il suffit de cliquer sur ce futur point d'intersection, les deux objets doivent "flasher".
+
+
+On peut aussi utiliser cet outil spécifique en montrant successivement à la souris chacun des deux objets dont on cherche l'intersection.
+
+
+
+Dans le cas d'intersections multiples entre courbes et droites, lieux et droites etc, un point d'intersection peut être déplacé à la souris vers un autre point d'intersection.
+
+//********************************************
+.selectintersection
+.related intersection point
+Choix du point d'intersection
+
+Par défaut, CaRMetal est un logiciel déterministe, c’est-à-dire que la figure doit retrouver la forme et sa position initiale quand, après manipulation directe, les objets constituants de la figure reviennent à leur position initiale. Mais on sait que cette propriété est en contradiction (au moins dans certains cas) avec le suivi continu des intersections des objets.
+
+Il est cependant possible dans certaines configurations particulières (intersections de droites et cercles, de cercles entre eux, de coniques et droites) de forcer la continuité.
+
+La méthode à utiliser est illustrée par l'exemple qui suit : A et B étant donnés, on voudrait construire le triangle équilatéral ABE, avec E dans le demi-plan délimité par (AB) contenant C.
+
+
+
+Si on construit E de manière visuelle, c'est à dire en utilisant l'outil point, déplacer B "à gauche de A" fera passer E dans l'autre demi-plan ! Pour y remédier il suffit par clic-droit d'accéder aux propriétés de E ; alors dans l'onglet "numérique" apparaît ceci :
+
+
+
+Un clic sur "près de" suivi d'un clic sur C résoudra le problème.
+
+Si on préfère utiliser l'outil intersection, les deux points communs E et F seront créés simultanément. Dans ce cas, E sera choisi près de C, tandis que F sera choisi loin de C. (Remarque : un point peut être choisi près de lui-même, plus précisément près du point avec lequel il coincide)
+
+Pour plus de détails, on pourra consulter cet article (onglet exercices et onglet manipulations)
+
+//********************************************
+.midpoint parallel plumb bi_med bi_biss
+.related line point
+Milieux, parallèles, perpendiculaires, médiatrices, bissectrices
+
+
+
+Ce sont des simples raccourcis pour des constructions classiques … qui pourraient même se faire à la règle et au compas seulement ! (en proposant aux élèves un menu restreint)
+
+//**************************************
+.bi_syma bi_symc bi_trans
+.related macro
+Transformations
+
+
+
+Ce sont des transformations classiques qui ne nécessitent aucune explication particulière, si ce n'est celle-ci : non seulement elles s'appliquent aux points, mais également à tout type d'objet, comme les droites, cercles, lieux. L'image apparait en prévisualisation dès qu'on s'approche de l'objet à transformer. Cependant il peut arriver qu'on ait envie de construire l'image d'un point sur objet, plutôt que celle de l'objet tout entier ; dans ce cas il suffit, pendant la phase de prévisualisation, d'utiliser la touche "alt". Cette remarque vaut aussi pour toutes les macro-constructions pour lesquelles le dernier objet initial est un point, et dont l'unique objet final est un point également.
+
//************************************
.line ray
-.related point parallel properties segment
+.related segment fixedangle
Droites et demi-droites
Les droites peuvent être des parallèles, des perpendiculaires ou des droites définies par deux points. Une demi-droite peut être définie par deux points, ou être issue d'une utilisation de l'outil angle fixe.
//************************************
.segment fixedsegment
-.related expressionsyntax point parallel properties line
+.related expressionsyntax point line
Segments et segments de longueur fixe
Pour créer un segment il suffit de désigner deux points, ou de les créer "à la volée". On peut aussi créer un segment de longueur fixe en maintenant enfoncée la touche Maj tout en cliquant sur le second point. En demandant les propriétés d'un segment déjà créé, il est aussi possible de fixer sa longueur en demandant ses propriétés (clic-droit sur le segment).
-
Lorsqu'on utilise cet outil "segment de longueur fixe", la barre de propriété apparaît automatiquement et vous permet d'entrer un nombre pour fixer sa longueur.
+
Lorsqu'on utilise cet outil "segment de longueur fixe", la barre de propriété apparaît automatiquement et vous permet d'entrer un nombre pour fixer sa longueur : ce "nombre" peut très bien être une expression !
+
+//************************************
+.vector
+.related macro
+vecteur
+
+Une première méthode pour créer un vecteur, sachant aussi que dans les macros on trouvera d'autres méthodes pour les construire (définition par un bipoint, par coordonnées). Il est possible aussi, par macros, d'ajouter des vecteurs et de les multiplier par un réel.
+
+//***************************************
+.area
+.related prop_polyline boundedpoint
+Polygones
+
+Pour créer un polygone, cliquer successivement sur chacun des sommets, en effectuant un double-clic sur le dernier (ou tout simplement en le fermant).
+
+Ils peuvent avoir plusieurs apparences.
+
+Et leur bord peut être plus ou moins épais.
+
+Chaque polygone a un nom (par défaut du type polyi), mais ce nom est aussi son aire algébrique, et peut être utilisé dans n'importe quelle expression. Pour un polygone non croisé ABCDE…, le signe ne dépend pas du tout d'un éventuel "sens des aiguilles d'une montre", mais du signe de la mesure principale de l'angle des deux vecteurs BA et BC ; d'où l'intérêt d'utiliser dans certains cas des expressions du type abs(polyi).
+
+L'aire affichée dans la fenêtre grâce à la sélection de cette icône sera quant à elle toujours positive.
+
+Si on construit un point sur un polygone, il est possible de demander à ce qu'il soit à l'intérieur de l'objet (enfermé par son périmètre). Cela se fait dans la barre de propriétés, en cochant la case "Dans l'objet" de l'onglet "Numérique".
+
+//***********************************
+.angle
+.related properties fixedangle expression
+Angles
+
+Créer un angle, c'est d'abord créer un objet "décoratif" (dans la sens où il ne permet de rien construire géométriquement à partir de lui). Mais son nom (par défaut du type ai) c'est aussi sa mesure : on peut l'utiliser dans une expression. Seule possibilité de construction géométrique : il est possible "d'attacher" un point à un angle par l'intermédiaire de la barre de propriétés : son mouvement sera alors limité à l'aire délimitée par les deux côtés. Suivant la sélection (ou non) de cette icône , l'angle sera compris entre 0° et 180°, ou entre -180° et 180°.
+
+Pour plus de détails sur les angles et leurs mesures on pourra regarder ce tutoriel internet.
+
+
+//**********************************
+.fixedangle
+.related circle expressionsyntax prop_angle
+Angles fixes
+
+Les angles fixes n'ont pas de troisième point, mais une taille fixée. Ce type d'angle ressemble plus à une demi-droite qu'à un angle : d'ailleurs on peut créer des intersections avec cette demi-droite, ou placer des points dessus.
+
+A la création d'un tel angle, apparait un cadre numérique de la barre de propriétés : dans ce cadre on peut entrer un nombre fixe, un nombre dépendant d'un curseur, mais aussi toute sorte d'expression.
+
+Suivant la sélection (ou non) de cette icône , l'angle sera compris entre 0° et 180°, ou entre -180° et 180°.
+
+Pour plus de détails sur les angles et leurs mesures on pourra regarder ce tutoriel internet.
//************************************
-.circle circle3
-.related properties point transparent fixedcircle
+.circle circle3 bi_circ bi_arc
+.related prop_circleline point transparent fixedcircle
Cercles
Il existe dans CaRMetal 5 types d'objets circulaires :
-
Les cercles définis par centre et point.
-
On désigne un point M
+
Les cercles définis par centre et point.
+
Les cercles fixes définis par centre et rayon numérique.
+
Les cercles définis par rayon (défini par deux points) puis centre.
+
Les cercles passant par trois points.
+
Les arcs passant par trois points.
+
+Tout cercle créé par l'un ou l'autre des quatre premiers outils peut se limiter à un arc de cercle. Il suffit de créer ou d'utiliser deux points A et B du cercle (les extrémités) ; puis d'accéder aux propriétés du cercle. Dans "numérique", on choisira "arc". Ce choix est en fait une bascule : "supp arc" redonne le cercle complet.
+
+Et si on passe à l'onglet "aspect", ces arcs de cercles pourront être ou non orientés : il suffit d'utiliser cet outil-bascule .
-
-//image- images/circle.png
-There are three types of circles. Circles around a point M and through
-a point A, circles around a point M with radius AB, and fixed circles.
-Each type has an own tool. The first kind expects two points, the
-second three, and the last only one.
-
-Drawing a circle can be restricted between two defining points,
-yielding circular arcs. In this case, it is possible to keep the arc
-less than 180 degrees (i.e., always the shorter arc will be drawn
-connecting the ends of the arc). You select the end points using a
-button in the property dialogs of the circle.
-
-Circles can be filled. Arcs can be filled in two ways, either as a
-chord section of a circle, or as a pie.
-
-Circles can be restricted to their necessary parts. These partial
-circles are only drawn in little arcs through all points related to
-them.
-
--> See: Fixed Circles
-
+
+//***************************************
.fixedcircle
-.related circle reorder expressionsyntax properties point transparent
-Fixed Circles
-
-//image- images/fixedcircle.png
-Fixed circles have no radius point. To generate such a circle, hold
-the shift key when defining the radius point, or use the special tool
-for this. This will open the settings dialog, where you can enter any
-expression for the radius. If the circle is dragged immediately after
-the generation, the settings dialog will not open, but the current
-size will be used.
-
-Fixed circles can be sized to the distance of two points using any
-expression. Instead of writing the expression in the
-__properties__dialog, the value can be taken from the construction.
-Either use another expression, or two points, or another circle. for
-this, use the button "Set size ..." in the settings dialog.
-
-//image images/CircleDialog.jpg
-
-The size of fixed circles can be dragged with the mouse, if the fixed
-state is released in the __properties__ dialog. If the fixed state is
-set and the center of the circle is free, the center will be dragged
-instead.
-
-.intersection
-.related point properties segment selectintersection
-Intersections
+.related circle expressionsyntax properties point transparent
+Cercles fixes
-//image- images/intersection.png
-__Intersections__ can either be created by the point tool, clicking on
-an intersection point, or with a special intersection tool. The
-intersection tool is hidden by default, since the point tool can be
-used instead in most cases.
-
-The program can compute intersections between lines, circles, function
-graphs, parametric curves and automatic tracks. In paper constructions,
-intersections might not be thought of as an extra step to do. But the
-computer won't compute all possible intersections. Also it makes the
-necessary steps much clearer, if the user has to construct
-intersections explicitly.
-
-It is possible to create intersection between __conicßsections__,
-__tracks__, and __functions__ too. Note, that these intersections may
-need some time to compute. Creating very many intersections of the
-complicated kind will slow down your construction. Moreover, only one
-of the intersection points is computed and updated in a continuous
-way. The user can drag the intersection to other intersection points.
-
--> See: Selecting Intersections
-
-.selectintersection
-.related intersection point
-Selecting Intersections
-
-Circles intersect in two points. The program creates both
-__intersections__ at once, if the two circles are selected as
-parameters of the intersection tool. If you need only one, hide the
-other. For automatically created intersections, the other intersection
-will not be generated.
-
-//image images/Intersections.jpg
-
-There is a subtle problem with the way the program selects the two
-intersections of circles (or a circle and a line). In contrast to
-other programs, this is done in a predictable way. For circles, the
-order will change, if the circles are switched. The intersections
-between a line and a circle depend on the direction of the line (i.e.
-the order of its creating points). Try moving the line so that it does
-no longer intersect the circle, then move it back. The
-intersection will be the same.
-
-Sometimes the intersection must be specified. This can be done by
-telling one of the intersection points to be __differentßfrom__ a
-certain other point. The intersections will then be selected such that
-the chosen intersection is furthest away from the other point. The
-dialog for intersections contains a special field to specify the other
-point, or a button to select the point interactively.
-
-Note that this type is intersection is created automatically, if the
-other intersection point is a point on the perimeter of both circles,
-and if this point is visible.
-
-You an also specify that the intersection should be the one that is
-__closeßto__ a given point.
-
-Selections with circles can be set to switch automatically whenever
-they become invalid. As with automatic tracks, the construction
-will then run through all states.
-
-.parallel plumb midpoint
-.related line point properties
-Parallel and Perpendicular Lines, Midpoints
-
-//image- images/parallel.png
-These are simply shortcuts for classical constructions. The first
-two tools create lines. The midpoint is a point, of course. These
-tools could be replaced by standard circle and ruler constructions, or
-by macros.
-
-Perpendicular lines to segments become invalid, if the intersection
-is not within the segment. You can switch that off in the properties
-dialog.
-
-.move
-.related circle angle background mouse
-Move Objects
-
-//image- images/move.png
-This tool moves points (an alternative to the right mouse button). It
-can also drag the size fixed circles and angles, unless these objects
-are fixed for dragging. To unfix those objects, hold down the
-__Ctrl-key__ while moving.
-
-If lines, circles, polygons, or conic sections are generated by free
-points only, they can be dragged too.
-
-When the move tool is selected or when it is reset with the Esc
-key, all moveable objects blink in red. This helps to identify the
-__freeßpoints__. Moreover, free objects are also marked in the
-__objectßlist__ by ">".
-
-It is possible to move several points at once. To do this, hold down
-the __Shift-key__ while selecting the points, and release it for the
-last point.
-
-When the shift key is hold during the movement, the movement will be
-restricted, to the point where an intersection becomes invalid. For
-applets, this behaviour can be made the default by the
-"restrictedmove" applet parameter.
-
-If the __ctrlßkey__ is hold while moveing, the old construction will
-be visible in the background during the movement.
-
-.tracker
-.related point animate background mouse objecttracker
-Manual Point and Line Tracking
-
-//image- images/tracker.png
-This tool draws ___tracks__ of moving points or lines. For a point its
-position is tracked, and for a line, a curve is generated with the
-tracked lines as tangent lines (a __polarßset__).
-
-//image images/Track.jpg
-
-First one or more point or line to be tracked have to be selected. To
-select more than one object to be tracked, hold down the __Shift-key__
-when selecting objects. Then some point, slider or other moveable
-object can be dragged with the left mouse button. This moves the
-selected object and creates the track.
-
-The color of the track is the same as of the tracked objects, and
-the track will remain visible until another construction tool is
-selected, or the track tool is reset with the __Escßkey__.
-
-Point and line tracks can be mixed. Line tracks can be produced
-from lines, rays or segments.
-
-To turn a track into a permanent construction object, you have to use
-the automatic tracking tool.
-
--> See: Automatic Point and Line Tracking
-
-.objecttracker
-.related tracker point animate
-Automatic Point and Line Tracking
-
-//image- images/objecttracker.png
-This tool draws point and line __tracks__ (as the manual tracking
-tool) by animating the movement of a single point along a line or
-circle. First select one or more points or lines to be tracked. Hold
-down the __Shift-key__, if more than one object should to be tracked.
-Then select a point on a line or on a circle, a slider or an
-expression, or a line or circe. In the latter case, you need to select
-the point to move on this line or circle too. The point will be
-moved, or the slider or expression be changed, creating the tracks of
-the selected objects.
-
-Should the first tracked object become invalid due to an invalid
-intersection, the movement is automatically reversed. In case the
-first track point becomes invalid because two circles no longer
-intersect, the other intersection point will be chosen when the moving
-point reverses its movement. Thus the construction runs through all
-possible __states__.
-
-The __animationßspeed__ can be reduced or increased with the shift key
-and the left or right __arrowßkeys__. Repeated left mouse button
-clicks cycle the animation through 3 modes: animation and track,
-animation and hidden track, track with no animation. In the last mode
-the moving point can be dragged with the left mouse button. Other
-points can be dragged with the right mouse button at any time, but
-while this is done, the track will be hidden and any animation
-paused.
-
-If a construction file is saved with this tool as active tool, it will
-become active when the file is loaded.
-
-To stop the animation and clear the tracks, select any tool., or press
-Esc.
-
-__PermanentßTracks__
-
-To make the first track a permanent construction object, press shift
-and enter, or select the automatic track tool with the control key. A
-new object will be created using the currently selected color and
-weight properties. The track can be edited in the same way as any
-other object. It is possible to create __intersections__ between the
-track and other objects, and to put points on the track.
-
-Tracks saved this way are calculated at every change in the figure,
-which may slow down the program on older computers. It is therefore
-wise to limit the number of tracks, and to restrict their lengths to
-reduce the calculation load. Moreover, it is possible to turn the
-calculation of a track off or on by using the fixed checkbox in
-its __properties__ dialogue.
-
--> See Manual Point and Line Tracking
-
-.animate
-.related circle line
-Animation
-
-//image- images/animate.png
-This will animate a single point, moving along one or several
-segments or circles. To start the animation, select a point, then a
-sequence of segments or circles. Finish by selecting the last point
-with a double click.
-
-To stop the __animation__, click on the construction. To reverse the
-animation shift click. shift and right or left __arrowßkeys__ changes
-the speed of the animation.
-
-Animations are saved to the construction file. In applets, the
-animation will prevent user interaction completely.
-
-To go back and forth on line segments or on arcs, __shiftßclick__ into
-the construction. This will also reverse the direction in circles.
-
-.angle
-.related circle properties fixedangle
-Angles
-
-//image- images/angle.png
-Normal Angles are decoration and cannot be used to construct anything.
-The exception is that it is possible to __bind__ points into the angle
-area. The order of input for such angles is A, B, C, where B is the
-corner point.
-
-Angles can be displayed in three different sizes. The largest size
-will display a circular arc, which starts in A.
-
-Angles can have Greek letters in their name. To achieve an alpha,
-enter \a, \A etc. You can use all Unicode letters with \0XXXX, where
-XXXX is any hexadecimal digit. Angles, which are 90∞ or have a name
-starting with "." will be labeled with a dot, if the size display is
-switched on. Angles may be filled. It is probably better to use an
-__alias__ for angles to achieve this.
-
-By default, angles are never larger than __180ßdegrees__. The order of
-A and C does not matter. However, this can be switched off in the
-properties dialog of the angle.
-
-As with other objects, the invisible thickness shows the label, but
-not the angle.
-
--> See: Fixed Angles
-
-.fixedangle
-.related circle reorder expressionsyntax properties angle
-Fixed angles
-
-//image- images/fixedangle.png
-Fixed angles have no third point, but a fixed size. This type of angle
-behaves more like a ray than like an angle. It is possible to
-intersect with the ray or place points on it.
-
-__Fixedßangles__ are generated by holding down the __Shift-key__,
-while clicking for the third point, or with the special tool for fixed
-angles. This will open the settings dialog, where the user can enter
-any expression for the size of the angle. If the angle is dragged
-immediately, the settings dialog will not open.
-
-Fixed angles can be sized using three given points, or any other
-expression or angle. To do this select the button "set size ..." in
-the settings dialog. Then e.g., select three points A, B, C, where B
-is the corner point. The angle will be the same size as the angle ABC.
-You can also use any other expression or angle to size the angle.
-
-Fixed angles can be __inverted__. Thus one does not have to use
-positive orientation. Furthermore, if a fixed angle is restricted to
-180∞ (which is the default), and if such an angle is constructed in a
-mathematical negative way, it will be inverted. There is an icon in
-the settings dialog, which controls the inversion.
-
--> See: Angles
-
-.area
-.related point properties background
-Filled Polygons
-
-//image- images/area.png
-This tool generates filled __polygons__ with given corners. Select
-the corners of the area, and __doubleßclick__ the last point. The
-sides are hidden, when the polygon has thin thickness in the
-properties dialog.
+A la création d'un tel cercle, la barre de propriété s'ouvre alors automatiquement et il n'y a qu'à taper au clavier dans le cadre.
+
+On peut entrer indifféremment un nombre ou une expression dans ce cadre ; ou le nom d'un objet, comme "c1/2", si c1 est le nom d'un cercle déjà construit, "s2/s1", si s1 et s2 sont les noms de deux segments existants.
+
+Dans l'onglet "numérique" il est possible de ne plus cocher "fixe" : la taille du cercle peut alors être changée par un cliquer-glisser bouton droit à la souris (ou par un cliquer-glisser bouton gauche si entre temps on est passé au mode mouvoir par un "échap" par exemple).
+
+//**********************************
+.quadric
+.related properties point transparent
+Coniques
-The value of the filled polygon is its area. The sign of the value
-depends on the orientation of the corners.
+Les coniques sont déterminées par les solutions des équations formées par les commbinaisons linéaires de x^2, y^2,x , y et 1 (formes quadratiques de deux variables). C'est bien connu, ces coniques sont déterminées par 5 points. Pour créer de telles coniques, il suffit simplement de choisir 5 points.
+Il est possible d'attacher des points à une conique, et de créer des intersections de coniques avec d'autres objets.
+
+En affichant l'historique de la construction, il est possible de retrouver une équation de conique. Dans ce cas choisir "Show formula"
+
+//*****************************************
+.text
+.related properties latex
+Text
+Cet outil permet d'afficher dans la construction un texte sur plusieurs lignes.
+
+Un clic-droit sur un texte permet d'accéder à ses propriétés. On peut alors suivant l'onglet choisi modifier le texte lui-même, changer sa couleur, utiliser du conditionnel ou des calques.
+
+En faisant précéder une ligne de *, **, ou *** on agrandit l'écriture.
+
+Si on désire utiliser des commandes LaTeX, il suffit d'inclure le texte entre deux $. De plus, il est possible d'encapsuler des expressions telles que Ei en écrivant %Ei% : ces expressions seront évaluées et le texte affichera leur valeur. Les chaînes de caractère de la forme %=s% retournent le nom courant de l'objet "s", et les chaînes de la forme %~s% retournent une équation de s.
+
+Un article CARzine illustre bien le propos.
+
//************************************
.expression
-.related angle circle properties reorder expressionsyntax
+.related fixedangle fixedcircle properties expressionsyntax selfreference
Expressions
Cet outil permet de placer une expression dans la fenêtre de travail. Lorsqu'on clique dans la construction, la barre de propriété est prête à recevoir une expression.
@@ -889,1756 +793,453 @@
La valeur d'une expression peut aussi être fixée par un curseur. Pour cela, cocher la case "Curseur" de la barre de propriété et modifier éventuellement ses valeurs min et max (cadres de valeurs initiales -5 et 5).
-
+//********************************
.expressionsyntax
-.related fixedangle fixedcircle point properties reorder function
-Syntax for Expressions
-
-Name
- Example
- DEscription
-
-+, -, *, /,^ or **
- 3.5*3+3/(4-5^2)
- Elementary math.
-
-Name of object
- AB/CD
- The name of a segment, circle, angle and other expression. The object
-must not depend on the current object. To refer to objects
-by name there is the syntax @name or @"name". This will not work in
-macros, however. If the object is not found, an error will occur.
-
-Function
- sin(a)
- The functions abs, sign, sin, cos, tan, arcsin, arccos, arctan, sqrt,
-exp, log, round, ceil, floor, deg, rad, sinhyp, coshyp, angle180 and angle360. Note
-that the trigonometric functions work with degrees. To convert, use
-deg(x), or the functions rsin, rcos, rtan, rarcsin, rarccos, rarctan.
-
-User __Functions__
- f(a)
- Evaluation of a user defined function object at a.
-
-__Pi __
- pi
- The constant Pi.
-
-__x__,__y__,__z__
- x(P), y(P) , z(P)
- x- and y-coordinates of a point, or the z-value of the point.
-
-__d__
- d(P,Q)
- Distance of two points.
-
-__d__
- d(x)
- Computes changes of the expression x. If x is a point, it computes
-movements.
-
-__sum__
- sum(x,f)
- Sums up x. If f is negative or invalid, the sum is reset to 0.
-
-__a__
- a(P,Q,Z)
- Size of angle PQZ.
-
-__scale__
- scale(x,a,b)
- The relative position of x in [a,b), if x is in that interval. Else
-the expression becomes invalid.
-
-__if __
- if(e,e1,e2)
- Returns e1, if e is valid, else e2.
-
-__invalid__
- invalid Returns an invalid expression.
-
-&&,||,! !
- (x<4 && y<4)
- Logical expressions. 1 is true, 0 is false.
-
-<, >, <=, >=, ==, ~=
- x
+
+sur lequel il suffit de cliquer. Et en choisissant les fonctions prédéfinies on obtient :
+
+
+
+Par un simple clic les formules sont immédiatement insérées. Il y a les tests, les constantes, les fonctions mathématiques, les expressions géométriques.
+
+Tests
+
+Booléens : lorsqu'on met deux expressions de part et d'autre d'un symbole de relation comme ">", le résultat est une expression qui vaut 1 si la relation est vraie, 0 sinon : on parle d'expression booléenne, mais les nombres 0 et 1 sont considérés aussi comme des entiers qui peuvent être additionnés, divisés etc. Les relations possibles sont les suivantes : < ; > ; <= ; >= ; == (pour "égal à") ; ~= (pour "environ égal à", c'est à dire égal à 10-10 près).
+
+Exemples : "3>4" donne 0, ainsi que "3==4" mais "3<4" donne 1.
+
+Inside(P,c) peut être considéré comme une expression booléenne, valant 1 si le point P est à l'intérieur du cercle c, 0 sinon (vaut aussi pour les polygones). Mais en fait c'est un peu plus, car cette expression vaut 1/2 si P est exactement sur le bord !
+
+Négation : le point d'exclamation placé devant une expression booléenne (égale à 0 ou à 1)la soustrait à 1. Ce symbole joue donc le rôle de négation. Il effectue d'ailleurs une conversion en booléen selon la règle "tout ce qui n'est pas nul vaut un". Pour coder a≠b on écrit donc "!(a==b)".
+
+Conjonction (le "et") : le symbole "ampersand" (&) dédoublé sert de conjonction entre expressions bolléennes. Il a le même effet que la multiplication, sauf qu'il convertit en booléen les expressions, permettant d'écrire "2&&3" pour 1. Si c1 et c2 sont deux surfaces (polygones ou disques), et P un point, la variable "inside(P,c1)&&inside (P,c2)" est égale à 1 si et seulement si le point P se trouve dans c∩c2 ce qui permet de gérer les diagrammes de Venn.
+
+Disjonction (le "ou") : la disjonction entre booléens est représentée par un symbole "pipe " (|) lui aussi dédoublé ; p||q est donc nul si et seulement si p et q le sont tous les deux.
+
+if( , , ) : le traditionnel if(‹test›,‹alors…›,‹sinon...›).
+
+Constantes
+
+Constante d'Archimède : le nombre se note pi ou Pi.
+
+invalid est le nombre qu'on obtient lorsque par exemple on cherche l'abscisse du point d'intersection de deux droites parallèles ou la racine carrée d'un nombre négatif. Ce n'est pas à proprement parler une constante ! Sauf qu'elle ne provoque pas d'erreur de syntaxe, et qu'on peut la citer pour rendre invalide une grandeur . Par exemple si un nombre est égal à "if(x(P1)>0;x(P1);invalid)", ce nombre vaudra l'abscisse de P1 sauf si P1 est à gauche de l'axe des abscisses, auquel cas ce nombre ne sera pas défini. Ce qui permet de faire de la géométrie conditionnelle (le modèle hyperbolique de Pointcaré est ainsi défini dans un demi-plan).
+
+windoww est en unité, la demi-largeur de la fenêtre. Par exemple cette constante vaut 6 si les abscisses vont de -2 à 10. Elle se modifie à chaque zoom.
+
windowh est, en unité, la hauteur de la fenêtre. Elle vaut donc 12 si les
ordonnées vont de -4 à 8. Elle se modifie à chaque zoom.
+
windowcx et windowcy sont les coordonnées du centre de la fenêtre.
+
pixel est le nombre de pixels qu’il y a dans une graduation (sur chacun des axes : on rappelle que sous CaRMetal le repère est toujours orthonormé, ce qui garantit que les cercles ne ressemblent pas à des ellipses). Il se modifie à chaque zoom.
+
+(exemple d'utilisation de ces quatre dernières "constantes" : créer un point B à une "distance" de A indépendante du zoom en écrivant x(B)=x(A)+12/pixel et y(B)=y(A) (B sera à 12 pixels de A vers la droite) ; ou encore x(B)=x(A)+windoww/18 et y(B)=y(A)+windowh/12. Les points "liés à la fenêtre", ou points "flottants", sont définis par ce genre de procédé, et c'est … fait en un seul clic).
+
+Fonctions mathématiques
+
+random(x,b) renvoie un nombre aléatoire compris entre 0 et x.
+Si b vaut 0 (false), il n'y a pas de recalcul et le random n'est calculé qu'une seule fois. Si b vaut 1 (true) le random recalcule tout le temps (à chaque fois que quelque chose se passe dans la fenêtre).
+
+random(x) est possible et équivaut à random(x,1) : bien évidemment on n'utilisera pas random (x,1) tel quel (recalcul chaque fois qu'il se passe quelque chose dans la fenêtre !) mais des expressions du type random(x,‹test›), afin que le recalcul se fasse uniquement dans des conditions choisies.
+
+Exemple d'utilisation : on commence par créer une expression qui vaut 0, nommée "tps" et qui est destinée à être animée ultérieurement. On l'aura deviné, cette animation est censée représenter un chronomètre (ou encore un compteur). Puis on crée l'expression : "floor(random(3;d(tps)~=1))", qui donne au hasard 0, 1 ou 2. L'expression (subtile) d(…) étant en quelque sorte celle qui calcule une variation instantanée, notre expression sera recalculée chaque fois que le chronomètre (ou le compteur) augmente de 1.
+
+sqrt(x) représente la racine carrée de x. L'expression obtenue est indéfinie si x est négatif.
+
+abs(x) désigne la valeur absolue de x. Par exemple ”abs(x(M))” désigne la distance entre le point M et l’axe des ordonnées.
+
+sign(x) désigne le signe de x, soit sign(x)=x/|x| (avec la convention sign(0)=0). Ses valeurs sont 1,-1 et 0.
+
+round(x) désigne l'entier le plus proche de x, avec la convention habituelle d'arrondir au-dessus si la partie fractionnaire est 0,5 : round(2,5) vaut 3 et non pas 2.
+
+floor(x) désigne l'entier immédiatement inférieur à x, soit sa partie entière si x est positif. Mais floor(-3,2) vaut -4 !
+
+ceil(x) désigne l'entier immédiatement supérieur à x.Les fonctions floor et ceil implémentent donc des valeurs approchées à 1 près par défaut (floor) et par excès (ceil). Pour faire un arrondi à 0,001 près, on fait "round(100*x)/100".
+
+min(a,b) : renvoie le plus petit des deux nombres a et b.
+
+max(a,b) : renvoie le plus grand des deux nombres a et b.
+
+Les fonctions trigonométriques sont : sin, cos, tan, arcsin, arccos, arctan. Elles fonctionnent avec les degrés ! Si x est en radian, on utilisera : rsin, rcos, rtan, rarcsin, rarccos, rarctan. Autre possibilité : utiliser deg(x) qui convertit en degrés ou rad(x) qui convertit en radians. Ainsi : rsin(x)=sin(deg(x)).
+
+angle180(x) donne la mesure principale de x (donc entre -180 et 180).
+
+angle360(x) donne la mesure équivalente à x comprise entre 0 et 360.
+
+exp(x) désigne l’exponentielle de x
+
+log(x) désigne le logarithme népérien de x.
+
+coshyp(x) désigne le cosinus hyperbolique de x, c'est à dire (ex+ e-x)/2.
+
+sinhyp(x) désigne le sinus hyperbolique de x, c'est à dire (ex- e-x)/2.
+
+Expressions utilisées en analyse
+
+Dans ce paragraphe, f désignera toujours une fonction définie soit par soit par .
+
+
+zero(f,a,b) donne une solution de l'équation f(x)=0 sur l'intervalle [a;b]. Il est souhaitable, dans la mesure du possible, que f s'annule exactement une fois dans l'intervalle [a;b]. Sinon rero(f,a,b) est indéterminé.
+
+min(f,a,b) donne la valeur de x pour laquelle f est minimale sur [a;b]. Le minimum est déterminé s'il n'est atteint qu'une fois sur l'intervalle [a;b].
+
+max(f,a,b) donne la valeur de x pour laquelle f est maximale sur [a;b]. Le maximum est déterminé s'il n'est atteint qu'une fois sur l'intervalle [a;b].
+
+diff(f,x) calcule le nombre dérivé de f en x. Si f est une fonction de plusieurs variables, le nombre dérivé est calculé par rapport à la variable x.
+
+integrate(f,a,b) : intégre la fonction f de a à b en utilisant la méthode de Romberg.
+Si f est en "points seulement", avec un "pas" à choisir, c'est la somme de Riemann (rectangles "inférieurs") qui est calculée. Si on désire la somme de Riemann (rectangles "supérieurs"), on créera l'expression integrate(f), avec les bornes écrites cette fois dans la définition de f (comme "min" et "max"). Si f est une courbe paramétrée, integrate(f) (sans les bornes) donne l'aire algébrique qu'elle délimite.
+
+length(f) donne la longueur (approchée) de la courbe de f laquelle peut être une fonction définie sur un intervalle par un "min" et un "max", en "points seulement" et avec un certain "pas" (limité à 0,0001), ou une courbe paramétrique (mêmes conditions) ou un lieu.
+
+d(x) et sum(x) sont des fonctions réservées aux "experts" ! On trouve des explications détaillées à ce sujet soit dans ce premier article internet, ou encore celui-là.
+
+Expressions géométriques
+
+x(A) et y(A) désignent les coordonnées d'un point A. Si au lieu d'un point on utilise une droite (ou un segment, un vecteur) ces expressions renvoient les coordonnées d'un vecteur directeur de norme 1 de cette droite. Ainsi y(d1)/x(d1) est le coefficient directeur de la droite d1.
+
+d(A,B) désigne la distance entre les deux points A et B.
+
+a(A,B,C) donne une mesure en degrés de l'angle orienté formé par A, B et C (en fait celui formé par les vecteurs BA et BC). Cette mesure est par définition comprise entre 0° et 360°. Si on désire la mesure principale (entre -180° et 180°) on utilisera "angle180(a(A,B,C))". Attention : si on a créé l'angle avec l'outil angle mais sans choisir "angles supérieurs à 180°", l'expression obtenue (du type a1) correspond à un angle non orienté, c'est à dire compris entre 0° et 180°. C'est pourquoi a(A,B,C) et cet a1 peuvent être différents …
+
+//********************************
+.image3
+.related point background
+Insertion d'image
+
+On peut ajouter des images à la construction en temps qu'objets. Ces images utilisent soit deux points d'ancrage, soit trois. Dans le premier cas l'image subit un agrandissement ou une réduction, dans le second cas une transformation affine. Si vous désirez uniquement deux points, double-cliquez sur le second. Si on sauvergarde le fichier dans un classeur, l'image est encapsulée dans ce fichier au format zirs, donc réapparaîtra à l'ouverture du fichier.
+
+//*******************************
+.function parametricfunction bi_function_u
.related expressionsyntax properties
-Functions and Curves
-
-//image- images/function.png
-The program can display __functions__ and parametric __curves__ in
-the construction, or use __user&defined&functions__ of one or more
-parameters in other expressions.
-
-First, we describe the type of functions for display in the
-construction window. In the dialog, enter the start and stop
-value of the parameter variable and the step size. If you wish, you
-can use any string not containing blanks as a parameter name. The
-default is "x".
-
-//image images/Function.jpg
-
-For a function, leave the X-value empty or set it to "x", and enter
-an expression dependong on "x" for the Y-value. For a parametric
-curve, one needs two expressions, one for the X-value and one for the
-Y-value.
-
-The program will increment the parameter variable from start to end
-using the given step size. If the function is valid between two
-parameter steps, a line segment is drawn in the construction
-using the construction coordinates.
-
-This type of functions can be used in other functions. The Y-value
-will be evaluated then.
-
-Functions and curves can be filled. For a parametric curve, the center is
-0, but can be changed. To do that use the __properties__ dialog and
-press the "Select Center" button. Functions can be reduced to a
-sequence of points. If a function is filled additionally, a Riemann
-step function will be drawn.
-
-Display functions or curves can intersect with other objects, and
-points can be fixed on the function graph. Geometrically these
-functions behave like a curve.
-
-User defined functions of several variables cannot be plotted. Their
-purpose is to be used in other expressions. Consequently, there is a
-much simpler dialog for these functions, which can be called by
-holding the __ctrl-key__ while pressing the function icon. One has to
-declare all variables, separated by blanks, in this dialog. The
-variables may then be used in the expression. There is only one
-expression, of course. The function will display its definition,
-unless it is hidden, of course. The display can be moved as usual.
-
-.defaults
-.related line angle colors
-Default settings
-
-You can set the __defaults__ for color and appearance and some other
-properties of new objects.
-
- - color of objects
- - thickness of objects
- - style of points
- - partial circles
- - partial lines
- - segments as arrows
- - show name
- - show value
- - use long names
- - large and bold font
- - angles larger than 180 degrees
- - non-transparent objects
-
-These default settings are available in the menu and as tool bar
-icons.
-
-.edit
-.related mouse properties conditions
-Edit Objects
+Fonctions et courbes
-//image- images/edit.png
-This tool edits the properties of one or more objects. To select
-several objects, hold the __Shift-key___. The edit dialog for more
-than one objects has fields in an invalid state. Only the changed
-fields will be used to update the objects.
-
-If the __Ctrl-key__ is pressed when the tool is selected, the last
-object will be edited.
-
--> See: Conditional formatting
-
-.conditions
-.related edit properties
-Conditional Formatting
-
-If the __Ctrl-key__ is pressed, when an object is selected with the
-right mouse button, an editor for the __conditionalßformating__ of
-objects opens. The dialog is also accessible from the normal
-__properties__ dialog by holding the __Ctrl-key__ for OK, or with a
-separate button, if this option is enabled in the
-__specialßsettings__.
-
-//image images/Conditions.jpg
-
-For colors, thickness and other properties, it is possible to define
-conditions to activate these properties. This is useful for special
-effects. Each property can have a condition and it will be enabled
-when this condition evaluates to true, which is any value other then
-0.
-
-A special condition is the z-buffer value. It determines the order
-of painting. The objects with the largest z-buffer are painted first.
-All objects that have a z-buffer value are painted after the background
-objects, but before any other objects.
-
-One can set the properties of several objects at once. The current
-object can be referred to by the name "this".
-
-.show
-.related hide
-Hide by Color
-
-//image- images/showcolor.png
-Show or hide objects with specific colors. This is used to make the
-construction clearer.
-
-.grid
-.related zoom move mouse
-Grid
-
-//image- images/grid.png
-This tool toggles the display of the coordinate system, the coordinate
-system with axes, and no coordinate system. There is a dialog to set
-the __color__ and __thickness__ of the coordinate system, and the
-__font__ of the labels.
-
-If the grid is on, new points and points moved by the right mouse
-button __snap__ to grid points. However, it is possible to snap with
-the move tool and the __leftßmouseßbutton__ instead, changing an
-__specialßsetting__. This may be useful for constructions on Web pages
-with grids.
-
-If the grid is on while the construction is saved, it will be switched
-on, when the construction is loaded. The grid settings are also saved
-in the construction file.
-
-.replay
-.related htmlexport text animatebreak
-Walk through constructions
-
-//image- images/replay.png
-This tool opens a small dialog with navigation buttons containing
-buttons for forward, back, fast forward, fast rewind etc. Additionally,
-__breakpoints__ can be set with this tool. There is a button to jump
-to the next breakpoint. Moreover, breakpoints are important for HTML
-export in replay style.
-
-//image images/Replay.jpg
-
-To set a __hidingßbreakpoint__ hold the shift key while setting the
-breakpoint. Hiding breakpoints hide all previous objects up to the
-next previous breakpoint. The construction will be split into several
-parts.
-
-Breakpoints and hiding breakpoints can also be set in the properties
-dialog.
-
-During the replay, hidden texts will be visible.
-
-.animatebreak
-.related replay
-Animate breakpoints
-
-This tool automatically goes from breakpoint to breakpoint. To increase
-or decrease the speed, press __Shift-key__ plus the right or left
-__arrow&keys__.
-
-.draw
-.related mouse
-Paint with the Mouse
-
-//image- images/draw.png
-This tool paints sketches above the current construction with the
-mouse in the current __color__. To erase the sketch, press __Escßkey__
-or use the menu entry. The sketch will be saved with the
-construction.
-
-.zoom
-.related mouse grid
-Zoom with the mouse
-
-//image- images/zoom.png
-With this tool it is poosible to zoom in and out by dragging in the
-outer region of the construction, and to move the construction by
-dragging the inner region of the construction.
-
-Note that it is possible to zoom the construction at any time with a
-__mouseßwheel__, and to move the construction with the
-__rightßmouseßbutton__, dragging some empty spot.
-
-One can also zoom with the __+/-ßkeys__, and move with the
-__arrowßkeys__.
-
-The current viewing window is saved in the construction file, and the
-same view will be used when the construction is loaded.
-
-.parameter
-.related runmacro parametertypes target macro
-Macro Parameters
-
-//image- images/macro.png
-__Macros__ are an important tool for more complicated constructions.
-Without macros, only more or less simple constructions can be done.
-Macros collect many constructions steps into one construction step.
-They behave like subroutines in a programming language. Macros are
-like new, user defined tools.
-
-A macro needs parameter objects and target objects, just like the
-segment tool takes two points as __parameters__ and has a segment as
-its __target__.
-
-Macros in Z.u.L. are easily defined. Show the macro, which part of
-your construction it should learn. This part is called the "pattern
-construction". To create the pattern, construct some targets starting
-with some given parameter objects. E.g., you could construct the
-middle perpendicular line of a segment between two points, starting
-with the two points.
-
-//image- images/macro1.png
-In the first step of macro creation, the macro needs to learn your
-starting points. In the next step, you press the macro tool once more
-and define the targets. In the final step, the macro dialog appears
-and the macro definition is finished.
-
-Continue with: Targets
-
-.target
-.related parameter runmacro parametertypes macro
-Targets
-
-//image- images/macro2.png
-After the macro parameters have been selected, another click on the
-macro tool starts the selection of the __targets__. Here, only those
-objects are __visible__ that are constructible from the parameters.
-E.g., the middle perpendicular of two points is visible, if the two
-points have been selected as parameters. All intermediate construction
-steps are visible too unless they are hidden.
-
-Select the targets now. In the example mentÌoned above, select the
-middle perpendicular line.
-
-At least one target object should always be defined. Otherwise, all
-visible objects will be constructed by the macro. Moreover, targets
-will get the default __color__ and styles when the macro is used. All
-other objects get the style in the definition pattern, with the
-exception that black objects get the default color. Especially, all
-__hidden__ objects will be constructed in the hidden state. However,
-there is an option to hide all objects that are no targets
-automatically, even if they were visible in the construction.
-Moreover, if the macro is used in the descriptive mode, the user can
-assign names only to target objects.
-
-Another click on the macro tool finished the definition of the macro
-using a dialog.
+
+
+sont les trois outils qui permettent de définir des fonctions ou de tracer des courbes (dans les deux premiers cas on parlera de "fonctions utilisateur"). Les fonctions utilisateur peuvent être composées avec les fonctions de base ou entre elles. Attention : chaque clic sur le premier ou le troisième crée l'objet voulu, donc il est vivement conseillé par un "échap" de passer au mode "mouvoir" après chaque création ( et de vérifier dans l'historique le nombre de fonctions qui ont été créées !).
+
+Le premier permet la définition (accompagnée de la représentation graphique) d'une fonction d'une variable, ou d'une fonction paramétrée.
+
+Le second crée des fonctions qui ne sont pas destinées à être représentées graphiquement, mais à être utilisées dans d'autres expressions. Ce sont des fonctions d'une, deux, trois ou quatre variables.
+
+Le troisième permet la construction de courbes définies par leurs équations.
+
+Avec le premier outil, et dans l'onglet numérique, on trouve ceci :
+
+
+Le min et le max ne sont pas obligatoires lorsque la courbe est représentée "en continu". Mais le deviennent lorsque la courbe est représentée en "points seulement" (onglet "aspect"), et dans ce cas évidemment on précisera le pas. A propos de ces fonctions il est possible d'évaluer certaines expressions (comme des longueurs ou des aires sous la courbe). Il aussi est possible d'attacher un point à la courbe représentative, et le point peut même être accompagné d'un "incrément" qui peut être ou non identique au pas choisi pour la courbe.
+
+Pour les fonctions paramétrées, le min, le max sont obligatoires. Le pas également, quand on décide de passer en points seulement. Un exemple simple : x(t)=rcos(t) ; y(t)=rsin(t) ; avec min=-pi, max=pi et pas=pi/6, le tout en mode points seulement. Intéressant à expérimenter : attacher un point libre à la "courbe" obtenue … ce qui fait des fonctions paramétrées le deuxième outil préféré (après le magnétisme) pour faire de la géométrie finie. Un autre exemple de courbe paramétrée : x(t)=rsin(2*t) et y(t)=rsin(3*t) sur [-pi,pi], qui donne la courbe de Lissajous.
+
+Avec le dernier outil, qui représente des courbes d'équations données, il est possible d'obtenir facilement des courbes de niveau. Exemple : si A est un point donné, chercher la courbe d'équation "sqrt((x-x(A))^2+(y-y(A))^2)-6=0".
+
+//******************************************
+.tracker
+.related point animate mouse objecttracker
+Traces
-Continue with: Macro Definition
+Il y a deux méthodes pour obtenir des traces d'objets. La première, celle qui passe par l'intermédiaire de la barre de propriétés, se retrouve aussi dans d'autres logiciels de géométrie dynamique ; la seconde est un peu différente, et amène en principe à utiliser ensuite la trace automatique.
+
+Première méthode : un clic-droit sur un point, une droite, un segment ou un cercle vous donnera (dans l'onglet aspect)
+
+
+
+Il suffit alors d'un cocher/décocher pour activer ou non la trace que laissera un objet lors de son déplacement.
+
+Cette trace est volatile ! Il suffit d'un simple zoom ou d'une translation de la figure pour qu'elle disparaisse ; ou alors d'utiliser dans le menu déroulant édition : effacer les traces (raccourci clavier : ou ⌘+T). Une autre option de ce même menu déroulant permettra de les désactiver (toutes à la fois s'il y en a plusieurs).
+
+Seconde méthode avec : (dans Fonctions & lieux)
+
+Si c'est un point qui est choisi, il laissera sa trace sous forme de ligne continue, ligne de la même couleur que le point en question. Méthode : clic-gauche sur le point à déplacer, clic-gauche sur le point qui doit laisser sa trace, et enfin déplacement du point. Il est possible de laisser plusieurs traces simultanément : il suffit d'utiliser la touche shift à la sélection de tous ces points (sauf le dernier). Le point à déplacer peut très bien avoir des coordonnées qui dépendent d'une expression transformée en curseur. Ces traces sont insensibles aux zooms et translations de la figure ; mais disparaissent dès qu'on change d'outil. Pour qu'elles soient permanentes, on utilisera l'outil trace automatique ou l'outil lieu.
+
+Si c'est une droite qui est choisie (ou une demi-droite ou un segment), sa "trace" sera tout simplement l'enveloppe de cette droite.
+
+//***********************************
+.objecttracker
+.related tracker point animate
+Traces automatiques de points ou de droites
+
+Cet outil dessine les traces de points ou de droites (comme le fait l'outil trace) mais ces traces dépendent cette fois d'un point animé placé sur une ligne (droite ou segment) ou un cercle.
+
+(Remarque importante : un outil plus simple d'emploi ressemble beaucoup à celui-ci : c'est l'outil lieu. Lequel utiliser ?
+L'outil lieu est plus facile à utiliser et demande moins de recalculs lorsqu'on modifie la figure de façon dynamique : c'est lui qu'on préfèrera la plupart du temps. Tandis que l'outil trace automatique fonctionne différemment : la figure est d'abord animée, puis éventuellement se construit le lieu. Il convient très bien à des constructions un peu sophistiquées genre "systèmes articulés", comme expliqué ci-dessous …).
+
+Donc pour notre outil trace automatique, on commence par choisir le ou les points ou lignes dont on aimerait la trace. Dans le cas des lignes, on obtiendra une enveloppe de droites. De même que pour l'outil trace, il est possible de choisir plusieurs objets dont on aimerait garder la trace (il suffit de le faire avec la touche shift enfoncée, sauf pour le dernier objet). Puis on choisit une expression transformée en curseur, ou une ligne ou un cercle : dans ce cas on choisira aussi un point sur cette ligne ou ce cercle.
+
+Voici un premier exemple (auteur : René Grothmann)
+
+
+
+Les deux cercles noirs sont de centre fixe et de rayon fixe ; m est un point variable du premier ; le cercle rouge est également de rayon fixe, tandis que I est un milieu. On recherche la trace automatique de I.
+A observer : si le premier objet dont on cherche la trace devient invalide à cause d'une intersection invalide, le mouvement change de sens automatiquement. Si c'est à cause d'un point d'intersection entre deux cercles qui n'existe plus, c'est l'autre point commun qui sera choisi quand le mouvement du point mobile change de sens. Ainsi la construction fonctionnera dans tous les cas de figure.
+
+On pourra aussi regarder ce second exemple (créé également par René Grothmann).
+
+Des clic-gauche répétés font passer l'animation en 3 modes : animation avec trace, animation avec trace cachée, trace sans animation. Dans le dernier mode le point mobile peut être déplacé à la souris. Tous les autres points peuvent être déplacés avec le bouton droit, mais alors la trace devient cachée et toute animation est stoppée.
+
+Si une construction est enregistrée quand cet outil est actif, il restera actif à la réouverture du fichier.
+
+Pour arrêter l'animation et effacer les traces, il suffit de changer d'outil, ou d'utiliser échap. Mais il est également possible de conserver les traces dans la figure, comme expliqué ci-dessous.
+
+Pour transformer une trace en un objet (permanent), il suffit pendant l'animation de taper "Shift+enter". Un nouvel objet sera créé, et pourra être édité dans la barre de propriétés comme n'importe quel autre objet. Il devient alors possible d'attacher des points à ces traces, et de les utiliser dans des intersections.
+
+//**************************************
+.locus
+.related tracker objecttracker
+Lieux et enveloppes
+
+Cet outil permet aussi bien la recherche de lieux de points que celle d'enveloppes de droites. Voici un exemple pour chacun des cas :
+
+
+
+A et B sont donnés, m est sur un cercle de centre A. La médiatrice de B et m coupe le segment [Am] en p. Quel est le lieu de p (clic sur p) quand sur le cercle varie le point m (clic sur m)? Autre méthode, avec un point m qui serait libre cette fois : quel est le lieu de p (clic sur p) si sur le cercle (clic sur le cercle) variait le point m (clic sur m) ? Le lieu obtenu, comme tous les autres lieux, est un objet CaRMetal à part entière : on peut y placer des points, l'utiliser dans des intersections ...
+
+
+
+m est un point de la droite h, F un point fixe (le foyer comme chacun l'aura deviné) ; d est la médiatrice du segment [Fm]. Quelle est l'enveloppe de la droite d (clic sur d) quand sur la droite h varie le point m (clic sur m) ? Même remarque que précédemment : si m est libre il faut trois clics : sur d, sur h et sur m. Pour la beauté du résultat, on aura pris soin auparavant d'activer la trace de la droite (clic-droit sur la droite pour accéder à ses propriétés).
+
+Autre fonctionnalité : sont possibles les lieux, mais aussi les lieux de lieux (et même les lieux de lieux de lieux etc)! Un exemple à tester :
+
+
+
+En noir : la parabole de foyer F et de directrice d. Le cercle est centré en F, m est un point de la parabole ; p est l'inverse de m par rapport au cercle (la macro "inverse" le donne rapidement). Quel est le lieu de p (clic sur p) quand sur la parabole varie m (clic sur m) ? (on obtient une superbe cardioïde)
+
+//******************************
+.bi_t_align bi_t_app bi_t_conf bi_t_equi bi_t_para bi_t_perp
+.related expressionsyntax prop_conditionals
+Tests
+
+L'utilisation de ces outils ne nécessite aucune explication particulière. Simplement on signalera qu'en interne ils utilisent des booléens avec ~= (pour "environ égal à", c'est à dire égal à 10^(-10) près).
+
+//******************************
+.slider
+.related ctrl_slider
+Curseurs
+
+On utilise le plus couramment trois types de curseur :
+
les curseurs issus d'une expression. Ce sont des curseurs continus. Avantage : il est possible de "décursoriser" (il suffit de décocher "curseur"). Il est aussi possible de créer des lieux qui en dépendent (pas avec l'outil lieu à proprement parler, mais avec son cousin, l'outil trace automatique).
+
les curseurs système. Ils sont très souples d'utilisation, esthétiques. Mais ils ne permettent pas la "décursorisation" (c'est à dire d'imposer n'importe quelle valeur exacte à la variable), et on ne peut pas créer des lieux qui en dépendent.
+
les curseurs linéaires continus, qui se fabriquent avec une macro (catégorie "experts", puis "curseurs"). Contrairement aux curseurs système, ils permettent la création de lieux qui en dépendent.
+
+Un tutoriel internet donne des explications plus détaillées à propos de l'utilisation des deux derniers types de curseur.
+
+//******************************
+.ctrl_edit ctrl_slider ctrl_button ctrl_chkbox
+.related gui
+Curseurs système
+
+Ces cinq contrôles créent en fait directement des expressions (parfois booléennes), bien commodes à utiliser. Elles sont nommées par défaut a, b, c, etc (et visibles aussi dans l'historique).
+
+
C'est l'outil qui permet d'éditer, de déplacer et redimentionner chacun des cinq contrôles suivants. Un bon réflexe à acquérir : un "échap" quand c'est terminé, pour passer au mode mouvoir ...
+
C'est le curseur système traditionnel. Un tutoriel internet donne des exemples d'utilisation de ce type de curseur.
+
Un second tutoriel internet donne un exemple de création d'un tel menu déroulant.
+
Ce contrôle crée en fait une expression qui vaut 1 ou 0, suivant que la case est cochée on non.
+
tandis que celui-ci crée une expression qui vaut 1 la première fois, et ensuite n'importe quelle valeur inscrite dans la boîte d'entrée. Un tutoriel internet (suivi d'un lien vers un riche diaporama) illustre abondamment l'utilisation de ce contrôle.
+
Chaque clic sur le OK obtenu fait passer l'expression sous-jacente de 0 à 1 ou de 1 à 0. Il suffit de créer une nouvelle expression dont la valeur est le nom de ce contrôle pour voir ce qui se passe.
+
+
+//************************************
.macro
-.related runmacro parametertypes parameter target expression fixedcircle fixedangle hintparameters selfreference defaultmacros macroerror
-Macro Definition
-
-//image images/DefineMacro.jpg
-
-After all __parameters__ and __targets__ have been selected, another
-click on the macro tool defines the macro using a dialog.
-
-Here, the name of the macro and a __comment__ can be set. It is
-possible to definie the user __prompts__ for each parameter. Comments
-and user prompts are important, since the user might not know, what
-the macro does and what it needs. The prompts are displayed in the
-status line, while the macro waits for parameters.
-
-It is possible to __fixßaßparameter__ to an object A by using "=A" for
-the parameter prompt. The parameter will not be prompted, but instead
-an object "A" will be used, if there is one, and if it has the correct
-type.
-
-Be default, macros hide all objects that are __duplicates__ from
-existing objects. This behaviour can be changed here.
-
-Moreover, it is possible to ask the user for a value for either a
-fixed circle, a fixed angle or an expression while the macro is
-running (__valueßprompt__). To do this, enter the name of the circle,
-the angle or the expression into the box in the last line. The user
-will be prompted with a dialog and can enter any arithmetic
-expression. Several comma separated objects can be prompted from the
-user.
-
--> See also: Hint Parameters, Self reference
-
-.macrobar
+.related point expression selfreference
+Macro-constructions
+
+Quand une même construction est appelée à être renouvelée plusieurs fois, il est bien commode d'en faire une macro. Après avoir effectué cette construction une première fois, il suffit de choisir les objets initiaux, puis les objets finaux et d'enregistrer la macro : à l'exécution de la macro tous les objets intermédiaires seront automatiquement reconstruits (mais resteront cachés). Un premier tutoriel internet donne la méthode pour créer puis enregistrer un telle macro.
+
+Il existe un inspecteur d'objets, mais il existe aussi un "inspecteur de macros" qui permet de modifier certaines propriétés des objets initiaux : certains peuvent être (ou non) "à la demande" ; et d'autres peuvent devenir "implicites", c'est à dire non redemandés à chaque utilisation. Un second tutoriel internet donne la méthode à utiliser.
+
+Il y a les macros "de bibliothèque" toujours disponibles à l'ouverture du logiciel, ainsi que les macros "de fichiers" qui sont encapsulées dans un fichier enregistré (et qui resteront disponibles dans l'applet correspondante). Elles sont toutes organisées de façon très intuitive, un peu comme les marque-pages d'un navigateur ou comme la librairie de iTunes par exemple : ajout de nouveaux dossiers, de nouvelles macros, organisation par drag and drop ... Un troisième tutoriel internet donne les renseignements voulus.
+
+Remarque : dans les objets initiaux d'une macro, on a intérêt si possible à donner un point comme dernier objet initial, parce que dans ce cas les objets finaux apparaissent en prévisualisation lors de l'éxécution de la macro. Bien plus, si une macro-construction a pour dernier objet initial un point, et pour unique objet final un point également, non seulement elle s'applique aux points, mais également à tout type d'objet, comme les droites, cercles, lieux (mais si on désire l'appliquer à un point sur objet plutôt qu'à l'objet tout entier, il suffit pendant la phase de prévisualisation d'utiliser la touche "alt".
+
+Trois autres remarques (plutôt réservées aux "experts"):
+
+a) il est possible de ne pas choisir d'objets finaux ! dans ce cas c'est toute la construction qui sera restituée à l'éxécution de la macro. Mais, la remarque est importante : l'aspect, la couleur et l'épaisseur des éléments obtenus seront ceux qui ont été utilisés lors de l'enregistrement de la macro, même si entre temps il y a eu des changements à ce sujet.
+
+b) il est possible de choisir des objets initiaux cachés (la baguette magique étant activée, évidemment). Un exemple : imaginons une macro pour compléter un triangle équilatéral de sommets A et B, un simple clic donnant alors le demi-plan où se situera le troisième sommet. Il suffit de créer un point P (caché), puis une expression du style "60*sign(180-a(P,A,B))" pour ensuite créer un angle fixe et enfin le sommet voulu. Initiaux de la macro : A, B et P (macro à faire fonctionner baguette magique désactivée).
+
+c) dans certains cas, on peut avoir besoin d'utiliser comme objet initial un élément auto-référent (les points "liés à la fenêtre" sont de ceux-là). Dans ce cas, à la création de la macro, cet objet sera choisi avec la touche shift enfoncée. Exemple d'utilisation : une macro peut très bien avoir comme objet final un texte, une expression (ou un ensemble de textes et d'expressions) ; on créera alors un point caché "lié à la fenêtre" (supposons qu'il s'appelle P1), et par l'intermédiaire de ses propriétés on donnera à ce texte (ou cette expression) les coordonnées x(P1) et y(P1) ; et lors de la fabrication de la macro (baguette magique activée) on veillera à ce que P1 soit le dernier objet initial.
+
+//**************************************
+.macroerror
.related macro
-The Macro Bar
-
-On request, a line for macro icons can be used. In the program, select
-this line with a menu option. Also select, if you want to see the
-default icons in that line. In applets, include the parameter
-"macrobar" into the "options" parameter.
-
-Macros are only displayed, if the macro name ends with a text in
-brackets. The program and the applet will try to load an icon with
-that name from a subdirectory named "icons". If no icon is found, the
-text will displayed. Icons should be 32x32 in PNG with transparent
-background, and the aliasing should be optimized for light gray.
-
-The program archive contains the following useful icons.
-
-//image- icons/1.png
-1 - Middle Perpendicular
-
-//image- icons/2.png
-2 - Orthogonal Projection
-
-//image- icons/3.png
-3 - Inscribed Circle
-
-//image- icons/4.png
-4 - Circumcircle
-
-//image- icons/5.png
-5 - Reflection at a Line
-
-//image- icons/6.png
-6 - Reflection at a Circle
-
-//image- icons/7.png
-7 - Reflection at a Point
-
-//image- icons/8.png
-8 - Angle Bisector
+Avertissement : "Object is used, but not in Macro"
+
+Ce message apparait si la macro fait appel à un objet non contenu dans la macro. Habituellement, la raison est une auto-référence dans une expression, peut-être aussi un format conditionnel d'objet. Ces références font que les objets ne dépendent pas des objets référés, et par conséquent les objets sont encore constructibles. Cependant ils pourraient ne pas fonctionner comme on l'attend, ou pourraient même référer à de mauvais objets quand on les utilise.
+
+Un autre type d'auto référence sont les arcs attachés à des cercles. Si vous ignorez l'avertissement, l'arc sera déterminé par des objets de même nom.
+
+Une troisième raison, c'est peut être les intersections avec des cercles. Pour choisir une intersection, cette intersection doit être loin d'un point donné. Ce qui pourrait arriver automatiquement si l'autre intersection existe encore. Si vous ignorez l'avertissement, l'intersection pourrait être gardée loin d'un point de même nom, ou devenir une intersection non contrainte.
+
+Pour éviter l'avertissement, ajouter l'objet manquant aux objets initiaux, ainsi il sera contenu dans la macro.
+
+// j'ai traduit assez mot à mot, sans toujours comprendre vraiment !!!!!!!!
+
+//This warning occurs if an object in the macro refers to an object not
+//contained in the macro. Usually, the reason is a __@...__ reference in
+//an expression, maybe in the conditional formatting of objects. Those
+//references do not make objects depend on the referred object, and thus
+//the objects are still constructable. However, they might not work as
+//expected, or might even refer to wrong objects when used.
+
+//Another type of references are the bounds of __arcs__. Since those
+//bounds depend on the circle most of the time, the circle arc cannot
+//depend on the bounds to avoid circular dependencies. If you ignore the
+//warning, the arc will be determined by objects with the same name.
+
+//A third reason may be the __intersections__ with circles. To choose the
+//intersection, the intersection may be kept __awayßfrom__ a given
+//point. This might happen automatically, if the other intersection
+//already exists. If you ignore the warning, this intersection will be
+//kept away from a point with the same name, or will become an
+//unrestricted intersection.
-//image- icons/9.png
-9 - Angle Bisector as Ray
+//To avoid the warning, add the missing object to the parameters, so that
+//it is included in the macro.
-//image- icons/10.png
-10 - Rotation, given 5 points
-
-//image- icons/11.png
-11 - Rotation, given an angle and 2 points
-
-//image- icons/12.png
-12 - Translation
-
-//image- icons/13.png
-13 - Point
-
-//image- icons/14.png
-14 - Angle
-
-//image- icons/15.png
-15 - Polygon
-
-//image- icons/16.png
-16 - Vector
-
-//image- icons/17.png
-17 - Point on a Line
-
-//image- icons/18.png
-18 - Arc
-
-//image- icons/19.png
-19 - Circle
-
-//image- icons/20.png
-20 - Circle, given three points
-
-//image- icons/21.png
-21 - Fixed Angle
-
-//image- icons/22.png
-22 - Fixed Circle
-
-//image- icons/23.png
-23 - Fixed Segment
-
-//image- icons/24.png
-24 - Function
-
-//image- icons/25.png
-25 - Axes
-
-//image- icons/26.png
-26 - Intersection
-
-//image- icons/27.png
-27 - Line
-
-//image- icons/28.png
-28 - Midpoint, given 2 points
-
-//image- icons/29.png
-29 - Parallel
-
-//image- icons/30.png
-30 - Conic Section
-
-//image- icons/31.png
-31 - Ray
+//********************************
+.construction
+.related hide reorder
+Historique
-//image- icons/32.png
-32 - Line Segment
+Il est possible d'afficher un historique, en ouvrant le panneau de gauche (clic sur l'outil-bascule de gauche) :
+
+
+panneau dans lequel on choisira l'onglet du milieu :
+
+
+
+On remarquera d'abord le point d'interrogation : en cliquant dessus, il devient possible de basculer entre 3 modes d'affichage, soit la description, soit les coordonnées, soit l'équation. On remarquera aussi qu'il est possible de n'afficher que certaines catégories d'objets : que les droites, que les cercles, etc. Ce qui est bien commode par exemple pour effectuer une recherche ciblée ; ou pour changer la couleur de toute un liste de points en même temps (le "shift" classique permettant la sélection multiple, suivi d'un clic-droit dans la zone sélectionnée).
+
+Autre remarque : un clic-droit dans une zone vide du panneau de l'historique, et il devient possible de cocher/décocher :
+
+
objets visibles - décocher cette option est le seul moyen d'accéder aux objets super-cachés (on rappelle que les objets simplement cachés sont un peu plus pâles, tandis que les super-cachés sont en plus entre parenthèses).
+
tri par ordre de construction - l'ordre de construction n'est pas nécessairement l'ordre dans lequel les différents objets seront chargés à l'ouverture du fichier. En effet, dans une construction il est possible de faire des post-références, et le programme peut changer l'ordre des objets, afin de s'assurer qu'aucun objet ne réfère à un autre objet défini aprés lui.
+
+
+Un simple-clic (gauche) sur une ligne de l'historique, et l'objet correspondant de la construction "flashe".
+
+Un double-clic gauche sur une ligne de l'historique, ou sur une sélection multiple (par ctrl ou shift) et on accède en plus à la barre de propriétés de l'objet (ou des objets).
+
+Ou encore : un clic-gauche pour sélectionner, suivi d'un clic-droit, et là on peut non seulement modifier l'objet (c'est à dire accéder à ses propriétés), mais aussi le cacher, le super-cacher, le supprimer etc.
+
+//******************************
-//image- icons/33.png
-33 - Perpendicular
+.tips
+.related online browser start move intersection expression reorder
+Astuces
+
+Dans cette partie de l'aide contextuelle, nous allons vous donner quelques astuces pour résoudre quelques problèmes courants.
+
+Constructions invalides. Pour tester une construction, déplacez un des points de base. Si la construction ne reste pas valide, la raison la plus courante est que vous n'avez pas choisi correctement une intersection. Vous avez peut-être construit une droite qui passe par un point d'intersection choisi au hasard.
+
+Mauvais point d'intersection. Si une construction devient invalide, chaque fois que l'ordre des points de base est changé ou si un point (d'intersection) saute sur un autre, vous êtes confronté au problème du choix du bon point d'intersection. Alors, si vous voulez que votre construction reste valide dans tous les cas de figure, assurez vous que vous avez choisi tous les points d'intersection correctement. Si la sélection automatique du logiciel échoue, vous pouvez choisir l'intersection à la main. Dans la barre de propriétés, choisissez "près de" ou "loin de". Choisissez alors un point qui serait plus proche ou plus éloigné du point d'intersection. Vous pouvez aussi choisir l'intersction proche d'elle même. Dans ce cas, l'intersection se comportera de façon continue.
-.hintparameters
-.related macro
-Hint Parameters
-A special feature __hide__s parameters. If a hidden point is chosen as
-a macro parameter during the generation of the macro, and if that
-point is associated to a point generated during the parameter
-selection when the macro is used, this new point will be hidden after
-the macro has been run.
-
-This feature makes it possible to use points as __hintßparameters__.
-An example would be a macro, which generates an equilateral triangle
-on a segment. The hint would be a third click indicating either side
-of the segment. In this case, an expression must be used for one of
-the 60 degree angles involving the third point, something like
-"60*sign(180-a(P,A,B))".
-
-.selectmacro
-.related runmacro macro
-The Macro Selection Dialog
-
-//image images/MacroSelection.jpg
-
-The macro selection dialog contains a list of all __macros__. Macros
-may be organized in __macroßfolders__. To switch to a folder, double
-click on it. To revert to the parent directory, double click on "..".
-To put the macro into a subfolder, rename it like
-"subdir/macroname". __Defaultßmacros__ are displayed in red.
-
-If the dialog allows multiple selections, subdirectories can be selected.
-In this case, all macros in all subdirectories of this subdirectory will
-be selected at once.
-
-.runmacro
-.related parameter parametertypes mouse expressionsyntax fixparameters selectmacro
-Running a Macro
-
-//image- images/runmacro.png
-If the __Shift-key__ is pressed when the macro run tool is selected,
-the previously used macro will be selected automatically. If not,
-and there is more than one macro, the macro selection dialog will
-open. After the user has chosen a macro, the program will __prompt__
-for each parameter, and the expected object type and the prompt will
-be displayed in the __statusßline__.
-
-Macros can also be selected with the __rightßmouseßbutton__. Choose
-the macro from the list in the popup menu.
-
-If "Space selects ..." appears in the status line, this parameter
-object can be selected by pressing the __spaceßkey__. This feature is
-useful, if the macro is used several times.
-
-At the end, the macro will be executed. If the macro needs a value for
-a fixed circle or angle (__valueßprompt__), it will prompt for this
-value with a dialog box. The user can enter any arithmetic expression
-here.
-
-If the full __preview__ is turned on, the result of the macro
-operation can be seen before the last parameter point is selected.
-
--> See: Macro Selection Dialog, Macro Definition
-
-.defaultmacros
-.related runmacro save
-Default Macros
-
-When starting, C.a.R. looks for a file named ".default.mcr" in the
-current directory. If there is such a file, the macros contained in
-this file are loaded as __defaultßmacros__. Note, that there is a a
-default macro file in the program archive, which is used, if the
-program does not find another file.
-
-The default macros are protected. They are not deleted when a new
-file is loaded and they are not saved with constructions. To delete
-protected macros, use the menu entry in the macro menu, and select all
-macros.
-
-You can create default macros yourself. Simply save a file
-".default.mcr" into the current directory. If you need a special
-language version, save the file as ".la_default.mcr", where "la"
-is your language shortcut, of simply overwrite ".default.mcr". the
-language shortcut can be found in the "about" dialog (__languages__).
+//********************************
+.keyboard
+.related gui macro
+Utilisation du clavier
-.macroerror
-.related macro
-Warning: "Object is used, but not in Macro"
+Quelques commandes CaRMetal ont des raccourcis clavier.
+
+Le clic-droit dans la fenêtre donne accès aux macros de la bibliothèque.
+
+La touche return annule la dernière construction. Les touches + ou - permettent le zoom in et le zoom out ; et les touches directionnelles permettent le déplacement de la figure. De plus F1 ouvre l'aide contextuelle.
+
+Important : "échap" permet de sortir de l'outil courant et fait passer automatiquement au mode mouvoir.
+
+Notez aussi que les touches Ctrl et Shift changent le comportement de certains outils.
+
+//******************************
+.slider
+.related ctrl_slider
+Curseurs
+
+On utilise le plus couramment trois types de curseur :
+
les curseurs issus d'une expression. Ce sont des curseurs continus. Avantage : il est possible de "décursoriser" (il suffit de décocher "curseur"). Il est aussi possible de créer des lieux qui en dépendent (pas avec l'outil lieu à proprement parler, mais avec son cousin, l'outil trace automatique).
+
les curseurs système. Ils sont très souples d'utilisation, esthétiques. Mais ils ne permettent pas la "décursorisation" (c'est à dire d'imposer n'importe quelle valeur exacte à la variable), et on ne peut pas créer des lieux qui en dépendent.
+
les curseurs linéaires continus, qui se fabriquent avec une macro (catégorie "experts", puis "curseurs"). Contrairement aux curseurs système, ils permettent la création de lieux qui en dépendent.
+
+Un tutoriel internet donne des explications plus détaillées à propos de l'utilisation des deux derniers types de curseur.
+
+//**************************************
+.animate
+.related circle segment expression
+Animation
+
+(A améliorer ?)
+Avec cet outil il est possible d'animer un point sur objet (segment , cercle, arc ). Il est aussi possible d'animer une expression (pour simuler le temps par exemple). Plusieurs animations peuvent être lancées simultanément. Dès qu'une ou plusieurs animations sont lancées, différents réglages sont possibles grâce aux items du menu déroulant qui apparaît dans le coin gauche de la fenêtre :
+
+
+
+Remarque très importante : contrairement à d'autres logiciels de géométrie dynamique, lancer une animation n'est pas utiliser un mode bloquant ! Car dès qu'une animation est lancée, elle continue à tourner en tâche de fond même et surtout si on change d'outil pour continuer à construire, si on utilise une macro etc.
+
+//************************************
+.restricted beginner
+.related iconbar
+Palette restreinte
-This warning occurs if an object in the macro refers to an object not
-contained in the macro. Usually, the reason is a __@...__ reference in
-an expression, maybe in the conditional formatting of objects. Those
-references do not make objects depend on the referred object, and thus
-the objects are still constructable. However, they might not work as
-expected, or might even refer to wrong objects when used.
-
-Another type of references are the bounds of __arcs__. Since those
-bounds depend on the circle most of the time, the circle arc cannot
-depend on the bounds to avoid circular dependencies. If you ignore the
-warning, the arc will be determined by objects with the same name.
-
-A third reason may be the __intersections__ with circles. To choose the
-intersection, the intersection may be kept __awayßfrom__ a given
-point. This might happen automatically, if the other intersection
-already exists. If you ignore the warning, this intersection will be
-kept away from a point with the same name, or will become an
-unrestricted intersection.
-
-To avoid the warning, add the missing object to the parameters, so that
-it is included in the macro.
-
-.localize
-.related defaultmacros
-Localized Help
-
-C.a.R. already runs in many __languages__. However, if you want to
-provide your own version, you should translate
-
- - ZirkelProperties.properties
- - info.txt
-
-The __properties__ file needs to be translated into an internal
-Unicode representation by a tool named "native2ascii". It is wise to
-let me do that for you. Simply send me the file. I will also include
-your translation into the current distribution.
-
-The help file should be in your local __encoding__. But is is possible
-to specify any encoding in the properties file.
-
-.fixparameters
-.related runmacro parameter
-Fixed Parameters
-
-You can also fix the selection of macro __parameters__ by pressing the
-__Shift-key__ during the selection. This will create a copy of the
-macro, which is fixed in these parameters. You cannot fix all
-parameters of course.
-
-A parameter can be fixed, while the macro is defined. To do that,
-"=A" is used as the prompt of the parameter. The parameter
-will then be fixed to the object with name "A".
-
-.parametertypes
-.related parameter
-Types of Parameters
-
-Macro should use __points__ as __parameters__. This makes dependencies
-easier to understand and avoids many problems. But other types of
-parameters are possible too.
-
-Lines, rays, segments, and circles generate __secondaryßparameters__,
-namely the two end points, or the center respectively. This simplifies
-macro usage. However, the user must take care to use these parameters
-in the same configuration. Two concentric circles must be concentric.
-If the segments AB and BC are macro parameters, then the user must
-choose segments EF and FG. In these cases, it might be better to use
-points as parameters.
-
-Lines and rays are of two types: with two defining points, and with
-one defining point (e.g., parallel lines). In the macro, lines, rays,
-and segments are stored as pointless lines, if their defining points
-are not used in the target construction, or if they have only one
-defining point. The user can then choose any line as a parameter. If
-one of the two defining points is used, the user will have to choose a
-line, ray or segment of the same type. Again, this is complicated, and
-it may be best to use points.
+-- A FAIRE --
+
+//***********************************
.htmlexport
.related runningdemo save comment exportdialog jobexport
-HTML Export
-
-C.a.R. can generate __HTML__ pages for your constructions. These HTML
-pages contain an __applet__ that displays the construction. In the
-dialog for HTML export the appearance of the page and the applet can
-be set.
-
-To set up a HTML page, a construction file has to be created, and,
-for assignments with solution pages, another one for the solution.
-One needs to publish
-
- - the HTML page just generated,
- - a solution page, if present,
- - style sheets, if present,
- - the applet archive zirkel.jar,
- - the construction file.
-
-Note that __tracks__ and __animations__ are saved with the
-construction. They will automatically reload in constructions, which
-are displayed in applets. In this case, there is no user interaction.
-So you should use the plain or border style for these applets.
-
-It is best to have only one applet on each HTML page.
-
--> See also: HTML Export dialg.
-
-.htmlexporttemplate
-.related htmlexport save comment settings
-HTML Export with Templates
-
-__Templates__ are a comfortable way to export your construction to
-__HTML__. The program loads a template for the HTML page, and fills in
-the necessary information replacing all placeholders on the template
-page. The dialog is much shorter, since most information is
-continained in the template file, including __applet__ size, applet
-and page colors, style sheets and archive position.
-
-The __documentation__ of C.a.R. contains some templates to start with.
-Template files use the extension "*.template". You can edit these
-template files with any file or HTML editor. Foreign language users
-should disable __UTF-8__ in the settings dialog, or they must use an
-editor, capable of handling UTF properly (e.g my text editor JE, the
-HTML editors of Mozilla, or Frontpage by MS, and many others). You can
-base your template on the template files that come with the
-documentation.
-
-The following placeholders are recognized in template files.
-
-#title
- Replaced by the construction title as shown in the export dialog.
-
-#comment1,#comment2,...
- This will be replaced by the section of the construction comment
-with the corresponding number. Comment sections are separated by lines
-consisting of "~". Each paragraph of the comment section will be
-bracketed by
...
.
-
-#comment
- Works like text, but does not look for comment sections.
-
-#text1,#text2,...
- Works like #comment1,... but does not generate paragraphs
-
...
. The user can provide any HTML-tags he likes.
-
-#text
- Works like #text1,... but does not look for comment sections.
-
-#parameter
- Inserts the applet parameters: file or job, style, tools and options.
-
-#color
- Inserts the applet parameters for colors.
-
-#font
- Inserts the applet parameter for fonts and digits.
-
-#codebase
- The codebase from the export dialog.
-
-Here is a very simple template file.
-
-
-
-
-
-
- #title
-
-
-
-
- #title
-
-
-
-
-
-
- #comment
-
-
-
--> See also: Export Dialog
-
-.exportdialog
-.related htmlexport jobexport
-Export Dialog
-
-//image images/Export.jpg
-
-Applets can have several styles.
-
-- Plain: The __applet__ has no border. The user can only display
-hidden elements and move points. One should use the same color for the
-page and the applet in this case.
-
-- Border: The applet gets a border.
-
-- Border and Icons: The applet gets a border and icons. The user can
-construct things.
-
-- Border, Icons and Status: The applet gets a status line. The status
-text is displayed in the browser status line too.
-
-- Border, Icons and Input Line: The construction must be done in
-descriptive (non-visual) mode.
-
-- Replay with Breakpoints: Three buttons are displayed to enable
-navigation from breakpoint to breakpoint. To set the breakpoints, use
-the replay tool.
-
-Title of Page: This is the title of your page in
style.
-
-CSS Style-Files: Cascading Style Sheets are useful to give several
-pages a common appearance. If you do not use them, leave the input
-empty. Use a path relative to the program archive.
-
-Width, Height: The dimensions of the applet display.
-
-Construction File: The name of the file containing the construction,
-usually in the same directory as the HTML file. However, the file
-names must be relative to the program archive. Absolute URLs and paths
-are not allowed here.
-
-Jar File: This is the program archive. The path must be relative to
-the HTML page.
-
-Colors: You can choose a color for the page background and for the
-applet background. The color can be chosen with the button below.
-
-Moreover, there are switches to save the defined colors for the
-construction elements and for the construction background. The
-background of the construction can be different from the background of
-the applet and the background of the page.
-
-Save Digits: Will save the settings for the number of digits. Should
-be enabled.
-
-Show Comment: This will put the __comment__ below the applet. All
-browsers should be able to handle the default __UTF-8__ encoding. If
-not switch to the Windows encoding in the special settings.
-
-Tools: These two icon bars let you choose the __tools__, which should
-be displayed to the user. In any case, one should provide the undo
-tool. With the special icon for two lines the user gets two lines of
-tools.
-
-The user can only define macros, if you give him the macro tool. And
-he can run only macros only, if this tool is available.
-
-The icons with the question mark are switches for the object selection
-dialog, the question for points on objects and for intersections.
-By default, all these dialogs and questions are turned off in applets.
-
-In the non-__visualßmode__, the icons help the user to find the
-syntax. In this mode, all construction tools work.
-
-.jobexport
-.related htmlexport exportdialog
-Export Assignments
-
-The export dialog has some additional features for __assignments__.
-
-Display as Assignment: Needs to be checked to save the
-construction as an assignment.
-
-Solution File - Jump - Save - Link: These settings allow the automatic
-generation of a solution page, which is a separate page to display the
-solution. After the user finishes the assignment, the browser can jump
-directly to the solution page. One can also set a link to this page
-below the construction.
-
-Comment: Exports the assignment comment, of course. The construction
-comment is only shown on the solution page.
-
-.runningdemo
-.related htmlexport online
-Creating a running demo
-
-It is possible to create an __applet__ to load a series of
-constructions and display them to the user at a given rate
-(__demoßshow__). The applet syntax is quite different and there is no
-automatic export.
-
-An example of the applet code looks like this.
-
-
-
-The file "demo.xml" contains the file list. It is an XML file with a
-straightforward syntax. Here is a sample.
-
-
-
- Clockwork
- Cindarella machine
- ...
-
-
-The delay parameters are in seconds.
-
-.visual
-.related expressionsyntax runmacro
-Descriptive Constructions
-
-In this non-__visualßmode__, there is an input line below the
-construction. The following differences apply.
-
- - Choosing a tool will only display an input pattern.
- - The necessary construction parameters must be supplied by name.
- - The name of the constructed object may be given left of an equality sign =.
- - The construction is carried out be pressing Return.
-
-There is a fixed __syntax__ for the input.
-
- name=function(parameter,...)
- name1,name2=function(parameter,...)
-
-The second line applies to intersection and macros with several
-targets.
-
-If the name is missing, the new object will get the default name.
-
-Here is a short Description of the syntax. Note, that __expressions__
-may be used in all places, where a value is expected. Empty brackets
-can be omitted.
-
-Syntax
- Long
- DEscription
-
-A=P()
- point
- Generates a point at random position.
-
-A=P(0,1)
- A fixed point.
-
-a=s(B,C)
- segment
- A segment from B to C.
-
-a=s(B,2)
- A segment of fixed length.
-
-a=g(B,C)
- line
- A line through B and C.
-
-a=r(B,C)
- ray
- A ray from B to C.
-
-k=k(A,B)
- circle
- A circle around A trough B.
-
-k=k(A,2)
- A circle with fixed radius.
-
-k=k(A,B,C)
- A circle around A with radius BC.
-
-A=S(g,g)
- intersection
- An intersection between two lines.
-
-A,B=S(k,k)
- Both intersections between circles, or circles and lines.
-
-away(A,P)
- away
- Keeps the intersection A away from the point P.
-
-M=M(A,B)
- middle
- The midpoint of AB.
-
-g=pl(g,A)
- parallel
- The parallel through A to g.
-
-g=p(g,A)
- plumb
- The perpendicular through A to g.
-
-a=w(A,B,C)
- angle
- The angle A,B,C
-
-a=w(A,B,90)
- An angle of fixed size.
-
-A=area(P1,P2,P3)
- area
- Creates an area with these corners.
-
-Q=quadric(P1,P2,P3,P4,P5)
- Creates a conic section through these points.
-
-F=function(a,b,d,t,xt,yt)
- Creates a function on [a,b] with step size d, plotting xt,yt,
- which are expressions depending on the variable t.
-
-value(P,0,1)
- value
- Fixes the coordinates of the point
-
-value(s,2)
- Fixes the length of the segment.
-
-value(k,2)
- Fixes the radius of a circle.
-
-value(w,90)
- Fixes the size of an angle.
-
-value(true,o)
- Sets the display of the value for o.
-
-value(o)
- Sets the display of the value for o to on.
-
-value(true)
- Sets the default display of values.
-
-name(o,p)
- name
- Sets the name of o to p.
-
-name(true,o)
- Sets the display of the name for o.
-
-name(o)
- Sets the display of the name for o to on.
-
-name(true)
- Sets the default display of names.
-
-hide(true,o)
- hide
- Hides or un-hides o.
-
-hide(o)
- Hides o.
-
-hide(true)
- Sets the default hidden state for objects.
-
-col(green,o)
- color
- Sets the color of o to red, green, blue or brown.
-
-col(green)
- Sets the default color.
-
-th(thick,o)
- thickness
- Sets the thickness of o to thick, normal or thin.
-
-th(thick)
- Sets the default thickness
-
-type(square,P)
- type
- Sets the point type to square, circle, diamond or point.
-
-type(square)
- Sets the default point type.
-
-part(k)
-part(true,k)
- partial
- Sets the object k to partial display or full display.
-
-part(true)
- Sets the default partial state.
-
-fill(o)
-fill(true,o)
- fill
- Sets the object o to filled state or outline state.
-
-back(o)
-back(true,o)
- background
- Sets the object o to the background or not.
-
-window(0,0,5)
- window
- Sets the view window to width 2*5 and center (0,0).
-
-valid(o)
-valid(true,o)
- Treat segments and rays as lines in intersections and in
- perpendicular lines. o is the intersection or the perpendicular.
-
-obtuse(a)
-obtuse(true,a)
- Set angles so that they can become greater then 180 degrees.
-
-solid(a)
-solid(true,a)
- Set the object to the nontransparent state.
-
-restrict(c,A,B)
- Restrict a circle to become an arc from A to B.
-
-valid(o)
-valid(true,o)
- Remove the restrictions from perpendicular lines and intersection.
- These objects will be valid, even if the intersection is outside a
- segment or an arc.
-
-rename(A,B)
- Rename the object A to B.
-
-__Macros__ can be used too. Names left of = will be assigned to
-targets. If there are several targets, the names must be separated by
-commas. One additional parameter may be used to assign a value for an
-object, which would be prompted in interactive mode.
-
-.descritivefiles run
-.related visual save
-Descriptive constructions in files
-
-__Descriptiveßconstructions__ can be loaded from a file. Alternatively
-edit the description and then load the construction.
-
-The syntax is line oriented and uses the commands described above.
-Line comments //... may be used. The files may contain __macros__ in
-the following format.
-
- macro U
- // Constructs a circle through three points
- parameter A=point // Select first point
- parameter B=point // Select second Point
- parameter C=point // Select third point
- g1=MS(A,B)
- g2=MS(A,C)
- U=intersection(g1,g2)
- target k=circle(U,A)
- end
-
-The indents are optional. __Comments__ in the parameter lines are used
-as prompts, if the macro is used interactively. This macro calls the
-macro MS with two parameters.
-
- macro MS
- param A=point
- param B=point
- partial(true)
- k1=circle(A,B)
- k2=circle(B,A)
- partial(false)
- P1,P2=intersection(k1,k2)
- target g=line(P1,P2)
- end
-
-If the command constructing the target constructs two objects, the
-target can be defined separately.
-
- A,B=intersection(g,k)
- target B
-
-If a macro has more than one target, all targets must be assigned.
-
- A,B=test(...)
-
-Prompts are defined by the keyword prompt in front of an object name.
-
- k=circle(A,5)
- prompt k
-
-Here is an example of a macro using a segment as a parameter.
-
- macro MS
- // Mittelsenkrechte
- A=point
- B=point
- parameter s=segment(A,B)
- ...
- end
-
-If circles are used as a parameter, there is the special syntax
-
- M=point
- parameter circle(M)
-
-This kind of circle can only be used in parameters.
-
-The special command "showall" shows all intermediate objects.
-Otherwise, only targets will be visible. The command "invisible"
-superhides all objects that are no targets.
+html Export
+- A FAIRE -
+
+//*************************************
.assignments
-.related save restricted colors comment
-Assignments
+.related assignments htmlexport
+Exercices
+
+Les exercices sont des constructions incomplètes, que l'utilisateur est supposé terminer. L'ordinateur suggérera éventuellement l'objet cible de la construction, et sa solution peut très bien être différente de la solution proposée. Toute solution juste (ou fausse) se terminera par un message.
+Un tutoriel internet vous explique la façon de procéder.
+Un article très complet (site IREM de la Réunion) vous donnera également de nombreux renseignements.
-Assignments (or jobs) are incompletely displayed constructions, which
-the user is supposed to finish. The computer will only check for the
-constructed target object, and the solution itself might be different
-than the give one. The user will receive a message, as soon as he has
-completed the construction. The target objects will be displayed in a
-light color, unless they are hidden before the construction is saved.
-
-Assignments are generated by choosing the last object to be displayed
-to the user. Furthermore, there must be target objects. Targets are
-not checked for the solution, if they are generated pressing the shift
-key.
-
-To test the assignment, click on the menu entry for this. In contrast
-to the user, you will have the complete set of tools available,
-however. You can use the restricted icon bar to save the assignment.
-
-Area objects as targets should be defined by the least set of corner
-points. If the solving user creates additional points on the sides of
-the polygons those points will be skipped.
-
-.browser
-.related online
-Starting the help browser
-
-To start the __HTML__ help in the __browser__, you need to configure
-it. Enter the command line to the browser in the dialog. If the path
-contains blanks, include the browser in double quotes.
-
-Moreover, add the path to the help index.html file. This should be
-preconfigured already. If no help is found, the configuration dialog
-will use the web page.
-
-The default browser is the Explorer on Windows systems, and Netscape
-elsewhere.
-
-.comment
-.related assignments parameter htmlexport
-Comments
-
-//image- images/comment.png
-Every construction can have a comment. __Comments__ will be displayed
-when the user loads the construction. Moreover, comments can be
-exported to __HTML__.
-
-Assignments may have a special comment, displayed to the user, when
-the assignment is presented. This comment should explain what to do in
-the assignment.
-
-__Macros__ should have a comment too, explaining their usage
-and purpose. The macro comment is displayed in the macro selection
-dialog.
-
-.fonts
-.related zoom save sizes
-Fonts
-
-__Fonts__ can either be set globally or for each object. Global
-settings take precedence. Fonts are scaled with the screen height.
-However, there is a minimum for this scaling.
-
-C.a.R. uses fonts in two sizes and strokes. Fonts and points are
-scaled with the construction, however. For small windows or applets,
-this would lead to very small fonts and points. Thus there is a
-minimal point size. Bold fonts are recommended for small screen sizes
-and high resolutions.
-
-Note, that fonts for the __graphicsßexport__ can be scaled to an exact
-size. The screen preview for the graphics export scales the fonts to
-get the same visual appearance of the construction. This overrides the
-global setting for the font size and the minimal font size.
-
-.sizes
-.related fonts
-Sizes
-
-In this dialog, one can set the minimal line, point and font sizes.
-To keep the same look on all screen sizes, these items are
-scaled with the screen height. But one can set __minimalßsizes__ here.
-
-Moreover, one can set the arrow size, and the selection size for
-cursor selection of objects.
-
-Note that for graphics exports, one may set the these values exactly,
-independent of the size of the output. This overrides any other
-settings.
-
-The minimal sizes can be exported to __applets__.
-
-.save
-.related assignments parameter visual print defaultmacros filedialog
-Saving and loading files
-
-Constructions are saved in __XML__-format to computer files. This
-format is human readable. Normal constructions have the extension
-".zir", and assignments have the extension ".job". Macros use ".mcr".
-
-Constructions may contain __macros__. There is a switch, if the
-currently defined macros (besides the __defaultßmacros__) should be
-saved along with the constructions or not. To avoid accumulating
-macros from several constructions, it might be a good idea to delete
-all macros before a new construction is loaded. There is a switch to
-do this by default.
-
-Files can be __compressed__ by adding "z" to their extension. There is
-no need to do this, unless you want to minimize download time, when
-the file comes from a server.
-
-There are special menu items to load __assignments__, to load
-__macros__, and to load __descriptiveßconstructions__ in files.
-
--> See: File Dialog
-
-.filedialog
-.related save settings
-The File Dialog
-
-C.a.R. implements an own __fileßdialog__, since the file dialogs of
-Windows and Linux have some defects when used from Java. If you want
-to use the normal system file dialog, however, you can switch to it in
-the __specialßsettings__.
-
-//image images/FileDialog.jpg
-
-The file dialog of C.a.R. uses a __history__ for files, directories
-and filters. The directory and file history has a special drop down
-choice menu, and the history of the file and pattern fields show when
-the cursor up or down __arrowßkeys__ are pressed in these fields.
-
-Navigate in the directories with a __doubleßclick__ on the directory
-name in the left panel. The "Back" button opens previous directories.
-To choose a file, you can double click on its name in the right panel,
-or select it and use the action button.
-
-It is possible to enter several __fileßpatterns__ separated by spaces.
-File patterns can contain one or more place holders, "?" for single
-letters and "*" for strings.
-
-A new directory can be created. Enter the name of the directory into
-the directory field, then press the button. Files or directories
-cannot be deleted in this dialog.
-
-The home button brings you to the __homeßdirectory__ of C.a.R., if
-installed in the home directory of the user. The English name is "CaR
-Files". If there is no such directory, the button brings you to the
-user home directory. In Windows, the English name is "My Documents".
-In __Linux__, the home button brings you into your home directory. It
-is possible to change the home directory by pressing the home button
-with the __shift-Ctrl-key__. The current directory will become the new
-home directory for C.a.R. Another click with these keys restores the
-old settings.
-
-.print
-.related exportsettings print
-Print and Export Constructions
-
-There are several ways to __exportßconstructions__ to other
-programs or view them externally.
-
-First of all, you can __print__ your constructions. There is an option
-to print in __exactßscaling__, so that units of 1 are 1 cm exactly.
-Make sure, the construction window fits on the paper for this option.
-
-Moreover, you can export in various graphics and vector formats
-(__graphicsßexport__). For word processors, I recommend using __PNG__,
-properly scaled for the exact output width. There is not much sense in
-using PDF or PS for print, since the line widths, the fonts and the
-point sizes have to be scaled for the exact output size.
-
-For PNG output, a dialog will open, where the output size is set.
-Alternatively, use a factor relative to the screen size. It is also
-possible to determine the size using the graphics width and height in
-cm and the resolution in __dpi__. There is a drop down selection box
-for various formats. If "1:1 scaled" is used, a scaled version (1 unit
-= 1 cm) with a 300 dpi resolution is used. Make sure, the output fits
-on your paper.
-
-Since lines, fonts and points may become too small in small pictures,
-it is possible to __scale__ these sizes in cm. Use the __preview__ to
-see the effect on the screen.
-
-For use with the typesetting program __LaTeX__, C.a.R. can generate
-two accompanying files, the bounding box file, and a file to draw the
-image. The latter has the same name as the PNG file, but an extension
-"ztx" (zirkel tex). It is possible to let LaTeX do the drawing of the
-strings and equations in the construction. In the dialog, select the
-type of strings that should be done by LaTeX. The graphics export will
-generate the necessary LaTeX commands. This type of LaTeX export will
-work with pdflatex and latex. In the LaTeX source, it is necessary to
-import the "__graphicx__" package, and to load the image file with an
-input command, like in
-
- \begin{figure}
- \centering
- \input{image.ztx}
- \end{figure}
-
-C.a.R. can also copy graphics to the __clipboard__. The same scaling
-will apply as in the PNG output. If a screen dump of the construction
-is needed, use "screen size" in the scaling dialog.
-
-For __PDF__ output, only set the picture sizes in cm. PDF can also
-scale lines, fonts and points. Of course, you will then have to set
-the intended print width of the PDF output.
-.construction
-.related hide reorder
-List of objects
-
-//image images/Gui.jpg
-
-C.a.R can display an __objectßlist__ of your construction with the
-corresponding menu entry. By default, the list is turned on. This list
-can be used to edit invisible objects. In fact, it is the only way to
-access completely hidden construction steps. The lines in the list
-have the same colors as the objects. Completely hidden objects are in
-brackets.
-
-Press the question mark or the right mouse button to access the popup
-menu with more options.
-
-To select objects click on them. To select or deselect more objects
-click with the __Ctrl-key__. To select a range of objects use the
-__Shift-key__.
-
-It is possible to restrict the display to certain types of objects
-with the drop down menu in the line above the object list.
-
-The view is either sorted in the order the objects were constructed,
-or in the order the objects are stored. Note that the program may
-change the order of the objects to make sure no object refers to
-another object, which is defined later.
-
-Objects can display the description, the value or the formula besides
-the name of the object. Moreover, there are special display styles for
-hidden objects, completely hidden objects, invalid objects and basic
-(__moveable__) objects.
-
-The object list can be copied to the __clipboard__.
-
-.colors
-.related htmlexport
-Set colors
-
-Set the various colors of C.a.R. to your liking. Colors will not be
-saved with your construction, but are exported to HTML.
-
-Colors are composed in the red, green and blue color model. Switch
-back to default colors for best compatibility.
-
-.settings
-.related restricted iconbar tips beginner
-Special Settings
-
-This dialog contains some __specialßsettings__ for advanced users.
-Some of these settings are affected by the beginner mode, however.
-
-First of all, there is a switch for the display of object labels while
-the object is moved. This option may be disturbing, but it is quite
-useful in some cases. C.a.R. can restrict that to fixed objects only.
-
-Then, there are switchs for some questions the program asks before
-critical actions.
-
-If the dialog to choose objects is disabled, the program will always
-select the first object, even if the selection cannot be determined
-uniquely from the mouse position.
-
-It is also possible to turn off the construction preview, or restrict
-it to points. By default, most tools show a preview of the result
-before the last parameter point is selected. In the beginner mode, only
-points are shown in preview, since other objects tend to mislead the
-users.
-
-The icon bar can be placed to the lower edge of the window, and
-tooltips can be disabled.
-
-Some users want to use the system __fileßdialog__. I prefer mine, and
-it does indeed have some advantages. However, it cannot delete or
-rename files. It can create directories, however.
-
-One should use __UTF-8__ encoding all the time, but C.a.R can also
-choose to use the local encoding for construction files. This affects
-comments and descriptions in the files. Use the local setting only, if
-you want to edit the construction yourself, and if you do not have a
-UTF-8 editor.
-
-In the __smartboard__ mode, dragging will behave differently. A
-smartboard cannot report mouse movements, so they are replaced by
-drags. You have to click once more to complete the construction. This
-is only important for the preview of construction steps.
-
-By default, the program writes __backups__ of the files before
-overwriting. If you find you do not need these, disable the backup
-feature.
-
-The user can choose to call the macro popup dialog with a single
-or a __doubleßclick__ of the right mouse button.
-
-On a slow system, one may want to disable the smooth graphics with
-__anti-aliasing__.
-
-.exportsettings
-.related settings print
-Settings for Graphics Export
-
-Normally, points and fonts are scaled. But the minimal sizes are
-respected, if this is enabled, since fonts would become to small
-otherwise. To get large fonts in small prints, use the scaling feature
-in the __graphicsßexport__.
-
-Bitmaps are normally generated on a white __background__. You can tell
-the program to use your background color.
-
-.reorder
-.related circle angle expressionsyntax
-Reorder points
-
-It is possible to change the __order__ of the construction manually.
-There is a special tool for this, and if you select an object with
-this tool, the program will try to move this object as far to the
-start of the construction as possible. This may be useful to control
-the sequence the objects are drawn.
-
-However, reordering is obsolete now. C.a.R. reorders the cosntruction
-chain itself, if objects refer to later objects. Moreover, it is
-possible to control the sequence of drawing using
-__conditionalßformatting__.
-
-.tips
-.related online browser start move intersection expression reorder
-Tips
-
-In this help section, we give some tips to solve common problems.
-
-Invalid Constructions. To test a construction, move one of the basic
-points. If the construction does not remain valid, the most common
-reason is that you did not choose an intersection properly. Instead,
-you may have defined a line that goes through the intersection point
-only by chance.
-
-Wrong Intersection. If a construction becomes invalid, whenever the
-order of the basic points is changed or if one point is flipped to
-another side, you are facing the problem to choose the right
-intersection point. So, if you want your construction to be valid for
-all situations, make sure, you choose all intersections properly. If
-the automatic selection of C.a.R. fails, you can select the
-intersection by hand. Open its properties and press "Close to" or
-"Away from". Then choose a point that should be nearer to or further
-away from the intersection point. You can also set intersection close
-to itself. In this case, the intersection will behave continously.
-
-.keyboard
-.related gui delete zoom mouse iconbar
-Using the Keyboard
+//**************************************
-Most commands in C.a.R. have __keyboardßshortcuts__. Have a look into
-the menu to find the shortcut for each command. Shortcuts depend on
-the language.
-
-Note, that you need to give your construction the keyboard focus if
-it looses the focus. Click on an empty spot with the right mouse
-button.
-
-Useful shortcuts are the __backspaceßkey__ to delete the last action,
-the __+/-__ key to zoom in and out, and the arrow keys to move the
-construction. Moreover, __F1__ will open the context sensitive help.
-
-The important __Escßkey__ resets the current tool.
-
-Note that the __Ctrl-key__ and the __Shift-key__ change the behavior
-of some tools.
-
-The __Spaceßkey__ is used by Java and Windows versions to press
-buttons. Some systems use the __Returnßkey__ instead.
-
-.image
-.related background
-Images
-
-__Images__ can be added to the construction as objects. Images use
-either two __anchorßpoint__s or three. In the first case, the image is
-rotated and scaled, in the second case, an affine transformation is
-used. If you want only two points, double click the second point.
-
-These images must be in the same directory as the construction.
-
--> See also: Background Images
-
-.language
-Set Language
-
-By default, C.a.R. starts with the language of the system it is running
-on. It can be commanded to start in any other of the implemented
-__languages__. Use the following shortcuts for the current languages:
-
- English - en
- German - de
- French - fr
- Netherlands - nl
- Italian - it
- Spanish - es
- Portuguese - pt
- Brazilian - br
- Slovenian - sl
- Danish - da
- Norway - no
- Poland - pl
- Russian - ru
- Korean - co
+.new save savedis
+.related assignments htmlexport
+Sauvegarde et ouverture de fichiers
-Either use the menu item to set the language or set the command line parameter
-like "-l de" for the German language.
+A FAIRE !
+//**************************************
.selfreference
-.related macro point
-Self Reference
+.related macro point expression
+Auto référence
+
+Un point peut être défini par une référence circulaire, c'est à dire défini en fonction de lui-même ! Premier exemple très simple : créer un point M de coordonnées x(M) et y(M)^2 (il peut être intéressant d'activer sa trace). On dira alors que le point est auto-référent.
+
+Autre exemple (historique), expliqué ici dans un article vraiment subtil : c'est celui des points flottants, autrement dit des points "liés à la fenêtre". Cette transformation en point flottant a d'abord été une macro, mais c'est maintenant encore plus simple : il suffit d'accéder aux propriétés du point, onglet "numérique" et de cocher ici :
+
+
+
+Remarque : le grand intérêt de ces points flottants c'est de pouvoir "partager" une figure en deux parties, qui sont dépendantes numériquement mais se translatent ou tournent indépendamment l'une de l'autre (film : à faire)
+
+Pour aller plus loin :
+
+Quand on consulte l'historique de certaines figures, il peut arriver que dans des coordonnées figurent des @ : alors on sait qu'il s'agit là de points auto-référents. En effet la syntaxe pour l'écriture des coordonnées de tels points est la suivante :
+
+Pour qu’on puisse déplacer un point dont les coordonnées sont des formules récursives, il faut que :
+
dans ces formules toutes les références à d’autres objets soient précédées d’un @,
+
que le point lui-même apparaisse dans ces formules, sans @ (soit dans l’abscisse, soit l’ordonnée, par exemple – s’il n’intervient pas – avec un + 0*x(A)).
+
+Pour plus de détails et d'exemples on pourra lire ce premier article.
+
+Les références circulaires sont possibles dans les coordonnées de points, mais aussi dans l'écriture des expressions, comme l'illustre ce
+second article.
+
+
+
+
+
+
+
-A point may contain references to itself to fix its coordinates, or to
-set the appearance in the __conditionalßformatting__. If a point
-refers to itself only (__@-references__ do not count), it is called a
-__selfßreferring__ object. It will then be moveable by the user.
-First, the rest of construction will be updated, then the point.
-
-This feature allows to give the point to a special behavior, when it
-is moved. E.g., one could restrict the movements of the point this
-way. Note, that this is only necessary in very special situations,
-since points can __bind__ to the inside of angles, polygons and
-circles, and of course to the boundary of many other objects.
-Moreover, there is a __grid__ setting for points, which keeps it on an
-integer grid. All these points are moveable, but fixed points.
-
-Such moveable fixed points can also be created by __macros__. The
-point must be a macro parameter, and this parameter must be selected
-with the shift key, when the macro is created. When the macro runs,
-the points chosen for the parameter gets the coordinate fixes.
Binary files /dev/null and b/utils/docs/images/LieALaFenetre.gif differ
Binary files /dev/null and b/utils/docs/images/LieuDeLieu.jpg differ
Binary files /dev/null and b/utils/docs/images/LoinPres1.gif differ
Binary files /dev/null and b/utils/docs/images/LoinPres2.gif differ
Binary files /dev/null and b/utils/docs/images/Monkey.gif differ
Binary files /dev/null and b/utils/docs/images/animation.png differ
Binary files /dev/null and b/utils/docs/images/ellipse.gif differ
Binary files /dev/null and b/utils/docs/images/ellipse.jpg differ
Binary files /dev/null and b/utils/docs/images/fenetre.gif differ
Binary files /dev/null and b/utils/docs/images/fonc01.gif differ
Binary files /dev/null and b/utils/docs/images/historique1.gif differ
Binary files /dev/null and b/utils/docs/images/historique2.gif differ
Binary files /dev/null and b/utils/docs/images/increment.gif differ
Binary files /dev/null and b/utils/docs/images/parabole.jpg differ
Binary files /dev/null and b/utils/docs/images/paraph.gif differ
Binary files /dev/null and b/utils/docs/images/preferences.gif differ
Binary files /dev/null and b/utils/docs/images/systeme.gif differ
Binary files /dev/null and b/utils/docs/images/trace.gif differ
--- a/utils/es_library.mcr
+++ b/utils/es_library.mcr
@@ -898,23 +898,18 @@
-A
-O
-B
-O'
-M
+Centre de la rotation ?
+Angle de la rotation ?
+Point à transformer ?
-
Imagen de M por la rotación de centro O' y de ángulo AOB
+
Renvoie l'image d'un point M par la rotation de centre O et
+d'angle t (en degrés).
-Point à 2.85261, -3.271
-Point à -3.68938, -3.32171
-Point à 2.34548, -0.91284
-Point à -3.94295, 0.60856
-Point à 1.20444, 2.71315
-Angle P5 - P4 de mesure a(P1,P2,P3)
-Circle P4 through P5
-Intersection w1 and k1
+Point
+Point
+Expression "30" à 0.0, 0.0
+Point
@@ -1034,26 +1029,25 @@
-Primer punto?
-Primer coeficiente?
-Segundo punto?
-segundo coeficiente?
-Tercer punto?
-Tercer coeficiente?
+Premier coefficient ?
+Premier point ?
+Second coefficient ?
+Second point ?
+Troisième coefficient ?
+Troisième point ?
-
Señalar tres puntos ponderados (A,a) , (B,b) y (C,c) para
-crear el baricentro G=Bar{(A,a),(B,b),(C,c)}
+
Renvoie le barycentre de (A,a) (B,b) et (C,c) par ses
+coordonnées : (a*x(A)+b*x(B)+c*x(C))/(a+b+c) et
+(a*y(A)+b*y(B)+c*y(C))/(a+b+c)
-Point à -1.34653, 3.51485
-Expression "2" à -1.14653, 3.51485
-Point à -2.73267, 1.37624
-Expression "3" à -2.53267, 1.37624
-Point à 1.66337, 1.43564
-Expression "5" à 1.86337, 1.43564
-Point à "x(P1)+E2/(E1+E2)*(x(P2)-x(P1))", "y(P1)+E2/(E1+E2)*(y(P2)-y(P1))"
-Expression "E1+E2" à -1.97822, 2.23168
-Point à "x(P4)+E3/(E4+E3)*(x(P3)-x(P4))", "y(P4)+E3/(E4+E3)*(y(P3)-y(P4))"
+Point
+Point
+Point
+Expression "1" à 0.0, 0.0
+Expression "-1" à 0.0, 0.0
+Expression "3" à 0.0, 0.0
+Point
--- a/utils/fr_library.mcr
+++ b/utils/fr_library.mcr
@@ -5,10 +5,10 @@
P5P6
-Point à -5.0346, -4.77419
-Point à -0.62498, -5.39917
+Point
+PointSegment de P4 à P5
-Point à -0.94969, -2.78714
+PointSegment de P5 à P6Cercle de centre P5 de rayon windoww/24Intersection entre s1 et c1
@@ -23,22 +23,22 @@
s1
-Point à -5.45985, 5.15328
-Point à 4.29197, -0.83212
+Point
+PointSegment de P1 à P2Milieu de P1 et P2Cercle de centre M1 de rayon 6/pixelAngle P2 - M1 de mesure 60Intersection entre a1 et c1
-Point à "2*x(M1)-x(I1)", "2*y(M1)-y(I1)"
+PointSegment de I1 à P3s1
-Point à -2.0146, 4.13139
-Point à 2.62774, 1.62044
+Point
+PointSegment de P1 à P2Milieu de P1 et P2Cercle de centre M1 de rayon 3/pixel
@@ -46,9 +46,9 @@
Cercle de centre I1 de rayon 6/pixelAngle P2 - I1 de mesure 60Intersection entre a1 et c2
-Point à "2*x(I1)-x(I2)", "2*y(I1)-y(I2)"
-Point à "2*x(M1)-x(I2)", "2*y(M1)-y(I2)"
-Point à "2*x(M1)-x(P3)", "2*y(M1)-y(P3)"
+Point
+Point
+PointSegment de P3 à I2Segment de P5 à P4
@@ -56,23 +56,23 @@
s1
-Point à -4.58394, 4.48175
-Point à -1.08029, 0.42336
+Point
+PointSegment de P1 à P2Milieu de P1 et P2Cercle de centre M1 de rayon 6/pixelAngle P2 - M1 de mesure 60Intersection entre a1 et c1
-Point à "2*x(M1)-x(I1)", "2*y(M1)-y(I1)"
+PointSegment de I1 à P3Intersection entre s1 et c1Intersection entre s1 et c1Cercle de centre I3 passant par M1Cercle de centre I2 passant par M1Intersection entre c3 et c1
-Point à "2*x(I2)-x(I4)", "2*y(I2)-y(I4)"
+PointIntersection entre c2 et c1
-Point à "2*x(I3)-x(I5)", "2*y(I3)-y(I5)"
+PointSegment de P5 à I5Segment de I4 à P4
@@ -80,27 +80,27 @@
s1
-Point à -4.17518, 2.81752
-Point à 1.70568, -0.987
+Point
+PointSegment de P1 à P2Milieu de P1 et P2Cercle de centre M1 de rayon 6/pixelAngle P2 - M1 de mesure 60Intersection entre a1 et c1
-Point à "2*x(M1)-x(I1)", "2*y(M1)-y(I1)"
+PointSegment de I1 à P3Perpendiculaire passant par I1 à s1Intersection entre perp1 et s1
-Point à "2*x(I2)-x(I1)", "2*y(I2)-y(I1)"
-Point à "2*x(M1)-x(P4)", "2*y(M1)-y(P4)"
+Point
+PointSegment de P5 à P4s1
-Point à -4.17518, 2.81752
-Point à 1.70568, -0.987
+Point
+PointSegment de P1 à P2Milieu de P1 et P2Cercle de centre M1 de rayon 6/pixel
@@ -109,8 +109,8 @@
s1
-Point à -4.17518, 2.81752
-Point à -0.46849, -0.48227
+Point
+PointSegment de P1 à P2Milieu de P1 et P2Perpendiculaire passant par M1 à s1
@@ -127,21 +127,21 @@
Milieu de I2 et I4Intersection entre par2 et c2Intersection entre par1 et c3
-Fonction ( (t==0)*x(I5)+(t==1)*x(M2)+(t==2)*x(M3)+(t==3)*x(I6) , (t==0)*y(I5)+(t==1)*y(M2)+(t==2)*y(M3)+(t==3)*y(I6) )
+Fonction ( (t==0)*x(I5)+(t==1)*x(M2)+(t==2)*x(M3)+(t==3)*x(I6) , (t==0)*y(I5)+(t==1)*y(M2)+(t==2)*y(M3)+(t==3)*y(I6) )P1P2
-Point à -5.45985, 5.15328
-Point à 4.29197, -0.83212
+Point
+PointSegment de P1 à P2Milieu de P1 et P2Cercle de centre M1 de rayon 6/pixelAngle P2 - M1 de mesure 60Intersection entre a1 et c1
-Point à "2*x(M1)-x(I1)", "2*y(M1)-y(I1)"
+PointSegment de I1 à P3
@@ -149,8 +149,8 @@
P1P2
-Point à -2.0146, 4.13139
-Point à 2.62774, 1.62044
+Point
+PointSegment de P1 à P2Milieu de P1 et P2Cercle de centre M1 de rayon 3/pixel
@@ -158,9 +158,9 @@
Cercle de centre I1 de rayon 6/pixelAngle P2 - I1 de mesure 60Intersection entre a1 et c2
-Point à "2*x(I1)-x(I2)", "2*y(I1)-y(I2)"
-Point à "2*x(M1)-x(I2)", "2*y(M1)-y(I2)"
-Point à "2*x(M1)-x(P3)", "2*y(M1)-y(P3)"
+Point
+Point
+PointSegment de P3 à I2Segment de P5 à P4
@@ -169,23 +169,23 @@
P1P2
-Point à -4.58394, 4.48175
-Point à -1.08029, 0.42336
+Point
+PointSegment de P1 à P2Milieu de P1 et P2Cercle de centre M1 de rayon 6/pixelAngle P2 - M1 de mesure 60Intersection entre a1 et c1
-Point à "2*x(M1)-x(I1)", "2*y(M1)-y(I1)"
+PointSegment de I1 à P3Intersection entre s1 et c1Intersection entre s1 et c1Cercle de centre I3 passant par M1Cercle de centre I2 passant par M1Intersection entre c3 et c1
-Point à "2*x(I2)-x(I4)", "2*y(I2)-y(I4)"
+PointIntersection entre c2 et c1
-Point à "2*x(I3)-x(I5)", "2*y(I3)-y(I5)"
+PointSegment de P5 à I5Segment de I4 à P4
@@ -194,19 +194,19 @@
P1P2
-Point à -4.17518, 2.81752
-Point à 1.70568, -0.987
+Point
+PointSegment de P1 à P2Milieu de P1 et P2Cercle de centre M1 de rayon 6/pixelAngle P2 - M1 de mesure 60Intersection entre a1 et c1
-Point à "2*x(M1)-x(I1)", "2*y(M1)-y(I1)"
+PointSegment de I1 à P3Perpendiculaire passant par I1 à s1Intersection entre perp1 et s1
-Point à "2*x(I2)-x(I1)", "2*y(I2)-y(I1)"
-Point à "2*x(M1)-x(P4)", "2*y(M1)-y(P4)"
+Point
+PointSegment de P5 à P4
@@ -214,8 +214,8 @@
P1P2
-Point à -4.17518, 2.81752
-Point à 1.70568, -0.987
+Point
+PointSegment de P1 à P2Milieu de P1 et P2Cercle de centre M1 de rayon 6/pixel
@@ -225,8 +225,8 @@
P1P2
-Point à -4.17518, 2.81752
-Point à -0.46849, -0.48227
+Point
+PointSegment de P1 à P2Milieu de P1 et P2Perpendiculaire passant par M1 à s1
@@ -243,7 +243,7 @@
Milieu de I2 et I4Intersection entre par2 et c2Intersection entre par1 et c3
-Fonction ( (t==0)*x(I5)+(t==1)*x(M2)+(t==2)*x(M3)+(t==3)*x(I6) , (t==0)*y(I5)+(t==1)*y(M2)+(t==2)*y(M3)+(t==3)*y(I6) )
+Fonction ( (t==0)*x(I5)+(t==1)*x(M2)+(t==2)*x(M3)+(t==3)*x(I6) , (t==0)*y(I5)+(t==1)*y(M2)+(t==2)*y(M3)+(t==3)*y(I6) )
@@ -254,14 +254,14 @@
nombre de côté vous sera ensuite demandé
-Point à 0.07612, 0.08236
-Point à 0.51536, 0.54656
-Expression "3" à 0.32612, -0.41764
-Fonction ( x(P1)+d(P1,P2)*sin(t-a(P1,P1,P2)) , y(P1)+d(P1,P2)*cos(t-a(P1,P1,P2)) )
-Point à "x(P1)+d(P1,P2)*sin(360/E1-a(P1,P1,P2))", "y(P1)+d(P1,P2)*cos(360/E1-a(P1,P1,P2))"
+Point
+Point
+Expression "3" à 0.33, -0.42
+Fonction ( x(P1)+d(P1,P2)*sin(t-a(P1,P1,P2)) , y(P1)+d(P1,P2)*cos(t-a(P1,P1,P2)) )
+PointPolygon P3, P1, P2
-Expression "d(P2,P3)*E1" à 0.32612, -0.91764
-Expression "poly2*E1" à 0.32612, -1.41764
+Expression "d(P2,P3)*E1" à 0.33, -0.92
+Expression "poly2*E1" à 0.33, -1.42
@@ -275,28 +275,28 @@
Ensuite, montrer deux points qui définissent le curseur.
-Point à "(windoww/(windoww-d(windoww)))*(x(P9)-windowcx)+windowcx+d(windowcx)", "(windoww/(windoww-d(windoww)))*(y(P9)-windowcy)+windowcy+d(windowcy)"
-Point à "if(P6,(x(@P9)/x(@P9))*(windoww/(windoww-d(windoww)))*(x(P6)-windowcx)+windowcx+d(windowcx),invalid)", "(windoww/(windoww-d(windoww)))*(y(P6)-windowcy)+windowcy+d(windowcy)"
-Expression "14" à -5.20388, 5.57605
-Point à "x(P9)+windoww/8", "y(P9)-windoww/12"
-Point à "x(P3)+3*windoww", "y(P3)"
-Point à "x(P3)", "y(P9)"
+Point
+Point
+Expression "14" à -5.2, 5.58
+Point
+Point
+PointSegment de P3 à P4
-Point sur s1
-Point à "x(po6)", "y(P9)"
+Point sur un objet
+PointSegment de P5 à P7
-Expression "(x(P7)-x(P5))/(E1-1)" à -6.55238, 0.3029
-Point à "if(x(P6)<x(P5),x(P5),if(x(P6)>x(P7),x(P7),x(P5)+E2*round((x(P6)-x(P5))/E2)))", "y(P9)"
-Fonction ( x , y(P9) )
+Expression "(x(P7)-x(P5))/(E1-1)" à -6.55, 0.3
+Point
+Fonction ( x , y(P9) )Cercle de centre P8 passant par P6 de rayon "windoww/512"
-Expression "round((x(P8)-x(P5))/E2)+3" à -5.70388, 5.18022
-Point à -0.58252, -0.07767
-Point à 2.36893, 2.4466
-Fonction ( x(O)+d(O,M)*sin(t-a(O,O,M)) , y(O)+d(O,M)*cos(t-a(O,O,M)) )
-Point à "x(O)+d(O,M)*sin(360/E3-a(O,O,M))", "y(O)+d(O,M)*cos(360/E3-a(O,O,M))"
+Expression "round((x(P8)-x(P5))/E2)+3" à -5.7, 5.18
+Point
+Point
+Fonction ( x(O)+d(O,M)*sin(t-a(O,O,M)) , y(O)+d(O,M)*cos(t-a(O,O,M)) )
+PointPolygone P12, P16, P17
-Expression "d(M,P12)*E3" à -0.33252, -1.07767
-Expression "poly3*E3" à -0.33252, -1.57767
+Expression "d(M,P12)*E3" à -0.33, -1.08
+Expression "poly3*E3" à -0.33, -1.58
@@ -308,14 +308,14 @@
ensuite une expression qui représente le nombre de côtés.
-Point à -0.08122, -0.15228
-Point à 2.78173, 2.20305
+Point
+PointExpression "15" à 0.0, 0.0
-Fonction ( x(O)+d(O,M)*sin(t-a(O,O,M)) , y(O)+d(O,M)*cos(t-a(O,O,M)) )
-Point à "x(O)+d(O,M)*sin(360/E1-a(O,O,M))", "y(O)+d(O,M)*cos(360/E1-a(O,O,M))"
+Fonction ( x(O)+d(O,M)*sin(t-a(O,O,M)) , y(O)+d(O,M)*cos(t-a(O,O,M)) )
+PointPolygone P3, P1, P2
-Expression "d(M,P3)*E1" à 0.16878, -1.15228
-Expression "poly2*E1" à 0.16878, -1.65228
+Expression "d(M,P3)*E1" à 0.17, -1.15
+Expression "poly2*E1" à 0.17, -1.65
@@ -328,11 +328,11 @@
3 côtés.
-Point à -0.9927, 6.75912
-Point à 1.89781, 6.43796
-Point à 3.76642, 3.54745
-Point à 1.34307, -0.68613
-Fonction ( (t==0)*x(A)+(t==1)*x(B)+(t==2)*x(C)+(t==3)*x(D) , (t==0)*y(A)+(t==1)*y(B)+(t==2)*y(C)+(t==3)*y(D) )
+Point
+Point
+Point
+Point
+Fonction ( (t==0)*x(A)+(t==1)*x(B)+(t==2)*x(C)+(t==3)*x(D) , (t==0)*y(A)+(t==1)*y(B)+(t==2)*y(C)+(t==3)*y(D) )
@@ -342,12 +342,12 @@
DE
-Point à -0.9927, 6.75912
-Point à 1.89781, 6.43796
-Point à 3.76642, 3.54745
-Point à 1.34307, -0.68613
-Point à -0.55474, -3.10949
-Fonction ( (t==0)*x(A)+(t==1)*x(B)+(t==2)*x(C)+(t==3)*x(D)+(t==4)*x(E) , (t==0)*y(A)+(t==1)*y(B)+(t==2)*y(C)+(t==3)*y(D)+(t==4)*y(E) )
+Point
+Point
+Point
+Point
+Point
+Fonction ( (t==0)*x(A)+(t==1)*x(B)+(t==2)*x(C)+(t==3)*x(D)+(t==4)*x(E) , (t==0)*y(A)+(t==1)*y(B)+(t==2)*y(C)+(t==3)*y(D)+(t==4)*y(E) )
@@ -358,13 +358,13 @@
EF
-Point à -0.9927, 6.75912
-Point à 1.89781, 6.43796
-Point à 3.76642, 3.54745
-Point à 1.34307, -0.68613
-Point à -0.55474, -3.10949
-Point à -4.93431, -1.94161
-Fonction ( (t==0)*x(A)+(t==1)*x(B)+(t==2)*x(C)+(t==3)*x(D)+(t==4)*x(E)+(t==5)*x(F) , (t==0)*y(A)+(t==1)*y(B)+(t==2)*y(C)+(t==3)*y(D)+(t==4)*y(E)+(t==5)*y(F) )
+Point
+Point
+Point
+Point
+Point
+Point
+Fonction ( (t==0)*x(A)+(t==1)*x(B)+(t==2)*x(C)+(t==3)*x(D)+(t==4)*x(E)+(t==5)*x(F) , (t==0)*y(A)+(t==1)*y(B)+(t==2)*y(C)+(t==3)*y(D)+(t==4)*y(E)+(t==5)*y(F) )
@@ -376,14 +376,14 @@
FG
-Point à -0.9927, 6.75912
-Point à 1.89781, 6.43796
-Point à 3.76642, 3.54745
-Point à 1.34307, -0.68613
-Point à -0.55474, -3.10949
-Point à -4.93431, -1.94161
-Point à -6.18978, -0.36496
-Fonction ( (t==0)*x(A)+(t==1)*x(B)+(t==2)*x(C)+(t==3)*x(D)+(t==4)*x(E)+(t==5)*x(F)+(t==6)*x(G) , (t==0)*y(A)+(t==1)*y(B)+(t==2)*y(C)+(t==3)*y(D)+(t==4)*y(E)+(t==5)*y(F)+(t==6)*y(G) )
+Point
+Point
+Point
+Point
+Point
+Point
+Point
+Fonction ( (t==0)*x(A)+(t==1)*x(B)+(t==2)*x(C)+(t==3)*x(D)+(t==4)*x(E)+(t==5)*x(F)+(t==6)*x(G) , (t==0)*y(A)+(t==1)*y(B)+(t==2)*y(C)+(t==3)*y(D)+(t==4)*y(E)+(t==5)*y(F)+(t==6)*y(G) )
@@ -396,15 +396,15 @@
GH
-Point à -0.9927, 6.75912
-Point à 1.89781, 6.43796
-Point à 3.76642, 3.54745
-Point à 1.34307, -0.68613
-Point à -0.55474, -3.10949
-Point à -4.93431, -1.94161
-Point à -6.18978, -0.36496
-Point à -6.54015, 1.50365
-Fonction ( (t==0)*x(A)+(t==1)*x(B)+(t==2)*x(C)+(t==3)*x(D)+(t==4)*x(E)+(t==5)*x(F)+(t==6)*x(G)+(t==7)*x(H) , (t==0)*y(A)+(t==1)*y(B)+(t==2)*y(C)+(t==3)*y(D)+(t==4)*y(E)+(t==5)*y(F)+(t==6)*y(G)+(t==7)*y(H) )
+Point
+Point
+Point
+Point
+Point
+Point
+Point
+Point
+Fonction ( (t==0)*x(A)+(t==1)*x(B)+(t==2)*x(C)+(t==3)*x(D)+(t==4)*x(E)+(t==5)*x(F)+(t==6)*x(G)+(t==7)*x(H) , (t==0)*y(A)+(t==1)*y(B)+(t==2)*y(C)+(t==3)*y(D)+(t==4)*y(E)+(t==5)*y(F)+(t==6)*y(G)+(t==7)*y(H) )
@@ -418,16 +418,16 @@
HI
-Point à -0.9927, 6.75912
-Point à 1.89781, 6.43796
-Point à 3.76642, 3.54745
-Point à 1.34307, -0.68613
-Point à -0.55474, -3.10949
-Point à -4.93431, -1.94161
-Point à -6.18978, -0.36496
-Point à -6.54015, 1.50365
-Point à -7.0365, 2.70073
-Fonction ( (t==0)*x(A)+(t==1)*x(B)+(t==2)*x(C)+(t==3)*x(D)+(t==4)*x(E)+(t==5)*x(F)+(t==6)*x(G)+(t==7)*x(H)+(t==8)*x(I) , (t==0)*y(A)+(t==1)*y(B)+(t==2)*y(C)+(t==3)*y(D)+(t==4)*y(E)+(t==5)*y(F)+(t==6)*y(G)+(t==7)*y(H)+(t==8)*y(I) )
+Point
+Point
+Point
+Point
+Point
+Point
+Point
+Point
+Point
+Fonction ( (t==0)*x(A)+(t==1)*x(B)+(t==2)*x(C)+(t==3)*x(D)+(t==4)*x(E)+(t==5)*x(F)+(t==6)*x(G)+(t==7)*x(H)+(t==8)*x(I) , (t==0)*y(A)+(t==1)*y(B)+(t==2)*y(C)+(t==3)*y(D)+(t==4)*y(E)+(t==5)*y(F)+(t==6)*y(G)+(t==7)*y(H)+(t==8)*y(I) )
@@ -442,17 +442,17 @@
IJ
-Point à -0.9927, 6.75912
-Point à 1.89781, 6.43796
-Point à 3.76642, 3.54745
-Point à 1.34307, -0.68613
-Point à -0.55474, -3.10949
-Point à -4.93431, -1.94161
-Point à -6.18978, -0.36496
-Point à -6.54015, 1.50365
-Point à -7.0365, 2.70073
-Point à -7.0073, 4.30657
-Fonction ( (t==0)*x(A)+(t==1)*x(B)+(t==2)*x(C)+(t==3)*x(D)+(t==4)*x(E)+(t==5)*x(F)+(t==6)*x(G)+(t==7)*x(H)+(t==8)*x(I)+(t==9)*x(J) , (t==0)*y(A)+(t==1)*y(B)+(t==2)*y(C)+(t==3)*y(D)+(t==4)*y(E)+(t==5)*y(F)+(t==6)*y(G)+(t==7)*y(H)+(t==8)*y(I)+(t==9)*y(J) )
+Point
+Point
+Point
+Point
+Point
+Point
+Point
+Point
+Point
+Point
+Fonction ( (t==0)*x(A)+(t==1)*x(B)+(t==2)*x(C)+(t==3)*x(D)+(t==4)*x(E)+(t==5)*x(F)+(t==6)*x(G)+(t==7)*x(H)+(t==8)*x(I)+(t==9)*x(J) , (t==0)*y(A)+(t==1)*y(B)+(t==2)*y(C)+(t==3)*y(D)+(t==4)*y(E)+(t==5)*y(F)+(t==6)*y(G)+(t==7)*y(H)+(t==8)*y(I)+(t==9)*y(J) )
@@ -468,18 +468,18 @@
JK
-Point à -0.9927, 6.75912
-Point à 1.89781, 6.43796
-Point à 3.76642, 3.54745
-Point à 1.34307, -0.68613
-Point à -0.55474, -3.10949
-Point à -4.93431, -1.94161
-Point à -6.18978, -0.36496
-Point à -6.54015, 1.50365
-Point à -7.0365, 2.70073
-Point à -7.0073, 4.30657
-Point à -5.83942, 5.15328
-Fonction ( (t==0)*x(A)+(t==1)*x(B)+(t==2)*x(C)+(t==3)*x(D)+(t==4)*x(E)+(t==5)*x(F)+(t==6)*x(G)+(t==7)*x(H)+(t==8)*x(I)+(t==9)*x(J)+(t==10)*x(K) , (t==0)*y(A)+(t==1)*y(B)+(t==2)*y(C)+(t==3)*y(D)+(t==4)*y(E)+(t==5)*y(F)+(t==6)*y(G)+(t==7)*y(H)+(t==8)*y(I)+(t==9)*y(J)+(t==10)*y(K) )
+Point
+Point
+Point
+Point
+Point
+Point
+Point
+Point
+Point
+Point
+Point
+Fonction ( (t==0)*x(A)+(t==1)*x(B)+(t==2)*x(C)+(t==3)*x(D)+(t==4)*x(E)+(t==5)*x(F)+(t==6)*x(G)+(t==7)*x(H)+(t==8)*x(I)+(t==9)*x(J)+(t==10)*x(K) , (t==0)*y(A)+(t==1)*y(B)+(t==2)*y(C)+(t==3)*y(D)+(t==4)*y(E)+(t==5)*y(F)+(t==6)*y(G)+(t==7)*y(H)+(t==8)*y(I)+(t==9)*y(J)+(t==10)*y(K) )
@@ -496,19 +496,19 @@
KL
-Point à -0.9927, 6.75912
-Point à 1.89781, 6.43796
-Point à 3.76642, 3.54745
-Point à 1.34307, -0.68613
-Point à -0.55474, -3.10949
-Point à -4.93431, -1.94161
-Point à -6.18978, -0.36496
-Point à -6.54015, 1.50365
-Point à -7.0365, 2.70073
-Point à -7.0073, 4.30657
-Point à -5.83942, 5.15328
-Point à -4.64234, 6.37956
-Fonction ( (t==0)*x(A)+(t==1)*x(B)+(t==2)*x(C)+(t==3)*x(D)+(t==4)*x(E)+(t==5)*x(F)+(t==6)*x(G)+(t==7)*x(H)+(t==8)*x(I)+(t==9)*x(J)+(t==10)*x(K)+(t==11)*x(L) , (t==0)*y(A)+(t==1)*y(B)+(t==2)*y(C)+(t==3)*y(D)+(t==4)*y(E)+(t==5)*y(F)+(t==6)*y(G)+(t==7)*y(H)+(t==8)*y(I)+(t==9)*y(J)+(t==10)*y(K)+(t==11)*y(L) )
+Point
+Point
+Point
+Point
+Point
+Point
+Point
+Point
+Point
+Point
+Point
+Point
+Fonction ( (t==0)*x(A)+(t==1)*x(B)+(t==2)*x(C)+(t==3)*x(D)+(t==4)*x(E)+(t==5)*x(F)+(t==6)*x(G)+(t==7)*x(H)+(t==8)*x(I)+(t==9)*x(J)+(t==10)*x(K)+(t==11)*x(L) , (t==0)*y(A)+(t==1)*y(B)+(t==2)*y(C)+(t==3)*y(D)+(t==4)*y(E)+(t==5)*y(F)+(t==6)*y(G)+(t==7)*y(H)+(t==8)*y(I)+(t==9)*y(J)+(t==10)*y(K)+(t==11)*y(L) )
@@ -526,35 +526,35 @@
LM
-Point à -0.9927, 6.75912
-Point à 1.89781, 6.43796
-Point à 3.76642, 3.54745
-Point à 1.34307, -0.68613
-Point à -0.55474, -3.10949
-Point à -4.93431, -1.94161
-Point à -6.18978, -0.36496
-Point à -6.54015, 1.50365
-Point à -7.0365, 2.70073
-Point à -7.0073, 4.30657
-Point à -5.83942, 5.15328
-Point à -4.64234, 6.37956
-Point à -0.9635, 3.57664
-Fonction ( (t==0)*x(A)+(t==1)*x(B)+(t==2)*x(C)+(t==3)*x(D)+(t==4)*x(E)+(t==5)*x(F)+(t==6)*x(G)+(t==7)*x(H)+(t==8)*x(I)+(t==9)*x(J)+(t==10)*x(K)+(t==11)*x(L)+(t==12)*x(M) , (t==0)*y(A)+(t==1)*y(B)+(t==2)*y(C)+(t==3)*y(D)+(t==4)*y(E)+(t==5)*y(F)+(t==6)*y(G)+(t==7)*y(H)+(t==8)*y(I)+(t==9)*y(J)+(t==10)*y(K)+(t==11)*y(L)+(t==12)*y(M) )
+Point
+Point
+Point
+Point
+Point
+Point
+Point
+Point
+Point
+Point
+Point
+Point
+Point
+Fonction ( (t==0)*x(A)+(t==1)*x(B)+(t==2)*x(C)+(t==3)*x(D)+(t==4)*x(E)+(t==5)*x(F)+(t==6)*x(G)+(t==7)*x(H)+(t==8)*x(I)+(t==9)*x(J)+(t==10)*x(K)+(t==11)*x(L)+(t==12)*x(M) , (t==0)*y(A)+(t==1)*y(B)+(t==2)*y(C)+(t==3)*y(D)+(t==4)*y(E)+(t==5)*y(F)+(t==6)*y(G)+(t==7)*y(H)+(t==8)*y(I)+(t==9)*y(J)+(t==10)*y(K)+(t==11)*y(L)+(t==12)*y(M) )AB
-Point à -2.49585, 0.69276
-Point à -0.69276, -0.12337
+Point
+PointSegment de A à BCercle de centre A passant par BCercle de centre B passant par AIntersection entre c2 et c1Intersection entre c1 et c2Droite passant par P3 et P1
-Point sur l1
+Point sur un objetSegment de A à DSegment de D à B
@@ -563,14 +563,14 @@
AB
-Point à -2.99197, -0.96308
-Point à 3.19743, -2.42697
+Point
+PointSegment de A à BSegment de A à BCercle de centre A de rayon windoww/24Perpendiculaire passant par A à s1Intersection entre s2 et c1
-Point sur perp1
+Point sur un objetSegment de D à ASegment de D à BSegment de D à A
@@ -586,8 +586,8 @@
AB
-Point à -3.0947, -0.55217
-Point à 2.3756, -1.374
+Point
+PointSegment de A à BCercle de centre A passant par BSegment de A à B
@@ -610,8 +610,8 @@
AB
-Point à -2.50401, 0.29535
-Point à 1.73355, -1.29695
+Point
+PointCercle de centre A passant par BCercle de centre B passant par ASegment de B à A
@@ -624,14 +624,14 @@
AB
-Point à -4.43018, -0.32103
-Point à 2.91493, -1.04013
+Point
+PointSegment de A à BPerpendiculaire passant par A à s1
-Point sur perp1
+Point sur un objetPerpendiculaire passant par F à perp1
-Point sur perp2
-Point sur perp2
+Point sur un objet
+Point sur un objetSegment de A à P1Segment de P1 à P2Segment de P2 à B
@@ -641,16 +641,16 @@
AB
-Point à -3.42857, 1.19422
-Point à 3.42857, -1.19422
+Point
+PointSegment de A à B
-Point sur s1
+Point sur un objetPerpendiculaire passant par G à s1Cercle de centre G de rayon 1Intersection entre perp1 et c1Demi-droite d'origine G vers P1
-Point sur r1
-Point à "2*x(G)-x(P2)", "2*y(G)-y(P2)"
+Point sur un objet
+PointSegment de A à P2Segment de P2 à BSegment de B à P3
@@ -663,9 +663,9 @@
AB
-Point à -2.42697, 0.70626
-Point à 3.30016, -0.80899
-Point à 0.2183, 3.14607
+Point
+Point
+PointSegment de A à BPoint à "x(C)+x(B)-x(A)", "y(C)+y(B)-y(A)" Segment de A à C
@@ -677,17 +677,17 @@
AB
-Point à -3.27448, 1.47673
-Point à 4.40449, -1.16854
+Point
+PointSegment de A à BCercle de centre A passant par BCercle de centre B passant par AIntersection entre c2 et c1Intersection entre c1 et c2
-Point sur s1
+Point sur un objetDroite passant par P5 et P1
-Point sur l1
-Point à "x(E)", "y(E)"
+Point sur un objet
+PointSegment de A à ESegment de E à BPerpendiculaire passant par P3 à s1
@@ -702,8 +702,8 @@
AB
-Point à -2.28707, 0.44603
-Point à 2.76157, -0.23725
+Point
+PointSegment de A à BSegment de A à BCercle de centre A de rayon windoww/24
@@ -712,7 +712,7 @@
Perpendiculaire passant par A à s1Intersection entre s2 et c1Intersection entre s3 et c2
-Point sur perp1
+Point sur un objetPoint à "x(C)+x(B)-x(A)", "y(C)+y(B)-y(A)" Segment de A à ESegment de E à A
@@ -757,8 +757,8 @@
AB
-Point à -3.0947, 0.2183
-Point à 2.42697, -0.39807
+Point
+PointSegment de A à BCercle de centre A passant par BSegment de A à B
@@ -814,20 +814,20 @@
point d'abscisse 1 ?nombre à reporter ?
-Point à -3.74991, 0.67707
-Point à -1.00692, 0.74651
+Point
+PointExpression "3" à 0.0, 0.0
-Point à "x(O)+k*(x(I)-x(O))", "y(O)+k*(y(I)-y(O))"
+Pointorigine ?point d'abscisse 1 ?
-Point à -3.74991, 0.67707
-Point à -1.00692, 0.74651
+Point
+PointExpression "3" à 0.0, 0.0
-Point à "x(O)+k*(x(I)-x(O))", "y(O)+k*(y(I)-y(O))"
+Point
@@ -837,10 +837,10 @@
Point aligné avec les deux autres ?Point d'ancrage ?
-Point à -2.0, 1.0
-Point à -1.0, 1.0
-Point à 2.0, 1.5
-Point à "(windoww/(windoww-d(windoww)))*(x(P4)-windowcx)+windowcx+d(windowcx)", "(windoww/(windoww-d(windoww)))*(y(P4)-windowcy)+windowcy+d(windowcy)"
+Point
+Point
+Point
+PointExpression "if(x(b)~=x(a),(y(c)-y(a))/(y(b)-y(a)),if((x(c)-x(a))*(y(b)-y(a))~=(y(c)-y(a))*(x(b)-x(a)),(x(c)-x(a))/(x(b)-x(a)),invalid))" à 0.0, 0.0Les points ne sont pas alignés
@@ -876,33 +876,28 @@
-A
-O
-B
-O'
-M
-
-
Image de M par la rotation de centre O' et d'angle AOB
+Centre de la rotation ?
+Angle de la rotation ?
+Point à transformer ?
+
+
Renvoie l'image d'un point M par la rotation de centre O et
+d'angle t (en degrés).
-Point à 2.85261, -3.271
-Point à -3.68938, -3.32171
-Point à 2.34548, -0.91284
-Point à -3.94295, 0.60856
-Point à 1.20444, 2.71315
-Angle P5 - P4 de mesure a(P1,P2,P3)
-Circle P4 through P5
-Intersection w1 and k1
+Point
+Point
+Expression "30" à 0.0, 0.0
+Pointcentre ?point à transformer ?
-Point à -2.95696, -1.56962
-Point à -0.89114, -0.71899
+Point
+PointExpression "1.5" à 0.0, 0.0
-Point à "x(O)+k*(x(M)-x(O))", "y(O)+k*(y(M)-y(O))"
+Point
@@ -911,10 +906,10 @@
centre ?point à transformer ?
-Point à -2.95696, -1.56962
-Point à -0.89114, -0.71899
+Point
+PointExpression "1.5" à 0.0, 0.0
-Point à "x(O)+k*(x(M)-x(O))", "y(O)+k*(y(M)-y(O))"
+Point
@@ -922,9 +917,9 @@
P2P3
-Point à -2.83544, 1.28608
-Point à 0.26329, 2.62278
-Point à 0.56709, 0.71899
+Point
+Point
+PointPoint à "x(C)+x(B)-x(A)", "y(C)+y(B)-y(A)" Segment de P3 à P4
@@ -932,10 +927,10 @@
Origine du vecteur
-Point à -1.68421, -0.63158
+PointExpression "1" à 0.0, 0.0Expression "0" à 0.0, 0.0
-Point à "x(P7)+E1", "y(P7)+E2"
+PointSegment de P7 à P2
@@ -944,12 +939,12 @@
VecteurOrigine
-Point à 0.70175, 1.38947
-Point à -0.75789, -2.62456
-Point à 2.70175, 2.38947
+Point
+Point
+PointExpression "1" à 0.0, 0.0Segment de P1 à P3
-Point à "x(E)+E1*(x(P3)-x(P1))", "y(E)+E1*(y(P3)-y(P1))"
+PointSegment de E à P4
@@ -959,13 +954,13 @@
par quel expression ?Origine du vecteur résultant ?
-Point à -0.67368, 1.41754
-Point à 2.9193, 3.18596
-Point à -3.42456, -1.55789
+Point
+Point
+PointSegment de P1 à P2Expression "3" à 0.0, 0.0Expression "E1" à 0.0, 0.0
-Point à "x(P6)+E2*(x(P2)-x(P1))", "y(P6)+E2*(y(P2)-y(P1))"
+PointSegment de P6 à P4
@@ -974,12 +969,12 @@
s5E
-Point à -1.43158, 3.12982
-Point à 0.53333, 3.83158
-Point à -2.83509, -0.65965
-Point à -0.61754, -2.31579
-Point à 0.2807, 1.38947
-Point à "x(E)+x(P2)-x(P1)+x(P4)-x(P3)", "y(E)+y(P2)-y(P1)+y(P4)-y(P3)"
+Point
+Point
+Point
+Point
+Point
+PointSegment de P1 à P2Segment de P3 à P4Segment de E à P6
@@ -1033,27 +1028,26 @@
Expression "a+b" à -1.59802, 0.21584
-
-Premier point ?
+Premier coefficient ?
-Deuxième point ?
-Deuxième coefficient ?
-Troisième point ?
+Premier point ?
+Second coefficient ?
+Second point ?Troisième coefficient ?
+Troisième point ?
-
Désigner trois points pondérés (A,a) , (B,b) et (C,c) pour
-créer le barycentre G=Bar{(A,a),(B,b),(C,c)}
+
Renvoie le barycentre de (A,a) (B,b) et (C,c) par ses
+coordonnées : (a*x(A)+b*x(B)+c*x(C))/(a+b+c) et
+(a*y(A)+b*y(B)+c*y(C))/(a+b+c)
-Point à -1.34653, 3.51485
-Expression "2" à -1.14653, 3.51485
-Point à -2.73267, 1.37624
-Expression "3" à -2.53267, 1.37624
-Point à 1.66337, 1.43564
-Expression "5" à 1.86337, 1.43564
-Point à "x(P1)+E2/(E1+E2)*(x(P2)-x(P1))", "y(P1)+E2/(E1+E2)*(y(P2)-y(P1))"
-Expression "E1+E2" à -1.97822, 2.23168
-Point à "x(P4)+E3/(E4+E3)*(x(P3)-x(P4))", "y(P4)+E3/(E4+E3)*(y(P3)-y(P4))"
+Point
+Point
+Point
+Expression "1" à 0.0, 0.0
+Expression "-1" à 0.0, 0.0
+Expression "3" à 0.0, 0.0
+Point
@@ -1141,10 +1135,10 @@
fonction ?point d'ancrage ?
-Fonction ( 0 , 0 )
+Fonction ( 0 , 0 )Expression "0" à 0.0, 0.0Expression "3" à 0.0, 0.0
-Point à "(windoww/(windoww-d(windoww)))*(x(P5)-windowcx)+windowcx+d(windowcx)", "(windoww/(windoww-d(windoww)))*(y(P5)-windowcy)+windowcy+d(windowcy)"
+PointExpression "min(f,a,b)" à -6.35, 2.45
@@ -1153,11 +1147,11 @@
fonction ?Point d'ancrage ?
-Fonction ( 0 , 0 )
+Fonction ( 0 , 0 )Expression "-1" à 0.0, 0.0Expression "1" à 0.0, 0.0
-Point à "(windoww/(windoww-d(windoww)))*(x(P5)-windowcx)+windowcx+d(windowcx)", "(windoww/(windoww-d(windoww)))*(y(P5)-windowcy)+windowcy+d(windowcy)"
-Expression "max(f,a,b)" à -7.40109, 2.68358
+Point
+Expression "max(f,a,b)" à -7.4, 2.68
@@ -1165,20 +1159,20 @@
f1A
-Fonction ( 0 , 0 )
-Point à 0.26722, -0.59197
-Point à "x(A)", "f1(x(A))"
-Point à "x(P3)+1", "y(P3)+diff(f1,x(P3))"
+Fonction ( 0 , 0 )
+Point
+Point
+PointDroite passant par P1 et P3fonction ?
-Fonction ( 0 , 0 )
+Fonction ( 0 , 0 )Expression "-1" à 0.0, 0.0
-Point à "a", "f(a)"
-Point à "a+1", "f(a)+diff(f,a)"
+Point
+PointDroite passant par P1 et P2
@@ -1187,10 +1181,10 @@
fonction ?Point d'ancrage ?
-Fonction ( 0 , 0 )
+Fonction ( 0 , 0 )Expression "1.5" à 0.0, 0.0
-Point à "(windoww/(windoww-d(windoww)))*(x(P4)-windowcx)+windowcx+d(windowcx)", "(windoww/(windoww-d(windoww)))*(y(P4)-windowcy)+windowcy+d(windowcy)"
-Expression "diff(f,a)" à -10.82147, 3.79617
+Point
+Expression "diff(f,a)" à -10.82, 3.8
@@ -1200,7 +1194,7 @@
Expression "3" à 0.0, 0.0Expression "-25" à 0.0, 0.0
-Point à "E1*cos(E2)", "E1*sin(E2)"
+Point
@@ -1211,15 +1205,15 @@
fixes O(0,0) et I(1,0).
-Point à 0.0, 0.0
-Point à 1.0, 0.0
+Point
+PointExpression "-2.5" à 0.0, 0.0Expression "-30" à 0.0, 0.0Expression "" à 0.0, 0.0 Angle P1 - P2 de mesure 25.629060000000003 Cercle de centre P2 passant par P1 Intersection entre a1 et c1
-Point à "r*x(I1)", "r*y(I1)"
+Point
@@ -1229,7 +1223,7 @@
Expression "3" à 0.0, 0.0Expression "-3" à 0.0, 0.0
-Point à "E1*rcos(E2)", "E1*rsin(E2)"
+Point
@@ -1240,15 +1234,15 @@
fixes O(0,0) et I(1,0).
-Point à 0.0, 0.0
-Point à 1.0, 0.0
+Point
+PointExpression "-2" à 0.0, 0.0Expression "2.2" à 0.0, 0.0Expression "" à 0.0, 0.0 Angle P1 - P2 de mesure 25.629060000000003 Cercle de centre P2 passant par P1 Intersection entre a1 et c1
-Point à "x(I1)*r", "y(I1)*r"
+Point
@@ -1256,12 +1250,12 @@
P1P5
-Point à -5.41754, -0.99649
-Point à "(windoww/(windoww-d(windoww)))*(x(P5)-windowcx)+windowcx+d(windowcx)", "(windoww/(windoww-d(windoww)))*(y(P5)-windowcy)+windowcy+d(windowcy)"
-Expression "sqrt(x(P1)^2+y(P1)^2)" à 0.16421, 2.45193
-Expression "arccos(x(P1)/sqrt(x(P1)^2+y(P1)^2))*(2*(y(P1)>=0)-1)" à 0.16421, 2.25193
-Point à "x(P5)", "y(P5)+15/pixel"
-Point à "2*x(P5)-x(P3)", "2*y(P5)-y(P3)"
+Point
+Point
+Expression "sqrt(x(P1)^2+y(P1)^2)" à 0.16, 2.45
+Expression "arccos(x(P1)/sqrt(x(P1)^2+y(P1)^2))*(2*(y(P1)>=0)-1)" à 0.16, 2.25
+Point
+PointSegment de P4 à P3
@@ -1269,12 +1263,12 @@
P8P9
-Point à -3.84561, -3.10175
-Point à "(windoww/(windoww-d(windoww)))*(x(P9)-windowcx)+windowcx+d(windowcx)", "(windoww/(windoww-d(windoww)))*(y(P9)-windowcy)+windowcy+d(windowcy)"
-Expression "sqrt(x(P8)^2+y(P8)^2)" à 0.58526, -1.47789
-Expression "rarccos(x(P8)/sqrt(x(P8)^2+y(P8)^2))*(2*(y(P8)>=0)-1)" à 0.58526, -1.67789
-Point à "x(P9)", "y(P9)+15/pixel"
-Point à "2*x(P9)-x(P3)", "2*y(P9)-y(P3)"
+Point
+Point
+Expression "sqrt(x(P8)^2+y(P8)^2)" à 0.59, -1.48
+Expression "rarccos(x(P8)/sqrt(x(P8)^2+y(P8)^2))*(2*(y(P8)>=0)-1)" à 0.59, -1.68
+Point
+PointSegment de P4 à P3
@@ -1282,83 +1276,83 @@
ab
-Point à 2.0, 1.5
-Point à 1.0, 1.5
-Point à "x(a)+x(b)", "y(a)+y(b)"
+Point
+Point
+Pointab
-Point à 2.0, 1.5
-Point à 1.0, 1.5
-Point à "x(a)*x(b)-y(a)*y(b)", "x(a)*y(b)+x(b)*y(a)"
+Point
+Point
+PointP1
-Point à 0.5, 0.5
-Point à "x(P1)/((x(P1))^2+(y(P1))^2)", "-y(P1)/((x(P1))^2+(y(P1))^2)"
+Point
+Pointm
-Point à 1.5, 2.0
+PointExpression "1.5" à 0.0, 0.0
-Point à "k*x(m)", "k*y(m)"
+Point
-
+a
-Point à -5.22105, 4.70175
-Expression "sum(1,1)" à -5.22105, 4.20175
-Expression "1000" à -5.22105, 4.40175
-Expression "5" à -5.22105, 4.00175
-Point à "x(a)+1", "y(a)"
-Point à "x(a)", "y(a)-10/pixel"
+Point
+Expression "sum(1,1)" à -5.22, 4.2
+Expression "1000" à -5.22, 4.4
+Expression "5" à -5.22, 4.0
+Point
+PointPolygone aDemi-droite d'origine a vers P2Segment de P3 à a
-Point sur r1
-Expression "(x(po4)-x(a))/E3" à 3.03158, 1.67018
-Point à "x(a)+(x(po4)-x(a))*min(1,E1/E2)", "y(a)"
-Point à "x(po4)", "y(P3)"
+Point sur un objet
+Expression "(x(po4)-x(a))/E3" à 3.03, 1.67
+Point
+PointSegment de a à po4
-Fonction ( x(a)+floor((t+1)/2)*E4 , if(floor(t/2)==2*floor(floor(t/2)/2),y(a),y(P3)) )
-Point à "x(P5)", "y(P3)"
+Fonction ( x(a)+floor((t+1)/2)*E4 , if(floor(t/2)==2*floor(floor(t/2)/2),y(a),y(P3)) )
+PointSegment de po4 à P6Segment de P6 à P3Polygone a, P5, P7, P3
-
+at
-Point à "(windoww/(windoww-d(windoww)))*(x(a)-windowcx)+windowcx+d(windowcx)", "(windoww/(windoww-d(windoww)))*(y(a)-windowcy)+windowcy+d(windowcy)"
-Point à "if(t,(x(@a)/x(@a))*(windoww/(windoww-d(windoww)))*(x(t)-windowcx)+windowcx+d(windowcx),invalid)", "(windoww/(windoww-d(windoww)))*(y(t)-windowcy)+windowcy+d(windowcy)"
-Expression "5" à -3.64732, 4.95069
-Point à "x(a)+windoww/8", "y(a)-windoww/12"
-Point à "x(P3)+3*windoww", "y(P3)"
-Point à "x(P3)", "y(a)"
+Point
+Point
+Expression "5" à -3.65, 4.95
+Point
+Point
+PointSegment de P3 à P4
-Point sur s1
-Point à "x(po6)", "y(a)"
+Point sur un objet
+PointSegment de P5 à P7
-Expression "(x(P7)-x(P5))/(E1-1)" à -6.55238, 0.3029
-Point à "if(x(t)<x(P5),x(P5),if(x(t)>x(P7),x(P7),x(P5)+E2*round((x(t)-x(P5))/E2)))", "y(a)"
-Fonction ( x , y(a) )
+Expression "(x(P7)-x(P5))/(E1-1)" à -6.55, 0.3
+Point
+Fonction ( x , y(a) )Cercle de centre P8 passant par t de rayon "windoww/512"
-Expression "round((x(P8)-x(P5))/E2)" à -4.14732, 4.55486
+Expression "round((x(P8)-x(P5))/E2)" à -4.15, 4.55
-
+Point d'ancrage du curseur
Montrer le point d'ancrage du curseur. Entrez ensuite le
@@ -1382,7 +1376,7 @@
-
+Point d'ancrage du curseur
Montrer le point d'ancrage du curseur. Entrer ensuite le
@@ -1406,7 +1400,7 @@
-
+Point d'ancrage du curseur
Montrer le point d'ancrage du curseur.
@@ -1428,10 +1422,10 @@
Point sur c2 Segment de A à po4Segment de A à po5
-Angle M1 - A - po5
+Angle M1 - A - po5
-
+P
Place un point flottant dans la fenêtre (qui ne se déplace
@@ -1441,19 +1435,19 @@
Point à "(windoww/(windoww-d(windoww)))*(x(P35)-windowcx)+windowcx+d(windowcx)", "(windoww/(windoww-d(windoww)))*(y(P35)-windowcy)+windowcy+d(windowcy)"
-
+O
-Point à "(windoww/(windoww-d(windoww)))*(x(O)-windowcx)+windowcx+d(windowcx)", "(windoww/(windoww-d(windoww)))*(y(O)-windowcy)+windowcy+d(windowcy)"
-Point à "x(O)+windoww*3", "y(O)"
+Point
+PointSegment de O à P2
-Point à "x(O)", "y(O)+d(O,P2)"
+PointSegment de O à P3
-Point sur s1
-Point sur s2
+Point sur un objet
+Point sur un objet
-
+PPoint à "(windoww/(windoww-d(windoww)))*(x(P37)-windowcx)+windowcx+d(windowcx)", "windowcy"
@@ -1464,7 +1458,7 @@
Polygone P2, P3, P4, P5
-
+PPoint à "(windoww/(windoww-d(windoww)))*(x(P42)-windowcx)+windowcx+d(windowcx)", "windowcy"
@@ -1475,7 +1469,7 @@
Polygone P2, P3, P4, P5
-
+PPoint à "windowcx", "(windoww/(windoww-d(windoww)))*(y(P47)-windowcy)+windowcy+d(windowcy)"
@@ -1486,7 +1480,7 @@
Polygone P2, P3, P4, P5
-
+PPoint à "windowcx", "(windoww/(windoww-d(windoww)))*(y(P52)-windowcy)+windowcy+d(windowcy)"
@@ -1497,104 +1491,104 @@
Polygone P2, P3, P4, P5
-
+cd
-Point à 2.18978, 3.57664
-Point à "x(d)", "y(d)"
-Point à "if(c,if(pixel==0,x(c),if(d(c,@P2)<(5/pixel),x(@P2),x(c))),invalid)", "if(c,if(pixel==0,y(c),if(d(c,@P2)<(5/pixel),y(@P2),y(c))),invalid)"
+Point
+Point
+Point
-
+cd
-Point à 2.18978, 3.57664
-Point à "x(d)", "y(d)"
-Point à "if(c,if(pixel==0,x(c),if(d(c,@P2)<(10/pixel),x(@P2),x(c))),invalid)", "if(c,if(pixel==0,y(c),if(d(c,@P2)<(10/pixel),y(@P2),y(c))),invalid)"
+Point
+Point
+Point
-
+cd
-Point à 2.18978, 3.57664
-Point à "x(d)", "y(d)"
-Point à "if(c,if(pixel==0,x(c),if(d(c,@P2)<(15/pixel),x(@P2),x(c))),invalid)", "if(c,if(pixel==0,y(c),if(d(c,@P2)<(15/pixel),y(@P2),y(c))),invalid)"
+Point
+Point
+Point
-
+cd
-Point à 2.18978, 3.57664
-Point à "x(d)", "y(d)"
-Point à "if(c,if(pixel==0,x(c),if(d(c,@P2)<(20/pixel),x(@P2),x(c))),invalid)", "if(c,if(pixel==0,y(c),if(d(c,@P2)<(20/pixel),y(@P2),y(c))),invalid)"
+Point
+Point
+Point
-
+P3l1???
-Point à "if(P3,if(pixel==0,x(P3),if(d(P3,@P2)<(15/pixel),x(@P2),x(P3))),invalid)", "if(P3,if(pixel==0,y(P3),if(d(P3,@P2)<(15/pixel),y(@P2),y(P3))),invalid)"
+PointPerpendiculaire passant par P3 à l1Intersection entre perp1 et l1
-Point à "x(I1)", "y(I1)"
+Point
-
+P3c1
-Point à -0.17518, 0.24818
+Point???
-Point à "if(P3,if(pixel==0,x(P3),if(d(P3,@P4)<(15/pixel),x(@P4),x(P3))),invalid)", "if(P3,if(pixel==0,y(P3),if(d(P3,@P4)<(15/pixel),y(@P4),y(P3))),invalid)"
+PointDemi-droite d'origine P1 vers P3Intersection entre r1 et c1
-Point à "x(I1)", "y(I1)"
+Point
-
+P11
-Point à -2.89051, -0.80292
-Point à "x(P11)+1", "y(P11)"
-Point à "x(P11)", "y(P11)+1"
+Point
+Point
+PointDemi-droite d'origine P11 vers P2Demi-droite d'origine P11 vers P3
-Point sur r1
-Point sur r2
-Fonction ( if(floor(t/2)==(t/2),if(floor(t/4)==(t/4),x(P11),x(po4)),if(floor((t-1)/4)==(t-1)/4,x(P11),x(po4))) , if(floor(t/2)==(t/2),y(P11)+t/2,y(P11)+(t+1)/2) )
-Fonction ( if(floor(t/2)==(t/2),x(P11)+t/2,x(P11)+(t+1)/2) , if(floor(t/2)==(t/2),if(floor(t/4)==(t/4),y(P11),y(po5)),if(floor((t-1)/4)==(t-1)/4,y(P11),y(po5))) )
+Point sur un objet
+Point sur un objet
+Fonction ( if(floor(t/2)==(t/2),if(floor(t/4)==(t/4),x(P11),x(po4)),if(floor((t-1)/4)==(t-1)/4,x(P11),x(po4))) , if(floor(t/2)==(t/2),y(P11)+t/2,y(P11)+(t+1)/2) )
+Fonction ( if(floor(t/2)==(t/2),x(P11)+t/2,x(P11)+(t+1)/2) , if(floor(t/2)==(t/2),if(floor(t/4)==(t/4),y(P11),y(po5)),if(floor((t-1)/4)==(t-1)/4,y(P11),y(po5))) )Segment de P11 à po5
-Point à "x(po4)", "y(po5)"
+PointSegment de po4 à P11Segment de po5 à P6Segment de P6 à po4
-
+P1
-Point à 0.58883, 0.45685
-Point à "x(P1)-2*floor(windoww)", "y(P1)-2*floor(windoww)"
-Point à "x(P1)+2*floor(windoww)", "y(P1)-2*floor(windoww)"
-Point à "x(P1)-2*floor(windoww)", "y(P1)+2*floor(windoww)"
-Fonction ( if(floor(t/2)==(t/2),if(floor(t/4)==(t/4),x(P2),x(P3)),if(floor((t-1)/4)==(t-1)/4,x(P2),x(P3))) , if(floor(t/2)==(t/2),y(P2)+t/2,y(P2)+(t+1)/2) )
-Fonction ( if(floor(t/2)==(t/2),x(P2)+t/2,x(P2)+(t+1)/2) , if(floor(t/2)==(t/2),if(floor(t/4)==(t/4),y(P2),y(P4)),if(floor((t-1)/4)==(t-1)/4,y(P2),y(P4))) )
+Point
+Point
+Point
+Point
+Fonction ( if(floor(t/2)==(t/2),if(floor(t/4)==(t/4),x(P2),x(P3)),if(floor((t-1)/4)==(t-1)/4,x(P2),x(P3))) , if(floor(t/2)==(t/2),y(P2)+t/2,y(P2)+(t+1)/2) )
+Fonction ( if(floor(t/2)==(t/2),x(P2)+t/2,x(P2)+(t+1)/2) , if(floor(t/2)==(t/2),if(floor(t/4)==(t/4),y(P2),y(P4)),if(floor((t-1)/4)==(t-1)/4,y(P2),y(P4))) )
-
+OP38
-Point à -1.31387, -0.36496
-Point à "x(O)+1", "y(O)"
+Point
+PointDemi-droite d'origine O vers P2
-Point sur r1
-Point à 0.17518, 0.71533
+Point sur un objet
+PointPoint à "x(C)+x(B)-x(A)", "y(C)+y(B)-y(A)" Cercle de centre O de rayon (1+floor(4*windoww/d(P5,O)))*d(P5,O)Droite passant par O et P5
@@ -1608,12 +1602,12 @@
Point à "x(C)+x(B)-x(A)", "y(C)+y(B)-y(A)" Droite passant par P7 et I3Intersection entre l1 et l3
-Point à "if(d(O,I2)>d(O,I4),x(I2),x(I4))", "if(d(O,I2)>d(O,I4),y(I2),y(I4))"
+PointCercle de centre O de rayon (1+floor(d(O,P8)/d(O,P5)))*d(O,P5)Intersection entre l1 et c2Point à "x(C)+x(B)-x(A)", "y(C)+y(B)-y(A)" Point à "x(C)+x(B)-x(A)", "y(C)+y(B)-y(A)"
-Point à "2*x(O)-x(I5)", "2*y(O)-y(I5)"
+PointPoint à "x(C)+x(B)-x(A)", "y(C)+y(B)-y(A)" Point à "x(C)+x(B)-x(A)", "y(C)+y(B)-y(A)" Droite passant par I5 et P9
@@ -1622,18 +1616,18 @@
Droite passant par P11 et P13Intersection entre l7 et l4Intersection entre l6 et l5
-Fonction ( if(floor(t/2)==(t/2),if(floor(t/4)==(t/4),x(I5)+(t/2)*(x(P10)-x(I5)),x(I6)+(t/2)*(x(P10)-x(I5))),if(floor((t-1)/4)==(t-1)/4,x(I5)+((t+1)/2)*(x(P10)-x(I5)),x(I6)+((t+1)/2)*(x(P10)-x(I5)))) , if(floor(t/2)==(t/2),if(floor(t/4)==(t/4),y(I5)+(t/2)*(y(P10)-y(I5)),y(I6)+(t/2)*(y(P10)-y(I5))),if(floor((t-1)/4)==(t-1)/4,y(I5)+((t+1)/2)*(y(P10)-y(I5)),y(I6)+((t+1)/2)*(y(P10)-y(I5)))) )
-Fonction ( if(floor(t/2)==(t/2),if(floor(t/4)==(t/4),x(I5)+(t/2)*(x(P9)-x(I5)),x(I7)+(t/2)*(x(P9)-x(I5))),if(floor((t-1)/4)==(t-1)/4,x(I5)+((t+1)/2)*(x(P9)-x(I5)),x(I7)+((t+1)/2)*(x(P9)-x(I5)))) , if(floor(t/2)==(t/2),if(floor(t/4)==(t/4),y(I5)+(t/2)*(y(P9)-y(I5)),y(I7)+(t/2)*(y(P9)-y(I5))),if(floor((t-1)/4)==(t-1)/4,y(I5)+((t+1)/2)*(y(P9)-y(I5)),y(I7)+((t+1)/2)*(y(P9)-y(I5)))) )
+Fonction ( if(floor(t/2)==(t/2),if(floor(t/4)==(t/4),x(I5)+(t/2)*(x(P10)-x(I5)),x(I6)+(t/2)*(x(P10)-x(I5))),if(floor((t-1)/4)==(t-1)/4,x(I5)+((t+1)/2)*(x(P10)-x(I5)),x(I6)+((t+1)/2)*(x(P10)-x(I5)))) , if(floor(t/2)==(t/2),if(floor(t/4)==(t/4),y(I5)+(t/2)*(y(P10)-y(I5)),y(I6)+(t/2)*(y(P10)-y(I5))),if(floor((t-1)/4)==(t-1)/4,y(I5)+((t+1)/2)*(y(P10)-y(I5)),y(I6)+((t+1)/2)*(y(P10)-y(I5)))) )
+Fonction ( if(floor(t/2)==(t/2),if(floor(t/4)==(t/4),x(I5)+(t/2)*(x(P9)-x(I5)),x(I7)+(t/2)*(x(P9)-x(I5))),if(floor((t-1)/4)==(t-1)/4,x(I5)+((t+1)/2)*(x(P9)-x(I5)),x(I7)+((t+1)/2)*(x(P9)-x(I5)))) , if(floor(t/2)==(t/2),if(floor(t/4)==(t/4),y(I5)+(t/2)*(y(P9)-y(I5)),y(I7)+(t/2)*(y(P9)-y(I5))),if(floor((t-1)/4)==(t-1)/4,y(I5)+((t+1)/2)*(y(P9)-y(I5)),y(I7)+((t+1)/2)*(y(P9)-y(I5)))) )
-
+P18P19P20
-Point à -1.54745, 0.45255
-Point à 1.10949, -0.65693
-Point à 1.37226, 1.12409
+Point
+Point
+PointPoint à "x(C)+x(B)-x(A)", "y(C)+y(B)-y(A)" Cercle de centre P18 de rayon (1+floor(4*windoww/d(P4,P18)))*d(P4,P18)Droite passant par P18 et P4
@@ -1647,12 +1641,12 @@
Point à "x(C)+x(B)-x(A)", "y(C)+y(B)-y(A)" Droite passant par P6 et I3Intersection entre l1 et l3
-Point à "if(d(P18,I2)>d(P18,I4),x(I2),x(I4))", "if(d(P18,I2)>d(P18,I4),y(I2),y(I4))"
+PointCercle de centre P18 de rayon (1+floor(d(P18,P7)/d(P18,P4)))*d(P18,P4)Intersection entre l1 et c2Point à "x(C)+x(B)-x(A)", "y(C)+y(B)-y(A)" Point à "x(C)+x(B)-x(A)", "y(C)+y(B)-y(A)"
-Point à "2*x(P18)-x(I5)", "2*y(P18)-y(I5)"
+PointPoint à "x(C)+x(B)-x(A)", "y(C)+y(B)-y(A)" Point à "x(C)+x(B)-x(A)", "y(C)+y(B)-y(A)" Droite passant par I5 et P8
@@ -1661,11 +1655,11 @@
Droite passant par P10 et P12Intersection entre l7 et l4Intersection entre l6 et l5
-Fonction ( if(floor(t/2)==(t/2),if(floor(t/4)==(t/4),x(I5)+(t/2)*(x(P9)-x(I5)),x(I6)+(t/2)*(x(P9)-x(I5))),if(floor((t-1)/4)==(t-1)/4,x(I5)+((t+1)/2)*(x(P9)-x(I5)),x(I6)+((t+1)/2)*(x(P9)-x(I5)))) , if(floor(t/2)==(t/2),if(floor(t/4)==(t/4),y(I5)+(t/2)*(y(P9)-y(I5)),y(I6)+(t/2)*(y(P9)-y(I5))),if(floor((t-1)/4)==(t-1)/4,y(I5)+((t+1)/2)*(y(P9)-y(I5)),y(I6)+((t+1)/2)*(y(P9)-y(I5)))) )
-Fonction ( if(floor(t/2)==(t/2),if(floor(t/4)==(t/4),x(I5)+(t/2)*(x(P8)-x(I5)),x(I7)+(t/2)*(x(P8)-x(I5))),if(floor((t-1)/4)==(t-1)/4,x(I5)+((t+1)/2)*(x(P8)-x(I5)),x(I7)+((t+1)/2)*(x(P8)-x(I5)))) , if(floor(t/2)==(t/2),if(floor(t/4)==(t/4),y(I5)+(t/2)*(y(P8)-y(I5)),y(I7)+(t/2)*(y(P8)-y(I5))),if(floor((t-1)/4)==(t-1)/4,y(I5)+((t+1)/2)*(y(P8)-y(I5)),y(I7)+((t+1)/2)*(y(P8)-y(I5)))) )
+Fonction ( if(floor(t/2)==(t/2),if(floor(t/4)==(t/4),x(I5)+(t/2)*(x(P9)-x(I5)),x(I6)+(t/2)*(x(P9)-x(I5))),if(floor((t-1)/4)==(t-1)/4,x(I5)+((t+1)/2)*(x(P9)-x(I5)),x(I6)+((t+1)/2)*(x(P9)-x(I5)))) , if(floor(t/2)==(t/2),if(floor(t/4)==(t/4),y(I5)+(t/2)*(y(P9)-y(I5)),y(I6)+(t/2)*(y(P9)-y(I5))),if(floor((t-1)/4)==(t-1)/4,y(I5)+((t+1)/2)*(y(P9)-y(I5)),y(I6)+((t+1)/2)*(y(P9)-y(I5)))) )
+Fonction ( if(floor(t/2)==(t/2),if(floor(t/4)==(t/4),x(I5)+(t/2)*(x(P8)-x(I5)),x(I7)+(t/2)*(x(P8)-x(I5))),if(floor((t-1)/4)==(t-1)/4,x(I5)+((t+1)/2)*(x(P8)-x(I5)),x(I7)+((t+1)/2)*(x(P8)-x(I5)))) , if(floor(t/2)==(t/2),if(floor(t/4)==(t/4),y(I5)+(t/2)*(y(P8)-y(I5)),y(I7)+(t/2)*(y(P8)-y(I5))),if(floor((t-1)/4)==(t-1)/4,y(I5)+((t+1)/2)*(y(P8)-y(I5)),y(I7)+((t+1)/2)*(y(P8)-y(I5)))) )
-
+A
Se reporter à l'article de CaRzine "Interpolation
@@ -1680,7 +1674,7 @@
Expression "round((y(po2)-y(A))/(x(po2)-x(A))*100)/100" à -5.81684, 3.81811
-
+ABdA
@@ -1699,10 +1693,10 @@
Expression "((dA*(x(A))^2+dA*x(A)*x(B)+-2*dA*(x(B))^2+2*(x(A))^2*dB-x(A)*dB*x(B)+-3*x(A)*y(A)+3*x(A)*y(B)-dB*(x(B))^2+-3*y(A)*x(B)+3*x(B)*y(B)))/E3" à -7.13742, 2.45243 Expression "((-1)*(dB*(x(A))^3+dB*(x(A))^2*x(B)+-2*dB*x(A)*(x(B))^2+2*(x(A))^2*x(B)*dA-x(A)*(x(B))^2*dA+-6*x(A)*x(B)*y(A)+6*x(A)*x(B)*y(B)-(x(B))^3*dA))/E3" à -7.13742, 1.96195 Expression "((-dB*(x(B))^2*(x(A))^2+dB*x(B)*(x(A))^3-(x(B))^3*x(A)*dA+(x(B))^3*y(A)+(x(B))^2*(x(A))^2*dA-3*(x(B))^2*x(A)*y(A)--3*x(B)*(x(A))^2*y(B)-(x(A))^3*y(B)))/E3" à -7.13742, 1.43763
-Fonction ( x , E4*x^3+E5*x^2+E6*x+E7 )
+Fonction ( x , E4*x^3+E5*x^2+E6*x+E7 )
-
+ABC
@@ -1725,17 +1719,17 @@
Expression "((E1*(x(A))^2+E1*x(A)*x(B)+-2*E1*(x(B))^2+2*(x(A))^2*E2-x(A)*E2*x(B)+-3*x(A)*y(A)+3*x(A)*y(B)-E2*(x(B))^2+-3*y(A)*x(B)+3*x(B)*y(B)))/E4" à -7.13742, 2.45243 Expression "((-1)*(E2*(x(A))^3+E2*(x(A))^2*x(B)+-2*E2*x(A)*(x(B))^2+2*(x(A))^2*x(B)*E1-x(A)*(x(B))^2*E1+-6*x(A)*x(B)*y(A)+6*x(A)*x(B)*y(B)-(x(B))^3*E1))/E4" à -7.13742, 1.96195 Expression "((-E2*(x(B))^2*(x(A))^2+E2*x(B)*(x(A))^3-(x(B))^3*x(A)*E1+(x(B))^3*y(A)+(x(B))^2*(x(A))^2*E1-3*(x(B))^2*x(A)*y(A)--3*x(B)*(x(A))^2*y(B)-(x(A))^3*y(B)))/E4" à -7.13742, 1.43763
-Fonction ( x , E5*x^3+E6*x^2+E7*x+E8 )
+Fonction ( x , E5*x^3+E6*x^2+E7*x+E8 )Expression "-(x(B)-x(C))^3" à -7.13742, 3.39958 Expression "((2*y(B)-x(B)*E2-x(B)*E3+x(C)*E2+x(C)*E3+-2*y(C)))/E9" à -7.13742, 2.95983 Expression "((E2*(x(B))^2+E2*x(B)*x(C)+-2*E2*(x(C))^2+2*(x(B))^2*E3-x(B)*E3*x(C)+-3*x(B)*y(B)+3*x(B)*y(C)-E3*(x(C))^2+-3*y(B)*x(C)+3*x(C)*y(C)))/E9" à -7.13742, 2.45243 Expression "((-1)*(E3*(x(B))^3+E3*(x(B))^2*x(C)+-2*E3*x(B)*(x(C))^2+2*(x(B))^2*x(C)*E2-x(B)*(x(C))^2*E2+-6*x(B)*x(C)*y(B)+6*x(B)*x(C)*y(C)-(x(C))^3*E2))/E9" à -7.13742, 1.96195 Expression "((-E3*(x(C))^2*(x(B))^2+E3*x(C)*(x(B))^3-(x(C))^3*x(B)*E2+(x(C))^3*y(B)+(x(C))^2*(x(B))^2*E2-3*(x(C))^2*x(B)*y(B)--3*x(C)*(x(B))^2*y(C)-(x(B))^3*y(C)))/E9" à -7.13742, 1.43763
-Fonction ( x , E10*x^3+E11*x^2+E12*x+E13 )
-Fonction ( x , if(x<x(B),f1(x),f2(x)) )
+Fonction ( x , E10*x^3+E11*x^2+E12*x+E13 )
+Fonction ( x , if(x<x(B),f1(x),f2(x)) )
-
+DEF
@@ -1762,23 +1756,23 @@
Expression "((E34*(x(D))^2+E34*x(D)*x(E)+-2*E34*(x(E))^2+2*(x(D))^2*E35-x(D)*E35*x(E)+-3*x(D)*y(D)+3*x(D)*y(E)-E35*(x(E))^2+-3*y(D)*x(E)+3*x(E)*y(E)))/E5" à -7.13742, 2.45243 Expression "((-1)*(E35*(x(D))^3+E35*(x(D))^2*x(E)+-2*E35*x(D)*(x(E))^2+2*(x(D))^2*x(E)*E34-x(D)*(x(E))^2*E34+-6*x(D)*x(E)*y(D)+6*x(D)*x(E)*y(E)-(x(E))^3*E34))/E5" à -7.13742, 1.96195 Expression "((-E35*(x(E))^2*(x(D))^2+E35*x(E)*(x(D))^3-(x(E))^3*x(D)*E34+(x(E))^3*y(D)+(x(E))^2*(x(D))^2*E34-3*(x(E))^2*x(D)*y(D)--3*x(E)*(x(D))^2*y(E)-(x(D))^3*y(E)))/E5" à -7.13742, 1.43763
-Fonction ( x , E6*x^3+E7*x^2+E8*x+E9 )
+Fonction ( x , E6*x^3+E7*x^2+E8*x+E9 )Expression "-(x(E)-x(F))^3" à -7.13742, 3.39958 Expression "((2*y(E)-x(E)*E35-x(E)*E36+x(F)*E35+x(F)*E36+-2*y(F)))/E10" à -7.13742, 2.95983 Expression "((E35*(x(E))^2+E35*x(E)*x(F)+-2*E35*(x(F))^2+2*(x(E))^2*E36-x(E)*E36*x(F)+-3*x(E)*y(E)+3*x(E)*y(F)-E36*(x(F))^2+-3*y(E)*x(F)+3*x(F)*y(F)))/E10" à -7.13742, 2.45243 Expression "((-1)*(E36*(x(E))^3+E36*(x(E))^2*x(F)+-2*E36*x(E)*(x(F))^2+2*(x(E))^2*x(F)*E35-x(E)*(x(F))^2*E35+-6*x(E)*x(F)*y(E)+6*x(E)*x(F)*y(F)-(x(F))^3*E35))/E10" à -7.13742, 1.96195 Expression "((-E36*(x(F))^2*(x(E))^2+E36*x(F)*(x(E))^3-(x(F))^3*x(E)*E35+(x(F))^3*y(E)+(x(F))^2*(x(E))^2*E35-3*(x(F))^2*x(E)*y(E)--3*x(F)*(x(E))^2*y(F)-(x(E))^3*y(F)))/E10" à -7.13742, 1.43763
-Fonction ( x , E11*x^3+E12*x^2+E13*x+E14 )
+Fonction ( x , E11*x^3+E12*x^2+E13*x+E14 )Expression "-(x(F)-x(G))^3" à -7.13742, 3.39958 Expression "((2*y(F)-x(F)*E36-x(F)*E37+x(G)*E36+x(G)*E37+-2*y(G)))/E15" à -7.13742, 2.95983 Expression "((E36*(x(F))^2+E36*x(F)*x(G)+-2*E36*(x(G))^2+2*(x(F))^2*E37-x(F)*E37*x(G)+-3*x(F)*y(F)+3*x(F)*y(G)-E37*(x(G))^2+-3*y(F)*x(G)+3*x(G)*y(G)))/E15" à -7.13742, 2.45243 Expression "((-1)*(E37*(x(F))^3+E37*(x(F))^2*x(G)+-2*E37*x(F)*(x(G))^2+2*(x(F))^2*x(G)*E36-x(F)*(x(G))^2*E36+-6*x(F)*x(G)*y(F)+6*x(F)*x(G)*y(G)-(x(G))^3*E36))/E15" à -7.13742, 1.96195 Expression "((-E37*(x(G))^2*(x(F))^2+E37*x(G)*(x(F))^3-(x(G))^3*x(F)*E36+(x(G))^3*y(F)+(x(G))^2*(x(F))^2*E36-3*(x(G))^2*x(F)*y(F)--3*x(G)*(x(F))^2*y(G)-(x(F))^3*y(G)))/E15" à -7.13742, 1.43763
-Fonction ( x , E16*x^3+E17*x^2+E18*x+E19 )
-Fonction ( x , if(x<x(E),f1(x),if(x<x(F),f2(x),f3(x))) )
+Fonction ( x , E16*x^3+E17*x^2+E18*x+E19 )
+Fonction ( x , if(x<x(E),f1(x),if(x<x(F),f2(x),f3(x))) )
-
+DEF
@@ -1817,9 +1811,9 @@
Expression "((E36*(x(F))^2+E36*x(F)*x(G)+-2*E36*(x(G))^2+2*(x(F))^2*E37-x(F)*E37*x(G)+-3*x(F)*y(F)+3*x(F)*y(G)-E37*(x(G))^2+-3*y(F)*x(G)+3*x(G)*y(G)))/E3" à -7.13742, 2.45243 Expression "((-1)*(E37*(x(F))^3+E37*(x(F))^2*x(G)+-2*E37*x(F)*(x(G))^2+2*(x(F))^2*x(G)*E36-x(F)*(x(G))^2*E36+-6*x(F)*x(G)*y(F)+6*x(F)*x(G)*y(G)-(x(G))^3*E36))/E3" à -7.13742, 1.96195 Expression "((-E37*(x(G))^2*(x(F))^2+E37*x(G)*(x(F))^3-(x(G))^3*x(F)*E36+(x(G))^3*y(F)+(x(G))^2*(x(F))^2*E36-3*(x(G))^2*x(F)*y(F)--3*x(G)*(x(F))^2*y(G)-(x(F))^3*y(G)))/E3" à -7.13742, 1.43763
-Fonction ( x , E8*x^3+E9*x^2+E10*x+E11 )
-Fonction ( x , E12*x^3+E13*x^2+E14*x+E15 )
-Fonction ( x , E16*x^3+E17*x^2+E18*x+E19 )
+Fonction ( x , E8*x^3+E9*x^2+E10*x+E11 )
+Fonction ( x , E12*x^3+E13*x^2+E14*x+E15 )
+Fonction ( x , E16*x^3+E17*x^2+E18*x+E19 )Point à -1.85836, -3.63286 Expression "0" à 0.0, 0.0 Expression "-(x(G)-x(H))^3" à -7.13742, 3.39958
@@ -1827,11 +1821,11 @@
Expression "((E37*(x(G))^2+E37*x(G)*x(H)+-2*E37*(x(H))^2+2*(x(G))^2*E33-x(G)*E33*x(H)+-3*x(G)*y(G)+3*x(G)*y(H)-E33*(x(H))^2+-3*y(G)*x(H)+3*x(H)*y(H)))/E21" à -7.13742, 2.45243 Expression "((-1)*(E33*(x(G))^3+E33*(x(G))^2*x(H)+-2*E33*x(G)*(x(H))^2+2*(x(G))^2*x(H)*E37-x(G)*(x(H))^2*E37+-6*x(G)*x(H)*y(G)+6*x(G)*x(H)*y(H)-(x(H))^3*E37))/E21" à -7.13742, 1.96195 Expression "((-E33*(x(H))^2*(x(G))^2+E33*x(H)*(x(G))^3-(x(H))^3*x(G)*E37+(x(H))^3*y(G)+(x(H))^2*(x(G))^2*E37-3*(x(H))^2*x(G)*y(G)--3*x(H)*(x(G))^2*y(H)-(x(G))^3*y(H)))/E21" à -7.13742, 1.43763
-Fonction ( x , E22*x^3+E23*x^2+E24*x+E25 )
-Fonction ( x , if(x<x(E),f1(x),if(x<x(F),f2(x),if(x<x(G),f3(x),f4(x)))) )
+Fonction ( x , E22*x^3+E23*x^2+E24*x+E25 )
+Fonction ( x , if(x<x(E),f1(x),if(x<x(F),f2(x),if(x<x(G),f3(x),f4(x)))) )
-
+DEF
@@ -1872,9 +1866,9 @@
Expression "((E36*(x(F))^2+E36*x(F)*x(G)+-2*E36*(x(G))^2+2*(x(F))^2*E37-x(F)*E37*x(G)+-3*x(F)*y(F)+3*x(F)*y(G)-E37*(x(G))^2+-3*y(F)*x(G)+3*x(G)*y(G)))/E3" à -7.13742, 2.45243 Expression "((-1)*(E37*(x(F))^3+E37*(x(F))^2*x(G)+-2*E37*x(F)*(x(G))^2+2*(x(F))^2*x(G)*E36-x(F)*(x(G))^2*E36+-6*x(F)*x(G)*y(F)+6*x(F)*x(G)*y(G)-(x(G))^3*E36))/E3" à -7.13742, 1.96195 Expression "((-E37*(x(G))^2*(x(F))^2+E37*x(G)*(x(F))^3-(x(G))^3*x(F)*E36+(x(G))^3*y(F)+(x(G))^2*(x(F))^2*E36-3*(x(G))^2*x(F)*y(F)--3*x(G)*(x(F))^2*y(G)-(x(F))^3*y(G)))/E3" à -7.13742, 1.43763
-Fonction ( x , E8*x^3+E9*x^2+E10*x+E11 )
-Fonction ( x , E12*x^3+E13*x^2+E14*x+E15 )
-Fonction ( x , E16*x^3+E17*x^2+E18*x+E19 )
+Fonction ( x , E8*x^3+E9*x^2+E10*x+E11 )
+Fonction ( x , E12*x^3+E13*x^2+E14*x+E15 )
+Fonction ( x , E16*x^3+E17*x^2+E18*x+E19 )Point à -1.85836, -3.63286 Expression "0" à 0.0, 0.0 Expression "-(x(G)-x(H))^3" à -7.13742, 3.39958
@@ -1882,7 +1876,7 @@
Expression "((E37*(x(G))^2+E37*x(G)*x(H)+-2*E37*(x(H))^2+2*(x(G))^2*E33-x(G)*E33*x(H)+-3*x(G)*y(G)+3*x(G)*y(H)-E33*(x(H))^2+-3*y(G)*x(H)+3*x(H)*y(H)))/E21" à -7.13742, 2.45243 Expression "((-1)*(E33*(x(G))^3+E33*(x(G))^2*x(H)+-2*E33*x(G)*(x(H))^2+2*(x(G))^2*x(H)*E37-x(G)*(x(H))^2*E37+-6*x(G)*x(H)*y(G)+6*x(G)*x(H)*y(H)-(x(H))^3*E37))/E21" à -7.13742, 1.96195 Expression "((-E33*(x(H))^2*(x(G))^2+E33*x(H)*(x(G))^3-(x(H))^3*x(G)*E37+(x(H))^3*y(G)+(x(H))^2*(x(G))^2*E37-3*(x(H))^2*x(G)*y(G)--3*x(H)*(x(G))^2*y(H)-(x(G))^3*y(H)))/E21" à -7.13742, 1.43763
-Fonction ( x , E22*x^3+E23*x^2+E24*x+E25 )
+Fonction ( x , E22*x^3+E23*x^2+E24*x+E25 )Point à -0.7932, -3.6102 Expression "0" à 0.0, 0.0 Expression "-(x(H)-x(I))^3" à -7.13742, 3.39958
@@ -1890,8 +1884,8 @@
Expression "((E33*(x(H))^2+E33*x(H)*x(I)+-2*E33*(x(I))^2+2*(x(H))^2*E58-x(H)*E58*x(I)+-3*x(H)*y(H)+3*x(H)*y(I)-E58*(x(I))^2+-3*y(H)*x(I)+3*x(I)*y(I)))/E27" à -7.13742, 2.45243 Expression "((-1)*(E58*(x(H))^3+E58*(x(H))^2*x(I)+-2*E58*x(H)*(x(I))^2+2*(x(H))^2*x(I)*E33-x(H)*(x(I))^2*E33+-6*x(H)*x(I)*y(H)+6*x(H)*x(I)*y(I)-(x(I))^3*E33))/E27" à -7.13742, 1.96195 Expression "((-E58*(x(I))^2*(x(H))^2+E58*x(I)*(x(H))^3-(x(I))^3*x(H)*E33+(x(I))^3*y(H)+(x(I))^2*(x(H))^2*E33-3*(x(I))^2*x(H)*y(H)--3*x(I)*(x(H))^2*y(I)-(x(H))^3*y(I)))/E27" à -7.13742, 1.43763
-Fonction ( x , E28*x^3+E29*x^2+E30*x+E31 )
-Fonction ( x , if(x<x(E),f1(x),if(x<x(F),f2(x),if(x<x(G),f3(x),if(x<x(H),f4(x),f5(x))))) )
+Fonction ( x , E28*x^3+E29*x^2+E30*x+E31 )
+Fonction ( x , if(x<x(E),f1(x),if(x<x(F),f2(x),if(x<x(G),f3(x),if(x<x(H),f4(x),f5(x))))) )
--- a/utils/library.mcr
+++ b/utils/library.mcr
@@ -1,1631 +1,1625 @@
-
-
-
-P4
-P5
-P6
-
-Point à -5.0346, -4.77419
-Point à -0.62498, -5.39917
-Segment de P4 à P5
-Point à -0.94969, -2.78714
-Segment de P5 à P6
-Cercle de centre P5 de rayon windoww/24
-Intersection entre s1 et c1
-Parallèle passant par I1 à s2
-Intersection entre s2 et c1
-Parallèle passant par I2 à s1
-Intersection entre par2 et par1
-Segment de I1 à I3
-Segment de I3 à I2
-
-
-
-s1
-
-Point à -5.45985, 5.15328
-Point à 4.29197, -0.83212
-Segment de P1 à P2
-Milieu de P1 et P2
-Cercle de centre M1 de rayon 6/pixel
-Angle P2 - M1 with size 60
-Intersection entre a1 et c1
-Point à "2*x(M1)-x(I1)", "2*y(M1)-y(I1)"
-Segment de I1 à P3
-
-
-
-s1
-
-Point à -2.0146, 4.13139
-Point à 2.62774, 1.62044
-Segment de P1 à P2
-Milieu de P1 et P2
-Cercle de centre M1 de rayon 3/pixel
-Intersection entre s1 et c1
-Cercle de centre I1 de rayon 6/pixel
-Angle P2 - I1 with size 60
-Intersection entre a1 et c2
-Point à "2*x(I1)-x(I2)", "2*y(I1)-y(I2)"
-Point à "2*x(M1)-x(I2)", "2*y(M1)-y(I2)"
-Point à "2*x(M1)-x(P3)", "2*y(M1)-y(P3)"
-Segment de P3 à I2
-Segment de P5 à P4
-
-
-
-s1
-
-Point à -4.58394, 4.48175
-Point à -1.08029, 0.42336
-Segment de P1 à P2
-Milieu de P1 et P2
-Cercle de centre M1 de rayon 6/pixel
-Angle P2 - M1 with size 60
-Intersection entre a1 et c1
-Point à "2*x(M1)-x(I1)", "2*y(M1)-y(I1)"
-Segment de I1 à P3
-Intersection entre s1 et c1
-Intersection entre s1 et c1
-Cercle de centre I3 passant par M1
-Cercle de centre I2 passant par M1
-Intersection entre c3 et c1
-Point à "2*x(I2)-x(I4)", "2*y(I2)-y(I4)"
-Intersection entre c2 et c1
-Point à "2*x(I3)-x(I5)", "2*y(I3)-y(I5)"
-Segment de P5 à I5
-Segment de I4 à P4
-
-
-
-s1
-
-Point à -4.17518, 2.81752
-Point à 1.70568, -0.987
-Segment de P1 à P2
-Milieu de P1 et P2
-Cercle de centre M1 de rayon 6/pixel
-Angle P2 - M1 with size 60
-Intersection entre a1 et c1
-Point à "2*x(M1)-x(I1)", "2*y(M1)-y(I1)"
-Segment de I1 à P3
-Perpendiculaire passant par I1 à s1
-Intersection entre perp1 et s1
-Point à "2*x(I2)-x(I1)", "2*y(I2)-y(I1)"
-Point à "2*x(M1)-x(P4)", "2*y(M1)-y(P4)"
-Segment de P5 à P4
-
-
-
-s1
-
-Point à -4.17518, 2.81752
-Point à 1.70568, -0.987
-Segment de P1 à P2
-Milieu de P1 et P2
-Cercle de centre M1 de rayon 6/pixel
-
-
-
-s1
-
-Point à -4.17518, 2.81752
-Point à -0.46849, -0.48227
-Segment de P1 à P2
-Milieu de P1 et P2
-Perpendiculaire passant par M1 à s1
-Cercle de centre M1 de rayon 6/pixel
-Intersection entre perp1 et c1
-Parallèle passant par I1 à s1
-Intersection entre perp1 et c1
-Parallèle passant par I2 à s1
-Cercle de centre I2 de rayon 12/pixel
-Cercle de centre I1 de rayon c2
-Intersection entre par1 et c3
-Milieu de I3 et I1
-Intersection entre par2 et c2
-Milieu de I2 et I4
-Intersection entre par2 et c2
-Intersection entre par1 et c3
-Function ( (t==0)*x(I5)+(t==1)*x(M2)+(t==2)*x(M3)+(t==3)*x(I6) , (t==0)*y(I5)+(t==1)*y(M2)+(t==2)*y(M3)+(t==3)*y(I6) )
-
-
-
-P1
-P2
-
-Point à -5.45985, 5.15328
-Point à 4.29197, -0.83212
-Segment de P1 à P2
-Milieu de P1 et P2
-Cercle de centre M1 de rayon 6/pixel
-Angle P2 - M1 with size 60
-Intersection entre a1 et c1
-Point à "2*x(M1)-x(I1)", "2*y(M1)-y(I1)"
-Segment de I1 à P3
-
-
-
-P1
-P2
-
-Point à -2.0146, 4.13139
-Point à 2.62774, 1.62044
-Segment de P1 à P2
-Milieu de P1 et P2
-Cercle de centre M1 de rayon 3/pixel
-Intersection entre s1 et c1
-Cercle de centre I1 de rayon 6/pixel
-Angle P2 - I1 with size 60
-Intersection entre a1 et c2
-Point à "2*x(I1)-x(I2)", "2*y(I1)-y(I2)"
-Point à "2*x(M1)-x(I2)", "2*y(M1)-y(I2)"
-Point à "2*x(M1)-x(P3)", "2*y(M1)-y(P3)"
-Segment de P3 à I2
-Segment de P5 à P4
-
-
-
-P1
-P2
-
-Point à -4.58394, 4.48175
-Point à -1.08029, 0.42336
-Segment de P1 à P2
-Milieu de P1 et P2
-Cercle de centre M1 de rayon 6/pixel
-Angle P2 - M1 with size 60
-Intersection entre a1 et c1
-Point à "2*x(M1)-x(I1)", "2*y(M1)-y(I1)"
-Segment de I1 à P3
-Intersection entre s1 et c1
-Intersection entre s1 et c1
-Cercle de centre I3 passant par M1
-Cercle de centre I2 passant par M1
-Intersection entre c3 et c1
-Point à "2*x(I2)-x(I4)", "2*y(I2)-y(I4)"
-Intersection entre c2 et c1
-Point à "2*x(I3)-x(I5)", "2*y(I3)-y(I5)"
-Segment de P5 à I5
-Segment de I4 à P4
-
-
-
-P1
-P2
-
-Point à -4.17518, 2.81752
-Point à 1.70568, -0.987
-Segment de P1 à P2
-Milieu de P1 et P2
-Cercle de centre M1 de rayon 6/pixel
-Angle P2 - M1 with size 60
-Intersection entre a1 et c1
-Point à "2*x(M1)-x(I1)", "2*y(M1)-y(I1)"
-Segment de I1 à P3
-Perpendiculaire passant par I1 à s1
-Intersection entre perp1 et s1
-Point à "2*x(I2)-x(I1)", "2*y(I2)-y(I1)"
-Point à "2*x(M1)-x(P4)", "2*y(M1)-y(P4)"
-Segment de P5 à P4
-
-
-
-P1
-P2
-
-Point à -4.17518, 2.81752
-Point à 1.70568, -0.987
-Segment de P1 à P2
-Milieu de P1 et P2
-Cercle de centre M1 de rayon 6/pixel
-
-
-
-P1
-P2
-
-Point à -4.17518, 2.81752
-Point à -0.46849, -0.48227
-Segment de P1 à P2
-Milieu de P1 et P2
-Perpendiculaire passant par M1 à s1
-Cercle de centre M1 de rayon 6/pixel
-Intersection entre perp1 et c1
-Parallèle passant par I1 à s1
-Intersection entre perp1 et c1
-Parallèle passant par I2 à s1
-Cercle de centre I2 de rayon 12/pixel
-Cercle de centre I1 de rayon c2
-Intersection entre par1 et c3
-Milieu de I3 et I1
-Intersection entre par2 et c2
-Milieu de I2 et I4
-Intersection entre par2 et c2
-Intersection entre par1 et c3
-Function ( (t==0)*x(I5)+(t==1)*x(M2)+(t==2)*x(M3)+(t==3)*x(I6) , (t==0)*y(I5)+(t==1)*y(M2)+(t==2)*y(M3)+(t==3)*y(I6) )
-
-
-
-O
-M
-
-
Montrer le centre du polygone, ainsi qu'un sommet. Le
-nombre de côté vous sera ensuite demandé
-
-
-Point à 0.07612, 0.08236
-Point à 0.51536, 0.54656
-Expression "3" at 0.32612, -0.41764
-Function ( x(P1)+d(P1,P2)*sin(t-a(P1,P1,P2)) , y(P1)+d(P1,P2)*cos(t-a(P1,P1,P2)) )
-Point à "x(P1)+d(P1,P2)*sin(360/E1-a(P1,P1,P2))", "y(P1)+d(P1,P2)*cos(360/E1-a(P1,P1,P2))"
-Polygon P3, P1, P2
-Expression "d(P2,P3)*E1" at 0.32612, -0.91764
-Expression "poly2*E1" at 0.32612, -1.41764
-
-
-
-
-O
-M
-P9
-P6
-
-
Montrer le centre du polygone, ainsi qu'un sommet.
-
Ensuite, montrer deux points qui définissent le curseur.
-
-
-Point à "(windoww/(windoww-d(windoww)))*(x(P9)-windowcx)+windowcx+d(windowcx)", "(windoww/(windoww-d(windoww)))*(y(P9)-windowcy)+windowcy+d(windowcy)"
-Point à "if(P6,(x(@P9)/x(@P9))*(windoww/(windoww-d(windoww)))*(x(P6)-windowcx)+windowcx+d(windowcx),invalid)", "(windoww/(windoww-d(windoww)))*(y(P6)-windowcy)+windowcy+d(windowcy)"
-Expression "14" at -5.20388, 5.57605
-Point à "x(P9)+windoww/8", "y(P9)-windoww/12"
-Point à "x(P3)+3*windoww", "y(P3)"
-Point à "x(P3)", "y(P9)"
-Segment de P3 à P4
-Point sur s1
-Point à "x(po6)", "y(P9)"
-Segment de P5 à P7
-Expression "(x(P7)-x(P5))/(E1-1)" at -6.55238, 0.3029
-Point à "if(x(P6)<x(P5),x(P5),if(x(P6)>x(P7),x(P7),x(P5)+E2*round((x(P6)-x(P5))/E2)))", "y(P9)"
-Function ( x , y(P9) )
-Circle around P8 through P6 with radius "windoww/512"
-Expression "round((x(P8)-x(P5))/E2)+3" at -5.70388, 5.18022
-Point à -0.58252, -0.07767
-Point à 2.36893, 2.4466
-Function ( x(O)+d(O,M)*sin(t-a(O,O,M)) , y(O)+d(O,M)*cos(t-a(O,O,M)) )
-Point à "x(O)+d(O,M)*sin(360/E3-a(O,O,M))", "y(O)+d(O,M)*cos(360/E3-a(O,O,M))"
-Polygone P12, P16, P17
-Expression "d(M,P12)*E3" at -0.33252, -1.07767
-Expression "poly3*E3" at -0.33252, -1.57767
-
-
-
-O
-M
-E1
-
-
Montrer le centre du polygone, ainsi qu'un sommet. Montrer
-ensuite une expression qui représente le nombre de côtés.
-
-
-Point à -0.08122, -0.15228
-Point à 2.78173, 2.20305
-Expression "15" at 0.0, 0.0
-Function ( x(O)+d(O,M)*sin(t-a(O,O,M)) , y(O)+d(O,M)*cos(t-a(O,O,M)) )
-Point à "x(O)+d(O,M)*sin(360/E1-a(O,O,M))", "y(O)+d(O,M)*cos(360/E1-a(O,O,M))"
-Polygone P3, P1, P2
-Expression "d(M,P3)*E1" at 0.16878, -1.15228
-Expression "poly2*E1" at 0.16878, -1.65228
-
-
-
-A
-B
-C
-D
-
-
Montrer les 4 points qui définissent la ligne polygonale à
-3 côtés.
-
-
-Point à -0.9927, 6.75912
-Point à 1.89781, 6.43796
-Point à 3.76642, 3.54745
-Point à 1.34307, -0.68613
-Function ( (t==0)*x(A)+(t==1)*x(B)+(t==2)*x(C)+(t==3)*x(D) , (t==0)*y(A)+(t==1)*y(B)+(t==2)*y(C)+(t==3)*y(D) )
-
-
-
-A
-B
-C
-D
-E
-
-Point à -0.9927, 6.75912
-Point à 1.89781, 6.43796
-Point à 3.76642, 3.54745
-Point à 1.34307, -0.68613
-Point à -0.55474, -3.10949
-Function ( (t==0)*x(A)+(t==1)*x(B)+(t==2)*x(C)+(t==3)*x(D)+(t==4)*x(E) , (t==0)*y(A)+(t==1)*y(B)+(t==2)*y(C)+(t==3)*y(D)+(t==4)*y(E) )
-
-
-
-A
-B
-C
-D
-E
-F
-
-Point à -0.9927, 6.75912
-Point à 1.89781, 6.43796
-Point à 3.76642, 3.54745
-Point à 1.34307, -0.68613
-Point à -0.55474, -3.10949
-Point à -4.93431, -1.94161
-Function ( (t==0)*x(A)+(t==1)*x(B)+(t==2)*x(C)+(t==3)*x(D)+(t==4)*x(E)+(t==5)*x(F) , (t==0)*y(A)+(t==1)*y(B)+(t==2)*y(C)+(t==3)*y(D)+(t==4)*y(E)+(t==5)*y(F) )
-
-
-
-A
-B
-C
-D
-E
-F
-G
-
-Point à -0.9927, 6.75912
-Point à 1.89781, 6.43796
-Point à 3.76642, 3.54745
-Point à 1.34307, -0.68613
-Point à -0.55474, -3.10949
-Point à -4.93431, -1.94161
-Point à -6.18978, -0.36496
-Function ( (t==0)*x(A)+(t==1)*x(B)+(t==2)*x(C)+(t==3)*x(D)+(t==4)*x(E)+(t==5)*x(F)+(t==6)*x(G) , (t==0)*y(A)+(t==1)*y(B)+(t==2)*y(C)+(t==3)*y(D)+(t==4)*y(E)+(t==5)*y(F)+(t==6)*y(G) )
-
-
-
-A
-B
-C
-D
-E
-F
-G
-H
-
-Point à -0.9927, 6.75912
-Point à 1.89781, 6.43796
-Point à 3.76642, 3.54745
-Point à 1.34307, -0.68613
-Point à -0.55474, -3.10949
-Point à -4.93431, -1.94161
-Point à -6.18978, -0.36496
-Point à -6.54015, 1.50365
-Function ( (t==0)*x(A)+(t==1)*x(B)+(t==2)*x(C)+(t==3)*x(D)+(t==4)*x(E)+(t==5)*x(F)+(t==6)*x(G)+(t==7)*x(H) , (t==0)*y(A)+(t==1)*y(B)+(t==2)*y(C)+(t==3)*y(D)+(t==4)*y(E)+(t==5)*y(F)+(t==6)*y(G)+(t==7)*y(H) )
-
-
-
-A
-B
-C
-D
-E
-F
-G
-H
-I
-
-Point à -0.9927, 6.75912
-Point à 1.89781, 6.43796
-Point à 3.76642, 3.54745
-Point à 1.34307, -0.68613
-Point à -0.55474, -3.10949
-Point à -4.93431, -1.94161
-Point à -6.18978, -0.36496
-Point à -6.54015, 1.50365
-Point à -7.0365, 2.70073
-Function ( (t==0)*x(A)+(t==1)*x(B)+(t==2)*x(C)+(t==3)*x(D)+(t==4)*x(E)+(t==5)*x(F)+(t==6)*x(G)+(t==7)*x(H)+(t==8)*x(I) , (t==0)*y(A)+(t==1)*y(B)+(t==2)*y(C)+(t==3)*y(D)+(t==4)*y(E)+(t==5)*y(F)+(t==6)*y(G)+(t==7)*y(H)+(t==8)*y(I) )
-
-
-
-A
-B
-C
-D
-E
-F
-G
-H
-I
-J
-
-Point à -0.9927, 6.75912
-Point à 1.89781, 6.43796
-Point à 3.76642, 3.54745
-Point à 1.34307, -0.68613
-Point à -0.55474, -3.10949
-Point à -4.93431, -1.94161
-Point à -6.18978, -0.36496
-Point à -6.54015, 1.50365
-Point à -7.0365, 2.70073
-Point à -7.0073, 4.30657
-Function ( (t==0)*x(A)+(t==1)*x(B)+(t==2)*x(C)+(t==3)*x(D)+(t==4)*x(E)+(t==5)*x(F)+(t==6)*x(G)+(t==7)*x(H)+(t==8)*x(I)+(t==9)*x(J) , (t==0)*y(A)+(t==1)*y(B)+(t==2)*y(C)+(t==3)*y(D)+(t==4)*y(E)+(t==5)*y(F)+(t==6)*y(G)+(t==7)*y(H)+(t==8)*y(I)+(t==9)*y(J) )
-
-
-
-A
-B
-C
-D
-E
-F
-G
-H
-I
-J
-K
-
-Point à -0.9927, 6.75912
-Point à 1.89781, 6.43796
-Point à 3.76642, 3.54745
-Point à 1.34307, -0.68613
-Point à -0.55474, -3.10949
-Point à -4.93431, -1.94161
-Point à -6.18978, -0.36496
-Point à -6.54015, 1.50365
-Point à -7.0365, 2.70073
-Point à -7.0073, 4.30657
-Point à -5.83942, 5.15328
-Function ( (t==0)*x(A)+(t==1)*x(B)+(t==2)*x(C)+(t==3)*x(D)+(t==4)*x(E)+(t==5)*x(F)+(t==6)*x(G)+(t==7)*x(H)+(t==8)*x(I)+(t==9)*x(J)+(t==10)*x(K) , (t==0)*y(A)+(t==1)*y(B)+(t==2)*y(C)+(t==3)*y(D)+(t==4)*y(E)+(t==5)*y(F)+(t==6)*y(G)+(t==7)*y(H)+(t==8)*y(I)+(t==9)*y(J)+(t==10)*y(K) )
-
-
-
-A
-B
-C
-D
-E
-F
-G
-H
-I
-J
-K
-L
-
-Point à -0.9927, 6.75912
-Point à 1.89781, 6.43796
-Point à 3.76642, 3.54745
-Point à 1.34307, -0.68613
-Point à -0.55474, -3.10949
-Point à -4.93431, -1.94161
-Point à -6.18978, -0.36496
-Point à -6.54015, 1.50365
-Point à -7.0365, 2.70073
-Point à -7.0073, 4.30657
-Point à -5.83942, 5.15328
-Point à -4.64234, 6.37956
-Function ( (t==0)*x(A)+(t==1)*x(B)+(t==2)*x(C)+(t==3)*x(D)+(t==4)*x(E)+(t==5)*x(F)+(t==6)*x(G)+(t==7)*x(H)+(t==8)*x(I)+(t==9)*x(J)+(t==10)*x(K)+(t==11)*x(L) , (t==0)*y(A)+(t==1)*y(B)+(t==2)*y(C)+(t==3)*y(D)+(t==4)*y(E)+(t==5)*y(F)+(t==6)*y(G)+(t==7)*y(H)+(t==8)*y(I)+(t==9)*y(J)+(t==10)*y(K)+(t==11)*y(L) )
-
-
-
-A
-B
-C
-D
-E
-F
-G
-H
-I
-J
-K
-L
-M
-
-Point à -0.9927, 6.75912
-Point à 1.89781, 6.43796
-Point à 3.76642, 3.54745
-Point à 1.34307, -0.68613
-Point à -0.55474, -3.10949
-Point à -4.93431, -1.94161
-Point à -6.18978, -0.36496
-Point à -6.54015, 1.50365
-Point à -7.0365, 2.70073
-Point à -7.0073, 4.30657
-Point à -5.83942, 5.15328
-Point à -4.64234, 6.37956
-Point à -0.9635, 3.57664
-Function ( (t==0)*x(A)+(t==1)*x(B)+(t==2)*x(C)+(t==3)*x(D)+(t==4)*x(E)+(t==5)*x(F)+(t==6)*x(G)+(t==7)*x(H)+(t==8)*x(I)+(t==9)*x(J)+(t==10)*x(K)+(t==11)*x(L)+(t==12)*x(M) , (t==0)*y(A)+(t==1)*y(B)+(t==2)*y(C)+(t==3)*y(D)+(t==4)*y(E)+(t==5)*y(F)+(t==6)*y(G)+(t==7)*y(H)+(t==8)*y(I)+(t==9)*y(J)+(t==10)*y(K)+(t==11)*y(L)+(t==12)*y(M) )
-
-
-
-origine ?
-point d'abscisse 1 ?
-nombre à reporter ?
-
-Point à -3.74991, 0.67707
-Point à -1.00692, 0.74651
-Expression "3" at 0.0, 0.0
-Point à "x(O)+k*(x(I)-x(O))", "y(O)+k*(y(I)-y(O))"
-
-
-
-origine ?
-point d'abscisse 1 ?
-
-Point à -3.74991, 0.67707
-Point à -1.00692, 0.74651
-Expression "3" at 0.0, 0.0
-Point à "x(O)+k*(x(I)-x(O))", "y(O)+k*(y(I)-y(O))"
-
-
-
-
-Premier point ?
-Deuxième point ?
-Point aligné avec les deux autres ?
-Point d'ancrage ?
-
-Point à -2.0, 1.0
-Point à -1.0, 1.0
-Point à 2.0, 1.5
-Point à "(windoww/(windoww-d(windoww)))*(x(P4)-windowcx)+windowcx+d(windowcx)", "(windoww/(windoww-d(windoww)))*(y(P4)-windowcy)+windowcy+d(windowcy)"
-Expression "if(x(b)~=x(a),(y(c)-y(a))/(y(b)-y(a)),if((x(c)-x(a))*(y(b)-y(a))~=(y(c)-y(a))*(x(b)-x(a)),(x(c)-x(a))/(x(b)-x(a)),invalid))" at 0.0, 0.0
-Les points ne sont pas alignés
-
-
-
-o
-n
-d
-
-Expression "2" at 0.0, 0.0
-Point à 4.12375, 5.45845
-Point à 6.89748, 4.29056
-Point à "x(o)+d*(x(n)-x(o))", "y(o)+d*(y(n)-y(o))"
-
-
-
-o
-n
-
-Expression "2" at 0.0, 0.0
-Point à 4.12375, 5.45845
-Point à 6.89748, 4.29056
-Point à "x(o)+d*(x(n)-x(o))", "y(o)+d*(y(n)-y(o))"
-
-
-
-
-Par rapport à quel cercle ?
-inverse de quel point ?
-
-
Image d'un point M par l'inversion de cercle c.
-
-
-Point à -0.23529, 0.38914
-???
-Point à 1.73756, 0.58824
-Point à "x(P1)+c1^2/d(P1,A)^2*(x(A)-x(P1))", "y(P1)+c1^2/d(P1,A)^2*(y(A)-y(P1))"
-
-
-
-Centre de la rotation
-Image du point ?
-
-
Image d'un point M par une rotation de centre O et d'angle
-a donnés.
-
-
-Expression "" à 0.0, 0.0
-Point à 2.91156, -0.01361
-Point à 0.13605, -0.69388
-Angle P1 - P2 de mesure 25.629060000000003
-Cercle de centre P2 passant par P1
-Intersection entre a1 et c1
-
-
-
-
-A
-O
-B
-O'
-M
-
-
Image de M par la rotation de centre O' et d'angle AOB
-
-
-Point à 2.85261, -3.271
-Point à -3.68938, -3.32171
-Point à 2.34548, -0.91284
-Point à -3.94295, 0.60856
-Point à 1.20444, 2.71315
-Angle P5 - P4 de mesure a(P1,P2,P3)
-Circle P4 through P5
-Intersection w1 and k1
-
-
-
-P1
-P2
-P3
-
-Point à -2.83544, 1.28608
-Point à 0.26329, 2.62278
-Point à 0.56709, 0.71899
-Point à "x(C)+x(B)-x(A)", "y(C)+y(B)-y(A)"
-Segment de P3 à P4
-
-
-
-Origine du vecteur
-
-Point à -1.68421, -0.63158
-Expression "1" at 0.0, 0.0
-Expression "0" at 0.0, 0.0
-Point à "x(P7)+E1", "y(P7)+E2"
-Segment de P7 à P2
-
-
-
-
-Vecteur
-Origine
-
-Point à 0.70175, 1.38947
-Point à -0.75789, -2.62456
-Point à 2.70175, 2.38947
-Expression "1" at 0.0, 0.0
-Segment de P1 à P3
-Point à "x(E)+E1*(x(P3)-x(P1))", "y(E)+E1*(y(P3)-y(P1))"
-Segment de E à P4
-
-
-
-
-s4
-s5
-E
-
-Point à -1.43158, 3.12982
-Point à 0.53333, 3.83158
-Point à -2.83509, -0.65965
-Point à -0.61754, -2.31579
-Point à 0.2807, 1.38947
-Point à "x(E)+x(P2)-x(P1)+x(P4)-x(P3)", "y(E)+y(P2)-y(P1)+y(P4)-y(P3)"
-Segment de P1 à P2
-Segment de P3 à P4
-Segment de E à P6
-
-
-
-Quel point ?
-
-
Crée un point pondéré à partir d'une masse demandée par
-voix numérique.
-
-
-Point à -2.69683, 1.70136
-Expression "2" à -2.49683, 1.70136
-
-
-
-
-A
-a
-C
-c
-
-
Désigner deux points pondérés (A,a) et (B,b) pour créer le
-barycentre G=Bar{(A,a),(B,b)}
-
-
-Point à -2.73303, 0.92308
-Expression "2" à -2.53303, 0.92308
-Point à 0.1448, 0.1629
-Expression "-1" à 0.3448, 0.1629
-Point à "x(A)+c/(a+c)*(x(C)-x(A))", "y(A)+c/(a+c)*(y(C)-y(A))"
-
-
-
-A
-a
-B
-b
-
-
Désigner deux points pondérés (A,a) et (B,b) pour créer le
-barycentre G=Bar{(A,a),(B,b)}. La masse a+b sera associée
-au point G.
-
-
-Point à -0.81188, 2.12871
-Expression "2" à -0.61188, 2.12871
-Point à -2.45545, -1.05941
-Expression "3" à -2.25545, -1.05941
-Point à "x(A)+b/(a+b)*(x(B)-x(A))", "y(A)+b/(a+b)*(y(B)-y(A))"
-Expression "a+b" à -1.59802, 0.21584
-
-
-
-A
-a
-B
-b
-C
-c
-
-
Désigner trois points pondérés (A,a) , (B,b) et (C,c) pour
-créer le barycentre G=Bar{(A,a),(B,b),(C,c)}
-
-
-Point à -1.34653, 3.51485
-Expression "2" à -1.14653, 3.51485
-Point à -2.73267, 1.37624
-Expression "3" à -2.53267, 1.37624
-Point à 1.66337, 1.43564
-Expression "5" à 1.86337, 1.43564
-Point à "x(P1)+E2/(E1+E2)*(x(P2)-x(P1))", "y(P1)+E2/(E1+E2)*(y(P2)-y(P1))"
-Expression "E1+E2" à -1.97822, 2.23168
-Point à "x(P4)+E3/(E4+E3)*(x(P3)-x(P4))", "y(P4)+E3/(E4+E3)*(y(P3)-y(P4))"
-
-
-
-A
-a
-B
-b
-C
-c
-
-
Désigner trois points pondérés (A,a) , (B,b) et (C,c) pour
-créer le barycentre G=Bar{(A,a),(B,b),(C,c)}. La masse
-a+b+c sera associée au point G.
-
-
-Point à -1.34653, 3.51485
-Expression "2" à -1.14653, 3.51485
-Point à -2.73267, 1.37624
-Expression "3" à -2.53267, 1.37624
-Point à 1.66337, 1.43564
-Expression "5" à 1.86337, 1.43564
-Point à "x(P1)+E2/(E1+E2)*(x(P2)-x(P1))", "y(P1)+E2/(E1+E2)*(y(P2)-y(P1))"
-Expression "E1+E2" à -1.97822, 2.23168
-Point à "x(P4)+E3/(E4+E3)*(x(P3)-x(P4))", "y(P4)+E3/(E4+E3)*(y(P3)-y(P4))"
-Expression "E4+E3" à -0.05743, 1.83366
-
-
-
-A
-B
-C
-D
-G
-
-
On désigne 5 points A, B, C, D, et G, où A, B et G sont
-trois points alignés.
-
La macro crée le point G' qui sera à C et D ce que G est à
-A et B (d'un point de vue barycentrique).
-
-
-Point à -5.19457, 2.1086
-Point à -0.85068, 2.1086
-Point à -5.37557, -0.09955
-Point à -1.01357, 0.35294
-Point à 0.92308, 2.1086
-Expression "sign(angle180(a(M,A,B)+1))*d(A,M)/d(A,B)" à -3.11312, 4.15385
-Point à "x(C)+E1*(x(D)-x(C))", "y(C)+E1*(y(D)-y(C))"
-
-
-
-A
-B
-C
-A'
-B'
-C'
-G
-
-
On désigne 7 points A, B, C, A', B', C', et G.
-
La macro crée le point G' qui sera à A', B', C' ce que G
-est à A, B et C (d'un point de vue barycentrique).
-
-
-Point à -4.34389, 4.09955
-Point à -5.99095, 1.60181
-Point à -2.51584, 1.60181
-Point à 0.0724, 0.13575
-Point à -1.44796, -2.65158
-Point à 3.65611, -2.41629
-Point à -3.11312, 2.92308
-Droite passant par B et C
-Droite passant par B et A
-Parallèle passant par M à l1
-Parallèle passant par M à l2
-Intersection entre l2 et par1
-Intersection entre l1 et par2
-Expression "sign(angle180(a(I1,B,A)+1))*d(B,I1)/d(B,A)" à -3.11312, 4.15385
-Point à "x(E)+E1*(x(D)-x(E))", "y(E)+E1*(y(D)-y(E))"
-Expression "sign(angle180(a(I2,B,C)+1))*d(B,I2)/d(B,C)" à -3.11312, 4.15385
-Point à "x(E)+E2*(x(F)-x(E))", "y(E)+E2*(y(F)-y(E))"
-Point à "x(P8)+x(P9)-x(E)", "y(P8)+y(P9)-y(E)"
-
-
-
-fonction ?
-point d'ancrage ?
-
-Function ( 0 , 0 )
-Expression "0" at 0.0, 0.0
-Expression "3" at 0.0, 0.0
-Point à "(windoww/(windoww-d(windoww)))*(x(P5)-windowcx)+windowcx+d(windowcx)", "(windoww/(windoww-d(windoww)))*(y(P5)-windowcy)+windowcy+d(windowcy)"
-Expression "min(f,a,b)" at -6.35, 2.45
-
-
-
-
-fonction ?
-Point d'ancrage ?
-
-Function ( 0 , 0 )
-Expression "-1" at 0.0, 0.0
-Expression "1" at 0.0, 0.0
-Point à "(windoww/(windoww-d(windoww)))*(x(P5)-windowcx)+windowcx+d(windowcx)", "(windoww/(windoww-d(windoww)))*(y(P5)-windowcy)+windowcy+d(windowcy)"
-Expression "max(f,a,b)" at -7.40109, 2.68358
-
-
-
-
-fonction ?
-
-Function ( 0 , 0 )
-Expression "-1" at 0.0, 0.0
-Point à "a", "f(a)"
-Point à "a+1", "f(a)+diff(f,a)"
-Droite passant par P1 et P2
-
-
-
-
-f
-point de l'axe des abscisses ?
-
-Function ( 0 , 0 )
-Point à 0.5, 0.0
-Point à "x(m)", "f(x(m))"
-Point à "x(P2)+1", "y(P2)+diff(f,x(m))"
-Droite passant par P2 et P3
-
-
-
-fonction ?
-Point d'ancrage ?
-
-Function ( 0 , 0 )
-Expression "1.5" at 0.0, 0.0
-Point à "(windoww/(windoww-d(windoww)))*(x(P4)-windowcx)+windowcx+d(windowcx)", "(windoww/(windoww-d(windoww)))*(y(P4)-windowcy)+windowcy+d(windowcy)"
-Expression "diff(f,a)" at -10.82147, 3.79617
-
-
-
-
-O
-I
-m
-p
-
-Point à 0.0, 0.0
-Point à 1.0, 0.0
-Point à -1.5, 4.5
-Point à "(windoww/(windoww-d(windoww)))*(x(p)-windowcx)+windowcx+d(windowcx)", "(windoww/(windoww-d(windoww)))*(y(p)-windowcy)+windowcy+d(windowcy)"
-Point à "x(p)", "y(p)+15/pixel"
-Point à "2*x(p)-x(P5)", "2*y(p)-y(P5)"
-Segment de P6 à P5
-Expression "d(O,m)" at 6.58, 5.08
-Expression "angle180(a(I,O,m))" at 6.58, 4.88
-
-
-
-O
-I
-m
-p
-
-Point à 0.0, 0.0
-Point à 1.0, 0.0
-Point à -3.0, 4.0
-Point à "(windoww/(windoww-d(windoww)))*(x(p)-windowcx)+windowcx+d(windowcx)", "(windoww/(windoww-d(windoww)))*(y(p)-windowcy)+windowcy+d(windowcy)"
-Point à "x(p)", "y(p)+15/pixel"
-Point à "2*x(p)-x(P5)", "2*y(p)-y(P5)"
-Segment de P6 à P5
-Expression "d(O,m)" at 3.58, 2.58
-Expression "pi/180*angle180(a(I,O,m))" at 3.58, 2.38
-
-
-
-O
-I
-angle ?
-r ?
-
-Point à 0.0, 0.0
-Point à 1.0, 0.0
-Expression "-2.5" at 0.0, 0.0
-Expression "-30" at 0.0, 0.0
-Expression "" à 0.0, 0.0
-Angle P1 - P2 de mesure 25.629060000000003
-Cercle de centre P2 passant par P1
-Intersection entre a1 et c1
-Point à "r*x(I1)", "r*y(I1)"
-
-
-
-O
-I
-
-Point à 0.0, 0.0
-Point à 1.0, 0.0
-Expression "-2.5" at 0.0, 0.0
-Expression "-30" at 0.0, 0.0
-Expression "" à 0.0, 0.0
-Angle P1 - P2 de mesure 25.629060000000003
-Cercle de centre P2 passant par P1
-Intersection entre a1 et c1
-Point à "r*x(I1)", "r*y(I1)"
-
-
-
-
-O
-I
-angle ?
-r ?
-
-Point à 0.0, 0.0
-Point à 1.0, 0.0
-Expression "-2" at 0.0, 0.0
-Expression "2.2" at 0.0, 0.0
-Expression "" à 0.0, 0.0
-Angle P1 - P2 de mesure 25.629060000000003
-Cercle de centre P2 passant par P1
-Intersection entre a1 et c1
-Point à "x(I1)*r", "y(I1)*r"
-
-
-
-O
-I
-
-Point à 0.0, 0.0
-Point à 1.0, 0.0
-Expression "-2" at 0.0, 0.0
-Expression "2.2" at 0.0, 0.0
-Expression "" à 0.0, 0.0
-Angle P1 - P2 de mesure 25.629060000000003
-Cercle de centre P2 passant par P1
-Intersection entre a1 et c1
-Point à "x(I1)*r", "y(I1)*r"
-
-
-
-
-a
-b
-
-Point à 2.0, 1.5
-Point à 1.0, 1.5
-Point à "x(a)+x(b)", "y(a)+y(b)"
-
-
-
-a
-b
-
-Point à 2.0, 1.5
-Point à 1.0, 1.5
-Point à "x(a)*x(b)-y(a)*y(b)", "x(a)*y(b)+x(b)*y(a)"
-
-
-
-P1
-
-Point à 0.5, 0.5
-Point à "x(P1)/((x(P1))^2+(y(P1))^2)", "-y(P1)/((x(P1))^2+(y(P1))^2)"
-
-
-
-m
-
-Point à 1.5, 2.0
-Expression "1.5" at 0.0, 0.0
-Point à "k*x(m)", "k*y(m)"
-
-
-
-
-a
-
-Point à -5.22105, 4.70175
-Expression "sum(1,1)" at -5.22105, 4.20175
-Expression "1000" at -5.22105, 4.40175
-Expression "5" at -5.22105, 4.00175
-Point à "x(a)+1", "y(a)"
-Point à "x(a)", "y(a)-10/pixel"
-Polygone a
-Demi-droite d'origine a vers P2
-Segment de P3 à a
-Point sur r1
-Expression "(x(po4)-x(a))/E3" at 3.03158, 1.67018
-Point à "x(a)+(x(po4)-x(a))*min(1,E1/E2)", "y(a)"
-Point à "x(po4)", "y(P3)"
-Segment de a à po4
-Function ( x(a)+floor((t+1)/2)*E4 , if(floor(t/2)==2*floor(floor(t/2)/2),y(a),y(P3)) )
-Point à "x(P5)", "y(P3)"
-Segment de po4 à P6
-Segment de P6 à P3
-Polygone a, P5, P7, P3
-
-
-
-a
-t
-
-Point à "(windoww/(windoww-d(windoww)))*(x(a)-windowcx)+windowcx+d(windowcx)", "(windoww/(windoww-d(windoww)))*(y(a)-windowcy)+windowcy+d(windowcy)"
-Point à "if(t,(x(@a)/x(@a))*(windoww/(windoww-d(windoww)))*(x(t)-windowcx)+windowcx+d(windowcx),invalid)", "(windoww/(windoww-d(windoww)))*(y(t)-windowcy)+windowcy+d(windowcy)"
-Expression "5" at -3.64732, 4.95069
-Point à "x(a)+windoww/8", "y(a)-windoww/12"
-Point à "x(P3)+3*windoww", "y(P3)"
-Point à "x(P3)", "y(a)"
-Segment de P3 à P4
-Point sur s1
-Point à "x(po6)", "y(a)"
-Segment de P5 à P7
-Expression "(x(P7)-x(P5))/(E1-1)" at -6.55238, 0.3029
-Point à "if(x(t)<x(P5),x(P5),if(x(t)>x(P7),x(P7),x(P5)+E2*round((x(t)-x(P5))/E2)))", "y(a)"
-Function ( x , y(a) )
-Circle around P8 through t with radius "windoww/512"
-Expression "round((x(P8)-x(P5))/E2)" at -4.14732, 4.55486
-
-
-
-
-Point d'ancrage du curseur
-
-
Montrer le point d'ancrage du curseur. Entrez ensuite le
-min et le max.
-
Le curseur créé est flottant, c'est à dire qu'il ne se
-déplace pas avec la figure lorsqu'on utilise les flèches du
-clavier ou l'outil de déplacement de la palette.
-
-
-Point à "(windoww/(windoww-d(windoww)))*(x(A)-windowcx)+windowcx+d(windowcx)", "(windoww/(windoww-d(windoww)))*(y(A)-windowcy)+windowcy+d(windowcy)"
-Point à "x(A)+3*windoww", "y(A)"
-Segment de A à P2
-Point sur s1
-Point à "x(po3)", "y(po3)+windoww/20"
-Point à "x(P4)+2*(x(A)-x(po3))", "y(P4)"
-Expression "-5" à -1.74431, 0.11941
-Expression "5" à -1.74431, -0.40059
-Segment de P5 à P4
-Point sur s2
-Expression "round((E1+d(P5,po6)/d(P5,P4)*(E2-E1))*10)/10" à -2.75005, 0.06608
-
-
-
-
-Point d'ancrage du curseur
-
-
Montrer le point d'ancrage du curseur. Entrer ensuite le
-nombre de décimales souhaitées pour le résultat et la
-valeur numérique que doit représenter un tour.
-
Le curseur créé est flottant, c'est à dire qu'il ne se
-déplace pas avec la figure lorsqu'on utilise les flèches du
-clavier ou l'outil de déplacement de la palette.
-
-
-Point à "(windoww/(windoww-d(windoww)))*(x(O)-windowcx)+windowcx+d(windowcx)", "(windoww/(windoww-d(windoww)))*(y(O)-windowcy)+windowcy+d(windowcy)"
-Expression "1" à -4.15801, 3.74833
-Expression "5" à -4.15801, 4.06833
-Point à "x(O)+3*windoww", "y(O)"
-Segment de O à P2
-Point sur s1
-Cercle de centre O passant par po3
-Point sur c1
-Expression "sum(-round(d(a(po3,O,po4))/360),0)" à -2.68275, 4.70833
-Expression "round((E3*360+a(po3,O,po4))*E2/360*10^E1)/10^E1" à -4.15801, 4.86833
-
-
-
-
-Point d'ancrage du curseur
-
-
Montrer le point d'ancrage du curseur.
-
Le curseur créé est flottant, c'est à dire qu'il ne se
-déplace pas avec la figure lorsqu'on utilise les flèches du
-clavier ou l'outil de déplacement de la palette.
-
-
-Point à "(windoww/(windoww-d(windoww)))*(x(A)-windowcx)+windowcx+d(windowcx)", "(windoww/(windoww-d(windoww)))*(y(A)-windowcy)+windowcy+d(windowcy)"
-Point à "x(A)+3*windoww", "y(A)"
-Segment de A à P2
-Point sur s1
-Cercle de centre A passant par po3
-Segment de A à po3
-Milieu de A et po3
-Point sur c1
-Cercle de centre A passant par M1
-Angle po3 - A - po4
-Point sur c2
-Segment de A à po4
-Segment de A à po5
-Angle M1 - A - po5
-
-
-
-P
-
-
Place un point flottant dans la fenêtre (qui ne se déplace
-pas avec la figure).
-
-
-Point à "(windoww/(windoww-d(windoww)))*(x(P35)-windowcx)+windowcx+d(windowcx)", "(windoww/(windoww-d(windoww)))*(y(P35)-windowcy)+windowcy+d(windowcy)"
-
-
-
-O
-
-Point à "(windoww/(windoww-d(windoww)))*(x(O)-windowcx)+windowcx+d(windowcx)", "(windoww/(windoww-d(windoww)))*(y(O)-windowcy)+windowcy+d(windowcy)"
-Point à "x(O)+windoww*3", "y(O)"
-Segment de O à P2
-Point à "x(O)", "y(O)+d(O,P2)"
-Segment de O à P3
-Point sur s1
-Point sur s2
-
-
-
-P
-
-Point à "(windoww/(windoww-d(windoww)))*(x(P37)-windowcx)+windowcx+d(windowcx)", "windowcy"
-Point à "x(P37)-2*windoww", "y(P37)+windowh"
-Point à "x(P37)", "y(P37)+windowh"
-Point à "x(P37)", "y(P37)-windowh"
-Point à "x(P37)-2*windoww", "y(P37)-windowh"
-Polygone P2, P3, P4, P5
-
-
-
-P
-
-Point à "(windoww/(windoww-d(windoww)))*(x(P42)-windowcx)+windowcx+d(windowcx)", "windowcy"
-Point à "x(P42)+2*windoww", "y(P42)+windowh"
-Point à "x(P42)", "y(P42)+windowh"
-Point à "x(P42)", "y(P42)-windowh"
-Point à "x(P42)+2*windoww", "y(P42)-windowh"
-Polygone P2, P3, P4, P5
-
-
-
-P
-
-Point à "windowcx", "(windoww/(windoww-d(windoww)))*(y(P47)-windowcy)+windowcy+d(windowcy)"
-Point à "x(P47)-2*windoww", "y(P47)+windowh"
-Point à "x(P47)+2*windoww", "y(P47)+windowh"
-Point à "x(P47)+2*windoww", "y(P47)"
-Point à "x(P47)-2*windoww", "y(P47)"
-Polygone P2, P3, P4, P5
-
-
-
-P
-
-Point à "windowcx", "(windoww/(windoww-d(windoww)))*(y(P52)-windowcy)+windowcy+d(windowcy)"
-Point à "x(P52)-2*windoww", "y(P52)-windowh"
-Point à "x(P52)+2*windoww", "y(P52)-windowh"
-Point à "x(P52)+2*windoww", "y(P52)"
-Point à "x(P52)-2*windoww", "y(P52)"
-Polygone P2, P3, P4, P5
-
-
-
-c
-d
-
-Point à 2.18978, 3.57664
-Point à "x(d)", "y(d)"
-Point à "if(c,if(pixel==0,x(c),if(d(c,@P2)<(5/pixel),x(@P2),x(c))),invalid)", "if(c,if(pixel==0,y(c),if(d(c,@P2)<(5/pixel),y(@P2),y(c))),invalid)"
-
-
-
-c
-d
-
-Point à 2.18978, 3.57664
-Point à "x(d)", "y(d)"
-Point à "if(c,if(pixel==0,x(c),if(d(c,@P2)<(10/pixel),x(@P2),x(c))),invalid)", "if(c,if(pixel==0,y(c),if(d(c,@P2)<(10/pixel),y(@P2),y(c))),invalid)"
-
-
-
-c
-d
-
-Point à 2.18978, 3.57664
-Point à "x(d)", "y(d)"
-Point à "if(c,if(pixel==0,x(c),if(d(c,@P2)<(15/pixel),x(@P2),x(c))),invalid)", "if(c,if(pixel==0,y(c),if(d(c,@P2)<(15/pixel),y(@P2),y(c))),invalid)"
-
-
-
-c
-d
-
-Point à 2.18978, 3.57664
-Point à "x(d)", "y(d)"
-Point à "if(c,if(pixel==0,x(c),if(d(c,@P2)<(20/pixel),x(@P2),x(c))),invalid)", "if(c,if(pixel==0,y(c),if(d(c,@P2)<(20/pixel),y(@P2),y(c))),invalid)"
-
-
-
-P3
-l1
-
-???
-Point à "if(P3,if(pixel==0,x(P3),if(d(P3,@P2)<(15/pixel),x(@P2),x(P3))),invalid)", "if(P3,if(pixel==0,y(P3),if(d(P3,@P2)<(15/pixel),y(@P2),y(P3))),invalid)"
-Perpendiculaire passant par P3 à l1
-Intersection entre perp1 et l1
-Point à "x(I1)", "y(I1)"
-
-
-
-P3
-c1
-
-Point à -0.17518, 0.24818
-???
-Point à "if(P3,if(pixel==0,x(P3),if(d(P3,@P4)<(15/pixel),x(@P4),x(P3))),invalid)", "if(P3,if(pixel==0,y(P3),if(d(P3,@P4)<(15/pixel),y(@P4),y(P3))),invalid)"
-Demi-droite d'origine P1 vers P3
-Intersection entre r1 et c1
-Point à "x(I1)", "y(I1)"
-
-
-
-P11
-
-Point à -2.89051, -0.80292
-Point à "x(P11)+1", "y(P11)"
-Point à "x(P11)", "y(P11)+1"
-Demi-droite d'origine P11 vers P2
-Demi-droite d'origine P11 vers P3
-Point sur r1
-Point sur r2
-Function ( if(floor(t/2)==(t/2),if(floor(t/4)==(t/4),x(P11),x(po4)),if(floor((t-1)/4)==(t-1)/4,x(P11),x(po4))) , if(floor(t/2)==(t/2),y(P11)+t/2,y(P11)+(t+1)/2) )
-Function ( if(floor(t/2)==(t/2),x(P11)+t/2,x(P11)+(t+1)/2) , if(floor(t/2)==(t/2),if(floor(t/4)==(t/4),y(P11),y(po5)),if(floor((t-1)/4)==(t-1)/4,y(P11),y(po5))) )
-Segment de P11 à po5
-Point à "x(po4)", "y(po5)"
-Segment de po4 à P11
-Segment de po5 à P6
-Segment de P6 à po4
-
-
-
-P1
-
-Point à 0.58883, 0.45685
-Point à "x(P1)-2*floor(windoww)", "y(P1)-2*floor(windoww)"
-Point à "x(P1)+2*floor(windoww)", "y(P1)-2*floor(windoww)"
-Point à "x(P1)-2*floor(windoww)", "y(P1)+2*floor(windoww)"
-Function ( if(floor(t/2)==(t/2),if(floor(t/4)==(t/4),x(P2),x(P3)),if(floor((t-1)/4)==(t-1)/4,x(P2),x(P3))) , if(floor(t/2)==(t/2),y(P2)+t/2,y(P2)+(t+1)/2) )
-Function ( if(floor(t/2)==(t/2),x(P2)+t/2,x(P2)+(t+1)/2) , if(floor(t/2)==(t/2),if(floor(t/4)==(t/4),y(P2),y(P4)),if(floor((t-1)/4)==(t-1)/4,y(P2),y(P4))) )
-
-
-
-O
-P38
-
-Point à -1.31387, -0.36496
-Point à "x(O)+1", "y(O)"
-Demi-droite d'origine O vers P2
-Point sur r1
-Point à 0.17518, 0.71533
-Point à "x(C)+x(B)-x(A)", "y(C)+y(B)-y(A)"
-Cercle de centre O de rayon (1+floor(4*windoww/d(P5,O)))*d(P5,O)
-Droite passant par O et P5
-Angle po3 - O with size 90
-Intersection entre a1 et c1
-Point à "x(C)+x(B)-x(A)", "y(C)+y(B)-y(A)"
-Droite passant par I1 et P6
-Intersection entre l1 et l2
-Angle P38 - O with size 90
-Intersection entre a2 et c1
-Point à "x(C)+x(B)-x(A)", "y(C)+y(B)-y(A)"
-Droite passant par P7 et I3
-Intersection entre l1 et l3
-Point à "if(d(O,I2)>d(O,I4),x(I2),x(I4))", "if(d(O,I2)>d(O,I4),y(I2),y(I4))"
-Cercle de centre O de rayon (1+floor(d(O,P8)/d(O,P5)))*d(O,P5)
-Intersection entre l1 et c2
-Point à "x(C)+x(B)-x(A)", "y(C)+y(B)-y(A)"
-Point à "x(C)+x(B)-x(A)", "y(C)+y(B)-y(A)"
-Point à "2*x(O)-x(I5)", "2*y(O)-y(I5)"
-Point à "x(C)+x(B)-x(A)", "y(C)+y(B)-y(A)"
-Point à "x(C)+x(B)-x(A)", "y(C)+y(B)-y(A)"
-Droite passant par I5 et P9
-Droite passant par I5 et P10
-Droite passant par P11 et P12
-Droite passant par P11 et P13
-Intersection entre l7 et l4
-Intersection entre l6 et l5
-Function ( if(floor(t/2)==(t/2),if(floor(t/4)==(t/4),x(I5)+(t/2)*(x(P10)-x(I5)),x(I6)+(t/2)*(x(P10)-x(I5))),if(floor((t-1)/4)==(t-1)/4,x(I5)+((t+1)/2)*(x(P10)-x(I5)),x(I6)+((t+1)/2)*(x(P10)-x(I5)))) , if(floor(t/2)==(t/2),if(floor(t/4)==(t/4),y(I5)+(t/2)*(y(P10)-y(I5)),y(I6)+(t/2)*(y(P10)-y(I5))),if(floor((t-1)/4)==(t-1)/4,y(I5)+((t+1)/2)*(y(P10)-y(I5)),y(I6)+((t+1)/2)*(y(P10)-y(I5)))) )
-Function ( if(floor(t/2)==(t/2),if(floor(t/4)==(t/4),x(I5)+(t/2)*(x(P9)-x(I5)),x(I7)+(t/2)*(x(P9)-x(I5))),if(floor((t-1)/4)==(t-1)/4,x(I5)+((t+1)/2)*(x(P9)-x(I5)),x(I7)+((t+1)/2)*(x(P9)-x(I5)))) , if(floor(t/2)==(t/2),if(floor(t/4)==(t/4),y(I5)+(t/2)*(y(P9)-y(I5)),y(I7)+(t/2)*(y(P9)-y(I5))),if(floor((t-1)/4)==(t-1)/4,y(I5)+((t+1)/2)*(y(P9)-y(I5)),y(I7)+((t+1)/2)*(y(P9)-y(I5)))) )
-
-
-
-P18
-P19
-P20
-
-Point à -1.54745, 0.45255
-Point à 1.10949, -0.65693
-Point à 1.37226, 1.12409
-Point à "x(C)+x(B)-x(A)", "y(C)+y(B)-y(A)"
-Cercle de centre P18 de rayon (1+floor(4*windoww/d(P4,P18)))*d(P4,P18)
-Droite passant par P18 et P4
-Angle P19 - P18 with size 90
-Intersection entre a1 et c1
-Point à "x(C)+x(B)-x(A)", "y(C)+y(B)-y(A)"
-Droite passant par I1 et P5
-Intersection entre l1 et l2
-Angle P20 - P18 with size 90
-Intersection entre a2 et c1
-Point à "x(C)+x(B)-x(A)", "y(C)+y(B)-y(A)"
-Droite passant par P6 et I3
-Intersection entre l1 et l3
-Point à "if(d(P18,I2)>d(P18,I4),x(I2),x(I4))", "if(d(P18,I2)>d(P18,I4),y(I2),y(I4))"
-Cercle de centre P18 de rayon (1+floor(d(P18,P7)/d(P18,P4)))*d(P18,P4)
-Intersection entre l1 et c2
-Point à "x(C)+x(B)-x(A)", "y(C)+y(B)-y(A)"
-Point à "x(C)+x(B)-x(A)", "y(C)+y(B)-y(A)"
-Point à "2*x(P18)-x(I5)", "2*y(P18)-y(I5)"
-Point à "x(C)+x(B)-x(A)", "y(C)+y(B)-y(A)"
-Point à "x(C)+x(B)-x(A)", "y(C)+y(B)-y(A)"
-Droite passant par I5 et P8
-Droite passant par I5 et P9
-Droite passant par P10 et P11
-Droite passant par P10 et P12
-Intersection entre l7 et l4
-Intersection entre l6 et l5
-Function ( if(floor(t/2)==(t/2),if(floor(t/4)==(t/4),x(I5)+(t/2)*(x(P9)-x(I5)),x(I6)+(t/2)*(x(P9)-x(I5))),if(floor((t-1)/4)==(t-1)/4,x(I5)+((t+1)/2)*(x(P9)-x(I5)),x(I6)+((t+1)/2)*(x(P9)-x(I5)))) , if(floor(t/2)==(t/2),if(floor(t/4)==(t/4),y(I5)+(t/2)*(y(P9)-y(I5)),y(I6)+(t/2)*(y(P9)-y(I5))),if(floor((t-1)/4)==(t-1)/4,y(I5)+((t+1)/2)*(y(P9)-y(I5)),y(I6)+((t+1)/2)*(y(P9)-y(I5)))) )
-Function ( if(floor(t/2)==(t/2),if(floor(t/4)==(t/4),x(I5)+(t/2)*(x(P8)-x(I5)),x(I7)+(t/2)*(x(P8)-x(I5))),if(floor((t-1)/4)==(t-1)/4,x(I5)+((t+1)/2)*(x(P8)-x(I5)),x(I7)+((t+1)/2)*(x(P8)-x(I5)))) , if(floor(t/2)==(t/2),if(floor(t/4)==(t/4),y(I5)+(t/2)*(y(P8)-y(I5)),y(I7)+(t/2)*(y(P8)-y(I5))),if(floor((t-1)/4)==(t-1)/4,y(I5)+((t+1)/2)*(y(P8)-y(I5)),y(I7)+((t+1)/2)*(y(P8)-y(I5)))) )
-
-
-
-A
-
-
Se reporter à l'article de CaRzine "Interpolation
-polynomiale de degré 3".
-
-
-Point à -3.38266, 1.18393
-Cercle de centre A de rayon 2.0
-Point sur c1
-Point à "2*x(A)-x(po2)", "2*y(A)-y(po2)"
-Segment de po2 à P3
-Expression "round((y(po2)-y(A))/(x(po2)-x(A))*100)/100" à -5.81684, 3.81811
-
-
-
-A
-B
-dA
-dB
-
-
Se reporter à l'article de CaRzine "Interpolation
-polynomiale de degré 3".
-
-
-Expression "1" à -7.12051, 4.27907
-Expression "2" à -7.13742, 3.85624
-Point à -2.50317, 1.84355
-Point à 0.38901, 1.45455
-Expression "-(x(A)-x(B))^3" à -7.13742, 3.39958
-Expression "((2*y(A)-x(A)*dA-x(A)*dB+x(B)*dA+x(B)*dB+-2*y(B)))/E3" à -7.13742, 2.95983
-Expression "((dA*(x(A))^2+dA*x(A)*x(B)+-2*dA*(x(B))^2+2*(x(A))^2*dB-x(A)*dB*x(B)+-3*x(A)*y(A)+3*x(A)*y(B)-dB*(x(B))^2+-3*y(A)*x(B)+3*x(B)*y(B)))/E3" à -7.13742, 2.45243
-Expression "((-1)*(dB*(x(A))^3+dB*(x(A))^2*x(B)+-2*dB*x(A)*(x(B))^2+2*(x(A))^2*x(B)*dA-x(A)*(x(B))^2*dA+-6*x(A)*x(B)*y(A)+6*x(A)*x(B)*y(B)-(x(B))^3*dA))/E3" à -7.13742, 1.96195
-Expression "((-dB*(x(B))^2*(x(A))^2+dB*x(B)*(x(A))^3-(x(B))^3*x(A)*dA+(x(B))^3*y(A)+(x(B))^2*(x(A))^2*dA-3*(x(B))^2*x(A)*y(A)--3*x(B)*(x(A))^2*y(B)-(x(A))^3*y(B)))/E3" à -7.13742, 1.43763
-Function ( x , E4*x^3+E5*x^2+E6*x+E7 )
-
-
-
-A
-B
-C
-E1
-E2
-E3
-
-
Se reporter à l'article de CaRzine "Interpolation
-polynomiale de degré 3".
-
-
-Point à -5.93768, 1.35977
-Expression "0" à 0.0, 0.0
-Point à -2.15297, 1.47309
-Expression "0" à 0.0, 0.0
-Point à 1.26912, 1.31445
-Expression "0" à 0.0, 0.0
-Expression "-(x(A)-x(B))^3" à -7.13742, 3.39958
-Expression "((2*y(A)-x(A)*E1-x(A)*E2+x(B)*E1+x(B)*E2+-2*y(B)))/E4" à -7.13742, 2.95983
-Expression "((E1*(x(A))^2+E1*x(A)*x(B)+-2*E1*(x(B))^2+2*(x(A))^2*E2-x(A)*E2*x(B)+-3*x(A)*y(A)+3*x(A)*y(B)-E2*(x(B))^2+-3*y(A)*x(B)+3*x(B)*y(B)))/E4" à -7.13742, 2.45243
-Expression "((-1)*(E2*(x(A))^3+E2*(x(A))^2*x(B)+-2*E2*x(A)*(x(B))^2+2*(x(A))^2*x(B)*E1-x(A)*(x(B))^2*E1+-6*x(A)*x(B)*y(A)+6*x(A)*x(B)*y(B)-(x(B))^3*E1))/E4" à -7.13742, 1.96195
-Expression "((-E2*(x(B))^2*(x(A))^2+E2*x(B)*(x(A))^3-(x(B))^3*x(A)*E1+(x(B))^3*y(A)+(x(B))^2*(x(A))^2*E1-3*(x(B))^2*x(A)*y(A)--3*x(B)*(x(A))^2*y(B)-(x(A))^3*y(B)))/E4" à -7.13742, 1.43763
-Function ( x , E5*x^3+E6*x^2+E7*x+E8 )
-Expression "-(x(B)-x(C))^3" à -7.13742, 3.39958
-Expression "((2*y(B)-x(B)*E2-x(B)*E3+x(C)*E2+x(C)*E3+-2*y(C)))/E9" à -7.13742, 2.95983
-Expression "((E2*(x(B))^2+E2*x(B)*x(C)+-2*E2*(x(C))^2+2*(x(B))^2*E3-x(B)*E3*x(C)+-3*x(B)*y(B)+3*x(B)*y(C)-E3*(x(C))^2+-3*y(B)*x(C)+3*x(C)*y(C)))/E9" à -7.13742, 2.45243
-Expression "((-1)*(E3*(x(B))^3+E3*(x(B))^2*x(C)+-2*E3*x(B)*(x(C))^2+2*(x(B))^2*x(C)*E2-x(B)*(x(C))^2*E2+-6*x(B)*x(C)*y(B)+6*x(B)*x(C)*y(C)-(x(C))^3*E2))/E9" à -7.13742, 1.96195
-Expression "((-E3*(x(C))^2*(x(B))^2+E3*x(C)*(x(B))^3-(x(C))^3*x(B)*E2+(x(C))^3*y(B)+(x(C))^2*(x(B))^2*E2-3*(x(C))^2*x(B)*y(B)--3*x(C)*(x(B))^2*y(C)-(x(B))^3*y(C)))/E9" à -7.13742, 1.43763
-Function ( x , E10*x^3+E11*x^2+E12*x+E13 )
-Function ( x , if(x<x(B),f1(x),f2(x)) )
-
-
-
-D
-E
-F
-G
-E34
-E35
-E36
-E37
-
-
Se reporter à l'article de CaRzine "Interpolation
-polynomiale de degré 3".
-
-
-Point à -5.75637, -3.72351
-Expression "0" à 0.0, 0.0
-Point à -2.8102, -3.45156
-Expression "0" à 0.0, 0.0
-Point à 0.6119, -3.27025
-Expression "0" à 0.0, 0.0
-Point à 4.2153, -3.29292
-Expression "0" à 0.0, 0.0
-Expression "-(x(D)-x(E))^3" à -7.13742, 3.39958
-Expression "((2*y(D)-x(D)*E34-x(D)*E35+x(E)*E34+x(E)*E35+-2*y(E)))/E5" à -7.13742, 2.95983
-Expression "((E34*(x(D))^2+E34*x(D)*x(E)+-2*E34*(x(E))^2+2*(x(D))^2*E35-x(D)*E35*x(E)+-3*x(D)*y(D)+3*x(D)*y(E)-E35*(x(E))^2+-3*y(D)*x(E)+3*x(E)*y(E)))/E5" à -7.13742, 2.45243
-Expression "((-1)*(E35*(x(D))^3+E35*(x(D))^2*x(E)+-2*E35*x(D)*(x(E))^2+2*(x(D))^2*x(E)*E34-x(D)*(x(E))^2*E34+-6*x(D)*x(E)*y(D)+6*x(D)*x(E)*y(E)-(x(E))^3*E34))/E5" à -7.13742, 1.96195
-Expression "((-E35*(x(E))^2*(x(D))^2+E35*x(E)*(x(D))^3-(x(E))^3*x(D)*E34+(x(E))^3*y(D)+(x(E))^2*(x(D))^2*E34-3*(x(E))^2*x(D)*y(D)--3*x(E)*(x(D))^2*y(E)-(x(D))^3*y(E)))/E5" à -7.13742, 1.43763
-Function ( x , E6*x^3+E7*x^2+E8*x+E9 )
-Expression "-(x(E)-x(F))^3" à -7.13742, 3.39958
-Expression "((2*y(E)-x(E)*E35-x(E)*E36+x(F)*E35+x(F)*E36+-2*y(F)))/E10" à -7.13742, 2.95983
-Expression "((E35*(x(E))^2+E35*x(E)*x(F)+-2*E35*(x(F))^2+2*(x(E))^2*E36-x(E)*E36*x(F)+-3*x(E)*y(E)+3*x(E)*y(F)-E36*(x(F))^2+-3*y(E)*x(F)+3*x(F)*y(F)))/E10" à -7.13742, 2.45243
-Expression "((-1)*(E36*(x(E))^3+E36*(x(E))^2*x(F)+-2*E36*x(E)*(x(F))^2+2*(x(E))^2*x(F)*E35-x(E)*(x(F))^2*E35+-6*x(E)*x(F)*y(E)+6*x(E)*x(F)*y(F)-(x(F))^3*E35))/E10" à -7.13742, 1.96195
-Expression "((-E36*(x(F))^2*(x(E))^2+E36*x(F)*(x(E))^3-(x(F))^3*x(E)*E35+(x(F))^3*y(E)+(x(F))^2*(x(E))^2*E35-3*(x(F))^2*x(E)*y(E)--3*x(F)*(x(E))^2*y(F)-(x(E))^3*y(F)))/E10" à -7.13742, 1.43763
-Function ( x , E11*x^3+E12*x^2+E13*x+E14 )
-Expression "-(x(F)-x(G))^3" à -7.13742, 3.39958
-Expression "((2*y(F)-x(F)*E36-x(F)*E37+x(G)*E36+x(G)*E37+-2*y(G)))/E15" à -7.13742, 2.95983
-Expression "((E36*(x(F))^2+E36*x(F)*x(G)+-2*E36*(x(G))^2+2*(x(F))^2*E37-x(F)*E37*x(G)+-3*x(F)*y(F)+3*x(F)*y(G)-E37*(x(G))^2+-3*y(F)*x(G)+3*x(G)*y(G)))/E15" à -7.13742, 2.45243
-Expression "((-1)*(E37*(x(F))^3+E37*(x(F))^2*x(G)+-2*E37*x(F)*(x(G))^2+2*(x(F))^2*x(G)*E36-x(F)*(x(G))^2*E36+-6*x(F)*x(G)*y(F)+6*x(F)*x(G)*y(G)-(x(G))^3*E36))/E15" à -7.13742, 1.96195
-Expression "((-E37*(x(G))^2*(x(F))^2+E37*x(G)*(x(F))^3-(x(G))^3*x(F)*E36+(x(G))^3*y(F)+(x(G))^2*(x(F))^2*E36-3*(x(G))^2*x(F)*y(F)--3*x(G)*(x(F))^2*y(G)-(x(F))^3*y(G)))/E15" à -7.13742, 1.43763
-Function ( x , E16*x^3+E17*x^2+E18*x+E19 )
-Function ( x , if(x<x(E),f1(x),if(x<x(F),f2(x),f3(x))) )
-
-
-
-D
-E
-F
-G
-H
-E34
-E35
-E36
-E37
-E33
-
-
Se reporter à l'article de CaRzine "Interpolation
-polynomiale de degré 3".
-
-
-Point à -5.75637, -3.72351
-Point à -4.73654, -3.65552
-Point à -3.64873, -3.70085
-Point à -2.6289, -3.70085
-Expression "-(x(D)-x(E))^3" à -7.13742, 3.39958
-Expression "-(x(E)-x(F))^3" à -7.13742, 3.39958
-Expression "-(x(F)-x(G))^3" à -7.13742, 3.39958
-Expression "0" à 0.0, 0.0
-Expression "0" à 0.0, 0.0
-Expression "0" à 0.0, 0.0
-Expression "0" à 0.0, 0.0
-Expression "((2*y(D)-x(D)*E34-x(D)*E35+x(E)*E34+x(E)*E35+-2*y(E)))/E1" à -7.13742, 2.95983
-Expression "((E34*(x(D))^2+E34*x(D)*x(E)+-2*E34*(x(E))^2+2*(x(D))^2*E35-x(D)*E35*x(E)+-3*x(D)*y(D)+3*x(D)*y(E)-E35*(x(E))^2+-3*y(D)*x(E)+3*x(E)*y(E)))/E1" à -7.13742, 2.45243
-Expression "((-1)*(E35*(x(D))^3+E35*(x(D))^2*x(E)+-2*E35*x(D)*(x(E))^2+2*(x(D))^2*x(E)*E34-x(D)*(x(E))^2*E34+-6*x(D)*x(E)*y(D)+6*x(D)*x(E)*y(E)-(x(E))^3*E34))/E1" à -7.13742, 1.96195
-Expression "((-E35*(x(E))^2*(x(D))^2+E35*x(E)*(x(D))^3-(x(E))^3*x(D)*E34+(x(E))^3*y(D)+(x(E))^2*(x(D))^2*E34-3*(x(E))^2*x(D)*y(D)--3*x(E)*(x(D))^2*y(E)-(x(D))^3*y(E)))/E1" à -7.13742, 1.43763
-Expression "((2*y(E)-x(E)*E35-x(E)*E36+x(F)*E35+x(F)*E36+-2*y(F)))/E2" à -7.13742, 2.95983
-Expression "((E35*(x(E))^2+E35*x(E)*x(F)+-2*E35*(x(F))^2+2*(x(E))^2*E36-x(E)*E36*x(F)+-3*x(E)*y(E)+3*x(E)*y(F)-E36*(x(F))^2+-3*y(E)*x(F)+3*x(F)*y(F)))/E2" à -7.13742, 2.45243
-Expression "((-1)*(E36*(x(E))^3+E36*(x(E))^2*x(F)+-2*E36*x(E)*(x(F))^2+2*(x(E))^2*x(F)*E35-x(E)*(x(F))^2*E35+-6*x(E)*x(F)*y(E)+6*x(E)*x(F)*y(F)-(x(F))^3*E35))/E2" à -7.13742, 1.96195
-Expression "((-E36*(x(F))^2*(x(E))^2+E36*x(F)*(x(E))^3-(x(F))^3*x(E)*E35+(x(F))^3*y(E)+(x(F))^2*(x(E))^2*E35-3*(x(F))^2*x(E)*y(E)--3*x(F)*(x(E))^2*y(F)-(x(E))^3*y(F)))/E2" à -7.13742, 1.43763
-Expression "((2*y(F)-x(F)*E36-x(F)*E37+x(G)*E36+x(G)*E37+-2*y(G)))/E3" à -7.13742, 2.95983
-Expression "((E36*(x(F))^2+E36*x(F)*x(G)+-2*E36*(x(G))^2+2*(x(F))^2*E37-x(F)*E37*x(G)+-3*x(F)*y(F)+3*x(F)*y(G)-E37*(x(G))^2+-3*y(F)*x(G)+3*x(G)*y(G)))/E3" à -7.13742, 2.45243
-Expression "((-1)*(E37*(x(F))^3+E37*(x(F))^2*x(G)+-2*E37*x(F)*(x(G))^2+2*(x(F))^2*x(G)*E36-x(F)*(x(G))^2*E36+-6*x(F)*x(G)*y(F)+6*x(F)*x(G)*y(G)-(x(G))^3*E36))/E3" à -7.13742, 1.96195
-Expression "((-E37*(x(G))^2*(x(F))^2+E37*x(G)*(x(F))^3-(x(G))^3*x(F)*E36+(x(G))^3*y(F)+(x(G))^2*(x(F))^2*E36-3*(x(G))^2*x(F)*y(F)--3*x(G)*(x(F))^2*y(G)-(x(F))^3*y(G)))/E3" à -7.13742, 1.43763
-Function ( x , E8*x^3+E9*x^2+E10*x+E11 )
-Function ( x , E12*x^3+E13*x^2+E14*x+E15 )
-Function ( x , E16*x^3+E17*x^2+E18*x+E19 )
-Point à -1.85836, -3.63286
-Expression "0" à 0.0, 0.0
-Expression "-(x(G)-x(H))^3" à -7.13742, 3.39958
-Expression "((2*y(G)-x(G)*E37-x(G)*E33+x(H)*E37+x(H)*E33+-2*y(H)))/E21" à -7.13742, 2.95983
-Expression "((E37*(x(G))^2+E37*x(G)*x(H)+-2*E37*(x(H))^2+2*(x(G))^2*E33-x(G)*E33*x(H)+-3*x(G)*y(G)+3*x(G)*y(H)-E33*(x(H))^2+-3*y(G)*x(H)+3*x(H)*y(H)))/E21" à -7.13742, 2.45243
-Expression "((-1)*(E33*(x(G))^3+E33*(x(G))^2*x(H)+-2*E33*x(G)*(x(H))^2+2*(x(G))^2*x(H)*E37-x(G)*(x(H))^2*E37+-6*x(G)*x(H)*y(G)+6*x(G)*x(H)*y(H)-(x(H))^3*E37))/E21" à -7.13742, 1.96195
-Expression "((-E33*(x(H))^2*(x(G))^2+E33*x(H)*(x(G))^3-(x(H))^3*x(G)*E37+(x(H))^3*y(G)+(x(H))^2*(x(G))^2*E37-3*(x(H))^2*x(G)*y(G)--3*x(H)*(x(G))^2*y(H)-(x(G))^3*y(H)))/E21" à -7.13742, 1.43763
-Function ( x , E22*x^3+E23*x^2+E24*x+E25 )
-Function ( x , if(x<x(E),f1(x),if(x<x(F),f2(x),if(x<x(G),f3(x),f4(x)))) )
-
-
-
-D
-E
-F
-G
-H
-I
-E34
-E35
-E36
-E37
-E33
-E58
-
-
Se reporter à l'article de CaRzine "Interpolation
-polynomiale de degré 3".
-
-
-Point à -5.75637, -3.72351
-Point à -4.73654, -3.65552
-Point à -3.64873, -3.70085
-Point à -2.6289, -3.70085
-Expression "-(x(D)-x(E))^3" à -7.13742, 3.39958
-Expression "-(x(E)-x(F))^3" à -7.13742, 3.39958
-Expression "-(x(F)-x(G))^3" à -7.13742, 3.39958
-Expression "0" à 0.0, 0.0
-Expression "0" à 0.0, 0.0
-Expression "0" à 0.0, 0.0
-Expression "0" à 0.0, 0.0
-Expression "((2*y(D)-x(D)*E34-x(D)*E35+x(E)*E34+x(E)*E35+-2*y(E)))/E1" à -7.13742, 2.95983
-Expression "((E34*(x(D))^2+E34*x(D)*x(E)+-2*E34*(x(E))^2+2*(x(D))^2*E35-x(D)*E35*x(E)+-3*x(D)*y(D)+3*x(D)*y(E)-E35*(x(E))^2+-3*y(D)*x(E)+3*x(E)*y(E)))/E1" à -7.13742, 2.45243
-Expression "((-1)*(E35*(x(D))^3+E35*(x(D))^2*x(E)+-2*E35*x(D)*(x(E))^2+2*(x(D))^2*x(E)*E34-x(D)*(x(E))^2*E34+-6*x(D)*x(E)*y(D)+6*x(D)*x(E)*y(E)-(x(E))^3*E34))/E1" à -7.13742, 1.96195
-Expression "((-E35*(x(E))^2*(x(D))^2+E35*x(E)*(x(D))^3-(x(E))^3*x(D)*E34+(x(E))^3*y(D)+(x(E))^2*(x(D))^2*E34-3*(x(E))^2*x(D)*y(D)--3*x(E)*(x(D))^2*y(E)-(x(D))^3*y(E)))/E1" à -7.13742, 1.43763
-Expression "((2*y(E)-x(E)*E35-x(E)*E36+x(F)*E35+x(F)*E36+-2*y(F)))/E2" à -7.13742, 2.95983
-Expression "((E35*(x(E))^2+E35*x(E)*x(F)+-2*E35*(x(F))^2+2*(x(E))^2*E36-x(E)*E36*x(F)+-3*x(E)*y(E)+3*x(E)*y(F)-E36*(x(F))^2+-3*y(E)*x(F)+3*x(F)*y(F)))/E2" à -7.13742, 2.45243
-Expression "((-1)*(E36*(x(E))^3+E36*(x(E))^2*x(F)+-2*E36*x(E)*(x(F))^2+2*(x(E))^2*x(F)*E35-x(E)*(x(F))^2*E35+-6*x(E)*x(F)*y(E)+6*x(E)*x(F)*y(F)-(x(F))^3*E35))/E2" à -7.13742, 1.96195
-Expression "((-E36*(x(F))^2*(x(E))^2+E36*x(F)*(x(E))^3-(x(F))^3*x(E)*E35+(x(F))^3*y(E)+(x(F))^2*(x(E))^2*E35-3*(x(F))^2*x(E)*y(E)--3*x(F)*(x(E))^2*y(F)-(x(E))^3*y(F)))/E2" à -7.13742, 1.43763
-Expression "((2*y(F)-x(F)*E36-x(F)*E37+x(G)*E36+x(G)*E37+-2*y(G)))/E3" à -7.13742, 2.95983
-Expression "((E36*(x(F))^2+E36*x(F)*x(G)+-2*E36*(x(G))^2+2*(x(F))^2*E37-x(F)*E37*x(G)+-3*x(F)*y(F)+3*x(F)*y(G)-E37*(x(G))^2+-3*y(F)*x(G)+3*x(G)*y(G)))/E3" à -7.13742, 2.45243
-Expression "((-1)*(E37*(x(F))^3+E37*(x(F))^2*x(G)+-2*E37*x(F)*(x(G))^2+2*(x(F))^2*x(G)*E36-x(F)*(x(G))^2*E36+-6*x(F)*x(G)*y(F)+6*x(F)*x(G)*y(G)-(x(G))^3*E36))/E3" à -7.13742, 1.96195
-Expression "((-E37*(x(G))^2*(x(F))^2+E37*x(G)*(x(F))^3-(x(G))^3*x(F)*E36+(x(G))^3*y(F)+(x(G))^2*(x(F))^2*E36-3*(x(G))^2*x(F)*y(F)--3*x(G)*(x(F))^2*y(G)-(x(F))^3*y(G)))/E3" à -7.13742, 1.43763
-Function ( x , E8*x^3+E9*x^2+E10*x+E11 )
-Function ( x , E12*x^3+E13*x^2+E14*x+E15 )
-Function ( x , E16*x^3+E17*x^2+E18*x+E19 )
-Point à -1.85836, -3.63286
-Expression "0" à 0.0, 0.0
-Expression "-(x(G)-x(H))^3" à -7.13742, 3.39958
-Intersection entre l152 et c588Expression "((2*y(G)-x(G)*E37-x(G)*E33+x(H)*E37+x(H)*E33+-2*y(H)))/E21" à -7.13742, 2.95983
-Expression "((E37*(x(G))^2+E37*x(G)*x(H)+-2*E37*(x(H))^2+2*(x(G))^2*E33-x(G)*E33*x(H)+-3*x(G)*y(G)+3*x(G)*y(H)-E33*(x(H))^2+-3*y(G)*x(H)+3*x(H)*y(H)))/E21" à -7.13742, 2.45243
-Expression "((-1)*(E33*(x(G))^3+E33*(x(G))^2*x(H)+-2*E33*x(G)*(x(H))^2+2*(x(G))^2*x(H)*E37-x(G)*(x(H))^2*E37+-6*x(G)*x(H)*y(G)+6*x(G)*x(H)*y(H)-(x(H))^3*E37))/E21" à -7.13742, 1.96195
-Expression "((-E33*(x(H))^2*(x(G))^2+E33*x(H)*(x(G))^3-(x(H))^3*x(G)*E37+(x(H))^3*y(G)+(x(H))^2*(x(G))^2*E37-3*(x(H))^2*x(G)*y(G)--3*x(H)*(x(G))^2*y(H)-(x(G))^3*y(H)))/E21" à -7.13742, 1.43763
-Function ( x , E22*x^3+E23*x^2+E24*x+E25 )
-Point à -0.7932, -3.6102
-Expression "0" à 0.0, 0.0
-Expression "-(x(H)-x(I))^3" à -7.13742, 3.39958
-Expression "((2*y(H)-x(H)*E33-x(H)*E58+x(I)*E33+x(I)*E58+-2*y(I)))/E27" à -7.13742, 2.95983
-Expression "((E33*(x(H))^2+E33*x(H)*x(I)+-2*E33*(x(I))^2+2*(x(H))^2*E58-x(H)*E58*x(I)+-3*x(H)*y(H)+3*x(H)*y(I)-E58*(x(I))^2+-3*y(H)*x(I)+3*x(I)*y(I)))/E27" à -7.13742, 2.45243
-Expression "((-1)*(E58*(x(H))^3+E58*(x(H))^2*x(I)+-2*E58*x(H)*(x(I))^2+2*(x(H))^2*x(I)*E33-x(H)*(x(I))^2*E33+-6*x(H)*x(I)*y(H)+6*x(H)*x(I)*y(I)-(x(I))^3*E33))/E27" à -7.13742, 1.96195
-Expression "((-E58*(x(I))^2*(x(H))^2+E58*x(I)*(x(H))^3-(x(I))^3*x(H)*E33+(x(I))^3*y(H)+(x(I))^2*(x(H))^2*E33-3*(x(I))^2*x(H)*y(H)--3*x(I)*(x(H))^2*y(I)-(x(H))^3*y(I)))/E27" à -7.13742, 1.43763
-Function ( x , E28*x^3+E29*x^2+E30*x+E31 )
-Function ( x , if(x<x(E),f1(x),if(x<x(F),f2(x),if(x<x(G),f3(x),if(x<x(H),f4(x),f5(x))))) )
-
-
-
+
+
+
+P4
+P5
+P6
+
+Point à -5.0346, -4.77419
+Point à -0.62498, -5.39917
+Segment de P4 à P5
+Point à -0.94969, -2.78714
+Segment de P5 à P6
+Cercle de centre P5 de rayon windoww/24
+Intersection entre s1 et c1
+Parallèle passant par I1 à s2
+Intersection entre s2 et c1
+Parallèle passant par I2 à s1
+Intersection entre par2 et par1
+Segment de I1 à I3
+Segment de I3 à I2
+
+
+
+s1
+
+Point à -5.45985, 5.15328
+Point à 4.29197, -0.83212
+Segment de P1 à P2
+Milieu de P1 et P2
+Cercle de centre M1 de rayon 6/pixel
+Angle P2 - M1 with size 60
+Intersection entre a1 et c1
+Point à "2*x(M1)-x(I1)", "2*y(M1)-y(I1)"
+Segment de I1 à P3
+
+
+
+s1
+
+Point à -2.0146, 4.13139
+Point à 2.62774, 1.62044
+Segment de P1 à P2
+Milieu de P1 et P2
+Cercle de centre M1 de rayon 3/pixel
+Intersection entre s1 et c1
+Cercle de centre I1 de rayon 6/pixel
+Angle P2 - I1 with size 60
+Intersection entre a1 et c2
+Point à "2*x(I1)-x(I2)", "2*y(I1)-y(I2)"
+Point à "2*x(M1)-x(I2)", "2*y(M1)-y(I2)"
+Point à "2*x(M1)-x(P3)", "2*y(M1)-y(P3)"
+Segment de P3 à I2
+Segment de P5 à P4
+
+
+
+s1
+
+Point à -4.58394, 4.48175
+Point à -1.08029, 0.42336
+Segment de P1 à P2
+Milieu de P1 et P2
+Cercle de centre M1 de rayon 6/pixel
+Angle P2 - M1 with size 60
+Intersection entre a1 et c1
+Point à "2*x(M1)-x(I1)", "2*y(M1)-y(I1)"
+Segment de I1 à P3
+Intersection entre s1 et c1
+Intersection entre s1 et c1
+Cercle de centre I3 passant par M1
+Cercle de centre I2 passant par M1
+Intersection entre c3 et c1
+Point à "2*x(I2)-x(I4)", "2*y(I2)-y(I4)"
+Intersection entre c2 et c1
+Point à "2*x(I3)-x(I5)", "2*y(I3)-y(I5)"
+Segment de P5 à I5
+Segment de I4 à P4
+
+
+
+s1
+
+Point à -4.17518, 2.81752
+Point à 1.70568, -0.987
+Segment de P1 à P2
+Milieu de P1 et P2
+Cercle de centre M1 de rayon 6/pixel
+Angle P2 - M1 with size 60
+Intersection entre a1 et c1
+Point à "2*x(M1)-x(I1)", "2*y(M1)-y(I1)"
+Segment de I1 à P3
+Perpendiculaire passant par I1 à s1
+Intersection entre perp1 et s1
+Point à "2*x(I2)-x(I1)", "2*y(I2)-y(I1)"
+Point à "2*x(M1)-x(P4)", "2*y(M1)-y(P4)"
+Segment de P5 à P4
+
+
+
+s1
+
+Point à -4.17518, 2.81752
+Point à 1.70568, -0.987
+Segment de P1 à P2
+Milieu de P1 et P2
+Cercle de centre M1 de rayon 6/pixel
+
+
+
+s1
+
+Point à -4.17518, 2.81752
+Point à -0.46849, -0.48227
+Segment de P1 à P2
+Milieu de P1 et P2
+Perpendiculaire passant par M1 à s1
+Cercle de centre M1 de rayon 6/pixel
+Intersection entre perp1 et c1
+Parallèle passant par I1 à s1
+Intersection entre perp1 et c1
+Parallèle passant par I2 à s1
+Cercle de centre I2 de rayon 12/pixel
+Cercle de centre I1 de rayon c2
+Intersection entre par1 et c3
+Milieu de I3 et I1
+Intersection entre par2 et c2
+Milieu de I2 et I4
+Intersection entre par2 et c2
+Intersection entre par1 et c3
+Function ( (t==0)*x(I5)+(t==1)*x(M2)+(t==2)*x(M3)+(t==3)*x(I6) , (t==0)*y(I5)+(t==1)*y(M2)+(t==2)*y(M3)+(t==3)*y(I6) )
+
+
+
+P1
+P2
+
+Point à -5.45985, 5.15328
+Point à 4.29197, -0.83212
+Segment de P1 à P2
+Milieu de P1 et P2
+Cercle de centre M1 de rayon 6/pixel
+Angle P2 - M1 with size 60
+Intersection entre a1 et c1
+Point à "2*x(M1)-x(I1)", "2*y(M1)-y(I1)"
+Segment de I1 à P3
+
+
+
+P1
+P2
+
+Point à -2.0146, 4.13139
+Point à 2.62774, 1.62044
+Segment de P1 à P2
+Milieu de P1 et P2
+Cercle de centre M1 de rayon 3/pixel
+Intersection entre s1 et c1
+Cercle de centre I1 de rayon 6/pixel
+Angle P2 - I1 with size 60
+Intersection entre a1 et c2
+Point à "2*x(I1)-x(I2)", "2*y(I1)-y(I2)"
+Point à "2*x(M1)-x(I2)", "2*y(M1)-y(I2)"
+Point à "2*x(M1)-x(P3)", "2*y(M1)-y(P3)"
+Segment de P3 à I2
+Segment de P5 à P4
+
+
+
+P1
+P2
+
+Point à -4.58394, 4.48175
+Point à -1.08029, 0.42336
+Segment de P1 à P2
+Milieu de P1 et P2
+Cercle de centre M1 de rayon 6/pixel
+Angle P2 - M1 with size 60
+Intersection entre a1 et c1
+Point à "2*x(M1)-x(I1)", "2*y(M1)-y(I1)"
+Segment de I1 à P3
+Intersection entre s1 et c1
+Intersection entre s1 et c1
+Cercle de centre I3 passant par M1
+Cercle de centre I2 passant par M1
+Intersection entre c3 et c1
+Point à "2*x(I2)-x(I4)", "2*y(I2)-y(I4)"
+Intersection entre c2 et c1
+Point à "2*x(I3)-x(I5)", "2*y(I3)-y(I5)"
+Segment de P5 à I5
+Segment de I4 à P4
+
+
+
+P1
+P2
+
+Point à -4.17518, 2.81752
+Point à 1.70568, -0.987
+Segment de P1 à P2
+Milieu de P1 et P2
+Cercle de centre M1 de rayon 6/pixel
+Angle P2 - M1 with size 60
+Intersection entre a1 et c1
+Point à "2*x(M1)-x(I1)", "2*y(M1)-y(I1)"
+Segment de I1 à P3
+Perpendiculaire passant par I1 à s1
+Intersection entre perp1 et s1
+Point à "2*x(I2)-x(I1)", "2*y(I2)-y(I1)"
+Point à "2*x(M1)-x(P4)", "2*y(M1)-y(P4)"
+Segment de P5 à P4
+
+
+
+P1
+P2
+
+Point à -4.17518, 2.81752
+Point à 1.70568, -0.987
+Segment de P1 à P2
+Milieu de P1 et P2
+Cercle de centre M1 de rayon 6/pixel
+
+
+
+P1
+P2
+
+Point à -4.17518, 2.81752
+Point à -0.46849, -0.48227
+Segment de P1 à P2
+Milieu de P1 et P2
+Perpendiculaire passant par M1 à s1
+Cercle de centre M1 de rayon 6/pixel
+Intersection entre perp1 et c1
+Parallèle passant par I1 à s1
+Intersection entre perp1 et c1
+Parallèle passant par I2 à s1
+Cercle de centre I2 de rayon 12/pixel
+Cercle de centre I1 de rayon c2
+Intersection entre par1 et c3
+Milieu de I3 et I1
+Intersection entre par2 et c2
+Milieu de I2 et I4
+Intersection entre par2 et c2
+Intersection entre par1 et c3
+Function ( (t==0)*x(I5)+(t==1)*x(M2)+(t==2)*x(M3)+(t==3)*x(I6) , (t==0)*y(I5)+(t==1)*y(M2)+(t==2)*y(M3)+(t==3)*y(I6) )
+
+
+
+O
+M
+
+
Montrer le centre du polygone, ainsi qu'un sommet. Le
+nombre de côté vous sera ensuite demandé
+
+
+Point à 0.07612, 0.08236
+Point à 0.51536, 0.54656
+Expression "3" at 0.32612, -0.41764
+Function ( x(P1)+d(P1,P2)*sin(t-a(P1,P1,P2)) , y(P1)+d(P1,P2)*cos(t-a(P1,P1,P2)) )
+Point à "x(P1)+d(P1,P2)*sin(360/E1-a(P1,P1,P2))", "y(P1)+d(P1,P2)*cos(360/E1-a(P1,P1,P2))"
+Polygon P3, P1, P2
+Expression "d(P2,P3)*E1" at 0.32612, -0.91764
+Expression "poly2*E1" at 0.32612, -1.41764
+
+
+
+
+O
+M
+P9
+P6
+
+
Montrer le centre du polygone, ainsi qu'un sommet.
+
Ensuite, montrer deux points qui définissent le curseur.
+
+
+Point à "(windoww/(windoww-d(windoww)))*(x(P9)-windowcx)+windowcx+d(windowcx)", "(windoww/(windoww-d(windoww)))*(y(P9)-windowcy)+windowcy+d(windowcy)"
+Point à "if(P6,(x(@P9)/x(@P9))*(windoww/(windoww-d(windoww)))*(x(P6)-windowcx)+windowcx+d(windowcx),invalid)", "(windoww/(windoww-d(windoww)))*(y(P6)-windowcy)+windowcy+d(windowcy)"
+Expression "14" at -5.20388, 5.57605
+Point à "x(P9)+windoww/8", "y(P9)-windoww/12"
+Point à "x(P3)+3*windoww", "y(P3)"
+Point à "x(P3)", "y(P9)"
+Segment de P3 à P4
+Point sur s1
+Point à "x(po6)", "y(P9)"
+Segment de P5 à P7
+Expression "(x(P7)-x(P5))/(E1-1)" at -6.55238, 0.3029
+Point à "if(x(P6)<x(P5),x(P5),if(x(P6)>x(P7),x(P7),x(P5)+E2*round((x(P6)-x(P5))/E2)))", "y(P9)"
+Function ( x , y(P9) )
+Circle around P8 through P6 with radius "windoww/512"
+Expression "round((x(P8)-x(P5))/E2)+3" at -5.70388, 5.18022
+Point à -0.58252, -0.07767
+Point à 2.36893, 2.4466
+Function ( x(O)+d(O,M)*sin(t-a(O,O,M)) , y(O)+d(O,M)*cos(t-a(O,O,M)) )
+Point à "x(O)+d(O,M)*sin(360/E3-a(O,O,M))", "y(O)+d(O,M)*cos(360/E3-a(O,O,M))"
+Polygone P12, P16, P17
+Expression "d(M,P12)*E3" at -0.33252, -1.07767
+Expression "poly3*E3" at -0.33252, -1.57767
+
+
+
+O
+M
+E1
+
+
Montrer le centre du polygone, ainsi qu'un sommet. Montrer
+ensuite une expression qui représente le nombre de côtés.
+
+
+Point à -0.08122, -0.15228
+Point à 2.78173, 2.20305
+Expression "15" at 0.0, 0.0
+Function ( x(O)+d(O,M)*sin(t-a(O,O,M)) , y(O)+d(O,M)*cos(t-a(O,O,M)) )
+Point à "x(O)+d(O,M)*sin(360/E1-a(O,O,M))", "y(O)+d(O,M)*cos(360/E1-a(O,O,M))"
+Polygone P3, P1, P2
+Expression "d(M,P3)*E1" at 0.16878, -1.15228
+Expression "poly2*E1" at 0.16878, -1.65228
+
+
+
+A
+B
+C
+D
+
+
Montrer les 4 points qui définissent la ligne polygonale à
+3 côtés.
+
+
+Point à -0.9927, 6.75912
+Point à 1.89781, 6.43796
+Point à 3.76642, 3.54745
+Point à 1.34307, -0.68613
+Function ( (t==0)*x(A)+(t==1)*x(B)+(t==2)*x(C)+(t==3)*x(D) , (t==0)*y(A)+(t==1)*y(B)+(t==2)*y(C)+(t==3)*y(D) )
+
+
+
+A
+B
+C
+D
+E
+
+Point à -0.9927, 6.75912
+Point à 1.89781, 6.43796
+Point à 3.76642, 3.54745
+Point à 1.34307, -0.68613
+Point à -0.55474, -3.10949
+Function ( (t==0)*x(A)+(t==1)*x(B)+(t==2)*x(C)+(t==3)*x(D)+(t==4)*x(E) , (t==0)*y(A)+(t==1)*y(B)+(t==2)*y(C)+(t==3)*y(D)+(t==4)*y(E) )
+
+
+
+A
+B
+C
+D
+E
+F
+
+Point à -0.9927, 6.75912
+Point à 1.89781, 6.43796
+Point à 3.76642, 3.54745
+Point à 1.34307, -0.68613
+Point à -0.55474, -3.10949
+Point à -4.93431, -1.94161
+Function ( (t==0)*x(A)+(t==1)*x(B)+(t==2)*x(C)+(t==3)*x(D)+(t==4)*x(E)+(t==5)*x(F) , (t==0)*y(A)+(t==1)*y(B)+(t==2)*y(C)+(t==3)*y(D)+(t==4)*y(E)+(t==5)*y(F) )
+
+
+
+A
+B
+C
+D
+E
+F
+G
+
+Point à -0.9927, 6.75912
+Point à 1.89781, 6.43796
+Point à 3.76642, 3.54745
+Point à 1.34307, -0.68613
+Point à -0.55474, -3.10949
+Point à -4.93431, -1.94161
+Point à -6.18978, -0.36496
+Function ( (t==0)*x(A)+(t==1)*x(B)+(t==2)*x(C)+(t==3)*x(D)+(t==4)*x(E)+(t==5)*x(F)+(t==6)*x(G) , (t==0)*y(A)+(t==1)*y(B)+(t==2)*y(C)+(t==3)*y(D)+(t==4)*y(E)+(t==5)*y(F)+(t==6)*y(G) )
+
+
+
+A
+B
+C
+D
+E
+F
+G
+H
+
+Point à -0.9927, 6.75912
+Point à 1.89781, 6.43796
+Point à 3.76642, 3.54745
+Point à 1.34307, -0.68613
+Point à -0.55474, -3.10949
+Point à -4.93431, -1.94161
+Point à -6.18978, -0.36496
+Point à -6.54015, 1.50365
+Function ( (t==0)*x(A)+(t==1)*x(B)+(t==2)*x(C)+(t==3)*x(D)+(t==4)*x(E)+(t==5)*x(F)+(t==6)*x(G)+(t==7)*x(H) , (t==0)*y(A)+(t==1)*y(B)+(t==2)*y(C)+(t==3)*y(D)+(t==4)*y(E)+(t==5)*y(F)+(t==6)*y(G)+(t==7)*y(H) )
+
+
+
+A
+B
+C
+D
+E
+F
+G
+H
+I
+
+Point à -0.9927, 6.75912
+Point à 1.89781, 6.43796
+Point à 3.76642, 3.54745
+Point à 1.34307, -0.68613
+Point à -0.55474, -3.10949
+Point à -4.93431, -1.94161
+Point à -6.18978, -0.36496
+Point à -6.54015, 1.50365
+Point à -7.0365, 2.70073
+Function ( (t==0)*x(A)+(t==1)*x(B)+(t==2)*x(C)+(t==3)*x(D)+(t==4)*x(E)+(t==5)*x(F)+(t==6)*x(G)+(t==7)*x(H)+(t==8)*x(I) , (t==0)*y(A)+(t==1)*y(B)+(t==2)*y(C)+(t==3)*y(D)+(t==4)*y(E)+(t==5)*y(F)+(t==6)*y(G)+(t==7)*y(H)+(t==8)*y(I) )
+
+
+
+A
+B
+C
+D
+E
+F
+G
+H
+I
+J
+
+Point à -0.9927, 6.75912
+Point à 1.89781, 6.43796
+Point à 3.76642, 3.54745
+Point à 1.34307, -0.68613
+Point à -0.55474, -3.10949
+Point à -4.93431, -1.94161
+Point à -6.18978, -0.36496
+Point à -6.54015, 1.50365
+Point à -7.0365, 2.70073
+Point à -7.0073, 4.30657
+Function ( (t==0)*x(A)+(t==1)*x(B)+(t==2)*x(C)+(t==3)*x(D)+(t==4)*x(E)+(t==5)*x(F)+(t==6)*x(G)+(t==7)*x(H)+(t==8)*x(I)+(t==9)*x(J) , (t==0)*y(A)+(t==1)*y(B)+(t==2)*y(C)+(t==3)*y(D)+(t==4)*y(E)+(t==5)*y(F)+(t==6)*y(G)+(t==7)*y(H)+(t==8)*y(I)+(t==9)*y(J) )
+
+
+
+A
+B
+C
+D
+E
+F
+G
+H
+I
+J
+K
+
+Point à -0.9927, 6.75912
+Point à 1.89781, 6.43796
+Point à 3.76642, 3.54745
+Point à 1.34307, -0.68613
+Point à -0.55474, -3.10949
+Point à -4.93431, -1.94161
+Point à -6.18978, -0.36496
+Point à -6.54015, 1.50365
+Point à -7.0365, 2.70073
+Point à -7.0073, 4.30657
+Point à -5.83942, 5.15328
+Function ( (t==0)*x(A)+(t==1)*x(B)+(t==2)*x(C)+(t==3)*x(D)+(t==4)*x(E)+(t==5)*x(F)+(t==6)*x(G)+(t==7)*x(H)+(t==8)*x(I)+(t==9)*x(J)+(t==10)*x(K) , (t==0)*y(A)+(t==1)*y(B)+(t==2)*y(C)+(t==3)*y(D)+(t==4)*y(E)+(t==5)*y(F)+(t==6)*y(G)+(t==7)*y(H)+(t==8)*y(I)+(t==9)*y(J)+(t==10)*y(K) )
+
+
+
+A
+B
+C
+D
+E
+F
+G
+H
+I
+J
+K
+L
+
+Point à -0.9927, 6.75912
+Point à 1.89781, 6.43796
+Point à 3.76642, 3.54745
+Point à 1.34307, -0.68613
+Point à -0.55474, -3.10949
+Point à -4.93431, -1.94161
+Point à -6.18978, -0.36496
+Point à -6.54015, 1.50365
+Point à -7.0365, 2.70073
+Point à -7.0073, 4.30657
+Point à -5.83942, 5.15328
+Point à -4.64234, 6.37956
+Function ( (t==0)*x(A)+(t==1)*x(B)+(t==2)*x(C)+(t==3)*x(D)+(t==4)*x(E)+(t==5)*x(F)+(t==6)*x(G)+(t==7)*x(H)+(t==8)*x(I)+(t==9)*x(J)+(t==10)*x(K)+(t==11)*x(L) , (t==0)*y(A)+(t==1)*y(B)+(t==2)*y(C)+(t==3)*y(D)+(t==4)*y(E)+(t==5)*y(F)+(t==6)*y(G)+(t==7)*y(H)+(t==8)*y(I)+(t==9)*y(J)+(t==10)*y(K)+(t==11)*y(L) )
+
+
+
+A
+B
+C
+D
+E
+F
+G
+H
+I
+J
+K
+L
+M
+
+Point à -0.9927, 6.75912
+Point à 1.89781, 6.43796
+Point à 3.76642, 3.54745
+Point à 1.34307, -0.68613
+Point à -0.55474, -3.10949
+Point à -4.93431, -1.94161
+Point à -6.18978, -0.36496
+Point à -6.54015, 1.50365
+Point à -7.0365, 2.70073
+Point à -7.0073, 4.30657
+Point à -5.83942, 5.15328
+Point à -4.64234, 6.37956
+Point à -0.9635, 3.57664
+Function ( (t==0)*x(A)+(t==1)*x(B)+(t==2)*x(C)+(t==3)*x(D)+(t==4)*x(E)+(t==5)*x(F)+(t==6)*x(G)+(t==7)*x(H)+(t==8)*x(I)+(t==9)*x(J)+(t==10)*x(K)+(t==11)*x(L)+(t==12)*x(M) , (t==0)*y(A)+(t==1)*y(B)+(t==2)*y(C)+(t==3)*y(D)+(t==4)*y(E)+(t==5)*y(F)+(t==6)*y(G)+(t==7)*y(H)+(t==8)*y(I)+(t==9)*y(J)+(t==10)*y(K)+(t==11)*y(L)+(t==12)*y(M) )
+
+
+
+origine ?
+point d'abscisse 1 ?
+nombre à reporter ?
+
+Point à -3.74991, 0.67707
+Point à -1.00692, 0.74651
+Expression "3" at 0.0, 0.0
+Point à "x(O)+k*(x(I)-x(O))", "y(O)+k*(y(I)-y(O))"
+
+
+
+origine ?
+point d'abscisse 1 ?
+
+Point à -3.74991, 0.67707
+Point à -1.00692, 0.74651
+Expression "3" at 0.0, 0.0
+Point à "x(O)+k*(x(I)-x(O))", "y(O)+k*(y(I)-y(O))"
+
+
+
+
+Premier point ?
+Deuxième point ?
+Point aligné avec les deux autres ?
+Point d'ancrage ?
+
+Point à -2.0, 1.0
+Point à -1.0, 1.0
+Point à 2.0, 1.5
+Point à "(windoww/(windoww-d(windoww)))*(x(P4)-windowcx)+windowcx+d(windowcx)", "(windoww/(windoww-d(windoww)))*(y(P4)-windowcy)+windowcy+d(windowcy)"
+Expression "if(x(b)~=x(a),(y(c)-y(a))/(y(b)-y(a)),if((x(c)-x(a))*(y(b)-y(a))~=(y(c)-y(a))*(x(b)-x(a)),(x(c)-x(a))/(x(b)-x(a)),invalid))" at 0.0, 0.0
+Les points ne sont pas alignés
+
+
+
+o
+n
+d
+
+Expression "2" at 0.0, 0.0
+Point à 4.12375, 5.45845
+Point à 6.89748, 4.29056
+Point à "x(o)+d*(x(n)-x(o))", "y(o)+d*(y(n)-y(o))"
+
+
+
+o
+n
+
+Expression "2" at 0.0, 0.0
+Point à 4.12375, 5.45845
+Point à 6.89748, 4.29056
+Point à "x(o)+d*(x(n)-x(o))", "y(o)+d*(y(n)-y(o))"
+
+
+
+
+Par rapport à quel cercle ?
+inverse de quel point ?
+
+
Image d'un point M par l'inversion de cercle c.
+
+
+Point à -0.23529, 0.38914
+???
+Point à 1.73756, 0.58824
+Point à "x(P1)+c1^2/d(P1,A)^2*(x(A)-x(P1))", "y(P1)+c1^2/d(P1,A)^2*(y(A)-y(P1))"
+
+
+
+Centre de la rotation
+Image du point ?
+
+
Image d'un point M par une rotation de centre O et d'angle
+a donnés.
+
+
+Expression "" à 0.0, 0.0
+Point à 2.91156, -0.01361
+Point à 0.13605, -0.69388
+Angle P1 - P2 de mesure 25.629060000000003
+Cercle de centre P2 passant par P1
+Intersection entre a1 et c1
+
+
+
+
+Centre de la rotation ?
+Angle de la rotation ?
+Point à transformer ?
+
+
Renvoie l'image d'un point M par la rotation de centre O et
+d'angle t (en degrés).
+
+
+Point
+Point
+Expression "30" à 0.0, 0.0
+Point
+
+
+
+P1
+P2
+P3
+
+Point à -2.83544, 1.28608
+Point à 0.26329, 2.62278
+Point à 0.56709, 0.71899
+Point à "x(C)+x(B)-x(A)", "y(C)+y(B)-y(A)"
+Segment de P3 à P4
+
+
+
+Origine du vecteur
+
+Point à -1.68421, -0.63158
+Expression "1" at 0.0, 0.0
+Expression "0" at 0.0, 0.0
+Point à "x(P7)+E1", "y(P7)+E2"
+Segment de P7 à P2
+
+
+
+
+Vecteur
+Origine
+
+Point à 0.70175, 1.38947
+Point à -0.75789, -2.62456
+Point à 2.70175, 2.38947
+Expression "1" at 0.0, 0.0
+Segment de P1 à P3
+Point à "x(E)+E1*(x(P3)-x(P1))", "y(E)+E1*(y(P3)-y(P1))"
+Segment de E à P4
+
+
+
+
+s4
+s5
+E
+
+Point à -1.43158, 3.12982
+Point à 0.53333, 3.83158
+Point à -2.83509, -0.65965
+Point à -0.61754, -2.31579
+Point à 0.2807, 1.38947
+Point à "x(E)+x(P2)-x(P1)+x(P4)-x(P3)", "y(E)+y(P2)-y(P1)+y(P4)-y(P3)"
+Segment de P1 à P2
+Segment de P3 à P4
+Segment de E à P6
+
+
+
+Quel point ?
+
+
Crée un point pondéré à partir d'une masse demandée par
+voix numérique.
Désigner trois points pondérés (A,a) , (B,b) et (C,c) pour
+créer le barycentre G=Bar{(A,a),(B,b),(C,c)}. La masse
+a+b+c sera associée au point G.
+
+
+Point à -1.34653, 3.51485
+Expression "2" à -1.14653, 3.51485
+Point à -2.73267, 1.37624
+Expression "3" à -2.53267, 1.37624
+Point à 1.66337, 1.43564
+Expression "5" à 1.86337, 1.43564
+Point à "x(P1)+E2/(E1+E2)*(x(P2)-x(P1))", "y(P1)+E2/(E1+E2)*(y(P2)-y(P1))"
+Expression "E1+E2" à -1.97822, 2.23168
+Point à "x(P4)+E3/(E4+E3)*(x(P3)-x(P4))", "y(P4)+E3/(E4+E3)*(y(P3)-y(P4))"
+Expression "E4+E3" à -0.05743, 1.83366
+
+
+
+A
+B
+C
+D
+G
+
+
On désigne 5 points A, B, C, D, et G, où A, B et G sont
+trois points alignés.
+
La macro crée le point G' qui sera à C et D ce que G est à
+A et B (d'un point de vue barycentrique).
+
+
+Point à -5.19457, 2.1086
+Point à -0.85068, 2.1086
+Point à -5.37557, -0.09955
+Point à -1.01357, 0.35294
+Point à 0.92308, 2.1086
+Expression "sign(angle180(a(M,A,B)+1))*d(A,M)/d(A,B)" à -3.11312, 4.15385
+Point à "x(C)+E1*(x(D)-x(C))", "y(C)+E1*(y(D)-y(C))"
+
+
+
+A
+B
+C
+A'
+B'
+C'
+G
+
+
On désigne 7 points A, B, C, A', B', C', et G.
+
La macro crée le point G' qui sera à A', B', C' ce que G
+est à A, B et C (d'un point de vue barycentrique).
+
+
+Point à -4.34389, 4.09955
+Point à -5.99095, 1.60181
+Point à -2.51584, 1.60181
+Point à 0.0724, 0.13575
+Point à -1.44796, -2.65158
+Point à 3.65611, -2.41629
+Point à -3.11312, 2.92308
+Droite passant par B et C
+Droite passant par B et A
+Parallèle passant par M à l1
+Parallèle passant par M à l2
+Intersection entre l2 et par1
+Intersection entre l1 et par2
+Expression "sign(angle180(a(I1,B,A)+1))*d(B,I1)/d(B,A)" à -3.11312, 4.15385
+Point à "x(E)+E1*(x(D)-x(E))", "y(E)+E1*(y(D)-y(E))"
+Expression "sign(angle180(a(I2,B,C)+1))*d(B,I2)/d(B,C)" à -3.11312, 4.15385
+Point à "x(E)+E2*(x(F)-x(E))", "y(E)+E2*(y(F)-y(E))"
+Point à "x(P8)+x(P9)-x(E)", "y(P8)+y(P9)-y(E)"
+
+
+
+fonction ?
+point d'ancrage ?
+
+Function ( 0 , 0 )
+Expression "0" at 0.0, 0.0
+Expression "3" at 0.0, 0.0
+Point à "(windoww/(windoww-d(windoww)))*(x(P5)-windowcx)+windowcx+d(windowcx)", "(windoww/(windoww-d(windoww)))*(y(P5)-windowcy)+windowcy+d(windowcy)"
+Expression "min(f,a,b)" at -6.35, 2.45
+
+
+
+
+fonction ?
+Point d'ancrage ?
+
+Function ( 0 , 0 )
+Expression "-1" at 0.0, 0.0
+Expression "1" at 0.0, 0.0
+Point à "(windoww/(windoww-d(windoww)))*(x(P5)-windowcx)+windowcx+d(windowcx)", "(windoww/(windoww-d(windoww)))*(y(P5)-windowcy)+windowcy+d(windowcy)"
+Expression "max(f,a,b)" at -7.40109, 2.68358
+
+
+
+
+fonction ?
+
+Function ( 0 , 0 )
+Expression "-1" at 0.0, 0.0
+Point à "a", "f(a)"
+Point à "a+1", "f(a)+diff(f,a)"
+Droite passant par P1 et P2
+
+
+
+
+f
+point de l'axe des abscisses ?
+
+Function ( 0 , 0 )
+Point à 0.5, 0.0
+Point à "x(m)", "f(x(m))"
+Point à "x(P2)+1", "y(P2)+diff(f,x(m))"
+Droite passant par P2 et P3
+
+
+
+fonction ?
+Point d'ancrage ?
+
+Function ( 0 , 0 )
+Expression "1.5" at 0.0, 0.0
+Point à "(windoww/(windoww-d(windoww)))*(x(P4)-windowcx)+windowcx+d(windowcx)", "(windoww/(windoww-d(windoww)))*(y(P4)-windowcy)+windowcy+d(windowcy)"
+Expression "diff(f,a)" at -10.82147, 3.79617
+
+
+
+
+O
+I
+m
+p
+
+Point à 0.0, 0.0
+Point à 1.0, 0.0
+Point à -1.5, 4.5
+Point à "(windoww/(windoww-d(windoww)))*(x(p)-windowcx)+windowcx+d(windowcx)", "(windoww/(windoww-d(windoww)))*(y(p)-windowcy)+windowcy+d(windowcy)"
+Point à "x(p)", "y(p)+15/pixel"
+Point à "2*x(p)-x(P5)", "2*y(p)-y(P5)"
+Segment de P6 à P5
+Expression "d(O,m)" at 6.58, 5.08
+Expression "angle180(a(I,O,m))" at 6.58, 4.88
+
+
+
+O
+I
+m
+p
+
+Point à 0.0, 0.0
+Point à 1.0, 0.0
+Point à -3.0, 4.0
+Point à "(windoww/(windoww-d(windoww)))*(x(p)-windowcx)+windowcx+d(windowcx)", "(windoww/(windoww-d(windoww)))*(y(p)-windowcy)+windowcy+d(windowcy)"
+Point à "x(p)", "y(p)+15/pixel"
+Point à "2*x(p)-x(P5)", "2*y(p)-y(P5)"
+Segment de P6 à P5
+Expression "d(O,m)" at 3.58, 2.58
+Expression "pi/180*angle180(a(I,O,m))" at 3.58, 2.38
+
+
+
+O
+I
+angle ?
+r ?
+
+Point à 0.0, 0.0
+Point à 1.0, 0.0
+Expression "-2.5" at 0.0, 0.0
+Expression "-30" at 0.0, 0.0
+Expression "" à 0.0, 0.0
+Angle P1 - P2 de mesure 25.629060000000003
+Cercle de centre P2 passant par P1
+Intersection entre a1 et c1
+Point à "r*x(I1)", "r*y(I1)"
+
+
+
+O
+I
+
+Point à 0.0, 0.0
+Point à 1.0, 0.0
+Expression "-2.5" at 0.0, 0.0
+Expression "-30" at 0.0, 0.0
+Expression "" à 0.0, 0.0
+Angle P1 - P2 de mesure 25.629060000000003
+Cercle de centre P2 passant par P1
+Intersection entre a1 et c1
+Point à "r*x(I1)", "r*y(I1)"
+
+
+
+
+O
+I
+angle ?
+r ?
+
+Point à 0.0, 0.0
+Point à 1.0, 0.0
+Expression "-2" at 0.0, 0.0
+Expression "2.2" at 0.0, 0.0
+Expression "" à 0.0, 0.0
+Angle P1 - P2 de mesure 25.629060000000003
+Cercle de centre P2 passant par P1
+Intersection entre a1 et c1
+Point à "x(I1)*r", "y(I1)*r"
+
+
+
+O
+I
+
+Point à 0.0, 0.0
+Point à 1.0, 0.0
+Expression "-2" at 0.0, 0.0
+Expression "2.2" at 0.0, 0.0
+Expression "" à 0.0, 0.0
+Angle P1 - P2 de mesure 25.629060000000003
+Cercle de centre P2 passant par P1
+Intersection entre a1 et c1
+Point à "x(I1)*r", "y(I1)*r"
+
+
+
+
+a
+b
+
+Point à 2.0, 1.5
+Point à 1.0, 1.5
+Point à "x(a)+x(b)", "y(a)+y(b)"
+
+
+
+a
+b
+
+Point à 2.0, 1.5
+Point à 1.0, 1.5
+Point à "x(a)*x(b)-y(a)*y(b)", "x(a)*y(b)+x(b)*y(a)"
+
+
+
+P1
+
+Point à 0.5, 0.5
+Point à "x(P1)/((x(P1))^2+(y(P1))^2)", "-y(P1)/((x(P1))^2+(y(P1))^2)"
+
+
+
+m
+
+Point à 1.5, 2.0
+Expression "1.5" at 0.0, 0.0
+Point à "k*x(m)", "k*y(m)"
+
+
+
+
+a
+
+Point à -5.22105, 4.70175
+Expression "sum(1,1)" at -5.22105, 4.20175
+Expression "1000" at -5.22105, 4.40175
+Expression "5" at -5.22105, 4.00175
+Point à "x(a)+1", "y(a)"
+Point à "x(a)", "y(a)-10/pixel"
+Polygone a
+Demi-droite d'origine a vers P2
+Segment de P3 à a
+Point sur r1
+Expression "(x(po4)-x(a))/E3" at 3.03158, 1.67018
+Point à "x(a)+(x(po4)-x(a))*min(1,E1/E2)", "y(a)"
+Point à "x(po4)", "y(P3)"
+Segment de a à po4
+Function ( x(a)+floor((t+1)/2)*E4 , if(floor(t/2)==2*floor(floor(t/2)/2),y(a),y(P3)) )
+Point à "x(P5)", "y(P3)"
+Segment de po4 à P6
+Segment de P6 à P3
+Polygone a, P5, P7, P3
+
+
+
+a
+t
+
+Point à "(windoww/(windoww-d(windoww)))*(x(a)-windowcx)+windowcx+d(windowcx)", "(windoww/(windoww-d(windoww)))*(y(a)-windowcy)+windowcy+d(windowcy)"
+Point à "if(t,(x(@a)/x(@a))*(windoww/(windoww-d(windoww)))*(x(t)-windowcx)+windowcx+d(windowcx),invalid)", "(windoww/(windoww-d(windoww)))*(y(t)-windowcy)+windowcy+d(windowcy)"
+Expression "5" at -3.64732, 4.95069
+Point à "x(a)+windoww/8", "y(a)-windoww/12"
+Point à "x(P3)+3*windoww", "y(P3)"
+Point à "x(P3)", "y(a)"
+Segment de P3 à P4
+Point sur s1
+Point à "x(po6)", "y(a)"
+Segment de P5 à P7
+Expression "(x(P7)-x(P5))/(E1-1)" at -6.55238, 0.3029
+Point à "if(x(t)<x(P5),x(P5),if(x(t)>x(P7),x(P7),x(P5)+E2*round((x(t)-x(P5))/E2)))", "y(a)"
+Function ( x , y(a) )
+Circle around P8 through t with radius "windoww/512"
+Expression "round((x(P8)-x(P5))/E2)" at -4.14732, 4.55486
+
+
+
+
+Point d'ancrage du curseur
+
+
Montrer le point d'ancrage du curseur. Entrez ensuite le
+min et le max.
+
Le curseur créé est flottant, c'est à dire qu'il ne se
+déplace pas avec la figure lorsqu'on utilise les flèches du
+clavier ou l'outil de déplacement de la palette.
+
+
+Point à "(windoww/(windoww-d(windoww)))*(x(A)-windowcx)+windowcx+d(windowcx)", "(windoww/(windoww-d(windoww)))*(y(A)-windowcy)+windowcy+d(windowcy)"
+Point à "x(A)+3*windoww", "y(A)"
+Segment de A à P2
+Point sur s1
+Point à "x(po3)", "y(po3)+windoww/20"
+Point à "x(P4)+2*(x(A)-x(po3))", "y(P4)"
+Expression "-5" à -1.74431, 0.11941
+Expression "5" à -1.74431, -0.40059
+Segment de P5 à P4
+Point sur s2
+Expression "round((E1+d(P5,po6)/d(P5,P4)*(E2-E1))*10)/10" à -2.75005, 0.06608
+
+
+
+
+Point d'ancrage du curseur
+
+
Montrer le point d'ancrage du curseur. Entrer ensuite le
+nombre de décimales souhaitées pour le résultat et la
+valeur numérique que doit représenter un tour.
+
Le curseur créé est flottant, c'est à dire qu'il ne se
+déplace pas avec la figure lorsqu'on utilise les flèches du
+clavier ou l'outil de déplacement de la palette.
+
+
+Point à "(windoww/(windoww-d(windoww)))*(x(O)-windowcx)+windowcx+d(windowcx)", "(windoww/(windoww-d(windoww)))*(y(O)-windowcy)+windowcy+d(windowcy)"
+Expression "1" à -4.15801, 3.74833
+Expression "5" à -4.15801, 4.06833
+Point à "x(O)+3*windoww", "y(O)"
+Segment de O à P2
+Point sur s1
+Cercle de centre O passant par po3
+Point sur c1
+Expression "sum(-round(d(a(po3,O,po4))/360),0)" à -2.68275, 4.70833
+Expression "round((E3*360+a(po3,O,po4))*E2/360*10^E1)/10^E1" à -4.15801, 4.86833
+
+
+
+
+Point d'ancrage du curseur
+
+
Montrer le point d'ancrage du curseur.
+
Le curseur créé est flottant, c'est à dire qu'il ne se
+déplace pas avec la figure lorsqu'on utilise les flèches du
+clavier ou l'outil de déplacement de la palette.
+
+
+Point à "(windoww/(windoww-d(windoww)))*(x(A)-windowcx)+windowcx+d(windowcx)", "(windoww/(windoww-d(windoww)))*(y(A)-windowcy)+windowcy+d(windowcy)"
+Point à "x(A)+3*windoww", "y(A)"
+Segment de A à P2
+Point sur s1
+Cercle de centre A passant par po3
+Segment de A à po3
+Milieu de A et po3
+Point sur c1
+Cercle de centre A passant par M1
+Angle po3 - A - po4
+Point sur c2
+Segment de A à po4
+Segment de A à po5
+Angle M1 - A - po5
+
+
+
+P
+
+
Place un point flottant dans la fenêtre (qui ne se déplace
+pas avec la figure).
+
+
+Point à "(windoww/(windoww-d(windoww)))*(x(P35)-windowcx)+windowcx+d(windowcx)", "(windoww/(windoww-d(windoww)))*(y(P35)-windowcy)+windowcy+d(windowcy)"
+
+
+
+O
+
+Point à "(windoww/(windoww-d(windoww)))*(x(O)-windowcx)+windowcx+d(windowcx)", "(windoww/(windoww-d(windoww)))*(y(O)-windowcy)+windowcy+d(windowcy)"
+Point à "x(O)+windoww*3", "y(O)"
+Segment de O à P2
+Point à "x(O)", "y(O)+d(O,P2)"
+Segment de O à P3
+Point sur s1
+Point sur s2
+
+
+
+P
+
+Point à "(windoww/(windoww-d(windoww)))*(x(P37)-windowcx)+windowcx+d(windowcx)", "windowcy"
+Point à "x(P37)-2*windoww", "y(P37)+windowh"
+Point à "x(P37)", "y(P37)+windowh"
+Point à "x(P37)", "y(P37)-windowh"
+Point à "x(P37)-2*windoww", "y(P37)-windowh"
+Polygone P2, P3, P4, P5
+
+
+
+P
+
+Point à "(windoww/(windoww-d(windoww)))*(x(P42)-windowcx)+windowcx+d(windowcx)", "windowcy"
+Point à "x(P42)+2*windoww", "y(P42)+windowh"
+Point à "x(P42)", "y(P42)+windowh"
+Point à "x(P42)", "y(P42)-windowh"
+Point à "x(P42)+2*windoww", "y(P42)-windowh"
+Polygone P2, P3, P4, P5
+
+
+
+P
+
+Point à "windowcx", "(windoww/(windoww-d(windoww)))*(y(P47)-windowcy)+windowcy+d(windowcy)"
+Point à "x(P47)-2*windoww", "y(P47)+windowh"
+Point à "x(P47)+2*windoww", "y(P47)+windowh"
+Point à "x(P47)+2*windoww", "y(P47)"
+Point à "x(P47)-2*windoww", "y(P47)"
+Polygone P2, P3, P4, P5
+
+
+
+P
+
+Point à "windowcx", "(windoww/(windoww-d(windoww)))*(y(P52)-windowcy)+windowcy+d(windowcy)"
+Point à "x(P52)-2*windoww", "y(P52)-windowh"
+Point à "x(P52)+2*windoww", "y(P52)-windowh"
+Point à "x(P52)+2*windoww", "y(P52)"
+Point à "x(P52)-2*windoww", "y(P52)"
+Polygone P2, P3, P4, P5
+
+
+
+c
+d
+
+Point à 2.18978, 3.57664
+Point à "x(d)", "y(d)"
+Point à "if(c,if(pixel==0,x(c),if(d(c,@P2)<(5/pixel),x(@P2),x(c))),invalid)", "if(c,if(pixel==0,y(c),if(d(c,@P2)<(5/pixel),y(@P2),y(c))),invalid)"
+
+
+
+c
+d
+
+Point à 2.18978, 3.57664
+Point à "x(d)", "y(d)"
+Point à "if(c,if(pixel==0,x(c),if(d(c,@P2)<(10/pixel),x(@P2),x(c))),invalid)", "if(c,if(pixel==0,y(c),if(d(c,@P2)<(10/pixel),y(@P2),y(c))),invalid)"
+
+
+
+c
+d
+
+Point à 2.18978, 3.57664
+Point à "x(d)", "y(d)"
+Point à "if(c,if(pixel==0,x(c),if(d(c,@P2)<(15/pixel),x(@P2),x(c))),invalid)", "if(c,if(pixel==0,y(c),if(d(c,@P2)<(15/pixel),y(@P2),y(c))),invalid)"
+
+
+
+c
+d
+
+Point à 2.18978, 3.57664
+Point à "x(d)", "y(d)"
+Point à "if(c,if(pixel==0,x(c),if(d(c,@P2)<(20/pixel),x(@P2),x(c))),invalid)", "if(c,if(pixel==0,y(c),if(d(c,@P2)<(20/pixel),y(@P2),y(c))),invalid)"
+
+
+
+P3
+l1
+
+???
+Point à "if(P3,if(pixel==0,x(P3),if(d(P3,@P2)<(15/pixel),x(@P2),x(P3))),invalid)", "if(P3,if(pixel==0,y(P3),if(d(P3,@P2)<(15/pixel),y(@P2),y(P3))),invalid)"
+Perpendiculaire passant par P3 à l1
+Intersection entre perp1 et l1
+Point à "x(I1)", "y(I1)"
+
+
+
+P3
+c1
+
+Point à -0.17518, 0.24818
+???
+Point à "if(P3,if(pixel==0,x(P3),if(d(P3,@P4)<(15/pixel),x(@P4),x(P3))),invalid)", "if(P3,if(pixel==0,y(P3),if(d(P3,@P4)<(15/pixel),y(@P4),y(P3))),invalid)"
+Demi-droite d'origine P1 vers P3
+Intersection entre r1 et c1
+Point à "x(I1)", "y(I1)"
+
+
+
+P11
+
+Point à -2.89051, -0.80292
+Point à "x(P11)+1", "y(P11)"
+Point à "x(P11)", "y(P11)+1"
+Demi-droite d'origine P11 vers P2
+Demi-droite d'origine P11 vers P3
+Point sur r1
+Point sur r2
+Function ( if(floor(t/2)==(t/2),if(floor(t/4)==(t/4),x(P11),x(po4)),if(floor((t-1)/4)==(t-1)/4,x(P11),x(po4))) , if(floor(t/2)==(t/2),y(P11)+t/2,y(P11)+(t+1)/2) )
+Function ( if(floor(t/2)==(t/2),x(P11)+t/2,x(P11)+(t+1)/2) , if(floor(t/2)==(t/2),if(floor(t/4)==(t/4),y(P11),y(po5)),if(floor((t-1)/4)==(t-1)/4,y(P11),y(po5))) )
+Segment de P11 à po5
+Point à "x(po4)", "y(po5)"
+Segment de po4 à P11
+Segment de po5 à P6
+Segment de P6 à po4
+
+
+
+P1
+
+Point à 0.58883, 0.45685
+Point à "x(P1)-2*floor(windoww)", "y(P1)-2*floor(windoww)"
+Point à "x(P1)+2*floor(windoww)", "y(P1)-2*floor(windoww)"
+Point à "x(P1)-2*floor(windoww)", "y(P1)+2*floor(windoww)"
+Function ( if(floor(t/2)==(t/2),if(floor(t/4)==(t/4),x(P2),x(P3)),if(floor((t-1)/4)==(t-1)/4,x(P2),x(P3))) , if(floor(t/2)==(t/2),y(P2)+t/2,y(P2)+(t+1)/2) )
+Function ( if(floor(t/2)==(t/2),x(P2)+t/2,x(P2)+(t+1)/2) , if(floor(t/2)==(t/2),if(floor(t/4)==(t/4),y(P2),y(P4)),if(floor((t-1)/4)==(t-1)/4,y(P2),y(P4))) )
+
+
+
+O
+P38
+
+Point à -1.31387, -0.36496
+Point à "x(O)+1", "y(O)"
+Demi-droite d'origine O vers P2
+Point sur r1
+Point à 0.17518, 0.71533
+Point à "x(C)+x(B)-x(A)", "y(C)+y(B)-y(A)"
+Cercle de centre O de rayon (1+floor(4*windoww/d(P5,O)))*d(P5,O)
+Droite passant par O et P5
+Angle po3 - O with size 90
+Intersection entre a1 et c1
+Point à "x(C)+x(B)-x(A)", "y(C)+y(B)-y(A)"
+Droite passant par I1 et P6
+Intersection entre l1 et l2
+Angle P38 - O with size 90
+Intersection entre a2 et c1
+Point à "x(C)+x(B)-x(A)", "y(C)+y(B)-y(A)"
+Droite passant par P7 et I3
+Intersection entre l1 et l3
+Point à "if(d(O,I2)>d(O,I4),x(I2),x(I4))", "if(d(O,I2)>d(O,I4),y(I2),y(I4))"
+Cercle de centre O de rayon (1+floor(d(O,P8)/d(O,P5)))*d(O,P5)
+Intersection entre l1 et c2
+Point à "x(C)+x(B)-x(A)", "y(C)+y(B)-y(A)"
+Point à "x(C)+x(B)-x(A)", "y(C)+y(B)-y(A)"
+Point à "2*x(O)-x(I5)", "2*y(O)-y(I5)"
+Point à "x(C)+x(B)-x(A)", "y(C)+y(B)-y(A)"
+Point à "x(C)+x(B)-x(A)", "y(C)+y(B)-y(A)"
+Droite passant par I5 et P9
+Droite passant par I5 et P10
+Droite passant par P11 et P12
+Droite passant par P11 et P13
+Intersection entre l7 et l4
+Intersection entre l6 et l5
+Function ( if(floor(t/2)==(t/2),if(floor(t/4)==(t/4),x(I5)+(t/2)*(x(P10)-x(I5)),x(I6)+(t/2)*(x(P10)-x(I5))),if(floor((t-1)/4)==(t-1)/4,x(I5)+((t+1)/2)*(x(P10)-x(I5)),x(I6)+((t+1)/2)*(x(P10)-x(I5)))) , if(floor(t/2)==(t/2),if(floor(t/4)==(t/4),y(I5)+(t/2)*(y(P10)-y(I5)),y(I6)+(t/2)*(y(P10)-y(I5))),if(floor((t-1)/4)==(t-1)/4,y(I5)+((t+1)/2)*(y(P10)-y(I5)),y(I6)+((t+1)/2)*(y(P10)-y(I5)))) )
+Function ( if(floor(t/2)==(t/2),if(floor(t/4)==(t/4),x(I5)+(t/2)*(x(P9)-x(I5)),x(I7)+(t/2)*(x(P9)-x(I5))),if(floor((t-1)/4)==(t-1)/4,x(I5)+((t+1)/2)*(x(P9)-x(I5)),x(I7)+((t+1)/2)*(x(P9)-x(I5)))) , if(floor(t/2)==(t/2),if(floor(t/4)==(t/4),y(I5)+(t/2)*(y(P9)-y(I5)),y(I7)+(t/2)*(y(P9)-y(I5))),if(floor((t-1)/4)==(t-1)/4,y(I5)+((t+1)/2)*(y(P9)-y(I5)),y(I7)+((t+1)/2)*(y(P9)-y(I5)))) )
+
+
+
+P18
+P19
+P20
+
+Point à -1.54745, 0.45255
+Point à 1.10949, -0.65693
+Point à 1.37226, 1.12409
+Point à "x(C)+x(B)-x(A)", "y(C)+y(B)-y(A)"
+Cercle de centre P18 de rayon (1+floor(4*windoww/d(P4,P18)))*d(P4,P18)
+Droite passant par P18 et P4
+Angle P19 - P18 with size 90
+Intersection entre a1 et c1
+Point à "x(C)+x(B)-x(A)", "y(C)+y(B)-y(A)"
+Droite passant par I1 et P5
+Intersection entre l1 et l2
+Angle P20 - P18 with size 90
+Intersection entre a2 et c1
+Point à "x(C)+x(B)-x(A)", "y(C)+y(B)-y(A)"
+Droite passant par P6 et I3
+Intersection entre l1 et l3
+Point à "if(d(P18,I2)>d(P18,I4),x(I2),x(I4))", "if(d(P18,I2)>d(P18,I4),y(I2),y(I4))"
+Cercle de centre P18 de rayon (1+floor(d(P18,P7)/d(P18,P4)))*d(P18,P4)
+Intersection entre l1 et c2
+Point à "x(C)+x(B)-x(A)", "y(C)+y(B)-y(A)"
+Point à "x(C)+x(B)-x(A)", "y(C)+y(B)-y(A)"
+Point à "2*x(P18)-x(I5)", "2*y(P18)-y(I5)"
+Point à "x(C)+x(B)-x(A)", "y(C)+y(B)-y(A)"
+Point à "x(C)+x(B)-x(A)", "y(C)+y(B)-y(A)"
+Droite passant par I5 et P8
+Droite passant par I5 et P9
+Droite passant par P10 et P11
+Droite passant par P10 et P12
+Intersection entre l7 et l4
+Intersection entre l6 et l5
+Function ( if(floor(t/2)==(t/2),if(floor(t/4)==(t/4),x(I5)+(t/2)*(x(P9)-x(I5)),x(I6)+(t/2)*(x(P9)-x(I5))),if(floor((t-1)/4)==(t-1)/4,x(I5)+((t+1)/2)*(x(P9)-x(I5)),x(I6)+((t+1)/2)*(x(P9)-x(I5)))) , if(floor(t/2)==(t/2),if(floor(t/4)==(t/4),y(I5)+(t/2)*(y(P9)-y(I5)),y(I6)+(t/2)*(y(P9)-y(I5))),if(floor((t-1)/4)==(t-1)/4,y(I5)+((t+1)/2)*(y(P9)-y(I5)),y(I6)+((t+1)/2)*(y(P9)-y(I5)))) )
+Function ( if(floor(t/2)==(t/2),if(floor(t/4)==(t/4),x(I5)+(t/2)*(x(P8)-x(I5)),x(I7)+(t/2)*(x(P8)-x(I5))),if(floor((t-1)/4)==(t-1)/4,x(I5)+((t+1)/2)*(x(P8)-x(I5)),x(I7)+((t+1)/2)*(x(P8)-x(I5)))) , if(floor(t/2)==(t/2),if(floor(t/4)==(t/4),y(I5)+(t/2)*(y(P8)-y(I5)),y(I7)+(t/2)*(y(P8)-y(I5))),if(floor((t-1)/4)==(t-1)/4,y(I5)+((t+1)/2)*(y(P8)-y(I5)),y(I7)+((t+1)/2)*(y(P8)-y(I5)))) )
+
+
+
+A
+
+
Se reporter à l'article de CaRzine "Interpolation
+polynomiale de degré 3".
+
+
+Point à -3.38266, 1.18393
+Cercle de centre A de rayon 2.0
+Point sur c1
+Point à "2*x(A)-x(po2)", "2*y(A)-y(po2)"
+Segment de po2 à P3
+Expression "round((y(po2)-y(A))/(x(po2)-x(A))*100)/100" à -5.81684, 3.81811
+
+
+
+A
+B
+dA
+dB
+
+
Se reporter à l'article de CaRzine "Interpolation
+polynomiale de degré 3".
+
+
+Expression "1" à -7.12051, 4.27907
+Expression "2" à -7.13742, 3.85624
+Point à -2.50317, 1.84355
+Point à 0.38901, 1.45455
+Expression "-(x(A)-x(B))^3" à -7.13742, 3.39958
+Expression "((2*y(A)-x(A)*dA-x(A)*dB+x(B)*dA+x(B)*dB+-2*y(B)))/E3" à -7.13742, 2.95983
+Expression "((dA*(x(A))^2+dA*x(A)*x(B)+-2*dA*(x(B))^2+2*(x(A))^2*dB-x(A)*dB*x(B)+-3*x(A)*y(A)+3*x(A)*y(B)-dB*(x(B))^2+-3*y(A)*x(B)+3*x(B)*y(B)))/E3" à -7.13742, 2.45243
+Expression "((-1)*(dB*(x(A))^3+dB*(x(A))^2*x(B)+-2*dB*x(A)*(x(B))^2+2*(x(A))^2*x(B)*dA-x(A)*(x(B))^2*dA+-6*x(A)*x(B)*y(A)+6*x(A)*x(B)*y(B)-(x(B))^3*dA))/E3" à -7.13742, 1.96195
+Expression "((-dB*(x(B))^2*(x(A))^2+dB*x(B)*(x(A))^3-(x(B))^3*x(A)*dA+(x(B))^3*y(A)+(x(B))^2*(x(A))^2*dA-3*(x(B))^2*x(A)*y(A)--3*x(B)*(x(A))^2*y(B)-(x(A))^3*y(B)))/E3" à -7.13742, 1.43763
+Function ( x , E4*x^3+E5*x^2+E6*x+E7 )
+
+
+
+A
+B
+C
+E1
+E2
+E3
+
+
Se reporter à l'article de CaRzine "Interpolation
+polynomiale de degré 3".
+
+
+Point à -5.93768, 1.35977
+Expression "0" à 0.0, 0.0
+Point à -2.15297, 1.47309
+Expression "0" à 0.0, 0.0
+Point à 1.26912, 1.31445
+Expression "0" à 0.0, 0.0
+Expression "-(x(A)-x(B))^3" à -7.13742, 3.39958
+Expression "((2*y(A)-x(A)*E1-x(A)*E2+x(B)*E1+x(B)*E2+-2*y(B)))/E4" à -7.13742, 2.95983
+Expression "((E1*(x(A))^2+E1*x(A)*x(B)+-2*E1*(x(B))^2+2*(x(A))^2*E2-x(A)*E2*x(B)+-3*x(A)*y(A)+3*x(A)*y(B)-E2*(x(B))^2+-3*y(A)*x(B)+3*x(B)*y(B)))/E4" à -7.13742, 2.45243
+Expression "((-1)*(E2*(x(A))^3+E2*(x(A))^2*x(B)+-2*E2*x(A)*(x(B))^2+2*(x(A))^2*x(B)*E1-x(A)*(x(B))^2*E1+-6*x(A)*x(B)*y(A)+6*x(A)*x(B)*y(B)-(x(B))^3*E1))/E4" à -7.13742, 1.96195
+Expression "((-E2*(x(B))^2*(x(A))^2+E2*x(B)*(x(A))^3-(x(B))^3*x(A)*E1+(x(B))^3*y(A)+(x(B))^2*(x(A))^2*E1-3*(x(B))^2*x(A)*y(A)--3*x(B)*(x(A))^2*y(B)-(x(A))^3*y(B)))/E4" à -7.13742, 1.43763
+Function ( x , E5*x^3+E6*x^2+E7*x+E8 )
+Expression "-(x(B)-x(C))^3" à -7.13742, 3.39958
+Expression "((2*y(B)-x(B)*E2-x(B)*E3+x(C)*E2+x(C)*E3+-2*y(C)))/E9" à -7.13742, 2.95983
+Expression "((E2*(x(B))^2+E2*x(B)*x(C)+-2*E2*(x(C))^2+2*(x(B))^2*E3-x(B)*E3*x(C)+-3*x(B)*y(B)+3*x(B)*y(C)-E3*(x(C))^2+-3*y(B)*x(C)+3*x(C)*y(C)))/E9" à -7.13742, 2.45243
+Expression "((-1)*(E3*(x(B))^3+E3*(x(B))^2*x(C)+-2*E3*x(B)*(x(C))^2+2*(x(B))^2*x(C)*E2-x(B)*(x(C))^2*E2+-6*x(B)*x(C)*y(B)+6*x(B)*x(C)*y(C)-(x(C))^3*E2))/E9" à -7.13742, 1.96195
+Expression "((-E3*(x(C))^2*(x(B))^2+E3*x(C)*(x(B))^3-(x(C))^3*x(B)*E2+(x(C))^3*y(B)+(x(C))^2*(x(B))^2*E2-3*(x(C))^2*x(B)*y(B)--3*x(C)*(x(B))^2*y(C)-(x(B))^3*y(C)))/E9" à -7.13742, 1.43763
+Function ( x , E10*x^3+E11*x^2+E12*x+E13 )
+Function ( x , if(x<x(B),f1(x),f2(x)) )
+
+
+
+D
+E
+F
+G
+E34
+E35
+E36
+E37
+
+
Se reporter à l'article de CaRzine "Interpolation
+polynomiale de degré 3".
+
+
+Point à -5.75637, -3.72351
+Expression "0" à 0.0, 0.0
+Point à -2.8102, -3.45156
+Expression "0" à 0.0, 0.0
+Point à 0.6119, -3.27025
+Expression "0" à 0.0, 0.0
+Point à 4.2153, -3.29292
+Expression "0" à 0.0, 0.0
+Expression "-(x(D)-x(E))^3" à -7.13742, 3.39958
+Expression "((2*y(D)-x(D)*E34-x(D)*E35+x(E)*E34+x(E)*E35+-2*y(E)))/E5" à -7.13742, 2.95983
+Expression "((E34*(x(D))^2+E34*x(D)*x(E)+-2*E34*(x(E))^2+2*(x(D))^2*E35-x(D)*E35*x(E)+-3*x(D)*y(D)+3*x(D)*y(E)-E35*(x(E))^2+-3*y(D)*x(E)+3*x(E)*y(E)))/E5" à -7.13742, 2.45243
+Expression "((-1)*(E35*(x(D))^3+E35*(x(D))^2*x(E)+-2*E35*x(D)*(x(E))^2+2*(x(D))^2*x(E)*E34-x(D)*(x(E))^2*E34+-6*x(D)*x(E)*y(D)+6*x(D)*x(E)*y(E)-(x(E))^3*E34))/E5" à -7.13742, 1.96195
+Expression "((-E35*(x(E))^2*(x(D))^2+E35*x(E)*(x(D))^3-(x(E))^3*x(D)*E34+(x(E))^3*y(D)+(x(E))^2*(x(D))^2*E34-3*(x(E))^2*x(D)*y(D)--3*x(E)*(x(D))^2*y(E)-(x(D))^3*y(E)))/E5" à -7.13742, 1.43763
+Function ( x , E6*x^3+E7*x^2+E8*x+E9 )
+Expression "-(x(E)-x(F))^3" à -7.13742, 3.39958
+Expression "((2*y(E)-x(E)*E35-x(E)*E36+x(F)*E35+x(F)*E36+-2*y(F)))/E10" à -7.13742, 2.95983
+Expression "((E35*(x(E))^2+E35*x(E)*x(F)+-2*E35*(x(F))^2+2*(x(E))^2*E36-x(E)*E36*x(F)+-3*x(E)*y(E)+3*x(E)*y(F)-E36*(x(F))^2+-3*y(E)*x(F)+3*x(F)*y(F)))/E10" à -7.13742, 2.45243
+Expression "((-1)*(E36*(x(E))^3+E36*(x(E))^2*x(F)+-2*E36*x(E)*(x(F))^2+2*(x(E))^2*x(F)*E35-x(E)*(x(F))^2*E35+-6*x(E)*x(F)*y(E)+6*x(E)*x(F)*y(F)-(x(F))^3*E35))/E10" à -7.13742, 1.96195
+Expression "((-E36*(x(F))^2*(x(E))^2+E36*x(F)*(x(E))^3-(x(F))^3*x(E)*E35+(x(F))^3*y(E)+(x(F))^2*(x(E))^2*E35-3*(x(F))^2*x(E)*y(E)--3*x(F)*(x(E))^2*y(F)-(x(E))^3*y(F)))/E10" à -7.13742, 1.43763
+Function ( x , E11*x^3+E12*x^2+E13*x+E14 )
+Expression "-(x(F)-x(G))^3" à -7.13742, 3.39958
+Expression "((2*y(F)-x(F)*E36-x(F)*E37+x(G)*E36+x(G)*E37+-2*y(G)))/E15" à -7.13742, 2.95983
+Expression "((E36*(x(F))^2+E36*x(F)*x(G)+-2*E36*(x(G))^2+2*(x(F))^2*E37-x(F)*E37*x(G)+-3*x(F)*y(F)+3*x(F)*y(G)-E37*(x(G))^2+-3*y(F)*x(G)+3*x(G)*y(G)))/E15" à -7.13742, 2.45243
+Expression "((-1)*(E37*(x(F))^3+E37*(x(F))^2*x(G)+-2*E37*x(F)*(x(G))^2+2*(x(F))^2*x(G)*E36-x(F)*(x(G))^2*E36+-6*x(F)*x(G)*y(F)+6*x(F)*x(G)*y(G)-(x(G))^3*E36))/E15" à -7.13742, 1.96195
+Expression "((-E37*(x(G))^2*(x(F))^2+E37*x(G)*(x(F))^3-(x(G))^3*x(F)*E36+(x(G))^3*y(F)+(x(G))^2*(x(F))^2*E36-3*(x(G))^2*x(F)*y(F)--3*x(G)*(x(F))^2*y(G)-(x(F))^3*y(G)))/E15" à -7.13742, 1.43763
+Function ( x , E16*x^3+E17*x^2+E18*x+E19 )
+Function ( x , if(x<x(E),f1(x),if(x<x(F),f2(x),f3(x))) )
+
+
+
+D
+E
+F
+G
+H
+E34
+E35
+E36
+E37
+E33
+
+
Se reporter à l'article de CaRzine "Interpolation
+polynomiale de degré 3".
+
+
+Point à -5.75637, -3.72351
+Point à -4.73654, -3.65552
+Point à -3.64873, -3.70085
+Point à -2.6289, -3.70085
+Expression "-(x(D)-x(E))^3" à -7.13742, 3.39958
+Expression "-(x(E)-x(F))^3" à -7.13742, 3.39958
+Expression "-(x(F)-x(G))^3" à -7.13742, 3.39958
+Expression "0" à 0.0, 0.0
+Expression "0" à 0.0, 0.0
+Expression "0" à 0.0, 0.0
+Expression "0" à 0.0, 0.0
+Expression "((2*y(D)-x(D)*E34-x(D)*E35+x(E)*E34+x(E)*E35+-2*y(E)))/E1" à -7.13742, 2.95983
+Expression "((E34*(x(D))^2+E34*x(D)*x(E)+-2*E34*(x(E))^2+2*(x(D))^2*E35-x(D)*E35*x(E)+-3*x(D)*y(D)+3*x(D)*y(E)-E35*(x(E))^2+-3*y(D)*x(E)+3*x(E)*y(E)))/E1" à -7.13742, 2.45243
+Expression "((-1)*(E35*(x(D))^3+E35*(x(D))^2*x(E)+-2*E35*x(D)*(x(E))^2+2*(x(D))^2*x(E)*E34-x(D)*(x(E))^2*E34+-6*x(D)*x(E)*y(D)+6*x(D)*x(E)*y(E)-(x(E))^3*E34))/E1" à -7.13742, 1.96195
+Expression "((-E35*(x(E))^2*(x(D))^2+E35*x(E)*(x(D))^3-(x(E))^3*x(D)*E34+(x(E))^3*y(D)+(x(E))^2*(x(D))^2*E34-3*(x(E))^2*x(D)*y(D)--3*x(E)*(x(D))^2*y(E)-(x(D))^3*y(E)))/E1" à -7.13742, 1.43763
+Expression "((2*y(E)-x(E)*E35-x(E)*E36+x(F)*E35+x(F)*E36+-2*y(F)))/E2" à -7.13742, 2.95983
+Expression "((E35*(x(E))^2+E35*x(E)*x(F)+-2*E35*(x(F))^2+2*(x(E))^2*E36-x(E)*E36*x(F)+-3*x(E)*y(E)+3*x(E)*y(F)-E36*(x(F))^2+-3*y(E)*x(F)+3*x(F)*y(F)))/E2" à -7.13742, 2.45243
+Expression "((-1)*(E36*(x(E))^3+E36*(x(E))^2*x(F)+-2*E36*x(E)*(x(F))^2+2*(x(E))^2*x(F)*E35-x(E)*(x(F))^2*E35+-6*x(E)*x(F)*y(E)+6*x(E)*x(F)*y(F)-(x(F))^3*E35))/E2" à -7.13742, 1.96195
+Expression "((-E36*(x(F))^2*(x(E))^2+E36*x(F)*(x(E))^3-(x(F))^3*x(E)*E35+(x(F))^3*y(E)+(x(F))^2*(x(E))^2*E35-3*(x(F))^2*x(E)*y(E)--3*x(F)*(x(E))^2*y(F)-(x(E))^3*y(F)))/E2" à -7.13742, 1.43763
+Expression "((2*y(F)-x(F)*E36-x(F)*E37+x(G)*E36+x(G)*E37+-2*y(G)))/E3" à -7.13742, 2.95983
+Expression "((E36*(x(F))^2+E36*x(F)*x(G)+-2*E36*(x(G))^2+2*(x(F))^2*E37-x(F)*E37*x(G)+-3*x(F)*y(F)+3*x(F)*y(G)-E37*(x(G))^2+-3*y(F)*x(G)+3*x(G)*y(G)))/E3" à -7.13742, 2.45243
+Expression "((-1)*(E37*(x(F))^3+E37*(x(F))^2*x(G)+-2*E37*x(F)*(x(G))^2+2*(x(F))^2*x(G)*E36-x(F)*(x(G))^2*E36+-6*x(F)*x(G)*y(F)+6*x(F)*x(G)*y(G)-(x(G))^3*E36))/E3" à -7.13742, 1.96195
+Expression "((-E37*(x(G))^2*(x(F))^2+E37*x(G)*(x(F))^3-(x(G))^3*x(F)*E36+(x(G))^3*y(F)+(x(G))^2*(x(F))^2*E36-3*(x(G))^2*x(F)*y(F)--3*x(G)*(x(F))^2*y(G)-(x(F))^3*y(G)))/E3" à -7.13742, 1.43763
+Function ( x , E8*x^3+E9*x^2+E10*x+E11 )
+Function ( x , E12*x^3+E13*x^2+E14*x+E15 )
+Function ( x , E16*x^3+E17*x^2+E18*x+E19 )
+Point à -1.85836, -3.63286
+Expression "0" à 0.0, 0.0
+Expression "-(x(G)-x(H))^3" à -7.13742, 3.39958
+Expression "((2*y(G)-x(G)*E37-x(G)*E33+x(H)*E37+x(H)*E33+-2*y(H)))/E21" à -7.13742, 2.95983
+Expression "((E37*(x(G))^2+E37*x(G)*x(H)+-2*E37*(x(H))^2+2*(x(G))^2*E33-x(G)*E33*x(H)+-3*x(G)*y(G)+3*x(G)*y(H)-E33*(x(H))^2+-3*y(G)*x(H)+3*x(H)*y(H)))/E21" à -7.13742, 2.45243
+Expression "((-1)*(E33*(x(G))^3+E33*(x(G))^2*x(H)+-2*E33*x(G)*(x(H))^2+2*(x(G))^2*x(H)*E37-x(G)*(x(H))^2*E37+-6*x(G)*x(H)*y(G)+6*x(G)*x(H)*y(H)-(x(H))^3*E37))/E21" à -7.13742, 1.96195
+Expression "((-E33*(x(H))^2*(x(G))^2+E33*x(H)*(x(G))^3-(x(H))^3*x(G)*E37+(x(H))^3*y(G)+(x(H))^2*(x(G))^2*E37-3*(x(H))^2*x(G)*y(G)--3*x(H)*(x(G))^2*y(H)-(x(G))^3*y(H)))/E21" à -7.13742, 1.43763
+Function ( x , E22*x^3+E23*x^2+E24*x+E25 )
+Function ( x , if(x<x(E),f1(x),if(x<x(F),f2(x),if(x<x(G),f3(x),f4(x)))) )
+
+
+
+D
+E
+F
+G
+H
+I
+E34
+E35
+E36
+E37
+E33
+E58
+
+
Se reporter à l'article de CaRzine "Interpolation
+polynomiale de degré 3".
+
+
+Point à -5.75637, -3.72351
+Point à -4.73654, -3.65552
+Point à -3.64873, -3.70085
+Point à -2.6289, -3.70085
+Expression "-(x(D)-x(E))^3" à -7.13742, 3.39958
+Expression "-(x(E)-x(F))^3" à -7.13742, 3.39958
+Expression "-(x(F)-x(G))^3" à -7.13742, 3.39958
+Expression "0" à 0.0, 0.0
+Expression "0" à 0.0, 0.0
+Expression "0" à 0.0, 0.0
+Expression "0" à 0.0, 0.0
+Expression "((2*y(D)-x(D)*E34-x(D)*E35+x(E)*E34+x(E)*E35+-2*y(E)))/E1" à -7.13742, 2.95983
+Expression "((E34*(x(D))^2+E34*x(D)*x(E)+-2*E34*(x(E))^2+2*(x(D))^2*E35-x(D)*E35*x(E)+-3*x(D)*y(D)+3*x(D)*y(E)-E35*(x(E))^2+-3*y(D)*x(E)+3*x(E)*y(E)))/E1" à -7.13742, 2.45243
+Expression "((-1)*(E35*(x(D))^3+E35*(x(D))^2*x(E)+-2*E35*x(D)*(x(E))^2+2*(x(D))^2*x(E)*E34-x(D)*(x(E))^2*E34+-6*x(D)*x(E)*y(D)+6*x(D)*x(E)*y(E)-(x(E))^3*E34))/E1" à -7.13742, 1.96195
+Expression "((-E35*(x(E))^2*(x(D))^2+E35*x(E)*(x(D))^3-(x(E))^3*x(D)*E34+(x(E))^3*y(D)+(x(E))^2*(x(D))^2*E34-3*(x(E))^2*x(D)*y(D)--3*x(E)*(x(D))^2*y(E)-(x(D))^3*y(E)))/E1" à -7.13742, 1.43763
+Expression "((2*y(E)-x(E)*E35-x(E)*E36+x(F)*E35+x(F)*E36+-2*y(F)))/E2" à -7.13742, 2.95983
+Expression "((E35*(x(E))^2+E35*x(E)*x(F)+-2*E35*(x(F))^2+2*(x(E))^2*E36-x(E)*E36*x(F)+-3*x(E)*y(E)+3*x(E)*y(F)-E36*(x(F))^2+-3*y(E)*x(F)+3*x(F)*y(F)))/E2" à -7.13742, 2.45243
+Expression "((-1)*(E36*(x(E))^3+E36*(x(E))^2*x(F)+-2*E36*x(E)*(x(F))^2+2*(x(E))^2*x(F)*E35-x(E)*(x(F))^2*E35+-6*x(E)*x(F)*y(E)+6*x(E)*x(F)*y(F)-(x(F))^3*E35))/E2" à -7.13742, 1.96195
+Expression "((-E36*(x(F))^2*(x(E))^2+E36*x(F)*(x(E))^3-(x(F))^3*x(E)*E35+(x(F))^3*y(E)+(x(F))^2*(x(E))^2*E35-3*(x(F))^2*x(E)*y(E)--3*x(F)*(x(E))^2*y(F)-(x(E))^3*y(F)))/E2" à -7.13742, 1.43763
+Expression "((2*y(F)-x(F)*E36-x(F)*E37+x(G)*E36+x(G)*E37+-2*y(G)))/E3" à -7.13742, 2.95983
+Expression "((E36*(x(F))^2+E36*x(F)*x(G)+-2*E36*(x(G))^2+2*(x(F))^2*E37-x(F)*E37*x(G)+-3*x(F)*y(F)+3*x(F)*y(G)-E37*(x(G))^2+-3*y(F)*x(G)+3*x(G)*y(G)))/E3" à -7.13742, 2.45243
+Expression "((-1)*(E37*(x(F))^3+E37*(x(F))^2*x(G)+-2*E37*x(F)*(x(G))^2+2*(x(F))^2*x(G)*E36-x(F)*(x(G))^2*E36+-6*x(F)*x(G)*y(F)+6*x(F)*x(G)*y(G)-(x(G))^3*E36))/E3" à -7.13742, 1.96195
+Expression "((-E37*(x(G))^2*(x(F))^2+E37*x(G)*(x(F))^3-(x(G))^3*x(F)*E36+(x(G))^3*y(F)+(x(G))^2*(x(F))^2*E36-3*(x(G))^2*x(F)*y(F)--3*x(G)*(x(F))^2*y(G)-(x(F))^3*y(G)))/E3" à -7.13742, 1.43763
+Function ( x , E8*x^3+E9*x^2+E10*x+E11 )
+Function ( x , E12*x^3+E13*x^2+E14*x+E15 )
+Function ( x , E16*x^3+E17*x^2+E18*x+E19 )
+Point à -1.85836, -3.63286
+Expression "0" à 0.0, 0.0
+Expression "-(x(G)-x(H))^3" à -7.13742, 3.39958
+Intersection entre l152 et c588Expression "((2*y(G)-x(G)*E37-x(G)*E33+x(H)*E37+x(H)*E33+-2*y(H)))/E21" à -7.13742, 2.95983
+Expression "((E37*(x(G))^2+E37*x(G)*x(H)+-2*E37*(x(H))^2+2*(x(G))^2*E33-x(G)*E33*x(H)+-3*x(G)*y(G)+3*x(G)*y(H)-E33*(x(H))^2+-3*y(G)*x(H)+3*x(H)*y(H)))/E21" à -7.13742, 2.45243
+Expression "((-1)*(E33*(x(G))^3+E33*(x(G))^2*x(H)+-2*E33*x(G)*(x(H))^2+2*(x(G))^2*x(H)*E37-x(G)*(x(H))^2*E37+-6*x(G)*x(H)*y(G)+6*x(G)*x(H)*y(H)-(x(H))^3*E37))/E21" à -7.13742, 1.96195
+Expression "((-E33*(x(H))^2*(x(G))^2+E33*x(H)*(x(G))^3-(x(H))^3*x(G)*E37+(x(H))^3*y(G)+(x(H))^2*(x(G))^2*E37-3*(x(H))^2*x(G)*y(G)--3*x(H)*(x(G))^2*y(H)-(x(G))^3*y(H)))/E21" à -7.13742, 1.43763
+Function ( x , E22*x^3+E23*x^2+E24*x+E25 )
+Point à -0.7932, -3.6102
+Expression "0" à 0.0, 0.0
+Expression "-(x(H)-x(I))^3" à -7.13742, 3.39958
+Expression "((2*y(H)-x(H)*E33-x(H)*E58+x(I)*E33+x(I)*E58+-2*y(I)))/E27" à -7.13742, 2.95983
+Expression "((E33*(x(H))^2+E33*x(H)*x(I)+-2*E33*(x(I))^2+2*(x(H))^2*E58-x(H)*E58*x(I)+-3*x(H)*y(H)+3*x(H)*y(I)-E58*(x(I))^2+-3*y(H)*x(I)+3*x(I)*y(I)))/E27" à -7.13742, 2.45243
+Expression "((-1)*(E58*(x(H))^3+E58*(x(H))^2*x(I)+-2*E58*x(H)*(x(I))^2+2*(x(H))^2*x(I)*E33-x(H)*(x(I))^2*E33+-6*x(H)*x(I)*y(H)+6*x(H)*x(I)*y(I)-(x(I))^3*E33))/E27" à -7.13742, 1.96195
+Expression "((-E58*(x(I))^2*(x(H))^2+E58*x(I)*(x(H))^3-(x(I))^3*x(H)*E33+(x(I))^3*y(H)+(x(I))^2*(x(H))^2*E33-3*(x(I))^2*x(H)*y(H)--3*x(I)*(x(H))^2*y(I)-(x(H))^3*y(I)))/E27" à -7.13742, 1.43763
+Function ( x , E28*x^3+E29*x^2+E30*x+E31 )
+Function ( x , if(x<x(E),f1(x),if(x<x(F),f2(x),if(x<x(G),f3(x),if(x<x(H),f4(x),f5(x))))) )
+
+
+
debian/patches/series 0000644 0000000 0000000 00000000071 11535252445 012036 0 ustar disableJavadoc.diff
externalRhino.diff
updateMacros.diff
debian/patches/disableJavadoc.diff 0000644 0000000 0000000 00000000266 11535170005 014343 0 ustar --- a/build.xml
+++ b/build.xml
@@ -68,4 +68,6 @@
nbproject/build-impl.xml file.
-->
+
+
debian/compat 0000644 0000000 0000000 00000000002 11534705032 010364 0 ustar 7
debian/carmetal.links 0000644 0000000 0000000 00000000176 11535142614 012026 0 ustar usr/share/carmetal/CaRMetal.jar usr/bin/carmetal
usr/share/carmetal/fileicon.png usr/share/pixmaps/application-x-carmetal.png
debian/carmetal.manifest 0000644 0000000 0000000 00000000204 11535152563 012510 0 ustar usr/share/carmetal/CaRMetal.jar:
Main-Class: Main
# Debian-Java-Home: /usr/lib/jvm/default-java
Class-Path: /usr/share/java/js.jar debian/carmetal.menu 0000644 0000000 0000000 00000000274 11535142725 011654 0 ustar ?package(carmetal):\
needs="X11"\
section="Applications/Science/Mathematics"\
title="CaRMetal"\
longtitle="Interactive Geometry"\
command="/usr/bin/carmetal"
debian/carmetal.mime 0000644 0000000 0000000 00000000206 11535142702 011625 0 ustar application/x-carmetal; carmetal '%s' ; edit=carmetal '%s' ; test=test "$DISPLAY" != "" ; description="CaRMetal figure" ; priority=2
debian/rules 0000755 0000000 0000000 00000000671 11536155375 010265 0 ustar #!/usr/bin/make -f
export JAVA_HOME=/usr/lib/jvm/default-java
# Put depended upon jars in here
export CLASSPATH=js.jar
%:
dh --with javahelper,quilt $@
override_dh_auto_build:
dh_auto_build --with javahelper,quilt
docbook-to-man debian/carmetal.sgml > debian/carmetal.1
override_dh_auto_clean:
dh_auto_clean --with javahelper,quilt
rm -f debian/carmetal.1
override_jh_manifest:
override_jh_depends:
jh_depends --jvm="open sun6"
debian/changelog 0000644 0000000 0000000 00000004005 11536155626 011051 0 ustar carmetal (3.5.2+dfsg-1) unstable; urgency=low
* New upstream release
* Depends on rhino (fix source to use debian-packaged one)
* Switch to dpkg-source 3.0 (quilt) format
-- Yves Combe Mon, 07 Mar 2011 12:33:27 +0100
carmetal (2.9.8.2-1) unstable; urgency=low
* New upstream release
* Closes: #523148
-- Yves Combe Fri, 17 Apr 2009 22:14:51 +0200
carmetal (2.8.9.dakbug-1) unstable; urgency=medium
* Not really new upstream release
* Closes: #499240
-- Yves Combe Sun, 21 Sep 2008 09:03:57 +0200
carmetal (2.8.9-4) unstable; urgency=low
* fix stupid bug in launcher (test jdk (javac) instead of jre (java)).
* fix bashism in launcher script.
-- Yves Combe Mon, 01 Sep 2008 17:22:17 +0200
carmetal (2.8.9-3) unstable; urgency=low
* depends on java6-runtime (main section)
* script launcher uses default java if it's in openjdk-6 cacao-oj6
* script launcher uses CARMETAL_JAVA as java if it's set.
-- Yves Combe Wed, 20 Aug 2008 08:46:10 +0200
carmetal (2.8.9-2) unstable; urgency=low
* depends on java5 (Closes: #485937).
-- Yves Combe Sat, 14 Jun 2008 12:10:07 +0200
carmetal (2.8.9-1) unstable; urgency=low
* New upstream release
-- Yves Combe Thu, 05 Jun 2008 22:49:40 +0200
carmetal (2.8.8-1) unstable; urgency=low
* New upstream release
-- Yves Combe Wed, 07 May 2008 18:44:09 +0200
carmetal (2.8.7-1) unstable; urgency=low
* New upstream release
-- Yves Combe Sun, 06 Apr 2008 21:23:42 +0200
carmetal (2.8.2-1) unstable; urgency=low
* New upstream release
-- Yves Combe Sun, 24 Feb 2008 14:59:56 +0100
carmetal (2.8-1) unstable; urgency=low
* New upstream release
-- Yves Combe Wed, 20 Feb 2008 15:34:02 +0100
carmetal (2.7.1-1) unstable; urgency=low
* Initial release (Closes: #461115)
-- Yves Combe Wed, 16 Jan 2008 20:15:58 +0100
debian/x-carmetal.desktop 0000644 0000000 0000000 00000000303 11535142665 012622 0 ustar [Desktop Entry]
Encoding=UTF-8
Comment=CaRMetal figure
DefaultApp=carmetal
Icon=application-x-carmetal
MimeType=application/x-carmetal
Patterns=*.zirz;*.zir;
Type=MimeType;
X-KDE-AutoEmbed=false
debian/carmetal.manpages 0000644 0000000 0000000 00000000022 11535245752 012476 0 ustar debian/carmetal.1
debian/carmetal.desktop 0000644 0000000 0000000 00000000354 11535142660 012356 0 ustar [Desktop Entry]
Encoding=UTF-8
Name=CaRMetal
Comment=CaRMetal interactive geometry
Exec=carmetal
Icon=CaRMetal.png
Terminal=false
StartupNotify=true
Type=Application
Categories=Application;Education;Math;
MimeType=application/x-carmetal