Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  CATIA V5 Programmierung
  Measurable - GetMinimumDistancePoints

Antwort erstellen  Neues Thema erstellen
CAD.de Login | Logout | Profil | Profil bearbeiten | Registrieren | Voreinstellungen | Hilfe | Suchen

Anzeige:

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen nächster neuer Beitrag | nächster älterer Beitrag
Autor Thema:  Measurable - GetMinimumDistancePoints (1922 mal gelesen)
ETCH
Mitglied
Programmierer

Sehen Sie sich das Profil von ETCH an!   Senden Sie eine Private Message an ETCH  Schreiben Sie einen Gästebucheintrag für ETCH

Beiträge: 4
Registriert: 15.07.2013

Win 7 Pro, Catia R19

erstellt am: 11. Mrz. 2014 12:02    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Moin,

ich habe eine Frage bezüglich unvollständige Dokumentation (V5 Automation).

Ich benutze die GetMinimumDistancePoints Methode und bekomme plausible Resultate (Catia Safe Array of Points).

Jedoch ist in der Dokumentation nichts erwähnt wie der Rückgabe-Array augebaut ist...

Mit durchprobieren habe ich festgestellt, dass es sich um ein Array mit 9 Elemente handelt.

Wobei:
- die ersten drei, die X,Y,Z Koordinaten des ERSTEN Punktes (also situiert auf dem zuerst im TheMeasureable referenzierten Objekt) sind.
- und die nächsten drei entsprechend die X,Y,Z Koordinaten des ZWEITEN Punkts (also situiert auf dem Objekt auf dem in die Methode GetMinimumDistancePoints referenziert wird) sind.

Die Methode GetMinimumDistance hat vorbildlich dokumentierten Parameter wie:
Parameters:
oCoordinates
The information of the axis system with respect to the product coordinate system:
oComponents(0) is the X coordinate of the origin of the axis system
oComponents(1) is the Y coordinate of the origin of the axis system
oComponents(2) is the Z coordinate of the origin of the axis system
oComponents(3) is the X coordinate of the first direction of the axis system
oComponents(4) is the Y coordinate of the first direction of the axis system
oComponents(5) is the Z coordinate of the first direction of the axis system

GetMinimumDistancePoints hat diese Infos leider nicht im V5Automation.chm ...

Kann jemand etwas Licht ins Dunkeln bringen???

Vielen Dank im Voraus!

etch


------------------
otia dant vitia

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

MarkusK
Mitglied



Sehen Sie sich das Profil von MarkusK an!   Senden Sie eine Private Message an MarkusK  Schreiben Sie einen Gästebucheintrag für MarkusK

Beiträge: 130
Registriert: 09.08.2002

Dell Precision T5500
Intel Xenon X5560 4x 2,8 GHz
12 GB Ram
NVIDIA Quadro FX 3800
Win XP
Catia V5R19 SP3

erstellt am: 12. Mrz. 2014 10:08    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für ETCH 10 Unities + Antwort hilfreich

Hallo ETCH,

ich habe mich gerade heute auch mit dem Thema beschäftigt.
Komme aber mit der Hilfe auch nicht immer ganz klar.

In dem Beispiel in der Hilfe zu GetMinimumDistancePoints wird
ein Array mit 9 Elementen definiert.
Zurückgegeben werden mir aber nur 6 Werte, so wie du es beschrieben hast, also nur die Koordinaten der Punkte.

Dies ist für mich aber auch logisch, denn die Funktion gibt mir ja nur die Punkte zurück welche den minimalen Abstand ergeben.
Es wäre natürlich schön wenn ich die "Richtung" des minimalen Abstands bekommen würde, ist bei mir aber leider nicht der Fall (VBA)

Was ich aber nicht verstehe ist die "Hilfe" zur Funktion GetMinimumDistance.
Laut Definition heißt es
Func GetMinimumDistance( CATIAReference  iMeasuredItem) As double 

In der Beschreibung heißt es dann wie von dier schon beschrieben
Parameters:
oCoordinates
The information of the axis system with respect to the product coordinate system:
oComponents(0) is the X coordinate of the origin of the axis system
oComponents(1) is the Y coordinate of the origin of the axis system
oComponents(2) is the Z coordinate of the origin of the axis system
oComponents(3) is the X coordinate of the first direction of the axis system
oComponents(4) is the Y coordinate of the first direction of the axis system
oComponents(5) is the Z coordinate of the first direction of the axis system


Aber ich bekomm doch nur ein Wert, also den minimalen Abstand zurück.

------------------
Gruss Markus

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

ETCH
Mitglied
Programmierer

Sehen Sie sich das Profil von ETCH an!   Senden Sie eine Private Message an ETCH  Schreiben Sie einen Gästebucheintrag für ETCH

Beiträge: 4
Registriert: 15.07.2013

Win 7 Pro, Catia R19

erstellt am: 12. Mrz. 2014 11:16    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Moin Markus,

ich habe mehrere Testläufe gemacht und immer das gleiche Verhalten:

(Nutze C#)

object[] coords = new object[8];
Measurable mAP = SPAWB.GetMeasurable((Reference) element1);
mAP.GetMinimumDistancePoints((Reference)element2, coords);

element1Coords[0] = (double)coords[0];
element1Coords[1] = (double)coords[1];
element1Coords[2] = (double)coords[2];

element2Coords[0] = (double)coords[3];
element2Coords[1] = (double)coords[4];
element2Coords[2] = (double)coords[5];

Point1 = GSDFactory.AddNewPointCoord(element1Coords[0], element1Coords[1], element1Coords[2]);
Point1.Compute();
this.stuffBody.AppendHybridShape(Point1);

Point2 = GSDFactory.AddNewPointCoord(element2Coords[0], element2Coords[1], element2Coords[2]);
Point2.Compute();
this.stuffBody.AppendHybridShape(Point2);


Die Darstellung ist immer so wie erwartet, also gehe ich davon aus, dass meine Annahme stimmt.

Die Koordinaten 0-2 im Ergebniss-Array stellen das Punkt auf ersten referenzierten Element (bei GetMeasurable)

Die Koordinate 3-5 - das Punkt im zweiten Element (der im Funktionsaufruf)...

Frohes schaffen!

etch

------------------
otia dant vitia

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Anzeige.:

Anzeige: (Infos zum Werbeplatz >>)

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen

nächster neuerer Beitrag | nächster älterer Beitrag
Antwort erstellen


Diesen Beitrag mit Lesezeichen versehen ... | Nach anderen Beiträgen suchen | CAD.de-Newsletter

Administrative Optionen: Beitrag schliessen | Archivieren/Bewegen | Beitrag melden!

Fragen und Anregungen: Kritik-Forum | Neues aus der Community: Community-Forum

(c)2023 CAD.de | Impressum | Datenschutz