Français
PHP, HTML & JavaScript- Forum

3D Grafik - WebGL avec three.js

 
- page 1 -



HofK
sur une appeler Tipp de IF hin, habe je mir la fois
three.js  [...]  angeschaut. là  [...]  (entier unten) qui ersten Resultate.
 
31.01.2016  
 



 
- page 24 -



HofK
eh bien habe je kompliziertere Flächen dans travail,
z.B. qui Surface vom Geschlecht 3, siehe [...]  page 56.
et WIKIPEDIA  [...] 



Pour qui Eingabe nécessaire on qui implizite Funktion et qui partiellen Ableitungen. cet sommes déjà droite aufwändig.
// Example: implicit surface of genus 3
const rx2 = 36;
const ry2 = 12.25;
const rz2 = 16;
const r2 = 1.44;
const x0 = 3.9;
const f0 = ( x, y, z ) => ( rz2 * rz2 * z * z );
const f1 = ( x, y, z ) => ( 1 - x * x / rx2 - y * y / ry2 );
const f2 = ( x, y, z ) => ( ( x - x0 ) * ( x - x0 ) + y * y - r2 );
const f3 = ( x, y, z ) => ( x * x + y * y - r2 );
const f4 = ( x, y, z ) => ( ( x + x0  )* ( x + x0 ) + y * y - r2 );
const dxf1 = ( x, y, z ) => ( -2 * x / rx2 );
const dxf2 = ( x, y, z ) => ( 2 * ( x - x0 ) );
const dxf3 = ( x, y, z ) => ( 2 * x );
const dxf4 = ( x, y, z ) => ( 2 * ( x + x0 ) );
const dyf1 = ( x, y, z ) => ( -2 * y / ry2 );
const dyf2 = ( x, y, z ) => ( 2 * y );
const dyf3 = ( x, y, z ) => ( 2 * y );
const dyf4 = ( x, y, z ) => ( 2 * y );
const isf = ( x, y, z ) => ( f0( x, y, z ) - f1( x, y, z ) * f2( x, y, z ) * f3( x, y, z ) * f4( x, y, z ) );// IMPLICIT SURFACE Function
const dx = ( x, y, z ) => ( -( dxf1( x, y, z ) * f2( x, y, z ) * f3( x, y, z ) * f4( x, y, z ) + f1( x, y, z ) * dxf2( x, y, z ) * f3( x, y, z ) * f4( x, y, z ) + f1( x, y, z ) * f2( x, y, z ) * dxf3( x, y, z ) * f4( x, y, z ) + f1( x, y, z ) * f2( x, y, z ) * f3( x, y, z ) * dxf4( x, y, z ) ) );// PARTIAL DERIVATE to x
const dy = ( x, y, z ) => ( -( dyf1( x, y, z ) * f2( x, y, z ) * f3( x, y, z ) * f4( x, y, z ) + f1( x, y, z ) * dyf2( x, y, z ) * f3( x, y, z ) * f4( x, y, z ) + f1( x, y, z ) * f2( x, y, z ) * dyf3( x, y, z ) * f4( x, y, z ) + f1( x, y, z ) * f2( x, y, z ) * f3( x, y, z ) * dyf4( x, y, z ) ) );// PARTIAL DERIVATE to y
const dz = ( x, y, z ) => ( rz2 * rz2 * 2 * z );// PARTIAL DERIVATE to z
const xs = 0;// x START POINT
const ys = 3;// y START POINT
const zs = 0;// z START POINT
//const e = 0.001; // epsilon
//const d  = 0.128; // rough edge length of triangles
const e = 0.001;// epsilon
const d  = 0.13;// rough edge length of triangles
//const e = 0.001; // epsilon
//const d  = 0.2; // rough edge length of triangles

là Je l' Algorithmus encore toujours pas jusqu'à ins dernier Detail mise en œuvre habe, funktioniert es pas avec allen Kombinationen aus e et d. je bleibe tour!

aucun Aussage trop Fehlern, seulement soviel   .... ....
 
13.07.2019  
 




