3D tryckt Ping-Pong boll (3 / 5 steg)

Steg 3: Geodesic sfärer



Nu ska vi undersöka hur man dela upp en sfär i ett bestämt antal
trianglar av ungefärligt liknande form. Den metod som beskrivs här är
ofta används för att bygga månghörnigt approximationer av sfärer, som detaljerad
i handledningen OpenGL: http://www.opengl.org.ru/docs/pg/0208.html.
I vårt fall blir detta byggnaden steget att generera hål som kommer
transfrom våra regelbundna klumpa ihop sig till en geodeome-liknande.

Först börjar vi med en vanlig isocahedron , som har tjugo trekantiga ansikten, och
intressanta egenskapen att var och en av dess hörn ligger på ett klot.
Och sedan för varje triangel, vi delar upp var och en av tre kanterna på mitten, som
ger oss tre ytterligare hörn som vi använder för att dela upp denna triangeln
i fyra mindre trianglar. De tre hörnen översätts sedan utåt
så de ligger på den sfärens yta.

Isocahedron OpenJSCAD skript

funktionen Main () {
var X = 0.525731112119133606;
var Z = 0.850650808352039932;
var radie = 20;
var vdata = [
[-X, 0,0, Z], [X, 0,0, Z], [-X, 0,0, -Z], [X, 0,0, -Z],
[0,0, Z, X], [0,0, Z, -X], [0.0, -Z, X], [0.0, -Z, -X],
[Z, X, 0,0], [-Z, X, 0,0], [Z, -X, 0,0], [-Z, -X, 0,0]
]; isocahedron vertex koordinater
var tindices = [
[0, 4, 1], [0, 9, 4], [9, 5, 4], [4, 5, 8], [4, 8, 1],
[8, 10, 1], [8, 3, 10], [5, 3, 8], [5, 2, 3], [2, 7, 3],
[7, 10, 3], [7, 6, 10], [7, 11, 6], [11, 0, 6], [0, 1, 6],
[6, 1, 10], [9, 0, 11], [9, 11, 2], [9, 2, 5], [7, 2, 11]
]; isocahedron trianglar

återgå polyhedron({
poäng: vdata,
trianglar: tindices
{}) .scale ([radius, radius, radius]);
}

Därefter skriver vi indelning fonction för en enhet sfär tillnärmning:

Funktionen subdvide

/ * fn subdivide (v1, v2, v3, addPolyCb, djup)
* kort delar upp en triangel i 4 mindre
* params v1, v2, v3: triangel formhörn
* addPolyCb: motringning för lägga till polygon anmälan
* djup: antal återstående indelning iterationer
*/
funktionen dela upp (v1, v2, v3, addPolyCb, djup)
{
IF(DEPTH == 0) {
addPolyCb (v1, v2, v3);
hemkomst.
}

var v12 = v1.plus(v2).unit(); mitten av v1v2 kantar projiceras på området enhet
var v23 = v2.plus(v3).unit();
var v31 = v3.plus(v1).unit();
var newDepth = djup - 1.
Dela upp (v1, v12, v31, addPolyCb, newDepth);
Dela upp (v2 v23, v12, addPolyCb, newDepth);
Dela upp (v3, v31, v23, addPolyCb, newDepth);
Dela upp (v12, v23, v31, addPolyCb, newDepth);
}

Delfältet processen fungerar rekursivt; Start från den 20 isocahedron
ansikten, varje steg i underavdelningen multiplicerar det totala antalet ansikten med 4.
Följaktligen genererar ett djup av 1 en 80 ansikten polyeder.

Vi kan nu skapa en sfär tillnärmning genom att dela upp funktionen
iterativt över isocahedron ansikten enligt följande:

80 ansikten geodesic sfär skript

funktionen main)
{
var ballDiameter = 40;
var ballRadius = ballDiameter/2.;
var polygoner = []; lista av polygoner
addPolyCb = funktion (v1, v2, v3)
{
polygons.push (nya CSG. Polygon ([
nya CSG. Vertex (nya CSG. Vector3D(v3.x,v3.y,v3.z)),
nya CSG. Vertex (nya CSG. Vector3D(v2.x,v2.y,v2.z)),
nya CSG. Vertex (nya CSG. Vector3D(v1.x,v1.y,v1.z))
]));
}

createGeodesicSphere (addPolyCb, 1);
var unitSphereApprox = CSG.fromPolygons(polygons);

återgå unitSphereApprox.scale ([ballRadius, ballRadius, ballRadius]);
}

