Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  CATIA V5 Programmierung
  nach intersect prüfen

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:  nach intersect prüfen (1450 mal gelesen)
miezeka
Mitglied
Ingenieurin


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

Beiträge: 44
Registriert: 30.09.2008

CATIA V5R16SP5
Catia V5 R18<P>Win XP Prof

erstellt am: 19. Okt. 2008 16:20    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

ich habe 3 Kurven im §D Raum und würde gerne prüfen ob sich die pinke Linie sich mit der Grünen bzw mit der blauen Linie verschneidet(Warnmeldung , da intersect true), wenn die es nicht tun soll es mir auch eine Meldung geben(Warnmeldung bzw vllt grünes Licht oder keine Aktion)

Ich weiß gar nicht wie ich das anstellen sollte?!?
denn die Elemnte sollen gar nicht erzeugt werden, sondern nur geprüft!

Vorüberlegung
interlect(Linie_pinkt,Linie_gruen)
intersect2(Linie_pink,Linie_blau)
If intersect=true
"Achtung ihre Lienien überscheiden sich,Programm Abbruch!"
Else
{If intersect2=true
  "Achtung ihre Lienien überscheiden sich,Programm Abbruch!"
}
else
"...weitere Aktion des Makros"

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

Jens Hansen
Mitglied
Senior Consult


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

Beiträge: 1055
Registriert: 05.08.2000

Win7
CATIA V5 R19
VB.Net
C#

erstellt am: 19. Okt. 2008 16: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 Nur für miezeka 10 Unities + Antwort hilfreich

Hallo,
so ohne weiteres wird es nicht gehen, da eine Intersection, die NICHT erstellt werden kann einen Fehler verurscht. Du wirst das INtersection-Object erzeugen müssen um sicher zu gehen. Zum Schluss kannst du dann das (fehlerhafte) Intersection-Objekt über eine Selection löschen.
Vorgehensweise:
On error resume next
Create Intersection1(Linie_pinkt,Linie_gruen)
Part.Update
if err.number == 0 then
"Achtung ihre Lienien überscheiden sich,Programm Abbruch!"
end if
Selection1.Add Intersection1
Selection1.Delete
err.clear

Create Intersection2(Linie_pink,Linie_blau)
Part.Update
if err.number == 0 then
"Achtung ihre Lienien überscheiden sich,Programm Abbruch!"
end if
Selection1.Add Intersection2
Selection1.Delete
err.clear

"Create Intersection..." ist natürlich nicht die richtige Syntax aber ich denke du verstehst was ich meine  

Viel Erfolg

Jens Hansen

------------------
Inoffizielle CATIA-Hilfeseite
Private Seite
Xing

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

miezeka
Mitglied
Ingenieurin


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

Beiträge: 44
Registriert: 30.09.2008

CATIA V5R16SP5
Catia V5 R18<P>Win XP Prof

erstellt am: 20. Okt. 2008 09: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

Vielen herzlichen Dank!

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



Teamleitung Elektrotechnik (m/w/d)

Als Teil der Zentralen Verwaltung der Technischen Universität München (TUM) sorgt die Zentralabteilung 4 ? Immobilien an allen Standorten der TUM dafür, den Wissenschaftler/ Wissenschaftlerinnen und Studierenden aus aller Welt die bestmögliche Infrastruktur für Forschung und Lehre bereitzustellen, zu erhalten und an sich verändernde Rahmenbedingungen anzupassen. Zur Ergänzung unseres ...

Anzeige ansehenLeitung, Teamleitung
grossmao
Mitglied
Student


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

Beiträge: 16
Registriert: 15.02.2011

Intel Core 2 Duo 2,2 GHz ; 4GB
ATI Mobility Radeon HD 4500 Series
Windows 7 Professional
CATIA V5 R 19

erstellt am: 29. Mrz. 2012 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 Nur für miezeka 10 Unities + Antwort hilfreich

