Un module python en français, qui vise à simplifier les programmes utilisants de la géométrie 2D ou 3D
Project description
Py3D
Un module python en français, qui vise à simplifier les programmes utilisants de la géométrie 2D ou 3D.
Il vise à être utilisé par les collégiens, lycéens et étudiants afin de faciliter leurs projets ou leurs démonstration incluant de la géométrie 2D / 3D
Une documentation complète est disponible à cette adresse :
https://asionville.github.io/py3d/
Installation
Le projet être disponible sur Pypi sous le nom de "py3d-lib" Pour l'installer, entrez dans un terminal en administrateur / sudo :
pip install py3d-lib
Pour ouvrir le terminal en administrateur :
Windows :
Touche windows
Taper C M D
Clic droit -> Exécuter en tant qu'administrateur
Mac/Linux :
Ouvrir un terminal
Taper
sudo pip install py3d-lib
Sinon, le projet est disponible en version zippé dans Les versions officielles
Importation
Nous recommandons de ne pas importer les fonctions de cette manière:
from py3d import *
Mais plutôt de cette manière :
import py3d
Cela évitera les possibles erreurs en utilisants d'autres modules (si vous n'en utilisez pas, alors c'est bon)
Points
Suite à cela, vous pourrez créer un point de coordonnées (0, 1, 2) de cette manière :
p = py3d.Point(0, 1, 2)
A noter : si vous ne mentionnez pas une coordonnée, elle sera considérée comme nulle Il existe également le point d'origine (0, 0, 0) qui est accessible via :
o = py3d.origine
Vecteurs
Un vecteur peut se créer comme ceci, avec deux points :
u = py3d.Vecteur(o, p)
Il est possible de "créer" les points directement dans le vecteur :
v = py3d.Vecteur(py3d.point(-2, 3, 7), py3d.origine)
Vous pouvez également créer un vecteur à partir de ses coordonnées :
w = py3d.Vecteur(-1, 2, 1)
Les vecteurs unitaires et le vecteur nul sont disponible directement :
v_nul = py3d.vecteur_nul
Droites
Une droite peut se définir par deux points :
d1 = py3d.Droite(o, p)
Encore une fois, il est possible de créer les points en même temps (voir exemple avec les vecteurs)
Une droite peut aussi se définir par un point puis son vecteur directeur :
d2 = py3d.droite(py3d.origine, v)
*Les droites représentant les droite sont disponibles comme ceci :
d3 = py3d.axe_x
Plans
Pour ce qui est des plans, il existe plusieurs manières très différentes :
Tout d'abord, avec un point puis le vecteur normal au plan :
p1 = py3d.Plan(o, w)
Ou alors, par deux droites sécantes :
p2 = py3d.Plan(d1, d2)
Mais aussi par un point et deux vecteurs non colinéaires :
p3 = py3d.Plan(u, v)
Ou enfin par trois points qui font partie de ce plan :
p4 = py3d.Plan(o, p, py3d.Point(-4, 7, -3.5))
*Les plans XY, XZ et YZ sont disponibles directement:
`p5 = py3d.plan_xy
Exemple basique d'utilisation :
import py3d
#Création de deux vecteurs u et v
u = py3d.Vecteur(0, 0, 1)
v = py3d.Vecteur(0, 0, 10)
#Est ce que les vecteurs sont colinéaires ? -> True
print(py3d.colineaires(u, v))
Exemple utilisant un graphique 3D :
import py3d
#Création d'un point A de coordonnées (1, 1, 1)
pointA = py3d.Point(1, 1, 1)
#Création d'une droite passant par A et l'origine
d = py3d.Droite(py3d.origine, pointA)
#Création du plan z=0 (plan xy)
plan = py3d.plan_xy
#Création du repère 3D
repere = py3d.Repere3D()
#Ajout du plan divisé en une grille de 20x20
repere.ajouter(plan, grille=20)
#Ajout de la droite violette avec une étiquette
repere.ajouter(d,longueur=1, couleur="purple", label="Droite d x = y = z")
#Ajout du point A
repere.ajouter(pointA, label="Point A")
#Affichage du repère
repere.afficher()
Résultat :
D'autres exemples seront bientôt disponibles dans le dossier exemples
Gestion des bugs
Github possède un système de tickets (issues) sur lesquels nous pouvons discuter / s'entraîder disponibles ici : Tickets
ou sinon, en haut de page
Merci à tous ceux que relèveront des bugs et qui m'en feront part, ils seront corrigés dès que possible
Contact
Vous pouvez me contacter à cette adresse : aubin.sionville@stfrancoislaroche.fr
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file py3d-lib-1.0.1.tar.gz
.
File metadata
- Download URL: py3d-lib-1.0.1.tar.gz
- Upload date:
- Size: 13.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.1 importlib_metadata/3.10.0 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.7.9
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | cde46c47c3df5ca080c1f1976672a2e8e52fbf3068d74a9780a5657f041909d2 |
|
MD5 | 906c317add4dd248c4d996824c3d6ad5 |
|
BLAKE2b-256 | b8931923a8dc6c79266643aa7ecd78b202cc3198c98f9dfe8a3b82a68cd62b96 |