Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  Solid Edge
  VB: GetInputFeatures

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 SolidEdge
Autor Thema:  VB: GetInputFeatures (875 mal gelesen)
TommyH
Mitglied
Masch. Ing HTL


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

Beiträge: 45
Registriert: 28.08.2002

erstellt am: 25. Nov. 2008 10: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


151475.zip


130337.zip

 
Hallo zusammen

Ich habe mal vor langer (V14?)Zeit eine kleine Anpassung geschrieben, welche es erlaubt, die Anzahl der Musterbohrungen in einem Part zu steuern. Das hat auch wunderbar funktioniert, mit Betonung auf "hat". Bei einem neu modellierten Teil (V20), welches auch Musterbohrungen enthält, schaut es aber nicht mehr so gut aus. Die Anzahl der Musterbohrungen lässt sich mit dem Makro nicht mehr verändern. Ausser, ich kopiere die Musterbohrungen aus dem alten Teil in das neu erstellte Teil. Dann funktioniert es. Leider bin ich diesbezüglich ungenügend dokumentiert. Ich finde keine Doku mehr dazu, weder im GTAC, CAD.DE oder Google.
Meine Fragen:

- Kennt jemand die Methode GetInpuFeatures oder hat Doku dazu?
- Gibt es eine andere Möglichkeiten die Anzahl von bereits erstellten Musterbohrungen zu steuern?

Im Anhang die Datei die funktioniert 130337.par und jene die nicht mehr funktioniert 151475.par

Danke schon mal im Voraus für eure Inputs..

Code:


    '(Delete the supernumery Userdefined Pattern
    prgBarActivate.Max = lvwVariable.ListItems.Count
    prgBarActivate.Value = 0
    StatusBar1.Panels(3).text = "Musterbohrungen"

    Set objModel = objDoc.Models(1)

    For j = 1 To lvwVariable.ListItems.Count
        For i = objModel.UserDefinedPatterns.Count To 1 Step -1
            prgBarActivate.Value = j
            If objModel.UserDefinedPatterns.Item(i).Name = lvwVariable.ListItems(j) Then
                Set objUDPat1 = objModel.UserDefinedPatterns(i)
                Call objUDPat1.GetInputFeatures(InputFeatures:=objInpFts())
                For k = Anzahl_Elemente + 1 To maxValve
                    objInpFts(k).Delete
                Next
                Set objUDPat1 = Nothing
                For l = 1 To 6
                    Set objInpFts(l) = Nothing
                Next
                Exit For
            End If
        Next
    Next
    ')

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

modeng
Ehrenmitglied V.I.P. h.c.



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

Beiträge: 7061
Registriert: 10.12.2003

erstellt am: 25. Nov. 2008 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 TommyH 10 Unities + Antwort hilfreich

koennte an intern geaendertem Aufbau des UDP liegen. Mach die
Bohrungen einmal neu und versuch's dann noch mal. Die angespr.
Funktion stellt nur die Objekte in einen Array mehr nicht.
dies:
            For l = 1 To 6
                Set objInpFts(l) = Nothing
            Next

kann man durch  Erase objInpFts  ersetzen

/Edit

es haengt mit der Querbohrung (Hole 5) zuammen, manuell loeschen
geht auch nicht. Macht man die 3mm Bohrungen tiefer dann geht's wieder


[Diese Nachricht wurde von modeng am 25. Nov. 2008 editiert.]

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

TommyH
Mitglied
Masch. Ing HTL


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

Beiträge: 45
Registriert: 28.08.2002

precision M4500
win 7 x64
se st3mp8

erstellt am: 25. Nov. 2008 14:53    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


Screenshot.jpg

 
Besten Dank für die Antwort.

Bohrung 5 lässt sich bei mir manuell löschen. Wenn ich die 3 mm Bohrungen tiefer mache funktioniert es auch nicht. Was mich erstaunt ist, dass wenn ich ein Watch setze auf "objInpFts", enthält dieser Array mit der neuen Datei keine Objekte (Siehe Anlage). Was erklärt, wieso die Anzahl nicht geändert werden kann. Fraglich ist aber, wieso die Zuweisung in den Array nicht klappt. Was wiederum mit dem geänderten internen Aufbau zusammenhängen könnte, wie du erwähnt hast. Die Frage ist nun Bug oder Feature?

Übrigens habe ich mittlerweile Infos über diese Funktion gefunden --> SE Hilfe: "Programmieren mit SE"  . Im Moment bleibt mir nur der Umweg über "Kopieren der Musterbohrungen aus der alten Datei in die neue Datei".

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

modeng
Ehrenmitglied V.I.P. h.c.



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

Beiträge: 7061
Registriert: 10.12.2003

erstellt am: 25. Nov. 2008 15: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 Nur für TommyH 10 Unities + Antwort hilfreich


wenn ich Dein Teil nehme und manuell(!) 1 der 3mm Bohrungen loesche
gibt es einen Fehler (V20/V100). Mach ich die 3mm statt 5,5 tief
z.B. 9mm dann kann ich eine der 3mm loeschen ohne das ein Fehler
auftritt

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

modeng
Ehrenmitglied V.I.P. h.c.



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

Beiträge: 7061
Registriert: 10.12.2003

erstellt am: 25. Nov. 2008 15: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 Nur für TommyH 10 Unities + Antwort hilfreich


Die Bohrungen (3mm) sind irgendwie 'kaputt'. Geh mal
in dem Teil was nicht funktioniert so vor:

- Bohrungen auswaehlen
- Bearbeiten Definition
- oben in der Leiste
  - Tiefe/Extent waehlen
  - 5,5 eingeben
  - Richtung festlegen
- fertig stellen

Dann sollte das Loeschen, auch manuell, klappen

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

TommyH
Mitglied
Masch. Ing HTL


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

Beiträge: 45
Registriert: 28.08.2002

precision M4500
win 7 x64
se st3mp8

erstellt am: 25. Nov. 2008 16:14    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

mmh.. ich erkenne, was du meinst. Ich denke aber nicht, dass etwas nicht stimmt mit der Bohrung 3 mm. Die Bohrung ist zwar "mit Abmass" definiert, nicht über ein Mass mit Eingabe 5.5, sondern geometrisch mit dem Zentrumspunkt der Bohrung 5 verknüpft. Nach dem Löschen einer Bohrung stimmt dann die Richtung der Musterbohrung nicht mehr und es kommt zu einem Fehler.

Auch mit der Korrektur funktioniert das Makro nicht...

[Diese Nachricht wurde von TommyH am 25. Nov. 2008 editiert.]

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

modeng
Ehrenmitglied V.I.P. h.c.



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

Beiträge: 7061
Registriert: 10.12.2003

erstellt am: 25. Nov. 2008 16:21    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 TommyH 10 Unities + Antwort hilfreich

wenn ich so vorgehen wie beschrieben klapp alles. Ob das nun
so mit den 5,5 fix OK ist ist eine andere Sache aber an der
Ecke hakt es jedenfalls. Dem zweiten Teil fehlt die Querbohrung
und dahe geht's da auch problemlos.
Es kann sein das wenn die Tiefe per Keypoint festgelegt wird, man
keins der Elemente loeschen kann. Das wuerde passen da auch ein
manuelles Loeschen nicht moeglich ist. das koennte man umgehen
in dem die Bohrungstiefe auf ca. festgelegt wird und dann das Mass
mit der Variable des Abstandes der Querbohrung (5,5)
verknuepft. Somit aendert sich die Tiefe mit.

[Diese Nachricht wurde von modeng am 25. Nov. 2008 editiert.]

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