Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  CATIA V5 Programmierung
  Punkt auf Fläche

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:  Punkt auf Fläche (571 mal gelesen)
danielsc
Mitglied



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

Beiträge: 45
Registriert: 18.06.2009

erstellt am: 16. Feb. 2010 10:30    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

Ich hab ein Makro geschrieben welches um ein Part immer auf die selbe weiße einen Quader erzeugt. Auf einer Seite von diesem soll im Mittelpunkt ein Punkt erzeugt werden. Dies klappt auch bei 95% aller Parts. Ich versteh nur leider nicht was bei den letzten 5% sein könnte. Bei diesen kann das Part nicht aktualisiert werden und wenn ich den erzeugten Punkt (welcher dann mit einem gelben Ausrufezeichen gekennzeichnet ist) manuell aktualisieren will kommt immer diese Fehlermeldung:

Komponente    | Ursache
-----------------------------------------------------------------
Mittelpunkt      | Berechnungsfehler
                      |
Teilfläche.17    | Error

Und hier der Code mit dem ich den Punkt erzeuge:

Code:
Sub catmain()

Dim partDocument1 As PartDocument
Set partDocument1 = CATIA.ActiveDocument

Dim part1 As part
Set part1 = partDocument1.part

Dim hybridShapeFactory1 As HybridShapeFactory
Set hybridShapeFactory1 = part1.HybridShapeFactory

Dim hybridShapeDirection1 As HybridShapeDirection
Set hybridShapeDirection1 = hybridShapeFactory1.AddNewDirectionByCoord(-0.210884, 0.443606, -0.871058)

Dim bodies1 As Bodies
Set bodies1 = part1.Bodies

Dim body1 As Body
Set body1 = bodies1.Item("Hauptkörper")

Dim shapes1 As Shapes
Set shapes1 = body1.Shapes

Dim split1 As Split
Set split1 = shapes1.Item("Trennen.7")

Dim reference1 As reference
Set reference1 = part1.CreateReferenceFromBRepName("RSur:(Face:(Brp:(Split.7_ResultOUT);None:();Cf11:());WithPermanentBody;WithoutBuildError;WithSelectingFeatureSupport;MFBRepVersion_CXR15)", split1)

Dim hybridShapePointOnSurface1 As HybridShapePointOnSurface
Set hybridShapePointOnSurface1 = hybridShapeFactory1.AddNewPointOnSurface(reference1, hybridShapeDirection1, 0#)

Dim hybridBodies1 As HybridBodies
Set hybridBodies1 = part1.HybridBodies

Dim hybridBody1 As HybridBody
Set hybridBody1 = hybridBodies1.Item("Bauraum")

hybridBody1.AppendHybridShape hybridShapePointOnSurface1

part1.InWorkObject = hybridShapePointOnSurface1

hybridShapePointOnSurface1.Name = "Mittelpunkt"
part1.Update

End Sub


Kann jemand von euch vieleicht einen Fehler in dem Code erkennen oder hat eine Idee woran es liegen könnte?

Also ich vermute mal das es an dem BRep von der reference1 liegt aber verstehe nicht warum. Der Quader wird mit einem anderen Makro immer auf die selbe Art erzeugt und wie gesagt bei 95% funktioniert es ja.

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: 16. Feb. 2010 17: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 danielsc 10 Unities + Antwort hilfreich

Hallo,
prüfe mal nach, ob das Objekt Split1 immer korrekt erzeugt wird. Hier benutzt du ja die interne Nomenklatur von V5 mit "Trennen.7". Vielleicht ist bei den Fehlerparts anstatt "Trennen.7" ein anderer Name vorhanden ?!

SG

Jens Hansen

------------------
Inoffizielle CATIA-Hilfeseite
Homepage von Jens Hansen
Kochbuch - CATIA V5 automatisieren

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