delar upp en enhet isocahedron n = djup gånger och begär en återuppringning för varje skapade ansikte
funktion createGeodesicSphere (addPolyCb, djup)
{
var X = 0.525731112119133606;
var Z = 0.850650808352039932;
var vdata = [
[-X, 0,0, Z], [X, 0,0, Z], [-X, 0,0, -Z], [X, 0,0, -Z],
[0,0, Z, X], [0,0, Z, -X], [0.0, -Z, X], [0.0, -Z, -X],
[Z, X, 0,0], [-Z, X, 0,0], [Z, -X, 0,0], [-Z, -X, 0,0]
];
var tindices = [
[0, 4, 1], [0, 9, 4], [9, 5, 4], [4, 5, 8], [4, 8, 1],
[8, 10, 1], [8, 3, 10], [5, 3, 8], [5, 2, 3], [2, 7, 3],
[7, 10, 3], [7, 6, 10], [7, 11, 6], [11, 0, 6], [0, 1, 6],
[6, 1, 10], [9, 0, 11], [9, 11, 2], [9, 2, 5], [7, 2, 11]
];

iterera över isocahedron trianglar
för (var jag = 0; jag < 20; i ++)
Dela upp (nya CSG. Vector3D(vdata[tindices[i][0]]),
nya CSG. Vector3D(vdata[tindices[i][1]]),
nya CSG. Vector3D(vdata[tindices[i][2]]),
addPolyCb, djup);
}

Om du vill köra det här skriptet, kopiera och klistra in koden i din favorit kod editor och spara
filen med tillägget .jscad. Sedan bara dra och släppa filen i recangular
området i det nedre vänstra hörnet i webbläsarfönstret OpenJSCAD.

Se Steg
Relaterade Ämnen

Ping Pong boll fullfärg binär klocka

Färg ändra 24Hr binär klocka med hjälp av ping pong bollar och fullfärg LED och en Funduino 8 * 8 matrix styrelse.Jag har redan byggt en liten 12Hr binär klocka och monterade den i en dator, detta fungerade mycket bra men var bara riktigt hälften en...

5 saker att göra med en Ping Pong boll

Vänligen Betygsätt detta Instructable och följ mig för mer coola steg för steg-guider.Gjort av Manish KumarSå idag kommer jag att tala om 5 ovanliga saker att göra med en ping pong boll. Dessa plast bollar komma mycket billigt och kan användas för de...

Ping Pong boll tomtebloss

Jag gnista lite.Steg 1: samla Samla en ping pong boll och en låda eller två av Sprite bomberSteg 2: Gör ett hål Skapa ett litet hål i bollenSteg 3: Placera bollar i Placera små bomber inutiSteg 4: kasta Du kan få 5-6 stora gnistor från ett ping pong...

10 000 rpm ping-pong boll

Jag använder Kryogener i kemi demos och snabb säker lätt exempel med noll saneringen är alltid välkomna. Jag skulle hittat om denna en - spinning ping-pong boll - via YouTube. Videon har haft över 2 miljoner visningar, men jag var underwhelmed - en l...

Ping Pong boll katapult

inspirerad av alla kreativa sinnen här på instructables, jag gjorde en ping pong katapult för mina barn att leka med.Material som används:Flera 1/2 tum x 1/2 tum dymlingar (om 7 eller 8). Den längsta är 12 inches lång.2 färg omrörareflera zip band2 a...

Flyta en ping pong boll på kommer!

Hej!Jag har alltid varit fascinerad av saker som styrs trådlöst med hand rörelser vilket förmodligen är varför jag äger en Wii nu när jag tänker på det. Men jag har inte riktigt kommit till göra någon rörelsekontroll av min egen design innan så det k...

Julgran leksak från ping pong boll

