Übersetzung von Toplogical Data Scripting

In diesem Forum Fragen und Diskussionen in Deutsch
Forum rules
Foren-Regeln und hilfreiche Informationen

WICHTIG: Bitte zuerst lesen, bevor Sie posten
User avatar
bernd
Veteran
Posts: 12851
Joined: Sun Sep 08, 2013 8:07 pm
Location: Zürich, Switzerland
Contact:

Übersetzung von Toplogical Data Scripting

Post by bernd »

Hallo Zusammen,

ich würde mich gerne mal an der Übersetzung der folgenden Wiki - Seite versuchen.

http://freecadweb.org/wiki/index.php?ti ... _scripting

Warum? Nun weil ich selber mit dem Abschnitt Topologie (http://freecadweb.org/wiki/index.php?ti ... g#Topology) Probleme bei der Übersetzung habe und einfach nicht alles richtig verstehe, und eventuell bin ich ja nicht der Einzige. Das sind aber nun mal die Basics von FreeCAD. Da hier einige Cracks auf deutsch (inclusive Hautentwickler Werner und Jürgen und beitragende Entwickler) unterwegs sind, wollte ich hier kurz um Hilfe bitten. Ich mache einfach einen Vorschlag anbei und denke da wird von ganz alleine einiges an Kritik aufkommen ;-). Ich habe Topologie so übersetzt auch wenn ich trotz Lesen auf Wikipedia nichts greifbares mit dem Begriff anfangen kann. In Klammern hab ich meine eigenen Kommentare gesetzt. Ich habe um Missverständnisse vorzubeugen die englischen topologischen Datentypen belassen. Sollen die durch deutsche erstetzt werden?

Geometrie
Die Geometrischen Objekte sind die Basiskomponenten von allen Topologischen Objekten.

- Geom Basisklasse der Geometrischen Objekte.

- Line Eine gerade Linie im 3D, definiert durch einen Start- und einen Endpunkt.

- Kreis Ein Kreis oder ein Kreissegment definiert durch einen Mittelpunkt und einen Start- und Endpunkt.

- ...… Bald werden noch einige folgen ;-)


Topologie

Die folgenden topologischen Datentypen gibt es:

- Compound Eine Gruppe jeglichen topologischen Datentyps.

- Compsolid Ein composite solid ist eine Zusammensetzung aus solids die durch ihre faces verbunden sind. Es erweitert die Notation (oder Bezeichnung) von wire und shell zu solids. (Zusammengesetzter Körper)

- Solid Ein solid ist ein räumliches Gebilde begrenzt durch shells. Es ist dreidimensional. (Grundkörper)

- Shell Eine Zusammensetzung von faces die durch ihre edges verbunden sind. Ein shell kann offen oder geschlossen sein. (Oberfläche)

- Face Im 2D ist es ein Teil einer Ebene. Im 3D ist es ein Teil einer Oberfläche. Seine Geometrie ist begrenzt durch Aussenlinien (seine Kontur). Es ist zweidimensional. (Ein Face ist im 3D eben?!)

- Wire Eine Zusammensetzung von edges die durch ihre vertices verbunden sind. Es kann einen offenen oder geschlossenen Umriss haben, je nach dem ob die edges untereinander verbunden sind oder nicht. (Im 2D ist es ein Polygonzug (Polylinie)). (Geschlossen ist es eine Kontur) (Kann ein Wire auch Kreissegmente beinhalten? Ist dann ein B-Spline ein Wire? Dann wäre es sicher kein Polygonzug?)

- Edge Ein topologisches Element welches einer Linie (Kante) entspricht. Ein edge ist grundsätzlich begrenzt durch vertices. Es ist eindimensional. (Im 2D ist es eine Linie.) (Hat ein Zylinder nicht eine Kande, die ein Kreis ist und was ist mit einer Kugel, hat die keine Edges?)

- Vertex Ein topologisches Element, welches einem Punkt entspricht. Es hat keine Dimension.

