Zum Inhalt springen

Vollkörper schneiden mit Script/Marionette


hölzli

Frage

Geschrieben

Hallo zusammen

 

Wie kann ich mit Marionette einen Vollkörper schneiden?

Die Funktion ist bei der normalen Anwendung einfach aufzurufen, jedoch habe ich noch keinen Befehl gefunden, welchen ich in Marionette verwenden könnte.

Mit dem "Solid Boolean" kann ich lediglich addieren, subtrahieren, oder Schnittkörper anlegen.

 

Ich möchte jedoch einen Vollkörper mit einer NURBS-Fläche schneiden, um meine gewünschte Geometrie zu erhalten.

image.png.d95a9b54263622bef5f8363634ae19c5.png

Vectorworks 2024 interiorcad |  Windows10 & 11

10 Antworten auf diese Frage

Empfohlene Beiträge

Geschrieben

Hallo hölzli

 

Du müsstest dazu aus meiner Sicht ein eigenes Node erstellen und noch eine Option einbauen, die definiert, welches der beiden übrig bleibenden Volumen verwendet werden soll. Dies ist aus meiner Sicht auch der Grund, weshalb "Volumen schneiden" nicht auch in diesem Node sein kann.

Ich habe im Function Reference keinen (mir frei zugänglichen) Scriptbefehl gefunden den ich in einem eigenen Node verwenden könnte. Vielleicht hat sonst jemand im Forum eine Idee...

 

Gruss, Marc

Leiter BIM Consulting

Vectorworks Switzerland

________________________________________

Vectorworks - Führende BIM-Spitzentechnologie und Flaggschiff der Nemetschek Gruppe

Weltweit verwirklichen über eine halbe Million Architekten und Designer grossartige Projekte mit Vectorworks!

Geschrieben

Hallo Marc

 

Ja, in der Function Reference habe ich auch gesucht und nichts gefunden. Die Auswahl der zu behaltenden Fläche erfolgt nach meinem Verständnis beim "normalen" Vollkörper-Schneiden Befehl über die Richtung des Schnittkörpers. Dies wäre in meinem Fall die Nurbs-Fläche. 

 

Gibt es vielleicht eine Möglichkeit, innerhalb des Scripts auf Werkzeuge zugreifen zu können, welche in der Arbeitsumgebung so existieren? In der Art vs.CallTool o.ä.?

 

Mit Erstellung von eigenen Nodes habe ich in den vergangenen Wochen bereits einige Erfahrungen gesammelt und bin ziemlich auf den Geschmack gekommen ? 

Vectorworks 2024 interiorcad |  Windows10 & 11

Geschrieben (bearbeitet)

Es gibt einen Befehle um Werkzeuge aufzurufen. Meiner Erfahrung nach ist das Problem einfach, dass du nach diesen Befehlen nicht mehr in deinem Skript bist. Ich habe noch nicht ganz verstanden, wann dies der Fall ist und wann nicht. 

 

DoMenuTextByName:

https://developer.vectorworks.net/index.php/VS:DoMenuTextByName

Vielleicht hilft dir das. 

 

DoMenuTextByName('Solid Operations',2)

Bearbeitet von inderfab

VWX24 SP8 | Architektur | MacOS 13.5 | M2 Max

Geschrieben

Hallo inderfab

 

Besten Dank für deinen Hinweis.

Ich bin nun immerhin schon soweit, dass der Schnitt klapp. meine Auswahl ist:

vs.DoMenuTextByName('Solid Operations', 4)

die 4 ist zwar im appendix aufgelistet, ruft jedoch genau den Befehl auf, welchen ich wünsche.

Das fiese ist jedoch, wie von dir angekündigt, dass sich ein Fenster öffnet, wo dann die Kurven ausgewählt werden müssen.

image.png.07335c9c880aa1eafbfcaf398fe1ffb9.png

Gibt es vielleicht eine Möglichkeit, auch diese Auswahl (z.B. "Letztes" oder "Erstes") irgendwie mitzugeben?

oder können dies einzig und allein die Entwickler dieser Funktion tun?

  • Like 1

Vectorworks 2024 interiorcad |  Windows10 & 11

Geschrieben

Da mir kein VectorScript Befehl bekannt ist, das dem "Zerschneiden"-Werkzeug entsprechen würde, bleibt wahrscheinlich nur vs.DoMenuTextByName und das erfüllt die Anforderungen auch nicht abschließend.

Das Schneiden von Solids mit Hilfe einer NURBS-Fläche wäre wohl ein Verbesserungswunsch Wert. Das gleiche gilt auch für das Schneiden von 2d Polys mit anderen Polys/NURBS. Für das Schneiden von Polys mit einer Linie gibt es einen Befehl. Der ist jedoch nicht sonderlich gut zu bedienen: vs.Split2DObjectByLine

Gruß


Antonio Landsberger

Vectorworks Germany GmbH

https://www.vectorworks.de/

Geschrieben
vor 19 Stunden schrieb Antonio Landsberger:

Das gleiche gilt auch für das Schneiden von 2d Polys mit anderen Polys/NURBS. Für das Schneiden von Polys mit einer Linie gibt es einen Befehl. Der ist jedoch nicht sonderlich gut zu bedienen: vs.Split2DObjectByLine

könnte dies nicht mit dem Befehl erreicht werden:

vs.TrimNurbsSurface(surfaceHandle, curveHandle)

https://developer.vectorworks.net/index.php/VS:TrimNurbsSurface

 

Aber ich habe die Function Reference schon x-mal durchgeschaut, und nichts gefunden, was dem Vollkörper schneiden entsprechen würde. Wenn ich den "internal" Begriff für diesen Befehl irgendwo auslesen könnte, könnte ich es einfach mal mit "try and error" versuchen. Im Prinzip gehört es ja genau zu dieser Familie

image.png.80c7b1394c5354206d56b21c4c6119e8.png

Vectorworks 2024 interiorcad |  Windows10 & 11

Geschrieben

Hallo Zusammen

 

Wurde bereits eine Lösung gefunden?

 

Ich benötige das Gegenteil von 'Extend Surface'.

Eigentlich müsste die Funktion 'Trim' ausreichen.

Das Problem ist, dass die dazu benötigte Nurbs Kurve erst erzeugt werden müsste.

 

Vielen Dank für eure Rückmeldung.

Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren

Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde Dich hier an.

Jetzt anmelden
  • Forenstatistik

    • Themen insgesamt
      26,9Tsd
    • Beiträge insgesamt
      139,9Tsd
×
×
  • Neu erstellen...