HofK
chez relativ großer ungefährer Seitenlänge qui Dreiecke venez es chez komplizierten Flächen avec très unterschiedlichen Krümmungen trop Darstellungsfehlern. aussi ist cela un Grund, dass manche Kombinationen aus e et d pas marcher, là cela Newton-procéder pas zur korrekten Nullstelle konvergiert, z.B. allez chez festem d la fois sogar e=0.001, 0.0001 allez pas, mais 0.00001 allez wieder.



L'idée était eh bien, qui Seitenlänge d dépendant de qui Krümmung trop faire.
allez on cela theoretisch à, nécessaire on Dinge comment qui Hesse-Matrix  [...]   [...] 

ensuite wird qui Aufwand pour qui Eingabe très hoch et qui Berechnungen sommes droite umfangreich.

c'est pourquoi habe je une einfachen Näherungsansatz gewählt.

on berechnet bereits trop einem Punkt qui sur einem pourtour avec Radius d dans qui Tangentialebene liegenden Punkte. ensuite volonté cet Punkte per Newton-procéder sur qui Surface gebracht. Merkt on sich eh bien pour qui Punkte den la distance Punkt-Tangentialebene et bildet maximum ou bien Mittelwert, hat on un ungefähres mesure qui Krümmung. avec cela peux on eh bien d verändern.

le tort: on muss qui komplette la facture avec dem neuen d encore einmal faire, qui Gesamtrechenaufwand verdoppelt sich alors nahezu. Im Programme sommes es seulement wenige Zeilen plus.



chez cette bereits très feinen Auflösung bringt es pas viel, im Gegenteil, qui Gleichmäßigkeit qui Triangulierung ist gestört.

mais comment sieht es chez grand d aus?

sur den ersten perspective entier réglé,



mais cela Problem qui pas exakten Konvergenz wird pas gelöst.



c'est alors sinnvoller lieber qui Dreiecke en tout petite bezüglich qui stärksten Krümmung trop tenir.

c'est pourquoi verfolge je cette Ansatz pas plus. était mais intéressant.
 
16.07.2019  
 




HofK
Im Algorithmus  [...]  page 52 volonté "Schlechte" Nahepunkte beschrieben. qui J'ai eu erstmal ausgeklammert. quand même funktionierte es chez den Beispielen. alors geschaut, quand cet Punktepaare auftreten.

So entstehen vous:

qui aktive Front venez sich selbst proche:



vous wird getrennt:



dans diesem Beispiel entsteht chez qui Füllung avec Dreiecken un kleines, presque rechtwinkliges Dreieck. qui Longueur qui une page ist qui la distance entre den getrennten Fronten et ici ensuite quelque chose kleiner comme qui ungefähre Seitenlänge d.

pourquoi hat es mais aussi chez diesem Beispiel funktioniert? pourquoi volonté qui Fronten pas juste wieder vereinigt et il y a une Endlosschleife?

qui Antwort liegt dans meiner speziellen Art qui Umsetzung des Algorithmus. cet weicht à einigen se mettre de qui Pascal-Vorgabe ab.

Pour Trennung qui aktiven Front bestimme je seulement pour den kleineren, ensuite pour den verbleibenden (quelquefois zwischenzeitlich veränderten) Winkel neue Dreiecke (sans nachfolgende Abstandsprüfung). c'est qui Stand im zweiten Bild.

qui obere Front im Bild ist eh bien qui aktive Front. chez qui Abstandsprüfung vais je en aus, dass jusqu'à sur qui récente erzeugte Punkte um den aktuellen Punkt (kleinster Winkel qui Front) alle anderen Punkte inchangé sommes. avec cela prüfe je seulement pour qui neuen Punkten ( meist 1 ou bien 2, seltener 3 ou bien gar 4) den la distance le anderen Punkten.

Sollte la fois einer qui justement sans Prüfung erzeugten Punkte den kleinsten Winkel avons, so sommes qui eh bien là erzeugten Punkte sur jeden le cas plus comme qui ungefähre Seitenlänge d de qui unteren Front entfernt.

qui schlechten Nahepunkte volonté alors "umgangen" et je erspare mir qui Prüfung.
 
20.07.2019  
 




