background preloader

Geometry, Surfaces, Curves, Polyhedra

Geometry, Surfaces, Curves, Polyhedra
The following is a random collection of various topics in geometry the author has explored or simply documented over the years. Many of the topics include source code illustrating how to solve various geometric problems, or to assist others recreating the geometric forms presented. Notes on polygons and meshes Includes Surface (polygon) simplification, Clipping a polygonal facet with an arbitrary plane, Surface Relaxation and Smoothing of polygonal data, Mesh crumpling, splitting polygons, two sided facets, polygon types, tests for clockwise and concavity, clipping line to polygons, area of a 3D polygon, area of general polygons, determining inside/outside test, intersection of a line and a facet, Eulers numbers. Notes on points, lines and planes Includes calculations for the distance between points, lines and planes. Notes on circles, cylinders and spheres Includes equations and terminology. The most important thing in the programming language is the name. Texture library Other ...

Floraform – an exploration of differential growth Introducing Floraform, the latest generative design system from Nervous System. Floraform is inspired by the biomechanics of growing leaves and blooming flowers and explores the development of surfaces through differential growth. We used this system to computationally craft a new 3D-printed jewelry collection, now available on our website. Floraform is a simulation of a differentially growing elastic surface that we created to explore how biological systems create form by varying growth rates through space and time. It began with an unusual flower, Celosia cristata, and led us through a journey of cellular differentiation, discrete differential geometry, kleptoplastic sea slugs, nastic movements, and 19th century zoetropes. Table of Contents // what is differential growth | inspiration | mapping out the simulation space | digital gardening | florescence jewelry collection | what’s next | technical details | bibliography What is Differential Growth? Mapping out the simulation space 1. 2.

3D modeler / CAD softwares | wikimal Let's start a list of useful softwares for 3D modelling / CAD, particularly free ones. Which software to chose (thanks to RealizeBxl) Easy/accessible softwares 123D : By Autodesk. : Online, now Autodesk-owned, and has a free version! Less easy Wings3D: I find it a bit... dry. online 3D modelerDesing spark Mechanical : completly free modeler Different OpenSCAD : Script-based CAD software, allows for parametric models See : for parametric objects on ThingsiverseSee: to add autocomplete in notepad++ (a must have !) 3D scanning Models processing/fixing Other 3D tools Commercial / Professional 3D tools

Matouš Stieber How to Create Concentric Circles, Ellipses, Cardioids & More Using Straight Lines and a Circle How to Create Concentric Circles, Ellipses, Cardioids & More Using Straight Lines and a Circle Using only a circle and straight lines, it's possible to create many different curves that are quite pleasing to look at and well known mathematically. Most of the curves that are going to be explored in this post are featured at this site, which has a program for generating them, and this site which explores some of the geometry used in creating these curves. I created all of these with a pencil and a ruler, or with the free computer program Geogebra. Concentric circles: Concentric circles showing 6 pentagrams of different colors: Ellipse: Cardioid: Heart composed of lines, partial concentric circles, and sections of a cardioid: Materials and Tools PaperRulerPen or pencilCompass for drawing circles (or images of circles or regular polygons)Protractor for marking circles with even marks Making Concentric Circles Take a circle and mark it at even intervals. Connect one mark to another mark. Repeat.

Recursion The idea of calling one function from another immediately suggests the possibility of a function calling itself. The function-call mechanism in Java supports this possibility, which is known as recursion. Your first recursive program. The "Hello, World" for recursion is the factorial function, which is defined for positive integers n by the equation The quantity n! is easy to compute with a for loop, but an even easier method in Factorial.java is to use the following recursive function: We can trace this computation in precisely the same way that we trace any sequence of function calls. Our factorial() implementation exhibits the two main components that are required for every recursive function. The base case returns a value without making any subsequent recursive calls. Mathematical induction. Recursive programming is directly related to mathematical induction, a technique for proving facts about natural numbers. Euclid's algorithm. Towers of Hanoi. Exponential time. Gray code. Brownian bridge.

Two Immersions of the Real Projective Plane Parametric Patterns X.1: Recursion, encore Ha, a little recursion joke there . . . sorry I’ve been messing around more with Steven’s methods for creating recursion and finding some really simple, interesting and flexible methods that live within it. Conceptually and Actually simple to set up This is the most iconic example I can think of And damn if it isn’t easy to make! Performance: Simple and complex models Complexity in these models doesn’t effect performance in a linear manner, but it seems exponential. but this one, with only model lines but with 8 parameters (some of which don’t even get used) takes over 2 minutes to regenerate. Shared Families, using Placeholders Key to the setup of the basic recursive structure is having 2 identical unshared families, each nested into each other. Recursion with Placeholders This persistent rising to the top is interesting for recursion, as it creates an opportunity to plant a parametric seed at the root of a recursive system. Triggering Events during recursion The answer is a resounding “YES!”

Surface d'Enneper SURFACE D'ENNEPEREnneper's surface, Ennepersche Fläche La surface d'Enneper est la surface minimale obtenue en prenant dans la paramétrisation de Weierstrass d'une telle surface : Comparer avec la surface de Scherk, autre surface minimale. © Robert FERRÉOL 2011 Grasshopper | Digital [Sub]stance | Page 13 I somehow managed to find some time and organize the grasshopper definition. As usual its available at the [Sub]Code page. For this definition to work you could use either loft or the minimal surface add-on of Robert Cervellione at Cerver.org. Enjoy… I tried some tests using the VB.net HoneyComb script and some attraction / repulsion conditions to organize radiolaria-like configurations on a sphere surface. The grasshopper definition is currently operating with two point attractors of controlled attraction or repulsion field, adding enough complexity to the plain honeycomb configuration. I will clean the script and upload it as usual to the [Sub]Code page. Just a small upgrade on the honeycomb VB.Net script from the previous posts. Download Here!!!!!

Related: