imported>Boehm K (typog) |
imported>Zuphilip (Vorlagenfehler Literatur korrigiert (URN ohne vorangestelltes "urn:")) |
||
Zeile 1: | Zeile 1: | ||
Das '''Masse-Feder-System''' (kurz ''MFS'', {{ | Das '''Masse-Feder-System''' (kurz ''MFS'', {{enS|Mass-Spring-System}}), in der Literatur auch '''Masse-Feder-Modell''' (kurz ''MFM''), ist ein Verfahren in der [[Computergrafik]], um das Deformationsverhalten von auf [[Polygonnetz|Polygonnetzen]] basierenden Objekten zu bestimmen. Es kann sowohl auf [[2D|ebene]] als auch auf [[3D|räumliche]] Objekte angewandt werden. | ||
Die Gründe für die weite Verbreitung des Masse-Feder-Systems sind das leichtverständliche physikalische Konzept, die einfache Implementierung und die relativ niedrigen Rechenanforderungen.<ref name="schill">{{Literatur|Autor=Markus A. Schill| Titel=Biomechanical Soft Tissue Modeling Techniques, Implementation and Applications| Verlag=Universität Mannheim| Ort=Mannheim| | Die Gründe für die weite Verbreitung des Masse-Feder-Systems sind das leichtverständliche physikalische Konzept, die einfache Implementierung und die relativ niedrigen Rechenanforderungen.<ref name="schill">{{Literatur |Autor=Markus A. Schill |Titel=Biomechanical Soft Tissue Modeling Techniques, Implementation and Applications |Verlag=Universität Mannheim |Ort=Mannheim |Datum=2001 |Sprache=en |Kommentar=Dissertation |DNB=964635690 |URN=nbn:de:bsz:180-madoc-448}}</ref> | ||
== Geschichte == | == Geschichte == | ||
Zeile 7: | Zeile 7: | ||
Das Masse-Feder-System basiert auf den physikalischen Ansätzen des [[Hookesches Gesetz|Hookeschen Gesetzes]]. | Das Masse-Feder-System basiert auf den physikalischen Ansätzen des [[Hookesches Gesetz|Hookeschen Gesetzes]]. | ||
Wegen der geringen Rechenleistung damaliger Computer wurde es anfänglich nur für Flächen genutzt (sowohl zweidimensionale, als auch im dreidimensionalen Raum eingebettete Flächen, zum Beispiel ein Tischtuch, das über einen Tisch fällt). Deshalb wurde es bei seinen ersten Verwendungen ab dem Jahr 1981 zunächst nur zur Haut- und Stoffverhaltenssimulation verwendet.<ref name="plattbadler">{{Literatur|Autor=S. Platt, N. Badler| Titel=Animating Facial Expressions| Sammelwerk=Computer Graphics| Band=15| Nummer=3| | Wegen der geringen Rechenleistung damaliger Computer wurde es anfänglich nur für Flächen genutzt (sowohl zweidimensionale, als auch im dreidimensionalen Raum eingebettete Flächen, zum Beispiel ein Tischtuch, das über einen Tisch fällt). Deshalb wurde es bei seinen ersten Verwendungen ab dem Jahr 1981 zunächst nur zur Haut- und Stoffverhaltenssimulation verwendet.<ref name="plattbadler">{{Literatur |Autor=S. Platt, N. Badler |Titel=Animating Facial Expressions |Sammelwerk=Computer Graphics |Band=15 |Nummer=3 |Datum=1981 |Sprache=en |Online=[http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.516.5834&rep=rep1&type=pdf citeseerx.ist.psu.edu] |Format=PDF |KBytes=}}</ref><ref name="waters">{{Literatur |Autor=K. Waters |Titel=A Muscle Model for Animating Three-Dimensional Facial Expression |Sammelwerk=Computer Graphics |Band=21 |Nummer=4 |Datum=1987 |Sprache=en |Online=[http://portal.acm.org/citation.cfm?id=37402.37405 Link]}}</ref> Erst 1989 wurden die ersten MFS-Volumenmodelle veröffentlicht.<ref name="chadwickhaumannparent">{{Literatur |Autor=J. Chadwick, D. Haumann, R. Parent |Titel=Layered Construction for Deformable Animated Characters |Sammelwerk=Proceedings of ACM SIGGRAPH |Datum=1989 |Sprache=en |Online=[http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.84.1415&rep=rep1&type=pdf citeseerx.ist.psu.edu] |Format=PDF |KBytes=}}</ref><ref name="terz">{{Literatur |Autor=D. Terzopoulos, K. Waters |Titel=Physically-based Facial Modelling, Analysis and Animation |Sammelwerk=The Journal of Visualisation and Computer Animation |Band=1 |Datum=1990 |Sprache=en |Online=http://mrl.nyu.edu/~dt/papers/vca90/vca90.pdf |Format=PDF |KBytes=}} {{Webarchiv |url=http://mrl.nyu.edu/~dt/papers/vca90/vca90.pdf |text=PDF |wayback=20160423062924 |archiv-bot=2019-04-30 10:50:00 InternetArchiveBot}}</ref> | ||
Heute ist es ein gängiges Verfahren in der Computerspielbranche und in der Medizin<ref name="schill" /> zur Simulation operativer Eingriffe. | Heute ist es ein gängiges Verfahren in der Computerspielbranche und in der Medizin<ref name="schill" /> zur Simulation operativer Eingriffe. | ||
Zeile 13: | Zeile 13: | ||
== Aufbau == | == Aufbau == | ||
[[Datei:Two nodes as mass points connected by parallel circuit of spring and damper.svg| | [[Datei:Two nodes as mass points connected by parallel circuit of spring and damper.svg|mini|Zwei Masseknoten, die mit einer Feder und einem Dämpfer verbunden sind.]] | ||
In einem Masse-Feder-System werden Objekte durch ein Netz aus Masseknoten, mechanischen Federn und Dämpfungsgliedern dargestellt.<ref name="plattbadler" /><ref name="neumann">{{Literatur|Autor=Jens Neumann| Titel=Verfahren zur adhoc-Modellierung und -Simulation räumlicher Feder-Masse-Systeme für den Einsatz in VirtualReality-basierten Handhabungssimulationen| Verlag=Technische Universität Berlin, Fraunhofer IRB Verlag| | In einem Masse-Feder-System werden Objekte durch ein Netz aus Masseknoten, mechanischen Federn und Dämpfungsgliedern dargestellt.<ref name="plattbadler" /><ref name="neumann">{{Literatur |Autor=Jens Neumann |Titel=Verfahren zur adhoc-Modellierung und -Simulation räumlicher Feder-Masse-Systeme für den Einsatz in VirtualReality-basierten Handhabungssimulationen |Verlag=Technische Universität Berlin, Fraunhofer IRB Verlag |Datum=2009 |ISBN=978-3-8167-7954-4 |Kommentar=Dissertation}}</ref> | ||
[[Datei:MassSpringSystem-transfer.svg| | [[Datei:MassSpringSystem-transfer.svg|mini|Ablauf der Verschiebung eines Punktes in einem Masse-Feder-System zu verschiedenen Zeitpunkten.]] | ||
Die Knoten eines Polygonnetzes bekommen jeweils eine [[Masse (Physik)|Masse]]. Die Kanten werden durch eine mechanische [[Feder (Technik)|Feder]], die mit einem [[Schwingung#Linear gedämpfte Schwingung|Dämpfungsglied]] parallel geschaltet ist, dargestellt. Somit hat sie eine [[Federkonstante]], eine Ruhelänge und eine [[Abklingkonstante]]. Das Dämpfungsglied ist notwendig, wenn das Objekt nach der Deformation nicht schwingen, sondern eine Ruhelage finden soll. In Abhängigkeit von den Masseknoten wird der [[Reibungskoeffizient]] errechnet. | Die Knoten eines Polygonnetzes bekommen jeweils eine [[Masse (Physik)|Masse]]. Die Kanten werden durch eine mechanische [[Feder (Technik)|Feder]], die mit einem [[Schwingung#Linear gedämpfte Schwingung|Dämpfungsglied]] parallel geschaltet ist, dargestellt. Somit hat sie eine [[Federkonstante]], eine Ruhelänge und eine [[Abklingkonstante]]. Das Dämpfungsglied ist notwendig, wenn das Objekt nach der Deformation nicht schwingen, sondern eine Ruhelage finden soll. In Abhängigkeit von den Masseknoten wird der [[Reibungskoeffizient]] errechnet. | ||
Zeile 98: | Zeile 98: | ||
[[Kategorie:Computerphysik]] | [[Kategorie:Computerphysik]] | ||
[[Kategorie:Geometrische Modellierung]] | [[Kategorie:Geometrische Modellierung]] | ||
Das Masse-Feder-System (kurz MFS, englisch Mass-Spring-System), in der Literatur auch Masse-Feder-Modell (kurz MFM), ist ein Verfahren in der Computergrafik, um das Deformationsverhalten von auf Polygonnetzen basierenden Objekten zu bestimmen. Es kann sowohl auf ebene als auch auf räumliche Objekte angewandt werden.
Die Gründe für die weite Verbreitung des Masse-Feder-Systems sind das leichtverständliche physikalische Konzept, die einfache Implementierung und die relativ niedrigen Rechenanforderungen.[1]
Das Masse-Feder-System basiert auf den physikalischen Ansätzen des Hookeschen Gesetzes.
Wegen der geringen Rechenleistung damaliger Computer wurde es anfänglich nur für Flächen genutzt (sowohl zweidimensionale, als auch im dreidimensionalen Raum eingebettete Flächen, zum Beispiel ein Tischtuch, das über einen Tisch fällt). Deshalb wurde es bei seinen ersten Verwendungen ab dem Jahr 1981 zunächst nur zur Haut- und Stoffverhaltenssimulation verwendet.[2][3] Erst 1989 wurden die ersten MFS-Volumenmodelle veröffentlicht.[4][5]
Heute ist es ein gängiges Verfahren in der Computerspielbranche und in der Medizin[1] zur Simulation operativer Eingriffe.
In einem Masse-Feder-System werden Objekte durch ein Netz aus Masseknoten, mechanischen Federn und Dämpfungsgliedern dargestellt.[2][6]
Die Knoten eines Polygonnetzes bekommen jeweils eine Masse. Die Kanten werden durch eine mechanische Feder, die mit einem Dämpfungsglied parallel geschaltet ist, dargestellt. Somit hat sie eine Federkonstante, eine Ruhelänge und eine Abklingkonstante. Das Dämpfungsglied ist notwendig, wenn das Objekt nach der Deformation nicht schwingen, sondern eine Ruhelage finden soll. In Abhängigkeit von den Masseknoten wird der Reibungskoeffizient errechnet.
Die Masseknoten sind regelmäßig im ganzen Objekt verteilt und stellen es so dar. Zur Verbindung der Masseknoten werden Federn zwischen sie gesetzt. Sind zwei Masseknoten miteinander verbunden, nennt man sie benachbart. Die Ausgangsform des Objekts liegt vor, wenn alle Federn in Ruhelage sind (
Um einer Verschiebung im Raum entgegenzuwirken, können Punkte „befestigt“ werden (an einer absoluten Position oder an einer relativen Position zu einem anderen Massepunkt).[6] Dadurch kann unter anderem eine plastische Deformation erzielt werden.
Das Masse-Feder-System kann, um physikalisches Verhalten realistischer zu machen, um eine Kollisionserkennung ergänzt werden, damit die Massepunkte auf Kollisionen untereinander und auf Kollisionen mit anderen Objekten reagieren können.
In der folgenden Herleitung wird von einem
Masse-Feder-Systeme haben ihren Ursprung in der klassischen Mechanik. Sie basieren auf der Idee, dass ein Körper
Nach dem Hookeschen Gesetz ist das Verhalten einer Feder mit parallelem Dämpfungsglied folgendermaßen definiert:
wobei
Newtons Definition zum Verhalten einer bewegten Masse ist:
Auf Basis dieser letzten beiden Gleichungen kann die Bewegungsgleichung eines einzelnen Masseknotens
Auf den Masseknoten
Die Auslenkung
Das führt zu folgender Kraft, die auf den einzelnen Masseknoten
Die externen Kräfte, die auf den Masseknoten
mit dem Vektor der äußeren Kraft
Fasst man alle auf den Masseknoten
Es gilt
Die Bewegungsgleichung für das gesamte System erhält man, indem man alle Verschiebungen
Die Matrizen