Geomatic Examples

Explore interactive demonstrations of geometric concepts using the Geomatic system.

  • Getting started

    Get familiar with how to use Geomatic, what its key features are, and how to navigate the interface. It also includes simple examples of how to create and manipulate geometric objects.

  • Broadcasting in geometry

    Learn how NumPy-style broadcasting applies to geometric drawing. Pair arrays of different shapes to generate grids of circles, or same-shape arrays for element-wise figures like a fan of rotating squares.

  • About reactivity

    Explore Geomatic's reactivity: derive variables from a single parameter, animate the whole structure by animating that one value, and understand which operations - copy, translate, rotate - produce static snapshots that break the reactive chain.

  • Cardioid

    Visualize a cardioid (heart-shaped curve) as a family of circles. Demonstrates broadcasting to create points on a circle and draw circles to form the cardioid envelope.

  • Using optimization to setup a problem quickly

    Imagine drawing a square and a point to represent this problem correctly: given a square with a point at distances 1, 2, and 3 from three vertices, find the angle at that point using optimization instead of manual calculation. How can one do that without tedious calculation upfront?

  • Plotting Functions and Tangents

    Learn how to plot the function y = x · sin(x) and draw tangent lines at any point. Calculate derivatives manually to find the slope and visualize how the tangent changes as you move along the curve.

  • Vector Field I: Gradient of a Scalar Function

    Visualize the gradient vector field of the scalar function P(x,y) = ax² - y². Reactively change the parameter 'a' to see how the vector field transforms in real-time.

  • Vector Field II: Directly Defined Vectors

    Create a vector field by directly defining vectors at each point. Explore a rotational field with normalized components and see how parameter 'a' affects the field's shape.

  • Peaucellier-Lipkin Linkage

    The first planar linkage to produce exact straight line motion from rotary motion. Watch how a rotating hand is translated into linear motion through circle intersections and reflection.

  • Finding Square Root with Gradient Descent

    Learn how to find square roots using gradient descent optimization. Start with a random guess and converge towards the correct value by iteratively calculating loss, backpropagating, and taking gradient descent steps.

  • Gradient of an Angle

    Connect geometry and calculus by demonstrating that the gradient of an angle of a triangle always points towards its circumcenter. Uses autograd to visualize the orthogonality property of the gradient.

  • Fermat Point of a Triangle

    Find the Fermat point (the point that minimizes total distance to all triangle vertices) using gradient descent. Iteratively minimize the sum of distances by computing loss, backpropagating, and taking gradient descent steps.