HofK
encore un nettes Beispiel. trois verschmelzende Kugeln. Im opposition trop einfachen Kugeln qui on so anordnet, ist qui Übergang gerundet et dedans sommes qui Kugeln pas getrennt.




// Example: implicit surface, three balls
const f0 = (x,y,z) => ( x*x + y*y + z*z - 4 );
const f1 = (x,y,z) => ( (x+3)*(x+3) + y*y + z*z - 3 );
const f2 = (x,y,z) => ( x*x + (y-2)*(y-2) + (z-2)*(z-2) - 1.8 );
const isf = (x,y,z) => ( f0(x,y,z)*f1(x,y,z)*f2(x,y,z ) - 0.4 );// IMPLICIT SURFACE Function
const dx = (x,y,z) => ( 2*x*f1(x,y,z)*f2(x,y,z) + 2*(x+3)*f0(x,y,z)*f2(x,y,z) + 2*x*f0(x,y,z)*f1(x,y,z) );// PARTIAL DERIVATE to x
const dy = (x,y,z) => ( 2*y*f1(x,y,z)*f2(x,y,z) + 2*y*f0(x,y,z)*f2(x,y,z) + 2*(y-2)*f0(x,y,z)*f1(x,y,z) );// PARTIAL DERIVATE to y
const dz = (x,y,z) => ( 2*z*f1(x,y,z)*f2(x,y,z) + 2*z*f0(x,y,z)*f2(x,y,z) + 2*(z-2)*f0(x,y,z)*f1(x,y,z) );// PARTIAL DERIVATE to z
const progressFactor = 3;// for slider
const xs = 0;// x START POINT
const ys = 4 ;// y START POINT
const zs = 0;// z START POINT
const e = 0.001;// epsilon
const d = 0.1;// rough edge length of triangles
 
20.07.2019  
 




p.specht

Erinnert un peu à qui Ergebnisse de "Blender" ...
 
XProfan 11
Computer: Gerät, daß es in Mikrosekunden erlaubt, 50.000 Fehler zu machen, zB 'daß' statt 'das'...
22.07.2019  
 




HofK
p.specht (22.07.2019)
Erinnert un peu à qui Ergebnisse de "Blender" ...


voilà avec Sicherheit très viele Algorithmen implementiert. Habe mich avec cela mais pas beschäftigt.

----------------------------

sur page 54 de  [...]  sommes deux Opportunités qui Begrenzung eines Zylinders dargestellt. qui implizite Funktion des Zylinders ergibt sans Begrenzung une unendlich grand Surface, là dans qui Funktion
const isf = (x,y,z) => ( x*x + y*y - 1 ); // IMPLICIT SURFACE Function qui Variable z pas auftaucht.

alors habe je une Boundingbox hinzuprogrammiert.

const e = 0.01; // epsilon
const d = 0.1; // rough edge length of triangles
const b = [ 10, -10, 0.6, -10, 2, -1.3 ]; // bounds xMax, xMin, yMax, yMin, zMax, zMin


cela fait im Algorithmus à mehreren se mettre Abänderungen/Ergänzungen nötig.





on erkennt cela Problem. dans direction qui z-Achse funktioniert es prima, là on qui Koordinate simple sur qui frontière zurücksetzen peux. elle vient dans qui Funktion pas avant et hat keinen Einfluss sur cela Newton procéder.

pouvoir on cela comment im Bild dargestellt avec einer qui anderen Achsen, so bleibt le rebord ausgefranst et qui fransigen Ecken liegen pas exakt sur dem Zylinder. ici tiefer chez 0,6.

là qui Prüfungen bezüglich qui Boundingbox doch einigen Aufwand verursachen, werde je cet Programmvariante seulement pour Zylinder et ähnliche Dinge nutzen. qui allgemeinere forme ist ensuite qui Begrenzung par weitere Frontpolygone, comment je es chez qui Kugel avec den beliebigen Öffnungen gemacht habe. ici ist qui Aufwand lediglich qui Erstellung cette passenden Frontpolygone. cela Programme selbst braucht aucun Ergänzung.

