Das Wissen aller Anwender nutzen

Im Allplan Connect Forum tauschen sich Anwender aus, geben wertvolle Tipps oder beraten sich bei ganz konkreten Aufgabenstellungen − auch international.
Und damit wirklich keine Frage unbeantwortet bleibt, unterstützen die Mitarbeiter des Technischen Supports ebenfalls aktiv das Forum.

Es erwarten Sie:

  • Foren-Vielfalt aus CAD Architektur, CAD Ingenieurbau uvm.
  • Tipps von User für User
  • international: Deutsch, Englisch, Italienisch, Französisch und Tschechisch

Melden Sie sich jetzt an und diskutieren Sie mit!

Zur Registrierung

Liste über zufällige Auswahl Teilen und in separate Listen aufteilen [Gelöst]


Hi Scripting-Community,

ich hätte mal wieder eine Frage wo ich ohne Hilfe nicht weiterkomme. Gegeben ist eine Reihe mit Geometrie (Liste Basis). Aus dieser möchte ich nun per Zufall, z.B. prozentual von der Gesamtmenge, eine zufällige Auswahl herausnehmen (Liste 1 - siehe Anlage). Dann soll in einer zweiten Liste alle Geometrien zusammengefasst werden die nicht in Liste 1 enthalten sind. Einen passenden Listenbefehl konnte ich bisher nicht finden. Ich nutzte noch Allplan Version 2020 falls das hier eine Rolle spielt.

LG Micha

Anhänge (1)

Typ: image/jpeg
25-mal heruntergeladen
Größe: 38,60 KiB

Lösung anzeigen Lösung verbergen

Node SubListByRange könnte hier eine Lösung (ein Workaround...) sein. Die Idee ist die entsprechenden Intervalle mit den Indexen zu erstellen und daraus mehrere Sub-Liste herausholen. Ergebnis siehe ListSplit.png.

Das Skript ListSplit.pyp wurde zwar beigefügt, ist vermutlich unter Allplan 2020 nicht aufrufbar, da es unter Allplan 2021 gebaut wurde. Ein Screenshot des Skripts wurde daher auch beigefügt. Siehe SubListByRange.png. Zum besseren Verständnis habe ich einige Kommentare geschrieben, wahrscheinlich schaffst du es in Allplan 2020 nachzubauen...

Mit Python-Code wird es vermutlich viel einfacher. Wir werden einige Nodes erstellen, um den Aufwand für solche Liste-Operationen in Zukunft zu reduzieren.

Product Owner API, Allplan GmbH

Anhänge (3)

Typ: image/png
23-mal heruntergeladen
Größe: 380,27 KiB
Typ: text/xml
949-mal heruntergeladen
Größe: 29,69 KiB
Typ: image/png
26-mal heruntergeladen
Größe: 507,34 KiB

Node SubListByRange könnte hier eine Lösung (ein Workaround...) sein. Die Idee ist die entsprechenden Intervalle mit den Indexen zu erstellen und daraus mehrere Sub-Liste herausholen. Ergebnis siehe ListSplit.png.

Das Skript ListSplit.pyp wurde zwar beigefügt, ist vermutlich unter Allplan 2020 nicht aufrufbar, da es unter Allplan 2021 gebaut wurde. Ein Screenshot des Skripts wurde daher auch beigefügt. Siehe SubListByRange.png. Zum besseren Verständnis habe ich einige Kommentare geschrieben, wahrscheinlich schaffst du es in Allplan 2020 nachzubauen...

Mit Python-Code wird es vermutlich viel einfacher. Wir werden einige Nodes erstellen, um den Aufwand für solche Liste-Operationen in Zukunft zu reduzieren.

Product Owner API, Allplan GmbH

Anhänge (3)

Typ: image/png
23-mal heruntergeladen
Größe: 380,27 KiB
Typ: text/xml
949-mal heruntergeladen
Größe: 29,69 KiB
Typ: image/png
26-mal heruntergeladen
Größe: 507,34 KiB

Das hat funktioniert. Aber ich muss zustimmen der Weg ist schon etwas aufwendig und wenn dies zukünftig per Node möglich wird wäre ich sehr dankbar.