Zum Inhalt springen

Marionette - Objs by Crit v2


KroVex

Empfohlene Beiträge

Salü Zusammen

 

Mal eine Frage an die anderen Marionette-Gurus hier im Forum:

Ich möchte einige Marionette-Befehle/Tools Anwenderfreundlicher gestalten.

Bei vielen davon, startet die erste Eingabe über den Node "Objects by Criteria", welcher ja schonmal ziemlich toll ist.
Allerdings sobald man damit z.b. auf DB-Feldeinträge zugreifen möchte, kommt man am typischen VW-Phänomen mit den Ellen langen Listen nicht vorbei:
187968270_Bildschirmfoto2019-10-31um11_06_51.thumb.png.21ead36d4e5be7684ae27f50a4e6de53.png

.. was für die meisten Durchschnitts-Anwender schon eine Tortur darstellen kann. 

 

Cool wäre natürlich nun, wenn man dem Node "Objs by Crit" eine Vorauswahl an möglichen Begriffen zuteilen könnte... Also eigentlich ein Objs by Crit mit Input-Möglichkeiten.

Die einzige Idee wie ich das umsetzen könnte (mit meinen bescheidenen Programmierfähigkeiten) wäre, alles mit Popup-Nodes und IF/Else Nodes aufzubauen, was wohl in einem riesen Netzwerk enden würde.

 

Hättet ihr eine bessere Idee, wie man das intelligent und sauber umsetzen könnte?

 

Gruss KroVex

CADNODE.ch

Lassen Sie uns gemeinsam effiziente und innovative CAD-Lösungen für Ihr Projekt finden!

Have you tried to turn it off and on again?
Vectorworks | Architektur | macOS/Windows

Link zu diesem Kommentar

Alles was über einen einfachen Input-Node mit einer Liste aus den gängigen vorgefertigten Suchkriterien hinausgeht läuft auf ein quasi Nachbau des Filtermenüs hinaus. Da würd ich eher ein Wunschformular ausfüllen, dass man bei dem Menü ein weiteres Feld dazu macht, um zuerst die Datenbank und dann den Eintrag zu wählen.

 

Was man mit übersichtlichem Programmieraufwand könnte, wär ein einfacher Kriteriengenerator welcher Kriterien über ein Beispielobjekt abgreift. So müsste man nur Kriterien durchwühlen, welche am markierten Objekt vorhanden sind. Man markiert ein Objekt, lässt das Script laufen. Dieses schaut z.B., welche Datenbanken verknüpft sind und zeigt eine Liste der Felder. Da wählt man dann die gewünschten Felder aus und das Script gibt dann das Kriterium aus.

So was wär schon irgendwie toll, aber ob es den Aufwand wert ist, oder ob man doch lieber einfach allen beibringt mit dem Filtermenü umzugehen...

  • Like 1

Vectorworks 2024 - Architektur - Win 10

Link zu diesem Kommentar

Das mit dem Abgreifen eines bestehenden Objekts ist nicht mal eine all zu schlechte Idee.
Ich muss dass mal durchspielen.

Was ich mich noch frage, Objects by Crit generiert ja nach dem auswählen der Eigenschaften, in der Infopalette ein ausgeschriebenes Kriterium z.b. "((R IN ['000_02-01_Uebersich_Einbauten']))". Dieser Code kann aber nur vom Criteria Node interpretiert werden oder? Schlussendlich bräuchte man ja nur einen Node, der diesen Code interpretieren kann und dem entsprechend das Objekt/die Information weiterleitet. Denn dieses Kriterium zu bearbeiten, wäre wiederum ein Kinderspiel. Den ganzen Dialog bräuchte es meiner Meinung also gar nicht mehr.

 

Was mir gerade in den Sinn kommt, im VW2018 war der "Objs by Crit"-Node ja noch ohne Dialog und das Kriterium musste manuell eingegeben werden. Wäre es irgendwie möglich, anstatt die Eingabe über die Infopalette, über den Input-Port zu steuern?

CADNODE.ch

Lassen Sie uns gemeinsam effiziente und innovative CAD-Lösungen für Ihr Projekt finden!

Have you tried to turn it off and on again?
Vectorworks | Architektur | macOS/Windows

Link zu diesem Kommentar

Diesen Node zu bauen ist nicht so komplex. Alles was ich gemacht habe, ist die Texteingabe in der OIP durch einen Input zu ersetzen und den Dialog inklusive Aktivierungsbutton zu löschen. (Der Dialog wird in der Funktion ganz unten aufgerufen, der Rest passiert in der Paramsfunktion.)

 

Objs By Crit.vwx

 

Es ist mir aber noch unklar, wie du das Kriterium zusammensetzen möchtest. Ist es möglich mit vorgefertigen Nodes eine Liste mit allen Datenbank(einträgen) zu generieren?

Bearbeitet von Manuel Roth
  • Like 2
  • Lieben 1

Freundliche Grüsse

 

Manuel Roth

_________________________________________________
Vectorworks 2022 SP3 | Architektur | Windows 10

Link zu diesem Kommentar

Woaa geil, vielen Dank Manuel, genau so habe ich mir das vorgestellt ?

 

vor 33 Minuten schrieb Manuel Roth:

Es ist mir aber noch unklar, wie du das Kriterium zusammensetzen möchtest. Ist es möglich mit vorgefertigen Nodes eine Liste mit allen Datenbank(einträgen) zu generieren?

Die Sache ist ja, dass ich nur eine definierte Vorauswahl an Einträgen zur Auswahl haben möchte, und nicht die ganze Liste.

 

Das Kriterium setzt sich ja von der Art her immer gleich zusammen, bsp.: ((R IN ['000_02-01_Uebersicht_Einbauten']))
Die drei farbig markierten Texte entsprechen den drei Feldern im originalen Dialog. Laut dem Appendix auf der Developer Seite bedeutet dieses Kriterium also folgendes:
1336304297_Bildschirmfoto2019-10-31um13_27_23.png.7c1c0185de655364405f43b72f1402f8.png

 

Jetzt kann ich also ein PopUp-Node verwenden, welches die vordefinierten Datenbanknamen enthält und mit "Replace in String" oder mit dem Fuction-Node die gewünschte Stelle im Kriterium ersetzen. Ich könnte auch einen PopUp-Dialog verwenden, statt eine vorgefertigte Liste. Einen Namen in ein Feld zu schreiben, welches vor einem aufploppt, sollten die meisten noch hinbekommen :D

 

 

 

Bearbeitet von KroVex

CADNODE.ch

Lassen Sie uns gemeinsam effiziente und innovative CAD-Lösungen für Ihr Projekt finden!

Have you tried to turn it off and on again?
Vectorworks | Architektur | macOS/Windows

Link zu diesem Kommentar

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
      23,7Tsd
    • Beiträge insgesamt
      122,4Tsd
×
×
  • Neu erstellen...