Pour meiner Kenntnis gibt es aucun Possibilité (ou bien aucun ici praktikable) chez qui Impliziten Funktion avec dem Newton procéder qui Punkte "glatt " sur qui frontière trop apporter, si le Variable dans qui Funktion et ihren partiellen Ableitungen auftaucht.

eh bien muss et avec ca aufgeräumt et optimiert volonté, mariage qui Code vorzeigbar ist.

----------

un weiteres Beispiel ist qui Surface vom Geschlecht 2 [...] 

 
22.07.2019  
 




HofK
encore un Versuch avec Begrenzung. deux sich schneidende Zylinder.
// Example: implicit surface, two cylinder
const f1 = (x,y,z) => ( x*x + y*y - 1 );
const f2 = (x,y,z) => ( y*y + z*z - 1 );
//const isf = (x,y,z) => ( f1(x,y,z)*f2(x,y,z) - 0.5 ); // IMPLICIT SURFACE Function
const isf = (x,y,z) => ( f1(x,y,z)*f2(x,y,z) - 0.25 );// IMPLICIT SURFACE Function
const dx = (x,y,z) => ( 2*x*f2(x,y,z) );// PARTIAL DERIVATE to x
const dy = (x,y,z) => ( 2*y*( f1(x,y,z) + f2(x,y,z) ) );// PARTIAL DERIVATE to y
const dz = (x,y,z) => ( 2*z*f2(x,y,z) );// PARTIAL DERIVATE to z
const progressFactor = 5;// for slider
const xs = 0.2;// x START POINT
const ys = 1.1;// y START POINT
const zs = 0.1;// z START POINT
const e = 0.001;// epsilon
const d = 0.05;// rough edge length of triangles
const b = [ 1.4, -1.4, 10, -10, 1.4, -1.4 ];// bounds xMax, xMin, yMax, yMin, zMax, zMin

ici führten seulement wenige Parameterkonstellationen trop einem Ergebnis. partiellement überlaufen sich Teile qui Front ou bien l'addition landet dans einer Endlosschleife, ou bien le rebord ist pas glatt, là alle Variablen vorkommen.





Pour cet Beispiel alors besser aussi Randpolygone comme Front définir.
 
23.07.2019  
 




p.specht

Demnach hätten mathématique Männer et Frauen cela gleiche Geschlecht, ou bien?
 
XProfan 11
Computer: Gerät, daß es in Mikrosekunden erlaubt, 50.000 Fehler zu machen, zB 'daß' statt 'das'...
25.07.2019  
 




HofK
p.specht (25.07.2019)
Demnach hätten mathématique Männer et Frauen cela gleiche Geschlecht, ou bien?


je n'en sais rien, dans qui mathématique ist es toujours une Frage qui définition.

je erinnere mich encore bien qui quelquefois quelque chose ermüdenden Abfolge
"Definition-phrase-Beweis" qui trop absolvieren était.

et c'est une Frage des herangehens. là fällt mir quelque chose uraltes un:

qui mathématique Professor schließt den Hörsaal sur, un très pünktlicher étudiant allez hinein, qui Professor bleibt avant qui porte et wartet. comme cela akademische Viertel verstrichen ist et cela intérêt à seiner Vorlesung gelinde dit seeeehr gering ist, appelez il dans den Hörsaal. Fällt aus - je schließe ab! Es venons deux Studenten heraus! quoi denkt sich qui mathématique Professor? entier logisch, maintenant ist encore oui c'est ca bzw. eineindeutig -1 étudiant im salle. Bleibt qui Frage comment il es avec dem abschließen hält. je n'en sais rien.
 
26.07.2019  
 




HofK
qui Triangulation qui impliziten Flächen ist dans einem Stadium, wohin on vous veröffentlichen peux.

là pour trouver:



GitHub  [...] 
mon page  [...]  dernier paragraphe bzw. direct  [...] 
discourse  [...] 

quelques encore offene Dinge volonté später ergänzt.
 
26.07.2019  
 




