Domanda

Sono interessato a leggere e comprendere gli algoritmi mesh 2D. Una ricerca su Google rivela molti documenti e fonti , tuttavia la maggior parte sono troppo accademici e non molto dalla parte dei principianti.

Quindi, qualcuno qui consiglierebbe qualche fonte di lettura (adatta ai principianti) o un'implementazione open source che posso imparare dall'inizio? Grazie.

Inoltre, rispetto alla generazione di mesh triangolari, ho più interesse per le mesh quadrilaterali e le mesh miste (quad e tri combinate).

È stato utile?

Soluzione

Secondo la risposta di David riguardante il sito di Jonathan Shewchuk come un buon punto di partenza.

In termini di software open source, dipende esattamente da cosa stai cercando.

  • Se sei interessato alla generazione di mesh, puoi dare un'occhiata al codice CGAL . Comprendere le parti di basso livello del codice CGAL è troppo per un principiante. Tuttavia, dare un'occhiata agli algoritmi di livello superiore può essere abbastanza interessante anche per un principiante. Si noti inoltre che la la documentazione di CGAL è molto dettagliata.
  • Puoi anche dare un'occhiata a TetGen , ma il suo codice sorgente è monolitico e non è documentato ( è più un software per l'utente finale piuttosto che una libreria, anche se può anche essere chiamato semplicemente da altri programmi). Tuttavia, è abbastanza leggibile e il manuale dell'utente contiene una breve presentazione di generazione di mesh, con alcuni riferimenti.
  • Se sei interessato anche all'elaborazione mesh, puoi dare un'occhiata a OpenMesh .

Ulteriori informazioni sui tuoi obiettivi potrebbero sicuramente aiutare a fornire indicazioni più pertinenti.

Altri suggerimenti

Il primo link sulla tua ricerca di Google ti porta al il sito di Jonathan Shewchuk . Questo non è in realtà un brutto posto per iniziare. Ha un programma chiamato triangolo che puoi scaricare per triangolazione 2D. In quella pagina c'è un link ai riferimenti utilizzati in triangolo di creazione , incluso un collegamento a una descrizione di algoritmo di triangluzione .

Esistono diversi approcci alla generazione di mesh. Uno dei più comuni è creare una triangolazione Delaunay . Triangolare una serie di punti è abbastanza semplice e ci sono diversi algoritmi che lo fanno, inclusi Watson e di Rupert usato nel triangolo Quando si desidera creare una triangolazione vincolata, in cui i bordi della triangolazione corrispondono ai bordi della forma di input, è un po 'più difficile, poiché è necessario ripristinare determinati bordi.

Comincerei con la comprensione della triangolazione di Delaunay. Quindi forse guarda alcuni degli altri algoritmi di mesh.

Alcuni degli argomenti comuni che troverai nei documenti per la generazione di mesh sono

  • Robustezza: ecco come gestire gli errori di arrotondamento in virgola mobile.
  • Qualità delle maglie: assicurare che le forme dei triangoli / tetraedri siano vicine all'equilatero. L'importanza di ciò dipende dal motivo per cui stai creando la mesh. Per il lavoro di analisi è molto importante,
  • Come scegliere dove inserire i nodi nella mesh per fornire una buona distribuzione della mesh.
  • Velocità di mesh
  • Generazione di maglie quadrilatero / esaedrica. Questo è più difficile dell'uso di triangoli / tetraedri.

La generazione di mesh 3D è molto più difficile rispetto al 2D, quindi molti dei documenti riguardano la generazione 3D

La generazione di mesh è un argomento di grandi dimensioni. Sarebbe utile se potessi fornire qualche informazione in più su quali aspetti (ad es. 2D o 3D) ti interessano. Se riesci a dare un'idea di ciò che la tua formica deve fare, forse potrei trovare alcune migliori fonti di informazioni.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top