Ich habe ein ähnliches Problem. Ich will eine Intersection abfragen und eine MsgBox ausgegeben bekommen. Das funktioniert soweit auch.

Mein Hauptproblem: Das Löschen der Intersection klappt nicht. Es erscheint immer eine Warnung: Error Copying Data...Selected element(s) not allowed for this operation!

Woran kann das liegen?

Code:
Dim documents1 As Documents
Set documents1 = CATIA.Documents
Dim partDocument1 As Document
Set partDocument1 = documents1.Item("SCHABLONE_1.CATPart")
Dim part1 As Part
Set part1 = partDocument1.Part
Dim hybridBodies1 As HybridBodies
Set hybridBodies1 = part1.HybridBodies
Dim hybridBody1 As HybridBody
Set hybridBody1 = hybridBodies1.Item("KONSTRUKTION")
Dim hybridBodies2 As HybridBodies
Set hybridBodies2 = hybridBody1.HybridBodies
Dim hybridBody2 As HybridBody
Set hybridBody2 = hybridBodies2.Item("Int")
Dim hybridBodies3 As HybridBodies
Set hybridBodies3 = hybridBody2.HybridBodies
Dim hybridBody3 As HybridBody
Set hybridBody3 = hybridBodies3.Item("Kit")
Dim hybridBodies4 As HybridBodies
Set hybridBodies4 = hybridBody3.HybridBodies
Dim hybridBody4 As HybridBody
Set hybridBody4 = hybridBodies4.Item("Kap")
Dim hybridBodies5 As HybridBodies
Set hybridBodies5 = hybridBody4.HybridBodies
Dim hybridBody5 As HybridBody
Set hybridBody5 = hybridBodies5.Item("Apm")
Dim hybridShapes1 As HybridShapes
Set hybridShapes1 = hybridBody5.HybridShapes
Dim hybridShapeCurveExplicit1 As HybridShape

Set hybridShapeCurveExplicit1 = hybridShapes1.Item("Kreis_Mitte")

Set hybridShapeCurveExplicit2 = hybridShapes1.Item("Kontur_Mitte")


Dim reference1 As Reference
Set reference1 = part1.CreateReferenceFromObject(hybridShapeCurveExplicit1)

Dim reference2 As Reference
Set reference2 = part1.CreateReferenceFromObject(hybridShapeCurveExplicit2)

Dim hybridShapeFactory1 As HybridShapeFactory
Set hybridShapeFactory1 = part1.HybridShapeFactory

Dim hybridShapeIntersection1 As HybridShapeIntersection
Set hybridShapeIntersection1 = hybridShapeFactory1.AddNewIntersection(reference1, reference2)

hybridShapeIntersection1.PointType = 1

hybridShapeIntersection1.ExtendMode = 0

hybridBody5.AppendHybridShape hybridShapeIntersection1

part1.InWorkObject = hybridShapeIntersection1

'Fehlerbehandlung ausschalten
On Error Resume Next

'Warnungen ausschalten
'CATIA.DisplayFileAlerts = False

part1.UpdateObject hybridBody5

MsgBox (Err.Number)

'Fehlerabarbeiten
If Err.Number = -2147467259 Then
   
        MsgBox "Keine Kreuzung vorhanden"

    Dim parameters1 As Parameters
  Set parameters1 = part1.Parameters
    Dim strParam1 As Parameter
Set strParam1 = parameters1.Item("Schablone\KONSTRUKTION\Int\Kit\Kap\Apm\Mitte")


    strParam1.Value = "OK"

    partDocument1.Selection.Clear
        partDocument1.Selection.Add hybridShapeIntersection1
      partDocument1.Selection.Delete

else
   
    MsgBox "Schnittpunkt vorhanden!"   

  strParam1.Value = "zu lang"

    partDocument1.Selection.Clear
        partDocument1.Selection.Add hybridShapeIntersection1
      partDocument1.Selection.Delete

End If

part1.UpdateObject hybridBody5

'Fehlerbehandlung einschalten
On Error GoTo 0


End sub


mfG

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