- Shape Ein allgemeiner Begriff der alle oben genannten Datentypen umfassen kann.

gruss bernd
wmayer
Founder
Posts: 20309
Joined: Thu Feb 19, 2009 10:32 am
Contact:

Re: Übersetzung von Toplogical Data Scripting

Post by wmayer »

Kreis Ein Kreis oder ein Kreissegment definiert durch einen Mittelpunkt und einen Start- und Endpunkt.
Eigentlich ist die Geometrie immer ein Vollkreis. Ein Kreissegment kann man dann erzeugen, wenn man bei der Erzeugung der entspr. Edge nicht den vollen Parameterbereich nimmt (hier: [0, 2*PI]).
- Solid Ein solid ist ein räumliches Gebilde begrenzt durch shells. Es ist dreidimensional. (Grundkörper)
Vielleicht sollte man noch erwähnen, dass ein Solid vollständig geschlossen ist.
(Ein Face ist im 3D eben?!)
Nein! Zum Beispiel Mantelfläche eines Zylinders oder Kegels, B-Spline-Flächen, usw. Im Original wird 2D und 3D besonders behandelt. Natürlich kann im R^2 ein Face nur eine (begrenzte) Ebene beschreiben, was denn sonst? Da FreeCAD ohnehin ein rein 3D-CAD-Programm ist, würde ich die Unterscheidung zwischen 2D und 3D weglassen.
(Im 2D ist es ein Polygonzug (Polylinie)).
Es kann einer sein, muss aber nicht. Also: falsch
Kann ein Wire auch Kreissegmente beinhalten?
Ja.
Ist dann ein B-Spline ein Wire?
Nein. Eine B-Spline-Kurve ist eine Geometrie. Man kann daraus eine Edge erzeugen und aus einer Edge wiederum ein Wire (bestehend nur aus dieser Edge).
Ein topologisches Element welches einer Linie (Kante) entspricht.
Der Begriff "Kurve" ist m.E. angemessener.
Hat ein Zylinder nicht eine Kande, die ein Kreis ist
Exakt.
und was ist mit einer Kugel, hat die keine Edges?
Es gibt wohl CAD-Kerne, die die Fläche einer Vollkugel ohne Edge beschreiben können. In OpenCascade muss ein Face immer mindestens eine Edge haben. In diesem Beispiel beschreibt die Edge einen Halbkreis.
User avatar
bernd
Veteran
Posts: 12851
Joined: Sun Sep 08, 2013 8:07 pm
Location: Zürich, Switzerland
Contact:

Re: Übersetzung von Toplogical Data Scripting

Post by bernd »

Vielen vielen Dank Werner für die Verbesserungen. Ich blicke etwas mehr durch. Ein zweiter Versuch mit weiteren Aussagen. Wo hab ich Falschaussagen eingebaut??

Ich würde die Übersetzung nicht wort für wort vornehmen sondern vor allem versuchen den Sinn verständlich zu erläutern. Auf jeden Fall halte ich mich an die Abschnittsunterteilungen. Die Topologie würde ich logischerweise mit vertex anfangen und mit compound aufhören. Ist ja sonst blöd etwas zu definieren, wenn etwas anderes noch gar nicht definiert ist. Was meint Ihr?


Neue Aussagen:

- Ein edge kann eine ganz wilde gebogene Kurve sein. Ein Edge hat entweder keinen (bsp kreis) vertex oder genau zwei vertexe. Wird ein weiterer vertex eingefügt ist es ein wire.
- Sobald ein edge ein Knick hat ist es ein wire.
- Ein face ist immer begrenzt durch edges (das können doch auch wires sein?).
- Sobald ein face ein knick hat ist es ein shell.
- Ist die Oberfläche eines Torus ein face?
- Alle faces eines Solids bilden seine shell.
- Ein solid hat genau eine geschlossene shell, wobei zwei seitenflächen eines würfels bilden ja auch schon ein shell?
- Ein Würfel, bei dem ein face fehlt ist kein solid, sodern eine offene shell.