hittade jag en orange ping pong boll hemma, men jag gillar inte att leka med den, jag föredrar viten en... så de var helt värdelös och jag gjorde julgran leksak med den. Det är enkelt och snabbt. Bra för dekorationer och gåvor, alltför.Steg 1: Du beh...

Vakuum kanon kör ping pong boll i överljudshastighet

Jag ska här beskriva en kanon som kan köra ping pong bollar tillräckligt snabbt för att gå igenom plywood och aluminium burkar. Denna "vakuum kanon" har visats i college fysik klasser, eftersom det innebär många grundläggande fysik begrepp som N...

Ping Pong boll rök granat (lätt!)

Detta projekt är mycket enkelt, snabbt och roligt för att göra. Bara några saker som behövs och en massa rök lagt ut!!!Saker som behövs:-sax-aluminiumfolie-4 ping pong bollar (bra kvalitet)-pennaSteg 1: Skär folie Klippa ut om en 15x15cm kvadrat med...

Ping Pong boll Goldfish

Detta är ett bra, Billigt och enkelt hantverk perfekt för många tillfällen såsom:Fisk tema födelsedagskalasKinesiska nyåret craft (guldfisk är ett tecken på rikedom och överflöd i kinesisk kultur och föreställer välstånd)djuraffär aktiviteter, djur t...

Knex Ping Pong boll Retriever klo

jag byggde detta på min fritid att hjälpa min pappa som har en dålig rygg. Vi skulle spela pingpong tillsammans bollen skulle komma från bordet och han måste alltid böja sig ner och plocka upp. Så uppfann jag ping pong boll hämtning klo.Steg 1: Skapa...

Glöd i mörka LED Ping Pong boll

Skapa en glöd i mörka LED ping pong bollen med flera enkla steg.Steg 1: material Du behöver följande material:Ping Pong bollLED (5mm eller 10 mm)3V batteriTejpLåg Temp limpistolRazorSteg 2: Förbereda LED Lysdioder har en positiv och negativ tråd. Du...

LED Ping Pong boll

du kan rulla dem, spela fångsten med dem, eller ens spela fetch med din hund med dem. (Större hundar kan kvävas, min hund är verkligen liten och kan inte kvävas på det)NYARE VERSION:)Steg 1: Samla material Behöver du:Super ljusa lysdioderTvå Ping Pon...

LED Ping Pong boll (förbättrad)

detta är i grunden samma design, men jag gjorde det mer nättare och det ser mycket bättre!Detta är gammalt:Steg 1: verktyg Behöver du följande:1. borra2. borr3. sax4. silvertejpSteg 2: material Behöver du följande:1. LED Throwie (detta är länken:)2....

Glödande ping pong boll (throwable)

jag läste en instructable om hur man gör glödande ping pong bollar. Det fanns ett problem ändå, du inte kunde kasta dem eftersom de var kopplad. Boll + LED throwie = mycket roligt.Steg 1: materialDu behöver:en ping pong bollett rakbladoch en LED thro...

Ping Pong boll Mauler

Idag har jag det stora nöjet att presentera för dig Ping Pong boll Mauler, endast helautomatisk, stor kapacitet, ping pong boll launcher. Detta är först gör det själv projekt jag har åtagit mig med mitt nya företag, överlista Technologies LLC. Besök...

Ping Pong boll Hand kanon

Här är en lätt att göra ping pong boll launcher som du kan bygga från saker du kan ha om runt ditt hus. Det kommer lätt eld ping pong bollar över 25 fot.Steg 1: Samla dina resurserDu behöver:En toalett papper rulle tubePing pong ball(s)Två GemTvå gum...

Ping - Pong boll Launcher / kanon

För detta instructable behöver du följande:-Tejp (eller någon annan stark tejp)-Sax-En ZeeBeez Popper-En toalett rulle Tube-Ammunition (liten boll)Steg 1: Skär toalett rulle röretMed sax klippa bort slutet tredje av toalett-rulle.Steg 2: Koppla ZeeBe...

Hur man gör en ping pong boll gun

är du trött på office/klassrum/bakgård krig utan någon snygg eller effektivt vapen?Trött på att bli skjuten med en billig plast bb pistol som gör ont som fan och raster efter 5 skott?Vill du skjuta dina kollegor/vänner utan att behöva oroa sig om far...