Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de
  CATIA V5 Programmierung
  Measurable - Maximum Distance / Selection Mode

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
  
Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für CATIA & Co.
  
KISTERS 3DViewStation: verbesserte Effizienz durch optimierte Bedienoberfläche, eine Pressemitteilung
Autor Thema:  Measurable - Maximum Distance / Selection Mode (3646 mal gelesen)
roccat
Mitglied
Konstrukteur


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

Beiträge: 175
Registriert: 19.02.2010

WinXP/Win7
Office XP/2007
Catia V5 R16-R19, VB6.0, VBA, BASCOM-AVR
VB .Net 2010

erstellt am: 01. Sep. 2010 09:31    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


Messen.JPG

 
Hallo,

hoffendlich könnt ihr mir dabei helfen.
Ich möchte mittels "SPAWorkbench/Measurable" einen Abstand Messen.
Bisher habe ich immer die "GetMinimumDistance" benötigt um den kleinsten Abstand zu messen.
Nun bräuchte ich aber mal den größten Abstand und möchte dabei die beiden zu messenden Elemente (Kurve, Kreisbogen, Linie) nur in der "Selection mode" = "Any Geometry" messen da es bei "Infinite" probleme gibt(siehe Anhang).

Mir fehlt eigendlich bloß der Befehl für die "Maximum Distance" und wie ich den Modus der Selection wählen kann.

Bisher hatte ich das immer so gemacht:

Function Messen(MyCrv As Object, MyLine As Object) As Double

    Dim TheSPAWorkbench     As SPAWorkbench
    Dim TheMeasurable       'As Measurable
    Dim dMess               As Double

    'Dokuments holen
    Set MyDocument = CATIA.ActiveDocument
    Set MyPart = MyDocument.Part

    'Messe Abstand
    If Not MyCrv Is Nothing Or Not MyLine Is Nothing Then
        Set TheSPAWorkbench = MyDocument.GetWorkbench("SPAWorkbench")
        Set TheMeasurable = TheSPAWorkbench.GetMeasurable(MyCrv)
        Messen = TheMeasurable.GetMinimumDistance(MyLine)
    End If
   

End Function

THX

Mario

[Diese Nachricht wurde von roccat am 01. Sep. 2010 editiert.]

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

HoBLila
Mitglied
Dipl.-Ing. (BA) praktische Informatik - Senior Entwickler CAx


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

Beiträge: 1118
Registriert: 29.05.2008

DELL PRECISION T3500
Intel(R) Xeon(R) CPU W3540 @ 2.93GHz
12285 MB RAM
NVIDIA Quadro FX 1800
Microsoft Windows 7 Enterprise Service Pack 1
CATIA V5 R19 SP09 HF69
VB6.5
CAA RADE CDC

erstellt am: 03. Sep. 2010 10:01    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 roccat 10 Unities + Antwort hilfreich

Kann Dir leider keine Lösung präsentieren, aber Denkanstöße:

Ist echt nicht trivial 

Also entweder es gibt ein NewTopologicalObject, was das kann oder
ich würde es über Extrempunkte versuchen und dann deren Abstand messen.

------------------
Mit freundlichen Grüßen,
Henry Schneider
alias Lila

Es gibt einen ewigen Wettkampf zwischen der Natur und den Ingenieuren:
Die Ingenieure versuchen, immer idioten-sicherere Systeme zu bauen,
die Natur versucht, immer bessere Idioten zu bauen

Xing

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

roccat
Mitglied
Konstrukteur


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

Beiträge: 175
Registriert: 19.02.2010

WinXP/Win7
Office XP/2007
Catia V5 R16-R19, VB6.0, VBA, BASCOM-AVR
VB .Net 2010

erstellt am: 03. Sep. 2010 12:44    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

Hallo Henry,

danke für deine Antwort.

Also ich habe noch mal das Forum nach allem was mit Measure zu tun hat durchsucht und bin auf einen Beitrag gestoßen mit dem Fazit das es für VBA nicht geht.

Deinen Vorschlag mit Extrempunkten hatte ich händisch auch schon hin und her probiert und bin auf keinen grünen Zweig gekommen.

Evtl. mal kurz zur Erklärung worum es mir geht:

Ich möchte eine komplizierte 3D kurve mit linien und Kreise vereinfachen/nachbauen die sich innerhalb einer zugelassen Abweichung befinden. Ich wollte dazu eine Punkt zu Punkt-linie solange der Kurve lang laufen lassen bis die "MaximumDistanz" auserhalb meiner Toleranz liegt und dann mit einen 3Punkte kreis weitermachen...

...soweit so gut, da mir aber jetzt die MaximumDistanz fehlt habe jetzt folgendes Versucht:

Ich erzeuge am Startpunkt der Kurve einen Kreis mit dem Radius der Toleranz und erzeuge eine FlächenSweep entlang der Kurve, damit versuche ich immer meine Linien und Kreise zu splitten, geht der Split nicht liege ich innerhalb meiner Toleranz.

Ich bin noch nicht ganz fertig, mir fehlen noch die Kreise aber für einen reinen Linien verbund funktioniert´s erstmal.

@Henry, nochmal danke für deine Ideen und sollte doch noch jemand die "MaximumDistanz" - Messung finden, Ich würd´s trotzdem gern wissen wollen. 

