FC_CommonPointsOfParallelogramAndCircle

 

FC_CommonPointsOfParallelogramAndCircle - Allgemeine Informationen

Übersicht

Typ

Funktion

Verfügbar ab:

V1.0.3.0

Versionen:

Aktuelle Version

Aufgabe

Berechnung der Schnittpunkte eines Kreises und eines Parallelogramms im 2-dimensionalen Raum.

Beschreibung

Berechnet die Schnittpunkte des Kreisesi_stCircle und des Parallelogramms i_stParal­lelogram. Gibt es keine Schnittpunkte, so wird zusätzlich geprüft, ob ein Objekt im anderen enthalten ist.

Schnittstelle

Eingang

Datentyp

Beschreibung

i_stParallelogram

ST_Parallelogram

Parallelogramm

i_stCircle

ST_Circle2D

Kreis

Ausgang

Datentyp

Beschreibung

q_etDiag

GD.ET_Diag

Allgemeingültige, bibliotheksunabhängige Aussage zur Diagnose.

Ein Wert ungleich ET_Diag.Ok entspricht einer Diagnosemeldung.

q_etDiagExt

ET_DiagExt

POU-spezifischer, diagnosebezogener Ausgang.

q_etDiag = ET_Diag.Ok -> Statusmeldung

q_etDiag <> ET_Diag.Ok -> Diagnosemeldung

q_diNumberOfCommonPoints

DINT

Anzahl der Schnittpunkte von i_stParallelogram und i_stCircle. Mögliche Werte: 0 ... 8

q_astCommonPoints

ARRAY[1..8] OF ST_Vector2D

Array, das die Schnittpunkte von i_stParallelogram und i_stCircle enthält (nur die ersten q_diNumberOfCommonPoints Einträge sind gültig).

Diagnosemeldungen

q_etDiag

q_etDiagExt

Enumerationswert

Beschreibung

OK

CircleInsideParallelogram

50

Der Kreis liegt innerhalb des Parallelogramms.

OK

Ok

0

OK

OK

ParallelogramInsideCircle

51

Das Parallelogramm liegt im Kreis.

InputParameterInvalid

DefinitionParallelogram

37

Die Definition von Parallelogram ist nicht korrekt.

InputParameterInvalid

RadiusRangeCircle

26

Der Radius des Kreises ist außerhalb des gültigen Bereichs.

UnexpectedProgramBehavior

UnexpectedFeedback

1

Es ist ein unbeabsichtigter Fehler während der Ausführung aufgetreten.

CircleInsideParallelogram

Enumerationsname:

CircleInsideParallelogram

Enumerationswert:

50

Beschreibung:

Der Kreis liegt innerhalb des Parallelogramms.

Es wurden keine Schnittpunkte berechnet, da sich der Kreis vollständig innerhalb des Parallelograms befindet.

DefinitionParallelogram

Enumerationsname:

DefinitionParallelogram

Enumerationswert:

37

Beschreibung:

Die Definition von Parallelogram ist nicht korrekt.

Problem

Ursache

Lösung

-

Am Eingang i_stParallelogram.stSpanPoint1 und i_stParallelogram.stBasePoint wurde der gleiche Punkt übergeben.

Der Abstand zwischen i_stParallelogram.stSpanPoint1 und i_stParallelogram.stBasePoint muss mindestens Gc_lrZeroTolerance betragen.

-

Am Eingang i_stParallelogram.stSpanPoint2 und i_stParallelogram.stBasePoint wurde der gleiche Punkt übergeben.

Der Abstand zwischen i_stParallelogram.stSpanPoint2 und i_stParallelogram.stBasePoint muss mindestens Gc_lrZeroTolerance betragen.

Ok

Enumerationsname:

Ok

Enumerationswert:

0

Beschreibung:

OK

Die Schnittpunkte wurde erfolgreich berechnet.

ParallelogramInsideCircle

Enumerationsname:

ParallelogramInsideCircle

Enumerationswert:

51

Beschreibung:

Das Parallelogramm liegt im Kreis.

Es wurden keine Schnittpunkte berechnet, da sich das Parallelogramm vollständig innerhalb des Kreises befindet.

RadiusRangeCircle

Enumerationsname:

RadiusRangeCircle

Enumerationswert:

26

Beschreibung:

Der Radius des Kreises ist außerhalb des gültigen Bereichs.

Problem

Ursache

Lösung

-

Am Eingang i_stCircle.lrRadius wurde eine Zahl <= 0 übergeben.

Der Kreis muss einen Radius größer null haben.

UnexpectedFeedback

Enumerationsname:

UnexpectedFeedback

Enumerationswert:

1

Beschreibung:

Es ist ein unbeabsichtigter Fehler während der Ausführung aufgetreten.

Problem

Ursache

Lösung

-

Es ist ein Fehler in der internen Abarbeitung aufgetreten.

Bitte informieren Sie das Supportteam über diesen Fehler.