Geometrie
Die Geometrischen Objekte sind die Basiskomponenten von allen Topologischen Objekten.

- Geom Basisklasse der Geometrischen Objekte.

- Line Eine gerade Linie im 3D, definiert durch einen Start- und einen Endpunkt.

- Kreis Ein Kreis definiert durch seinen Mittelpunkt. Ein Kreissegment wird definiert in dem ein Kreis nur in einem Teil seines Parameterbereich ([0, 2*PI]) definiert wird.

- B-Spline ?

- ...… Bald werden noch einige folgen ;-)


Topologie

Die folgenden topologischen Datentypen gibt es:

- Vertex Ein topologisches Element, welches einem Punkt entspricht. Es hat keine Dimension.

- Edge Ein topologisches Element welches einer Kurve entspricht. Ein edge ist grundsätzlich begrenzt durch vertices. Es ist eindimensional.

- Wire Eine Zusammensetzung von edges die durch ihre vertices verbunden sind. Es kann einen offenen oder geschlossenen Umriss haben, je nach dem ob die edges untereinander verbunden sind oder nicht.

- Face Ein topologisches Element welches einer Fläche entspricht. Seine Geometrie ist begrenzt durch seine Kontur. Ein face ist ein Teil einer Oberfläche. Es ist zweidimensional. Beispiele wären eine Seitenfläche eines Würfels oder die Bodenfläche eines Kegels. Die Mantelfläche eines Kegels oder Zylinders sind auch faces. Die Oberfläche einer Vollkugel ist ein face.

- Shell Eine Zusammensetzung von faces die durch ihre edges verbunden sind. Ein shell kann offen oder geschlossen sein. Ein shell ist eine Oberfläche. Beispiele wären die Oberfläche eines Würfels oder eines Zylinders.

- Solid Ein solid ist ein räumliches Gebilde begrenzt durch shells. Es ist dreidimensional. Ein solid ist ein vollständig geschlossener Körper. Beispiele wären ein Zylinder, Würfel oder eine Kugel.

- Compsolid Ein composite solid ist eine Zusammensetzung von solids die durch ihre faces verbunden sind. Es erweitert die Notation von wire und shell zu solids. Ein solid ist ein zusammengesetzter Körper.

- Compound Eine Gruppe jeglichen topologischen Datentyps.

- Shape Ein allgemeiner Begriff der alle oben genannten Datentypen umfassen kann.


Was hab ich mir da ausgedacht ... Ich muss für heute aufhören, in meinem Kopf dehen sich kegelstumpfe und pyramiden herum ... Naja ich brauch das aber, ich will Massenberechnungen an Gebäudemodellen machen. Bei meinen ersten Versuchen hab ich gemerkt, dass ich genau obige Definitionen die Grundlage bilden. Je mehr ich durchblicke um so mehr bin ich davon überzeugt, dass FreeCAD mit Python das richtige Werkzeug dafür ist, aber umso komplexer wird die Materie.

gruss bernd
wmayer
Founder
Posts: 20309
Joined: Thu Feb 19, 2009 10:32 am
Contact:

Re: Übersetzung von Toplogical Data Scripting

Post by wmayer »

