abbrechen
Suchergebnisse werden angezeigt für 
Stattdessen suchen nach 
Meintest du: 
abbrechen
Suchergebnisse werden angezeigt für 
Stattdessen suchen nach 
Meintest du: 

Wir schätzen Ihren Input!
Bitte nehmen Sie an der Umfrage zu Archicad 28 Startbildschirm und Lerninhalte/Schnell-Tutorials teil

Programmierung
Alles über Programmierung in GDL und Python

Objekte in mehreren Geschossen RELEVANT machen

Ma_Scht
Advocate
Hallo zusammen, wer mal eine einfaches Objekt in anderen Geschossen darstellen will, obwohl die Grundrissdarstellung "ALLE RELVANTEN GESCHOSSE" es nicht erlaubt, da beispielsweise eine Tischgruppe nicht weitere Geschosse darunter oder darüber schneidet (und somit nicht relevant ist), kann wie folgt vorgehen:

1. Objekt öffnen
2. Objekt unter neuem Namen speichern
3. neues Objekt einfügen
4. Objekt im GDL-Editor öffnen
5. unter Register PARAMETER die KREUZE ENTFERNEN bei ac_bottomlevel und ac_toplevel
6. Objekt speichern
7. OBJEKTDIALOG >>> EINSTELLUNGEN >>> ALLE PARAMETER
8. neue Werte eingeben und das Objekt wird für darunter und darüber liegende Geschosse sichtbar

Objekteinstellung auf ALLE RELEVANTEN GESCHOSSE

Feine Sache wenn viele Geschosse mit geringen Höhenunterschieden vorhanden sind und man mit „ein Geschoss darüber und eines darunter“ nicht auskommt, aber das Objekt nicht auf allen Geschossen sehen will.

Ich würde es generell nur mit "Schmuck-am-Nachthemd-Objekten" machen, da ggf. die Auswertung Unfug auswirft.

Im Info-Fenster kann man ac_toplevel nicht ändern, man muss über den OBJEKTDIALOG gehen.

Gruß Mario
2 ANTWORTEN 2
Anonymous
Nicht anwendbar
Das kann evt. zu Performance-Problemen führen, wenn Du zu viele Objekte in zu vielen Geschossen darstellst. Weil AC dann in jedem Geschoss die bounding-box

A x B und ac_bottomlevel x ac_toplevel prüft und wenn es zutrifft die Skripte durchpflügt.

Ich würde besser die bounding box korrekt setzen mit:

UK=0
PARAMETERS ac_toplevel=zzyzx+UK
PARAMETERS ac_bottomlevel=UK


Dabei ist UK der unterste Punkt des Modells bezogen auf den Objektnullpunkt. Und zzyzx die Kompletthöhe des Elementes.

Mal abgesehen davon, kann es sonst sein, dass dein Objekt in Schnitten und Ansichten nicht auftaucht, weil die bounding box ganz woanders liegt.
Ma_Scht
Advocate
Hallo "Lars",
ist schon klar wo Du hin willst, aber das macht AC ja von alleine. So sind die Objekte ja programmiert. Die Relevanz hört an der Oberkante des Tisches auf, oder an der OK der Stühle wenn diese höher sind (Tisch-Stuhlgruppe eckig 19).

Was ich mit meinem Vorschlag will ist - die "Relevanz" erhöhen die AC in der 2D-Darstellung umsetzt. Das dies auf die Rechenleistung geht ist klar. Aber ich habe 6 + 6 Kerne, Speicher bis zum Horizont und eine Grafikkarte, wenn die anfängt zu kühlen, wedeln mir die Hosenbeine 🙂.

Durch das hochsetzen von ac_toplevel wird das Objekt "höher" als es real ist und wenn diese Höhe bis in das nächste Geschoss schneidet, dann wird das Objekt dort angezeigt. Nach unten mit ac_bottomlevel das Gleiche *(-1).

Ich bin eigentlich durch einen Beitrag mit der Darstellung von Fallrohren in einem anderen Forenabschnitt darauf gekommen.
Für Fallrohre geht das auch, aber da AC hier die Scripte verbirgt (was mir nicht gefällt 🙂), muss man 2 zusätzliche Parameter definieren und faktisch das was Du schreibst im Parameterscript schreiben.

Was ich eigentlich damit zeigen will ist, dass es kein großer Akt ist, ein Objekt in beliebig vielen Geschossen oberhalb und unterhalb darzustellen. Kostet Rechnerleistung - klar.

Bei meinem Paletten-Objekt (manchmal 20'000 Stk in einem separaten Hotlink) werde ich das auch nicht machen.

Und ja, da ist auch einiges an Wirrwar möglich, das geht soweit, dass das Objekt im Ursprungsgeschoss garnicht mehr angezeigt wird. Da kann man als Anfänger sicher kirre werden und deshalb habe ich es auch nicht als Antwort auf den Beitrag gepostet, da es der 1. Beitrag des Autors war 😉.

Mit ein paar Zeilen GLOB_xSTORY_xxx – Jongliererei kann man das auch Geschossweise steuern. Dazu ein Hinweis, dass es Rechnerleistung kostet.

Deshalb wäre es schön wenn AC das zeitnah umsetzen würde. Darum ist hiermit gebeten.

Gruß Mario