1/45
Vocabulary flashcards covering NumPy basics, 3D graphics math, and course logistics mentioned in the lecture notes.
Name | Mastery | Learn | Test | Matching | Spaced | Call with Kai | Chat |
|---|
No analytics yet
Send a link to your students to track their progress
NumPy
Open-source Python library for numerical computing; provides the ndarray object and vectorized operations for array-based math.
ndarray
NumPy’s core multi-dimensional array data structure used for numerical computations.
Array vs List
List is a Python built-in dynamic container (can hold mixed types); ndarray is homogeneous, fixed-size, and optimized for numeric computation.
shape
The dimensions of an array, given as a tuple (e.g., (3, 4) for 3 rows by 4 columns).
size
Total number of elements in an array (the product of its shape dimensions).
ndim
The number of axes (dimensions) of an array.
dtype
Data type of the elements in an array (e.g., int64, float64, str).
np.zeros
Creates an array filled with zeros with a specified shape.
np.ones
Creates an array filled with ones with a specified shape.
np.empty
Creates an uninitialized array; contents are whatever memory previously held.
reshape
Change the shape of an array without changing its data.
flatten
Return a copy of the array collapsed into one dimension.
linspace
Generate a specified number of evenly spaced values between start and stop (inclusive).
arange
Create values in a range with a fixed step; similar to Python range but returns an array.
Broadcasting
NumPy rule that automatically expands arrays to compatible shapes for elementwise operations.
dot product
Matrix product of two arrays; use A.dot(B) or A @ B to perform it.
element-wise multiplication
Multiplying corresponding elements of two arrays (A * B) rather than matrix multiplication.
Broadcasting example
A scenario where shapes like (2,4) and (2,1) broadcast to a common shape before the operation.
np.dot
NumPy function that performs the dot product (matrix multiplication) for arrays.
MOSS
Plagiarism-detection tool that compares code submissions for similarity.
GeoGebra
Online visualization tool for geometry, algebra, and calculus used to visualize planes, lines, and intersections.
Parametric equation
Describes lines or curves using a parameter t: x = x0 + a t, y = y0 + b t, z = z0 + c t in 3D.
Plane equation
Ax + By + Cz + D = 0; a plane in 3D with normal vector (A, B, C).
Normal vector
A vector perpendicular to a plane; coefficients (A, B, C) in the plane equation.
Distance from origin to plane
For Ax + By + Cz + D = 0, distance from origin is |D| / sqrt(A^2 + B^2 + C^2).
Right-handed coordinate system
3D orientation where X × Y points to +Z; common convention in graphics.
Parametric line in 3D
A line described by x = x0 + a t, y = y0 + b t, z = z0 + c t using a parameter t.
Rotation matrix
A 3×3 matrix that rotates a vector around a principal axis by angle θ.
RotX matrix
Rotation about the X-axis: [[1,0,0],[0,cosθ,-sinθ],[0,sinθ,cosθ]].
RotY matrix
Rotation about the Y-axis: [[cosθ,0,sinθ],[0,1,0],[-sinθ,0,cosθ]].
RotZ matrix
Rotation about the Z-axis: [[cosθ,-sinθ,0],[sinθ,cosθ,0],[0,0,1]].
Translation
Moving points by adding a translation vector (dx, dy, dz) to coordinates.
Scaling
Resizing by multiplying coordinates with scale factors (sx, sy, sz); can be uniform or nonuniform.
Mirroring
Reflection achieved by negative scaling along an axis (e.g., scale by -1 on an axis).
3D graphics pipeline
Sequence of operations to render 3D scenes: modeling (translate/rotate/scale), projection to 2D, and display.
Coordinate handedness
Right-handed vs left-handed systems; orientation affects rotation signs and axis directions.
Projection to 2D
Mapping 3D points to 2D screen coordinates (perspective or orthographic projection).
Geogebra visualization
Online tool to visualize planes, lines, and intersections in 2D/3D.
Plane normal vector vs plane constants
Normal vector (A,B,C) and distance term D define plane orientation and position.
3D vs 2D vectors
Vectors describe direction and magnitude in space; translation affects points, not the vector itself.
Linear space vs dimension
Linear space refers to evenly spaced samples (linspace); dimension is the number of axes in an array.
Python in graphics class
Used for programming assignments; not a math course but a tool for graphics work.
GDB/VS Code/PyCharm
Development environments favored for writing and debugging Python code.
Geometric transformation
Any operation that changes position, orientation, or size: translation, rotation, scaling, projection.
3D to 2D display
Objects exist in 3D; to display they are transformed (rotated/translated/scaled) and projected to 2D.
Broadcasting pitfalls
Relying on broadcasting when a strict matrix operation is intended can hide bugs and produce unintended results.