Ich würde die Übersetzung nicht wort für wort vornehmen sondern vor allem versuchen den Sinn verständlich zu erläutern. Auf jeden Fall halte ich mich an die Abschnittsunterteilungen. Die Topologie würde ich logischerweise mit vertex anfangen und mit compound aufhören. Ist ja sonst blöd etwas zu definieren, wenn etwas anderes noch gar nicht definiert ist. Was meint Ihr?
Genau das war mir auch aufgefallen.
- Ein edge kann eine ganz wilde gebogene Kurve sein. Ein Edge hat entweder keinen (bsp kreis) vertex oder genau zwei vertexe. Wird ein weiterer vertex eingefügt ist es ein wire.
Ich denke "hat" passt besser als "ist". Also: "Ein Edge kann eine ganz wilde gebogene Kurve haben." Analog zu Face hat eine Edge auch immer mindestens einen Vertex, auch ein Vollkreis.
- Sobald ein edge ein Knick hat ist es ein wire.
Hm, ist eine etwas komische Aussage. Eine Edge kann in diesem Zusammenhang keinen Knick haben. Eigentlich ist es ganz einfach. Ein Wire besteht immer aus mehreren zusammenhängenden Edges. Fertig!
- Ein face ist immer begrenzt durch edges (das können doch auch wires sein?).
So gesehen wird ein Face durch Wires begrenzt (die ja aber aus Edges bestehen).
- Ist die Oberfläche eines Torus ein face?
Torus ist eine Geometrie. Aber das entsprechende Shape-Objekt ist sogar ein Solid.
- Alle faces eines Solids bilden seine shell.
Ja.
Ein solid hat genau eine geschlossene shell, wobei zwei seitenflächen eines würfels bilden ja auch schon ein shell?
Ja und Ja. Nur um irgendwelche Missverständnissen vorzubeugen. Zwei verbundene Seitenflächen bilden zwar eine Shell, aber noch kein Solid. Erst der ganze Würfel bildet ein Solid.
- Ein Würfel, bei dem ein face fehlt ist kein solid, sodern eine offene shell.
Wobei dann ist es auch kein Würfel, aber stimmt schon.
Die Geometrischen Objekte sind die Basiskomponenten von allen Topologischen Objekten.
Also die topologischen Objekte Vertex, Edge und Face entsprechen einer Geometrie. Die anderen Objekte Wire, Shell, Solid, Compound sind rein topologische Objekte.
User avatar
bernd
Veteran
Posts: 12851
Joined: Sun Sep 08, 2013 8:07 pm
Location: Zürich, Switzerland
Contact:

Re: Übersetzung von Toplogical Data Scripting

Post by bernd »

Guten Morgen Zusammen,

nochmals vielen Dank Werner, so langsam komme ich den shapes auf die Schliche. :-) Der Abschnitt neue Aussagen war nur für mein Verständnis und nicht für die Übersetzung gedacht. Wenn mans verstanden hat ist es einfach, weil logisch aufeinander aufgebaut. Ich bin heute bis spät abends belegt, und hoffe aber morgen das ganze nochmal zu einer dritten Version zusammenzubringen, die dann ja evtl. schon brauchbar fürs Wiki ist.

gruss bernd.
User avatar
shoogen
Veteran
Posts: 2823
Joined: Thu Dec 01, 2011 5:24 pm

Re: Übersetzung von Toplogical Data Scripting

Post by shoogen »

wmayer wrote:
- Sobald ein edge ein Knick hat ist es ein wire.
Hm, ist eine etwas komische Aussage. Eine Edge kann in diesem Zusammenhang keinen Knick haben. Eigentlich ist es ganz einfach. Ein Wire besteht immer aus mehreren zusammenhängenden Edges. Fertig!
Ein Wire kann auch aus einem Edge bestehen.
Das Wort Knick würde ich hier ganz vermeiden. Eine BSpline kann an Punkte mit C0 Übergängen haben.
Anderseits kann der Übergang von Liniensegment zum Kreissegment die gleiche Tangente haben.
wmayer
Founder
Posts: 20309
Joined: Thu Feb 19, 2009 10:32 am
Contact:

Re: Übersetzung von Toplogical Data Scripting

Post by wmayer »

