Kleines oder großes Kreissegment?

Neue Frage »

Romeo 2.0 Auf diesen Beitrag antworten »
Kleines oder großes Kreissegment?
Meine Frage:
Hallo ich schreibe gerade ein Makro für ein CAD Programm und stehe vor einem Problem (für mich :-) )

Wie im Screenshoot zu sehen, rechne bei einem Kreissegment die Bogenlängen
für das kleine Kreissegment und das große Kreissegment aus.
Soweit keine Hürde.

Nun habe ich in meinem CAD Programm gegeben:

Startpunkt
Endpunkt
Mittelpunkt
Drehrichtung

Mit diesen Info´s Muss ich Feststellen, ob es sich bei der CAD-Kontur um das kleine oder das große Kreissegment handelt.

Ich habe keine Ahnung wie ich das anstellen könnte.

Meine Ideen:
Hätte ich einen Ansatz würde ich hier nicht als Bittsteller ankommen ;-)
HAL 9000 Auf diesen Beitrag antworten »

Wenn du sagst, dass du die drei Punkte "gegeben" hast, dann bedeutet das was: Die Punktkoordinaten? verwirrt

Weil in dem Eingabefeld oben sind mitnichten die Punkte gegeben, sondern nur Sehnenlänge und Radius, was natürlich unzureichend wäre, deine Frage zu beantworten.
Romeo 2.0 Auf diesen Beitrag antworten »

Ja genau X und Y für die genannten Punkte!

Das Bild im Hintergrund war nur ne Internetseite,
aus der ich mir alle nötigen Formeln für die Bogenlänge gesucht habe.

Ich habe quasi nur das Bild mit dem Kreis zum veranschaulichen genutzt.
HAL 9000 Auf diesen Beitrag antworten »

Bei mathematisch positiver Drehrichtung (d.h. so wie in deinem Bild) und die Koordinaten als komplexe Zahlen aufgefasst gilt mit Kreissektorwinkel im Intervall .

Wenn du nicht am genauen Winkel, sondern nur daran interessiert bist, ob (kleines Segment) oder (großes Segment) ist, dann musst du dir nur das Vorzeichen des Imaginärteils anschauen:

bedeutet kleines Segment, großes Segment. In dem Fall musst du auch nicht den kompletten komplexen Quotienten ausrechnen, es genügt dann der Imaginärteil des Zählers



und dann dessen Vorzeichen.


Bei negativer Drehrichtung vertausche Start- und Endpunkt und verwende die obige Betrachtung.
Romeo 2.0 Auf diesen Beitrag antworten »

Wow ... wie in der Schule früher .... als wenns ne andere Sprache wäre LOL Hammer

Wenn ich es richtig verstanden habe bedeuetet das ich rechne:

(ey-my) * (sx-mx) - (ex-mx) * (sy-my) = Mein_Vergleichswert


und schreibe dann:

If Mein_Vergleichswert > 0 Then
kleines Segment
Else
großes Segment
End if

-------------
m --> Mittelpunkt
s --> Startpunkt
e --> Endpunkt


ist das so korrekt?
HAL 9000 Auf diesen Beitrag antworten »

Ja, genau so ist es gemeint.
 
 
Romeo 2.0 Auf diesen Beitrag antworten »

Vielen Dank ... hat super funktioniert!
Gott
Neue Frage »
Antworten »



Verwandte Themen

Die Beliebtesten »
Die Größten »
Die Neuesten »