Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  CATIA V5 Programmierung
  helfen

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:  helfen (929 mal gelesen)
gerlado3
Mitglied
engineer

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

Beiträge: 2
Registriert: 25.10.2012

erstellt am: 29. Okt. 2012 12:45    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 Freunde

Ich habe ein Stück Skript, bei dem die Löcher einen "Part" erhalten. mein Problem ist, dass ich nicht identifizieren "Rectangular/circular Patern".

Jemand helfen könnte mich wissen, die Gesamtzahl der Löcher nach der Verwendung eines "patern" Vollendung des Codes

Hielt "Edge Fillet" ich auch ein "Hole"


Dies ist der Codeabschnitt

Sub CATMain()


Dim partDocument1 As Document
Set partDocument1 = CATIA.ActiveDocument

Dim part1 As Part
Set part1 = partDocument1.Part

Dim bodies1 As Bodies
Set bodies1 = part1.Bodies

Dim body1 As Body
Set body1 = bodies1.Item("PartBody")

Dim shapes1 As Shapes
Set shapes1 = body1.Shapes


dim selection1 as selection
set selection1=CATIA.activedocument.selection

selection1.clear
for i = 1 to shapes1.count
selection1.add shapes1.Item(i)
NEXT

Dim xSelObj() As Variant
Dim xObj As Variant
Dim n as Integer
Dim myObj As AnyObject

Dim nCount As Integer
nCount = 0

        for n= 0 to shapes1.count

              On Error Resume Next
              Set myObj = selection1.FindObject("CATIAHole")

                          ReDim Preserve xSelObj(nCount)
                        Set xSelObj(nCount) = myObj
              nCount = nCount + 1

        next

  ' Listing holes
 
Dim sList As String
Dim nI As Integer

'Loop for message

        For nI =0 To ncount-3
           
dim referenceX as reference
Set referenceX = part1.CreateReferenceFromObject(xSelObj(nI))

        Next
   
part1.Update

Msgbox ncount-2

End Sub

Vielen Dank im Voraus

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: 29. Okt. 2012 15:45    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 gerlado3 10 Unities + Antwort hilfreich

Servus
Willkommen im Forum. Bitte Sytseminfo ausfüllen.
Ich hab deine Frage nicht verstanden. Was willst du mit dem Makro erzeugen?
If it is easier for you, you can also explain ans ask in English.

Gruß
Bernd

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

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: 29. Okt. 2012 15:54    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 gerlado3 10 Unities + Antwort hilfreich

Er hat das Standardproblem, dass wenn man nur nach Löchern sucht, man die Muster eben nicht erwischt.

Er muss eben zusätzlich nach den Pattern suchen und diese auswerten, oder irgend eien Lösung finden, die nach Toplogien sucht.
Was ist z.B., wenn ein Zylinder über Remove ausgeschnitten wird?

Alles nicht so trivial, wenn man alle Löcher finden möchte.

------------------
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

RSchulz
Moderator²
Head of CAD, Content & Collaboration / IT-Manager



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

Beiträge: 5541
Registriert: 12.04.2007

@Work
Lenovo P510
Xeon E5-1630v4
64GB DDR4
Quadro P2000
256GB PCIe SSD
512GB SSD
SmarTeam V5-6 R2016 Sp04
CATIA V5-6 R2016 Sp05
E3.Series V2019
Altium Designer/Concord 19
Win 10 Pro x64

erstellt am: 29. Okt. 2012 16:12    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 gerlado3 10 Unities + Antwort hilfreich

Hallo Gerlado3 und herzlich willkommen,

ganz im Ernst, wie bitte soll denn eine Überschrift wie "bitte helfen" mir signalisieren, was du brauchst? Da sich das in letzter Zeit häuft, frage ich mich ernsthaft, ob sich denn keiner mehr Gedanken macht... Sorry aber das find ich schon etwas schade, dass man den Sinn einer Überschrift nicht mehr versteht!

Um aber nicht nur zu maulen, sondern dir weiter zu helfen oder einen Denkanstoß zu geben, habe ich folgenden Codeschnippsel für dich...

Code:

...
   
    allPatterns.Search "CATPrtSearch.Pattern,all"
   
    For i = 1 To allPatterns.Count
        Set onePattern = allPatterns.Item(i).Value
        Set Hole = onePattern.ItemToCopy
        If Hole.ThreadingMode = 0 Then
            ReDim Preserve ThreadSel(i)
            ThreadSel(i) = onePattern.Name
        End If
    Next
   
    allPatterns.Clear
   
    Set thePatterns = ActPart.Selection
    For i = 1 To UBound(ThreadSel())
        thePatterns.Search "Name='" & ThreadSel(i) & "';all"
        Set ThreadColor = thePatterns.VisProperties
        ThreadColor.SetRealColor 255, 255, 0, 0
        thePatterns.Clear
    Next
   
...

...dieser färbt z.B. die Löcher von Musstern.

Ich habe leider nicht mehr Zeit, um auf dein Problem konkreter eingehen zu können.

------------------
MFG
Rick Schulz

Nettiquette (CAD.de)  -  Was ist die Systeminfo?  -  Wie man Fragen richtig stellt.  -  Unities

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: 29. Okt. 2012 18: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 Nur für gerlado3 10 Unities + Antwort hilfreich

Ist zwar OT, aber ich finde auch, wenn sich der Anfrage nicht die Mühe macht, die Frage richtig zu stellen, warum sollten wir uns dann die Mühe machen richtig darauf zu antworten?

Der Vorschlag von Rick ist der richtige Ansatz, Du musst eben die Muster auswerten. Was für Dich die jeweils wichtigen Kriterien sind, musst Du natürlich festlegen.
Rick z.B. prüft noch ob es ein Gewinde in der Bohrung gibt.

http://www.tty1.net/smart-questions_de.html

------------------
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

gerlado3
Mitglied
engineer

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

Beiträge: 2
Registriert: 25.10.2012

erstellt am: 29. Okt. 2012 22:29    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

the first thing I want to say is thanks to everyone who has responded. At no time wanted to cause problems, I apologize for not meeting the forum rules.

regarding my problem as well have said, this script tells me the number of holes in a piece, but the script does not recognize the number of holes created with a pattern.
That is, if I create a hole and apply a rectangular pattern, creating four holes, the value I give this script is a total of two holes, instead of 5, that would be the actual number of the part.

Again, sorry if I upset someone and thank you very much for your answers

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: 29. Okt. 2012 22:47    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 gerlado3 10 Unities + Antwort hilfreich

Hello
Ricks code was only to show you you could find patterns.
You additional need a check it the patterend feature is a hole (for example use "ItemToCopy") and reading the number of instances (for example for CircPattern: "AngularRepartition.InstancesCount" or AngularRepartition.InstancesCount.Value"??).
See also on the documentation and the locals/watch-window in the vba editor.

Regards,
Bernd

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

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