abbrechen
Suchergebnisse werden angezeigt für 
Stattdessen suchen nach 
Meintest du: 
abbrechen
Suchergebnisse werden angezeigt für 
Stattdessen suchen nach 
Meintest du: 

Wir schätzen Ihren Input!
Bitte nehmen Sie an der Umfrage zu Archicad 28 Startbildschirm und Lerninhalte/Schnell-Tutorials teil

Programmierung
Alles über Programmierung in GDL und Python

Bogenlänge/ Umfang Poly2

Anonymous
Nicht anwendbar
Habe ein Objekt geschrieben welches einen Bogen von A nach B darstellt dessen Tangente ich mittels einen Hotspot M (immer auf der Bogenlinie) definieren kann.

Die Idee ist das Objekt wie das Bogenwerkzeug verwenden zu können wo man die Linie von A nach B zeichnet und dann mittels einen Punkt auf der Linie den Bogen definiert.

Jetzt würde mich aber die Länge des Bogens welcher entsteht interessieren. Gibt es Ideen wie ich das ausrechen oder Abfragen kann.

Ein eleganterer Weg für den Bogen wäre auch schön. Oder zumindes auch die Möglichkeit den Hotspot nur orthogonal zum Vektor AB verschieben zu können.

Code:
T1=AB1
T2=AB2

!Bogen zu von M zu B
PEN 39
POLY2_B 5,3,10,10,
M1,M2, 1,
T1,T2, 800, !Setzt Tangente
B1,B2, 1000,
AB1/2,AB2/2, 0,
M1,M2, -1
! Bogen zu M zu A
POLY2_B 5,3,10,10,
M1,M2, 1,
-T1,-T2, 800, !Setzt Tangente
A1,A2, 1000,
AB1/2,AB2/2, 0,
M1,M2, -1
8 ANTWORTEN 8
Hmooslechner
Moderator
Bogenlänge = Umfang / 360 mal Winkelgrade des Bogens. Das musst Du rausbekommen.
AC5.5-AC27EduAut, PC-Win10, MacbookAirM1, MacbookM1Max, Win-I7+Nvidia
Anonymous
Nicht anwendbar
"hmooslechner" wrote:
Bogenlänge = Umfang / 360 mal Winkelgrade des Bogens. Das musst Du rausbekommen.


Danke, das geht aber so leicht nicht. Wenn überhaupt.
Für den Umfang des Kreises brauche ich den Radius. Also die Normalen auf 2 Tangenten des Bogens kreuzen (wie soll ich im GDL eine Geradengleichung aufstellen?) um den Mittelpunkt herauszufinden. Und ich weiß nur eine Tangente. Wenn ich irgendwie eine 2. Tangente finde muß ich noch den Bogenwinkel herausfinden. Nachdem ich aber nicht sicherstellen kann, daß der Hotspot am Bogen zum Mittelpunkt von AB im rechten Winkel ist brauche ich zumindest einen weiteren bekannten winkel um sin/cos/tan verwenden zu können. Da wäre es noch einfacher wenn man den Umfang der Poly-Form weiß. Dann bräuchte ich "Nur" alle Geraden vom Umfang abziehen....

So komme ich also nicht weiter 😉
Hmooslechner
Moderator
Dein fertiger Bogen ist ein Kreis-Abschnitt durch 3 Punkte definiert. Du kannst an Jedem Deiner 3 Punkte einen Radius reinzeichnen, der rechtwinkelig zur Tangente nach innen geht und sich im selben Mittelpunkt trifft - mit dem selben Radius - was immer 2 Dreiecke ergibt. Damit müsste man doch was machen können. Stell mal ein fertiges GDL rein, dann ists leichter für mich nachzuvollziehen - oder eine Zeichnung - Bild
AC5.5-AC27EduAut, PC-Win10, MacbookAirM1, MacbookM1Max, Win-I7+Nvidia
Anonymous
Nicht anwendbar
Hmooslechner
Moderator
Hat funktioniert - musste im eigentlichen Element nur dir Tabellenfunktion ausschalten, dann sah ich es.


Du machst eigentlich 2 aneinanderfolgende Bögen - keinen Kreisbogen mit 3 Punkten. Deine Bögen stoßen tangential aneinander und sind deshalb voneinander abhängig.

Gemeinsam haben die beiden Bögen im Anschlusspunkt IMMER, dass die beiden Radien in die gleiche Richtung zeigt, also die Mittelpunkte der Kreise immer an einer gemeinsamen Linie liegt.

Die Mittelpunkte beider Kreisbögen liegen auch jeweils im rechten Winkel zum Mittelpunkt der jeweiligen Sehne.

Man muss also die Schnittpunkte der Sehnen-Normalen mit der Tangenten-Normalen ermitteln. Dann kennt man die Mittelpunkte. USW.
AC5.5-AC27EduAut, PC-Win10, MacbookAirM1, MacbookM1Max, Win-I7+Nvidia
Hmooslechner
Moderator
Nun habe ich ein Demo durchprogrammiert, weil es mich interessiert hat und es funktioniert (fast) immer:

Kurzbeschreibung:
3-Punkte-Bogen: "Zu Fuß gerechnet"

Es geht von den 3 Koordinaten aus.
Dann konstruiert es die Mitten-Normalen auf die 2 Bogen-Sehnen.
Dann errechnet es sich die Winkelhalbierende.
Dann werden die beiden Schnittpunkte der beiden Mitten-Normalen und der Winkelhalbierenden errechnet = Mittelpunkte der Bögen.

Dann werden die Winkel von den beiden Mittelpunkten zu den 3 Ausganspunkten errechnet, damit ergeben sich die Bogen-Mittenwinkel und damit kann man die Bogenlängen errechnen.

Ac24 Edu Aut -Version:
https://www.dropbox.com/s/74lev44iztr1xca/3-Punkte-Kreis.pln?dl=0



AC5.5-AC27EduAut, PC-Win10, MacbookAirM1, MacbookM1Max, Win-I7+Nvidia
Hmooslechner
Moderator
Habs mal weitergedacht:

Wenn man noch die Winkelhalbierende ändern könnte, wäre das auch sicherlich sinnvoll:

AC24Edu:
https://www.dropbox.com/s/fekiwcuh85jm9ml/3-Punkte-Kreis1.pln?dl=0

https://www.youtube.com/watch?v=810u-R4Sxnw



AC5.5-AC27EduAut, PC-Win10, MacbookAirM1, MacbookM1Max, Win-I7+Nvidia
Anonymous
Nicht anwendbar
Ich danke dir, das ist super 😄