Skip to main content

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 : Affichage 3D basique


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


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

py3d-lib-1.0.1.tar.gz (13.5 kB view details)

Uploaded Source

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

Hashes for py3d-lib-1.0.1.tar.gz
Algorithm Hash digest
SHA256 cde46c47c3df5ca080c1f1976672a2e8e52fbf3068d74a9780a5657f041909d2
MD5 906c317add4dd248c4d996824c3d6ad5
BLAKE2b-256 b8931923a8dc6c79266643aa7ecd78b202cc3198c98f9dfe8a3b82a68cd62b96

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page