mfG
Mario

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

HoBLila
Mitglied
Dipl.-Ing. (BA) praktische Informatik - Senior Entwickler CAx


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

Beiträge: 1118
Registriert: 29.05.2008

DELL PRECISION T3500
Intel(R) Xeon(R) CPU W3540 @ 2.93GHz
12285 MB RAM
NVIDIA Quadro FX 1800
Microsoft Windows 7 Enterprise Service Pack 1
CATIA V5 R19 SP09 HF69
VB6.5
CAA RADE CDC

erstellt am: 03. Sep. 2010 15:33    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 roccat 10 Unities + Antwort hilfreich

Das Problem, was ich hier sehe ist, dass die NewTopologicalObjects nicht dokumentiert sind. 

Die SPAWorkbench gibt einem ja quasi nix mehr aus außer TheMeasurable, der Rest ist alles nach NewTopologicalObject gewnadert. Ich vermute mal auch, dass sich dort das MaximumDistance unter NewTopologicalObject("Distance") versteckt, aber das sind alles nur Mutmaßungen. 

Und ja, im CAA ist das nicht so problematisch. 

------------------
Mit freundlichen Grüßen,
Henry Schneider
alias Lila

Es gibt einen ewigen Wettkampf zwischen der Natur und den Ingenieuren:
Die Ingenieure versuchen, immer idioten-sicherere Systeme zu bauen,
die Natur versucht, immer bessere Idioten zu bauen

Xing

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

roccat
Mitglied
Konstrukteur


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

Beiträge: 175
Registriert: 19.02.2010

WinXP/Win7
Office XP/2007
Catia V5 R16-R19, VB6.0, VBA, BASCOM-AVR
VB .Net 2010

erstellt am: 06. Sep. 2010 13:57    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

Hallo Henry,

ich hab da wohl bisschen eine Bildungslücke.
Die "NewTopologicalObject" sind wohl von DS nachträglich hinzugefügte Methoden ohne klare Zuordung, oder ist das was anderes?
Und wie kann ich auf diese zu greifen? (Hab Google/Catia-Doku/Forum nichts konkretes finden können)

THX

mfG
Mario

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

HoBLila
Mitglied
Dipl.-Ing. (BA) praktische Informatik - Senior Entwickler CAx


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

Beiträge: 1118
Registriert: 29.05.2008

DELL PRECISION T3500
Intel(R) Xeon(R) CPU W3540 @ 2.93GHz
12285 MB RAM
NVIDIA Quadro FX 1800
Microsoft Windows 7 Enterprise Service Pack 1
CATIA V5 R19 SP09 HF69
VB6.5
CAA RADE CDC

erstellt am: 08. Sep. 2010 11:23    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 roccat 10 Unities + Antwort hilfreich

Hallo Mario,

ja die sind nachträglich hinzugekommen als DS ihre eigenen Funktionen nicht mehr reichten.
Die sind aber daher leider auch nahezu gar nicht dokumentiert. Es gibt nur wenige Hinweise darauf in der Doku, wie wenn Du Dir die Klasse SPAWorkbench anschaust, wo drin steht, Du sollst lieber die verwenden.

Die NewTopoObjects gibts etwa seit R17 und sind primär für CAA, aber eben auch mit API versehen. Sind aber auch im CAA nicht dokumentiert. 

Erreichen tut man diese über LateBinding, aber man kann auch entsprechende Verweise/Referenzen im VB setzen.

Da es nicht dokumentiert ist, habe ich aber leider auch keine Ahnung, vermute darin aber die Lösung. 

------------------
Mit freundlichen Grüßen,
Henry Schneider
alias Lila

Es gibt einen ewigen Wettkampf zwischen der Natur und den Ingenieuren:
Die Ingenieure versuchen, immer idioten-sicherere Systeme zu bauen,
die Natur versucht, immer bessere Idioten zu bauen

Xing

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

Lusilnie
Mitglied



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

Beiträge: 1486
Registriert: 13.07.2005

erstellt am: 08. Sep. 2010 18:18    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 roccat 10 Unities + Antwort hilfreich

Hallo roccat,

such mal in der V5Automation.chm nach "GetTechnologicalObject". Dann solltest Du diverse Hinweise darauf erhalten.


mfg,
Lusilnie

------------------
Alle Aussagen zu DassaultSystemes-Produkten sind sehr optimistisch, selbst diese!!!

frei nach größeren Geistern

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

roccat
Mitglied
Konstrukteur


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

Beiträge: 175
Registriert: 19.02.2010

WinXP/Win7
Office XP/2007
Catia V5 R16-R19, VB6.0, VBA, BASCOM-AVR
VB .Net 2010

erstellt am: 09. Sep. 2010 08:36    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

Hallo Lusilnie,

danke für deine Antwort.

Ich habe das bereits gelesen und mit beiden Sachen "SPAWorkbench" und den "GetTechnologigalObject" rumprobiert ich komme bei beiden auf selbe Ergebnis nur das ich eben bei den "GetTechnologigalObject" über das Product dort hinkomme.

Aber irgendwie will´s bei beiden Varianten die MaximumDistance nicht messen.

...sehr Seltsam... 

aber Danke für deinen Hinweis

mfG
Mario

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)2025 CAD.de | Impressum | Datenschutz