hypotrochoid - Plot hypotrochoids for spirographs with JavaScript

  •        40

Returns points across one or more hypotrochoids for varying values of t.Trivia: you can trace out curves like this using a spirograph, yielding similar results to Guilloché machines - which were used to create intricate patterns resistant to counterfeiting.




Related Projects

earcut - The fastest and smallest JavaScript polygon triangulation library for your WebGL apps

  •    Javascript

The fastest and smallest JavaScript polygon triangulation library. 2.5KB gzipped.The library implements a modified ear slicing algorithm, optimized by z-order curve hashing and extended to handle holes, twisted polygons, degeneracies and self-intersections in a way that doesn't guarantee correctness of triangulation, but attempts to always produce acceptable results for practical data.


  •    C

Matho is a OS Independant Application and API for mathematical operations, features include curve sketching, calculus, iterative formulae, algebra solver, 2d/3d geometry and mechanical and statistical functionality.

verb - Open-source, cross-platform NURBS

  •    Javascript

verb is a library for creating and manipulating NURBS surfaces and curves in many languages including JavaScript. verb provides advanced tools like derivative evaluation, adaptive tessellation, and intersection. Verb provides a concurrent execution runtime via WebWorkers in modern browsers and thread pools on other platforms and is suitable for use in a datacenter or in the browser.

elliptic - Fast Elliptic Curve Cryptography in plain javascript

  •    Javascript

Fast elliptic-curve cryptography in a plain javascript implementation.NOTE: Please take a look at http://safecurves.cr.yp.to/ before choosing a curve for your cryptography operations.

Crescento - Add curve at bottom of image views and relative layouts.

  •    Java

Android library that adds a curve at the below of image views and relative layouts. CrescentoImageView and CrescentoContainer are the image view and relative layout respectively. You can change the radius of curve with attribute:curvature. Here is a very good example of how to use Crescento. Zsolt Szilvai has made a very good design and I've illustrated using crescento.

CurveModifier - Implementation of the curve modifier from Blender to Unity3D

  •    CSharp

A 3D model of a dragon is being deformed in real-time along a curve with a vertex shader. The curve is made by following a physicalized box. I've discovered the curve modifier in Blender and really love it. People on Twitter went crazy with the gif below, so I always wanted to share how to do it.

geo - S2 geometry library in Go

  •    Go

This is a library for manipulating geometric shapes. Unlike many geometry libraries, S2 is primarily designed to work with spherical geometry, i.e., shapes drawn on a sphere rather than on a planar 2D map. (In fact, the name S2 is derived from the mathematical notation for the unit sphere.) This makes it especially suitable for working with geographic data.Basic representations of angles, intervals, latitude-longitude points, unit 3D vectors, and conversions among them.

BRL-CAD - Solid Modeling System

  •    Java

BRL-CAD is a powerful cross-platform constructive solid geometry solid modeling system that includes an interactive geometry editor, ray-tracing for rendering amp; geometric analyses, network distributed framebuffer support, image & signal-processing tools.

geometry - geometry is a minimal, fully customizable and composable zsh prompt theme

  •    Shell

geometry is a minimalistic, fully customizable zsh prompt theme. geometry starts small, with good defaults, and allows you to customize it at your own will. It can be as simple or complex as you like.

Live Geometry

  •    Silverlight

Live Geometry lets you create interactive ruler and compass constructions and experiment with them. It is CAD-like educational software for teachers and students. It helps visualize and solve geometry problems.

geometry-api-java - The Esri Geometry API for Java enables developers to write custom applications for analysis of spatial data

  •    Java

The Esri Geometry API for Java enables developers to write custom applications for analysis of spatial data.

Libcurve - An encryption and authentication library for ZeroMQ applications

  •    C

Curve implements the CurveZMQ elliptic curve security mechanism, for use in ZeroMQ applications. This library is primarily a reference implementation for the CurveZMQ specification but may also be used for end-to-end security. CurveZMQ creates encrypted sessions ("connections") between two peers using short term keys that it securely exchanges using long term keys. When the session is over, both sides discard their short term keys, rendering the encrypted data unreadable, even if the long term keys are captured. It is not designed for long term encryption of data.

curvejs - Made curve a dancer in HTML5 canvas - 魔幻线条

  •    Javascript

Made curve a dancer in HTML5 canvas. In this motion directory, there are already some built-in motion. you can submit your motion and then create a pull request to the project.

bezier-easing - cubic-bezier implementation for your JavaScript animation easings – MIT License

  •    Javascript

BezierEasing provides Cubic Bezier Curve easing which generalizes easing functions (ease-in, ease-out, ease-in-out, ...any other custom curve) exactly like in CSS Transitions. Implementing efficient lookup is not easy because it implies projecting the X coordinate to a Bezier Curve. This micro library uses fast heuristics (involving dichotomic search, newton-raphson, sampling) to focus on performance and precision.

WJMagicCurveView - Fancy magic curve.

  •    Java

By setting several parameters simply, You'll get a fancy Magic Curve immediately. By setting eight parameters (Of course you don't have to set every because they all have default value), WJMagicCurveView will draw a beautiful curve based on a math function.



A .NET class library written in Visual Basic 2010 for analytic geometry, particularly vectors and complex numbers.

Computational Geometry

  •    CSharp

A library of Computational Geometry algorithms such as convex hulls, Voronoi diagrams, line intersections, triangulations, and more; written in C#.

Geometry Visualizer 3D


GeometryViz3D allows students to create 3D geometry models that comprise points, lines, and vectors, and examine the model by rotating it along the 3 axes. It's developed in C# based on the Petzold.Media3D library developed by Charles Petzold.