Ein Wire kann auch aus einem Edge bestehen.
Richtig, das habe ich oben aber auch schon gesagt. Also: Ein Wire besteht immer aus einer oder mehreren zusammenhängenden Edges.
Das Wort Knick würde ich hier ganz vermeiden. Eine BSpline kann an Punkte mit C0 Übergängen haben.
Ja, aber worauf Bernd hinaus wollte ist, dass wenn an dem "Knickpunkt" ein Vertex ist, kann es nur ein Wire sein. Aber es ist schon richtig, wenn eine BSpine-Kurve vom Grad eins ist, dann fällt sie mit ihrem Kontrollpolygon zusammen und kann daher als Edge Knicke haben.

Code: Select all

import Part
p=[App.Vector(0,0,0),App.Vector(10,0,0),App.Vector(10,10,0),App.Vector(0,10,0)]
s=Part.BSplineCurve()
s.buildFromPoles(p,False,1)
Part.show(s.toShape())
User avatar
bernd
Veteran
Posts: 12851
Joined: Sun Sep 08, 2013 8:07 pm
Location: Zürich, Switzerland
Contact:

Re: Übersetzung von Toplogical Data Scripting

Post by bernd »

Nur kurz, genau Werner, du hast das mit dem "Knick" und dem vertex vollkommen richtig erkannt. Wird nicht in der Übersetzung vorkommen. Danke für den Tip mit den B-Splines. Spline mit Ecke, :D Ihr seid einfach so cool. :)

Wenn ein wire aus einem edge bestehen kann, kann sicher auch eine shell auch nur aus einem face bestehen.

Woher weiss ich ob es ein edge oder ein wire ist resp. eine shell oder face? Habe gerade ein wenig mit körpern in freecad gespielt. Lässt sich das in der gui irgendwo erfahren?

Genauso wie ein edge der ein vollkreis ist, immer ein vertex hat, hat ein face, der eine Mantelfläche eines zylinders ist immer ein face mit zwei vertexen.

(WB Draft) Ein regelmässiges Polygon und ein Zweipunktrechteck sind demzufolge wire. Eine ellipse ist ein edge. Mehrpunktentwurfsdraht ist ja mal ne coole Übersetzung. Glaube so ein Gebilde lässt sich wohl mit keiner anderen sprache zusammenbauen :lol: . Hab mein FreeCAD sonst immer nur in englisch. Das wort ist so cool, da ist selber google vollkommen sprachlos, das muss man erst mal schaffen.

Eins noch, ich hab im deutschen forum ein wenig herumgelesen und auch in der kleinen disskusion hier schon gemerkt, die begriffe vertex, edge, wire, face, shell, solid, ... bleiben des besseren Verständis wegen englisch. Das hab ich bisher so gemacht und werde das auch so bei der Übersetzung machen.

Das wars für heute, hoffentlich morgen mit mehr zeit und mal ein ergebnis. Bernd

EDIT: Ich vote dafür den Begriff Mehrpunktentwurfsdraht so zu belassen!
wmayer
Founder
Posts: 20309
Joined: Thu Feb 19, 2009 10:32 am
Contact:

Re: Übersetzung von Toplogical Data Scripting

Post by wmayer »

Woher weiss ich ob es ein edge oder ein wire ist resp. eine shell oder face? Habe gerade ein wenig mit körpern in freecad gespielt. Lässt sich das in der gui irgendwo erfahren?
In der GUI gibt es noch keine solche Möglichkeit, jedoch über Python schon. Ein Shape-Objekt hat das Attribut "ShapeType", dass dann den entsprechenden Typ zurückliefert.
User avatar
bernd
Veteran
Posts: 12851
Joined: Sun Sep 08, 2013 8:07 pm
Location: Zürich, Switzerland
Contact:

Re: Übersetzung von Toplogical Data Scripting

Post by bernd »

wmayer wrote:... Ein Shape-Objekt hat das Attribut "ShapeType", dass dann den entsprechenden Typ zurückliefert.
Danke

Sobald ein DWire geschlossen ist, dann ist der shape typ face. Ist das allgemein gültig? Gilt das auch für eine shell? Sobald eine Shell ein "LuftVolumen" vollständig umschliesst wird es als solid erkannt?
Post Reply