Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  CATIA V5 Programmierung
  V- und H-Constrains löschen

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:  V- und H-Constrains löschen (1550 mal gelesen)
Blechpatscher
Mitglied
Konstrukteur


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

Beiträge: 11
Registriert: 13.12.2009

CATIA V5 R16 SP9 mit Win XP SP3

erstellt am: 22. Jan. 2010 12:00    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 Catia-Programmiergemeinde!

hab eine kleine Frage
Versuche per Makro sämtliche V- und H-Bedienungen in allen Skizzen eines Parts zu löschen:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
selection.Search "CATSketchSearch.MfConstraint.Name=Parallelism*,all"
selection.Delete
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Dabei fliegen auch die "normalen" parallel-Bedinungen mit raus.
Kenn jemand ein Weg, wie man nur V- und H-Bedienungen auswählen kann?

------------------
Gruß
Blechpatscher

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

bgrittmann
Moderator
Konstrukteur


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

Beiträge: 11780
Registriert: 30.11.2006

CATIA V5R19

erstellt am: 22. Jan. 2010 12: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 Blechpatscher 10 Unities + Antwort hilfreich

Servus
Du könntest über die Suche alle Parallelbedingungen suchen, und dann jede einzelne Prüfen ob eine Referenz ("GetConstraintElement(i)") den Achsen entspricht und diese dann löschen.
Aber was hast du vor, könntest du auch einfach die Skizze neu referieren (positionierte Skizze)?

Gruß
Bernd

------------------
Warum einfach, wenn es auch kompliziert geht.

[Diese Nachricht wurde von bgrittmann am 22. Jan. 2010 editiert.]

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

DanielFr.
Moderator
Manager


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

Beiträge: 2506
Registriert: 10.08.2005

HP Compaq 8710w, Intel Core Duo T7700, 2,40 Ghz, 3GB RAM, Windows XP Professionel @32bit, Quadro FX 1600M, CATIA V5 R19 SP3

erstellt am: 22. Jan. 2010 13:35    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 Blechpatscher 10 Unities + Antwort hilfreich

Hallo,

habe mal kurz Bernd´s Idee aufgegriffen und ein kleinen Script daraus gemacht. Hier das Ergebnis (es werden alle V- und H-Bedingungen aus den Skizzen gelöscht)

Code:

Sub CATMain()

    Dim intDoc As Document
    Dim intSel As Selection
    Dim intSearchType As CatConstraintType: intSearchType = catCstTypeParallelism
    Dim intConstaint As Constraint
    Dim intConstRef As Reference
    Dim intDelMsgBoxRes As VbMsgBoxResult
    Dim intConstaintColl As New Collection
   
    Set intDoc = CATIA.ActiveDocument
    Set intSel = intDoc.Selection
    intSel.Clear
   
    intSel.Search "CATSketchSearch.MfConstraint,all"
    If intSel.Count > 0 Then
        For i = 1 To intSel.Count
            intConstaintColl.Add intSel.Item(i).Value
        Next
    Else
        MsgBox "Es wurden keine Parallel-Bedigungen im Dokument gefunden", vbInformation, "Keine Bedingungen gefunden"
        Exit Sub
    End If
    intSel.Clear
   
    For i = 1 To intConstaintColl.Count
        Set intConstaint = intConstaintColl.Item(i)
        If intConstaint.Type = intSearchType Then
            For ii = 1 To 2
                Set intConstRef = intConstaint.GetConstraintElement(ii)
                If InStr(1, intConstRef.DisplayName, "VDirection") <> 0 Or InStr(1, intConstRef.DisplayName, "HDirection") <> 0 Then
                    intSel.Add intConstaint
                End If
            Next
        End If
    Next
   
    If intSel.Count > 0 Then
        intDelMsgBoxRes = MsgBox("Es wurden " & intSel.Count & " Parallel-Bedingungen gefunden" + vbNewLine + _
                                "Wollen Sie diese nun löschen?", vbQuestion + vbYesNo, "Bedigungen löschen?")
        If intDelMsgBoxRes = vbYes Then
            intSel.Delete
        End If
    End If

    intSel.Clear

End Sub


UND Bernd bekommst 10U´s von mir für die Idee 

------------------
MFG Daniel

Systeminformation | Inoffizielle CATIA Hilfeseite | CATIA FAQ | Suche | TraceParts (Normteile...) | 3D Content Central (noch mehr Normteile...)

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

Blechpatscher
Mitglied
Konstrukteur


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

Beiträge: 11
Registriert: 13.12.2009

CATIA V5 R16 SP9 mit Win XP SP3

