Kreis = Vieleck gehts auch anders?
-
Ich persönlich glaube nicht daran, dass eine Fläche sich an ihre Kreishaftigkeit erinnern kann Einfach durch folgendes Experiment:
- einen Kreis erstellen
- dann eine normale Fläche erstellen
- durch bloßes Drüberfahren über den Kreis versuchen, den Kreismittelpunkt zu ermitteln - ging bei mir nicht
Sicherlich kommt man mit Hilfsmitteln immer wieder an den Kreismittelpunkt. Aber stell dir mal vor, du hast ein Modell mit 1000 Flächen und 287 davon sind mit dem Kreistool erstellt worden. Manche mit 50, manche aber auch nur mit 4 oder 3 Eckpunkten. Wie soll man in Ruby dann ermitteln, welche Fläche mal ein Kreis war, welche ein Vieleck, welche ein Dreieck ... Das geht dann nur über eine Festlegung/Konvention, wie oben beschrieben (mit den Winkeln).
azuby
-
aber wenn ich einen kreis erstelle, und dann nur die kreiskante anklicke, dann sagt er mir doch in den elementinfos, dass es ein kreis (und wohlgemerkt nichts anderes) ist... also merkt SU sich doch die kreishaftigkeit, oder nicht?
-
@eeva said:
aber wenn ich einen kreis erstelle, und dann nur die kreiskante anklicke, dann sagt er mir doch in den elementinfos, dass es ein kreis (und wohlgemerkt nichts anderes) ist... also merkt SU sich doch die kreishaftigkeit, oder nicht?
Ah cool, ein Aufhänger. Wenn ich einen Kreis in Sketchup zeichne und dann mit Ruby in der Konsole ausgeben lasse, dann sieht das erstmal so aus:Sketchup.active_model.entities.each do |e| puts e.class end Sketchup;;Edge Sketchup;;Edge Sketchup;;Edge Sketchup;;Edge Sketchup;;Edge Sketchup;;Edge Sketchup;;Edge Sketchup;;Edge Sketchup;;Edge Sketchup;;Edge Sketchup;;Edge Sketchup;;Edge Sketchup;;Edge Sketchup;;Edge Sketchup;;Edge Sketchup;;Edge Sketchup;;Edge Sketchup;;Edge Sketchup;;Edge Sketchup;;Edge Sketchup;;Edge Sketchup;;Edge Sketchup;;Edge Sketchup;;Edge Sketchup;;Face
Also nur Kanten und eine Fläche. Allerdings fand ich gerade die Methode Edge#curve, die mir erzählt, ob die Kante zu einer "Kurve" gehört. Das Kreishaftige ist also nicht an die Fläche gebunden, sondern an die Kante(n) der Fläche. Dann wird es natürlich einfach: Man hat also alle Einzelteile der Kurve (siehe Curve-Klasse) und muss nun nur noch alle Flächen des Modells durchgehen und prüfen, ob ihre Kanten mit denen der Kurve übereinstimmen.
Hier allerdings noch eine Überlegung dazu: Kann man nicht auch Kurven zeichnen, die keinen Kreis beschreiben, sondern entweder frei sind oder z.B. sowas wie eine 8 beschreiben (oder einen Schneemann, ganz nach Belieben)? Ihr seht schon, im Anwenden von Sketchup bin ich eine Null , ich schmeiß lieber den Schraubenschlüssel ins Getriebe
azuby
-
Hallo Azuby
- einen Kreis erstellen
- dann eine normale Fläche erstellen
- durch bloßes Drüberfahren über den Kreis versuchen, den Kreismittelpunkt zu ermitteln - ging bei mir nicht
Geht bei mir schon,Ich hab auch noch nach das erstellen von die Flächen erst mahl Sketchup beëndet und wider hochgefahren und dan ehrts bemast und den Mittelpunkt erfast um eine Linië zur erstellen vom Mittelpunkt.
Gruss Bep
-
Hihi, ich scheine dafür irgendwie zu doof zu sein Ich habe das Linienwerkzeug gewählt und dann bin ich damit über die Fläche deines Modells gefahren, die die Beschriftung "Linie von mittelpunkt" trägt. Das Werkzeug ist aber nirgends eingeschnappt. Irgendwann später, während ich hier an diesem Forumsbeitrag geschrieben habe, schnappte das Werkzeug dann doch am Mittelpunkt ein. Manchmal scheint das nur zu gehen, wenn ich vorher über dem Mittelpunkt einer Kante ruhe ... Sehr mystisch. Ich gucke mal morgen oder übermorgen, ob auch an der Fläche irgendwo ein Vermerk zu finden ist, dass es sich um eine Fläche handelt, von der man einen Mittelpunkt ermitteln kann. Mag ja sein, dass Sketchup das quasi bei der Mausbewegung live errechnet.
Ich geh jetzt aber besser erstmal schlafen, war ein stressiger Tag mit Gericht, Presseartikel, Drucksachenerzeugung, Programmierung, Website-Pflege, Briefverkehr, Einkauf, Foren-Moderierung ... selbst der Kaffee neben mir bringt's nimmer.
azuby
-
Guten Nacht ,Schlaf gut.
Bep
-
erst mal danke an alle für eure Antworten werde das alles mal durchprobieren, vielleicht kommen wir so weiter Aber der Kreismittelpunkt ist hier eigentlich wenigiger das Problem, den kann man finden (z.B. durch rechte Maus Punkt am Mittelpunkt)Das Problem lag im Exportieren eben diesen Kreises in ein anders Zeichenprogramm im Format DWG/DXF.
@eeva, ja klar ist es wenn ich in SU auf den Umfang klicke und dann Elementinformationen noch ein Kreis. Das Problem entsteht erst beim Exportieren in ein anderes Program im DWG/DXF Format. Hier wird dann nämlich kein "normaler" Kreis mehr angezeigt sondern viele einzelne Polygone, was sich in der Weiterverarbeitung eben als ungeschickt herausgestellt hat. Deshalb dachte ich es gäbe vielleicht eine Möglichkeit mittels Zusatzprogramm z.B. dies irgendwo anders einzustellen.
-
@dancingqueen said:
Gibt es eine Möglichkeit in SU einen Kreis zu zeichnen so das es auch "wirklich" ein Kreis ist und auch nach dem Exportieren bleibt?
nein, da SU ein Gitternetz (aka Mesh) basierter Modellierer ist und gar keinen "echten" Kreis sondern nur Polygone erstellen und somit auch nur exportieren kann.
"echte" Kreise/Ellipsen oder Kurven/Splines (oder Volumen) gibt es also nicht, für 2D Zeichnungen oder exakte 3D Modelle brauchts andere Tools.
@dancingqueen said:
Vielleicht mittels einer Zusatzfunktion...
ja, nennt sich CAD
Norbert
-
Naja Norbert, aber wir hatten jetzt ja schon rausgekriegt, dass die "Kreisigkeit" durchaus auch im Modell vermerkt wird. Ein Exporter braucht ja jetzt nur noch den Mittelpunkt errechnen, der von den Kreis-bildenden Kanten eingeschlossen wird und kann das Element dann anhand dieses Mittelpunktes und des Radius' rausschreiben.
azuby
-
-
Durch die Mehrfachnutzung von Kanten weiß der Kernel auch nicht immer so viel. Ich hab z.B. immer noch nix gefunden, das mir sagt, ob eine Fläche eine Kreisfläche ist, wenn ich mir NICHT ihre Kanten angucke.
Das für DXF/DWG ist eine Anregung meinerseits. Und wie man den Kreis rausschreibt - na du weißt schon - zielformatabhängig. Vorschlag als XML-Struktur:
<circle cx="[float]" cy="[float]" r="[float]" n="[float]" /> <!-- n für die Normale, damit der Kreis auch schräg im Raum liegen kann //-->
oder
<circle cx="[float]" cy="[float]" x="[float]" y="[float]" />
Aber wenn wir schon dabei sind: Weißt du, ob man in Sketchup Kanten zu einer Curve zusammeensetzen kann, sodass sie keinen Kreis bilden, sondern z.B. die Kontoren eines Schneemanns?
azuby
Advertisement