Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Apprendre Mise à l'échelle des formes | Transformations Géométriques
Modélisation Géométrique avec Python

Mise à l'échelle des formes

Glissez pour afficher le menu

La mise à l'échelle est une transformation géométrique fondamentale qui modifie la taille d'une forme tout en préservant sa structure globale. Lorsque l'on applique une mise à l'échelle à une figure géométrique, chaque point de la forme se rapproche ou s'éloigne d'un point fixe, généralement l'origine, selon un facteur spécifique. Ce processus peut être uniforme, où toutes les dimensions sont multipliées par le même facteur, ou non uniforme, où différentes dimensions sont multipliées par des facteurs différents.

Dans la mise à l'échelle uniforme, chaque coordonnée de chaque point est multipliée par la même valeur. Cela conserve les proportions de la forme, ainsi un carré reste un carré et un cercle reste un cercle—simplement plus grand ou plus petit. Dans la mise à l'échelle non uniforme, chaque axe de coordonnées peut avoir un facteur d'échelle différent. Par exemple, on peut étirer un rectangle horizontalement tout en gardant sa hauteur inchangée, ce qui le transforme en un rectangle plus large.

Les transformations d'échelle sont couramment utilisées en infographie, modélisation et conception pour redimensionner des objets ou ajuster leurs proportions. Lorsque l'on met une forme à l'échelle, son aire et son périmètre changent de manière prévisible : pour une mise à l'échelle uniforme par un facteur k, le périmètre est multiplié par k et l'aire par k^2. Cependant, la mise à l'échelle non uniforme peut déformer la forme, modifiant les angles et les longueurs relatives des côtés.

12345678910111213141516171819202122232425262728
import numpy as np import matplotlib.pyplot as plt def scale_polygon(vertices, scale_x, scale_y): scale_matrix = np.array([[scale_x, 0], [0, scale_y]]) return vertices @ scale_matrix.T # Define a triangle triangle = np.array([[1, 1], [3, 1], [2, 3], [1, 1]]) # Uniform scaling by factor 2 scaled_uniform = scale_polygon(triangle, 2, 2) # Non-uniform scaling: x by 2, y by 0.5 scaled_nonuniform = scale_polygon(triangle, 2, 0.5) # Plot original and scaled triangles plt.figure(figsize=(6, 6)) plt.plot(triangle[:,0], triangle[:,1], 'o-', label='Original') plt.plot(scaled_uniform[:,0], scaled_uniform[:,1], 'o-', label='Uniform scale (2x)') plt.plot(scaled_nonuniform[:,0], scaled_nonuniform[:,1], 'o-', label='Non-uniform scale (2x, 0.5y)') plt.legend() plt.axis('equal') plt.title('Scaling Transformations of a Triangle') plt.xlabel('X') plt.ylabel('Y') plt.show()
question mark

Laquelle des affirmations suivantes concernant les transformations d'échelle est correcte ?

Sélectionnez la réponse correcte

Tout était clair ?

Comment pouvons-nous l'améliorer ?

Merci pour vos commentaires !

Section 2. Chapitre 5

Demandez à l'IA

expand

Demandez à l'IA

ChatGPT

Posez n'importe quelle question ou essayez l'une des questions suggérées pour commencer notre discussion

Section 2. Chapitre 5
some-alt