erstellt am: 22. Jan. 2010 14:48    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 Bernd,

die Skizzen sollen nicht mehr angefasst werden, nur die V- und H-Bedienungen müssen raus.

------------------
Gruß
Blechpatscher

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

Blechpatscher
Mitglied
Konstrukteur


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

Beiträge: 11
Registriert: 13.12.2009

CATIA V5 R16 SP9 mit Win XP SP3

erstellt am: 22. Jan. 2010 15:06    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


Fehler.jpg

 
Hallo Daniel,

du machst gleich Nägel mit Köpfen!
Leider bekomme ich eine Fehlermeldung und
die Analyse übersteigt meine derzeitige Kapazität 
Könnte ich mir nich auf irgendeine Art catCsttTypeHorizontality und catCstVerticality
zunutze machen?

------------------
Gruß
Blechpatscher

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

DanielFr.
Moderator
Manager


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

Beiträge: 2506
Registriert: 10.08.2005

HP Compaq 8710w, Intel Core Duo T7700, 2,40 Ghz, 3GB RAM, Windows XP Professionel @32bit, Quadro FX 1600M, CATIA V5 R19 SP3

erstellt am: 22. Jan. 2010 18:13    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 Blechpatscher 10 Unities + Antwort hilfreich

Hallo,

ich hatte das als CATVba geschrieben. Nimm einfach mal folgende Zeile auseinander (am Doppelpunkt. Den kannst du dann löschen)

Code:
Dim intSearchType As CatConstraintType: intSearchType = catCstTypeParallelism

in

Code:

Dim intSearchType As CatConstraintType
intSearchType = catCstTypeParallelism

Des weiteren könnte er wegen dem "vbNewLine" merkern. Anstelle dem vbNewLine kannst du aber auch ein "chr(10)" schreiben. Dann sollte es funktionieren 

------------------
MFG Daniel

Systeminformation | Inoffizielle CATIA Hilfeseite | CATIA FAQ | Suche | TraceParts (Normteile...) | 3D Content Central (noch mehr Normteile...)

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

bgrittmann
Moderator
Konstrukteur


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

Beiträge: 11780
Registriert: 30.11.2006

CATIA V5R19

erstellt am: 22. Jan. 2010 21:26    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 Blechpatscher 10 Unities + Antwort hilfreich

Servus Daniel
Also be mir läuft das Script nicht als CATScript oder CATvbs (auch nach einigen Anpassungen).
Kann man Collections in CATScrips oder CATvbs verwenden oder geht das nur über den Umweg eines Arrays?

Gruß
Bernd

------------------
Warum einfach, wenn es auch kompliziert geht.

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

DanielFr.
Moderator
Manager


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

Beiträge: 2506
Registriert: 10.08.2005

HP Compaq 8710w, Intel Core Duo T7700, 2,40 Ghz, 3GB RAM, Windows XP Professionel @32bit, Quadro FX 1600M, CATIA V5 R19 SP3

erstellt am: 23. Jan. 2010 07:26    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 Blechpatscher 10 Unities + Antwort hilfreich

Hallo,

oh ich war wohl schon im Wochenende. Collection kannst du weder in CATScript noch in CATVbs nutzen. Diese sind rein der CATVba vorenthalten. So jetzt hier mal die CATScript Version. Alle die es als CATVbs nutzen wollen müssen die Deklarationen auskommentieren das macht CATVbs selbständig.

Code:

Sub CATMain()

    Dim intDoc As Document
    Dim intSel As Selection
    Dim intSearchType As CatConstraintType
    Dim intConstaint As Constraint
    Dim intConstRef As Reference
    Dim intDelMsgBoxRes As VbMsgBoxResult
    Dim intConstaintColl() As Constraint
 
    Set intDoc = CATIA.ActiveDocument
    Set intSel = intDoc.Selection
    intSel.Clear
    intSearchType = catCstTypeParallelism
 
    intSel.Search "CATSketchSearch.MfConstraint,all"
    If intSel.Count > 0 Then
        ReDim intConstaintColl(intSel.Count - 1) As Constraint
        For i = 1 To intSel.Count
            Set intConstaintColl(i - 1) = intSel.Item(i).Value
        Next
    Else
        MsgBox "Es wurden keine Parallel-Bedigungen im Dokument gefunden", vbInformation, "Keine Bedingungen gefunden"
        Exit Sub
    End If
    intSel.Clear
 
    For i = 1 To UBound(intConstaintColl)
        Set intConstaint = intConstaintColl(i - 1)
        If intConstaint.Type = intSearchType Then
            For ii = 1 To 2
                Set intConstRef = intConstaint.GetConstraintElement(ii)
                If InStr(1, intConstRef.DisplayName, "VDirection") <> 0 Or InStr(1, intConstRef.DisplayName, "HDirection") <> 0 Then
                    intSel.Add intConstaint
                End If
            Next
        End If
    Next
 
    If intSel.Count > 0 Then
        intDelMsgBoxRes = MsgBox("Es wurden " & intSel.Count & " Parallel-Bedingungen gefunden" + Chr(10) + _
                                "Wollen Sie diese nun löschen?", vbQuestion + vbYesNo, "Bedigungen löschen?")
        If intDelMsgBoxRes = vbYes Then
            intSel.Delete
        End If
    End If

    intSel.Clear
   
    MsgBox "Das Makro wurde erfolgreich beendet!", vbInformation, "Makro erfolgreich"

