Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  SIMULIA/ABAQUS
  [Python] Partition einer 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:  [Python] Partition einer Fläche (1585 mal gelesen)
Lewis
Mitglied


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

Beiträge: 1
Registriert: 22.10.2013

erstellt am: 22. Okt. 2013 15:46    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


Datum_part-faces.jpg

 
Hallo Forum,
Ich bin neu im Forum und habe angefangen mich in Abaqus einzuarbeiten und habe ein Problem zu dem ich auch nach mehreren Anläufen keine Lösung finde.
Zur Veranschaulichung was ich bisher habe, hab ich im Anhang als Bild hochgeladen.
Und zwar möchte ich einen 2-Dimensionales Part mithilfe eines Voronoi-Diagramms über ein Python-Skript in Abaqus darstellen. Dazu habe ich erst einmal die Struktur berechnet und möchte sie nun in Abaqus visuell darstellen. Dabei hab ich eine Fläche erstellt und möchte jetzt die Fläche durch die bereits erstellten sechs Ebenen(DatumPlane) partitionieren. Um im Anschluss daran den äußeren Teil der Fläche wegzulöschen. Beim Partitionieren stoße ich auf ein Problem.

Das Ganze soll über die Methode: PartitionFaceByDatumPlane(faces = … , datumPlane = …) erfolgen. Ich schaffe es nicht die „faces“ richtig zuzuweisen. Beim Ausführen bekomme ich immer die Fehlermeldung: Feature creation failed.

Meine Frage ist nun: wie muss ich das übergebene Argument faces in der Funktion definieren um die Fläche zu partitionieren? 
Was ich habe sind die Eckpunkte und den Mittelpunkt als datumPoints. Und die Verbindung der Eckpunkte durch die datumPlanes.

Hier ein Auszug von meinem Skript:

p = mdb.models['Model A'].parts['Part A']

#zum schluss: schleife aktivieren und zeilen wieder einruecken
#for i in range(len(neighbors)):  #neigbors ist die Liste mit den Eckpunkten(DatumPoints)
#face = mdb.models['Model A'].parts['Part A'].faces[i]
#current ist der Mittelpunkt
#face = mdb.models['Model A'].parts['Part A'].faces.findAt((current[0],current[1],0.),)
#face.append(mdb.models['Model A'].parts['Part A'].faces[i])
face = p.faces
p_face = p.faces.getClosest(coordinates = ((5.0, 5.0, 0.0),))
#p_face = face[0:1] # = mdb.models['Model A'].parts['Part A'].faces.getSequenceFromMask(mask=('[#1 ]',),)
datum = p.datums[0+2] #statt "0" --> "i"
p.PartitionFaceByDatumPlane(faces = p_face[0], datumPlane = datum)
#datumPlane ist definiert, nur faces noch nicht

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

Mustaine
Ehrenmitglied V.I.P. h.c.



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

Beiträge: 3554
Registriert: 04.08.2005

Abaqus

erstellt am: 28. Okt. 2013 14:56    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 Lewis 10 Unities + Antwort hilfreich

Das Argument bei den faces muss ein Slicing sein. Ggf. einfach den Index um 1 erhöhen, damit nur eine Fläche verwendet wird.


Code:
p_face = p.faces.getClosest(coordinates = ((0.0, 0.0, 0.0),))
x = p_face[0][0].index

d = p.datums[2]

p.PartitionFaceByDatumPlane(faces = p.faces[x:x+1], datumPlane = d)


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