HofK
Anstatt quelque chose Sinnvolles trop faire, werde je depuis Stunden par qui "KleinWeich" Chaoten aufgehalten. Pour dem Update de Windoofs 10 courir so quelques Dinge pas plus réglé. mon externer Monitor blieb dunkel. quoique cela Update presque une heure gewerkelt hat et devant déjà telemetry qui CPU avec presque 100% auslastete ( habe je maintenant abgeklemmt) wurden qui Treiber pas erneuert. je musste selbst seulement puis venons im Netz pour Treibern chercher trop laisser. qui wurden ensuite anstandslos installiert - gehts encore?! Otto Normalverbraucher schafft cela Gerät zur Reparatur - Arbeitsbeschaffung pour cela artisanat. pas cela es maintenant wirklich funktioniert. Pour Standby bleibt qui Monitor ensuite wieder dunkel. Neustart ou bien USB Stecker tirer (externe Grafik sur USB 3.0, là mon interne externe Grafik im Laptop avant geraumer Zeit den "Geist" aufgegeben hat).

qui Grafiken dans den vorherigen Beiträgen wurden avec dem Lineal de IF  [...]  aufgenommen. très praktikabel.
Funktioniert pas plus. eh bien übe je avec Firefox "Bildschirmfoto".



deux Zylinder avec Kugel
(variante avec Begrenzung ist encore pas entier fertig)

aussi classic shell wird ausgebremst. Es venez une tiefrote avertissement. Funktioniert mais encore irgendwie, darf sich seulement pas anpassen. Nervt, si chez chaque Start qui avertissement venez et quoi oui c'est ca pas allez merke je eventuell irgendwann. qui Trick avec qui totalen Herabsetzung qui Sicherheit dans qui Benutzerkontensteuerung hilft diesmal ici pas.

mon RAM Disk funktioniert encore. Glück gehabt, la fois voyons, jusque welchem Zwangsupdate. quoi encore détruit wurde wird sich montrer. mais aucun Alternative dank Quasimonopol. dans den (sauren) pomme voudrais on aussi pas absolument beißen et (J)..ux ist dans qui Anwendung doch trop eingeschränkt.

---
Nachtrag:
cela im Netz beschriebene abklemmen de telemetry avec einem Eintrag dans qui Registrierung wird chez Neustart dans Update 1903 wohl simple ignoriert. mon Laptop wird zum 100% four. Im Task Manager den Prozess finissons bringt mais vorläufige refroidissement. 
 
30.07.2019  
 




p.specht

Sieht hochschwanger aus ...
 
XProfan 11
Computer: Gerät, daß es in Mikrosekunden erlaubt, 50.000 Fehler zu machen, zB 'daß' statt 'das'...
30.07.2019  
 




répondre


Topictitle, max. 100 marque.
 

Systemprofile:

ne...aucune Systemprofil angelegt. [anlegen]

XProfan:

 Posting  Font  Smilies  ▼ 

s'il te plaît s'inscrire um une Beitrag trop verfassen.
 

Options du sujet

356.944 Views

Untitledvor 0 min.
Paul Glatz vor 17 Tagen
Uwe ''Pascal'' Niemeier23.03.2025
Manfred Barei18.03.2025
R.Schneider05.03.2025
plus...

Themeninformationen



Admins  |  AGB  |  Applications  |  Auteurs  |  Chat  |  protection des données  |  Télécharger  |  Entrance  |  Aider  |  Merchantportal  |  Empreinte  |  Mart  |  Interfaces  |  SDK  |  Services  |  Jeux  |  cherche  |  Support

un projet aller XProfaner, qui il y a!


Mon XProfan
Privé Nouvelles
Eigenes Ablageforum
Sujets-La liste de voeux
Eigene Posts
Eigene Sujets
Zwischenablage
Annuler
 Deutsch English Français Español Italia
Traductions

protection des données


Wir verwenden Cookies seulement comme Session-Cookies à cause de qui technischen Notwendigkeit et chez uns gibt es aucun Cookies de Drittanbietern.

si du ici sur unsere Webseite klickst ou bien navigierst, stimmst du unserer Erfassung de Informationen dans unseren Cookies sur XProfan.Net trop.

Weitere Informationen trop unseren Cookies et en supplément, comment du qui Kontrolle par-dessus behältst, findest du dans unserer nachfolgenden Datenschutzerklärung.


d'accordDatenschutzerklärung
je voudrais keinen Cookie