End Sub


------------------
MFG Daniel

Systeminformation | Inoffizielle CATIA Hilfeseite | CATIA FAQ | Suche | TraceParts (Normteile...) | 3D Content Central (noch mehr Normteile...)

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

Blechpatscher
Mitglied
Konstrukteur


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

Beiträge: 11
Registriert: 13.12.2009

CATIA V5 R16 SP9 mit Win XP SP3

erstellt am: 23. Jan. 2010 09:15    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 Daniel,

vielen Dank für deine Unterstützung!
Das Makro Funktioniert, nach einer kleiner Anpassung, wunderbar. Habe an drei Stellen "-1" löschen müssen. Hoffe bloss das ich dabei nicht irgendwas kaputt gemacht habe?

In deiner ersten Antwort habe ich mitgekriget, dass Bernd von dir Units bekommen hat, das war mir neu und ich möchte jetzt auch mich auf diese Art bedanken! 

------------------
Gruß
Blechpatscher

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

DanielFr.
Moderator
Manager


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

Beiträge: 2506
Registriert: 10.08.2005

HP Compaq 8710w, Intel Core Duo T7700, 2,40 Ghz, 3GB RAM, Windows XP Professionel @32bit, Quadro FX 1600M, CATIA V5 R19 SP3

erstellt am: 23. Jan. 2010 17:34    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 Blechpatscher 10 Unities + Antwort hilfreich


DeleteNativeParallelConstaints.rar

 
Hallo,

danke dir   . Ja sorry da ist noch ein Fehler drinnen. Ich werde den am Montag morgen ausmerzen und dann den final Relaese hier reinstellen  

[EDIT] Finall Relaese kommt doch heute schon 

@Blechpatscher: Löschen darfst du diese Korrekturzahlen nicht einfach sonst erwischst du nicht alle Bedingungen. Du musst sie nur an eine andere Stelle setzen 

[/EDIT]
------------------
MFG Daniel

Systeminformation | Inoffizielle CATIA Hilfeseite | CATIA FAQ | Suche | TraceParts (Normteile...) | 3D Content Central (noch mehr Normteile...)

   

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

Blechpatscher
Mitglied
Konstrukteur


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

Beiträge: 11
Registriert: 13.12.2009

CATIA V5 R16 SP9 mit Win XP SP3

erstellt am: 25. Jan. 2010 19:52    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 Daniel,

das Makro läuft ohne Fehler durch. Im Quellcode habe ich eine Abzweigung endeckt, für den Fall das keine Parallel-Bedigungen gefunden werden. Leider greift es nicht: bei fehlenden Bedienungen endet das Makro mit einer Erfolgsmeldung, obwohl es gar nichts gemacht hat    Ist nur eine Schönheitssache, aber ich komme nicht drauf an was es liegt 

------------------
Gruß
Blechpatscher

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

DanielFr.
Moderator
Manager


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

Beiträge: 2506
Registriert: 10.08.2005

HP Compaq 8710w, Intel Core Duo T7700, 2,40 Ghz, 3GB RAM, Windows XP Professionel @32bit, Quadro FX 1600M, CATIA V5 R19 SP3

erstellt am: 26. Jan. 2010 10:28    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 Blechpatscher 10 Unities + Antwort hilfreich


DeleteNativeParallelConstaints1.1.rar

 
Hallo Rudolf,

hier nun die neue Version (1.1) mit der Ausbesserung des Schönheitsfehlers 

------------------
MFG Daniel

Systeminformation | Inoffizielle CATIA Hilfeseite | CATIA FAQ | Suche | TraceParts (Normteile...) | 3D Content Central (noch mehr Normteile...)

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