2021-05-10 08:08 AM - last edited on 2021-09-14 09:13 AM by Noemi Balogh
MODEL SOLID For i =Von to bis Material BM set Material i !block A,B,hohe put 0 ,0 ,15 put A ,0 ,15 put A ,B ,15 put 0 ,B ,15 prism_ NSP/3,hohe, get (NSP) addz hohe next i
2021-05-10 08:31 AM
2021-05-10 10:50 AM
AC22-23 AUS 7000 | Help Those Help You - Add a Signature |
Self-taught, bend it till it breaks | Creating a Thread |
Win11 | i9 10850K | 64GB | RX6600 | Win10 | R5 2600 | 16GB | GTX1660 |
2021-05-11 07:07 AM
2021-05-11 09:05 AM
Lingwisyer wrote:
I think this has got to do with the Cut_fill settings. You would have to set it for each of your layers. I can only think of being able to change this via the Building Material command.
Ling.
2021-05-11 09:11 AM
Podolsky wrote:Is the a way to set this up within a 3D script?
Hi. Check options in SEO - there must set "Use Own Attributes". And if you would like to see same colour when you cut in 3D (with marquee for example), set "Use Element Attributes" in Filter and Cut Elements in 3D dialog.
2021-05-11 11:20 AM
2021-05-11 01:40 PM
Podolsky wrote:I got a bit further in my project.
You cannot control external ArchiCAD commands with GDL script. Maybe I don't understand something - what exactly you need. If this is the case - I can review your file and script - if you upload it here.
Versatz = 9.00 Von = 1 Bis = 21 Hohe = 0.5 addz -GLOB_ELEVATION-Versatz !GLOB_CUTPLANES_INFO[1] + GLOB_CSTORY_ELEV - GLOB_HSTORY_ELEV Group "Z" For i =Von to bis set Material i BUILDING_MATERIAL i hotspot 0,0,0 put 0 ,0 ,15 put A ,0 ,15 put A ,B ,15 put 0 ,B ,15 prism_ NSP/3,hohe, get (NSP) addz hohe next i del top Endgroup Group "O" !!Afterwards I want to insert a Call here !!The Idea being that if something changes, I can select all ceilings and ramps and just replace the object I'm calling add A/4, B/4,0 hotspot 0,0,0 set Material 1 BUILDING_MATERIAL 1 put 0 ,0 ,15 put A/2 ,0 ,15 put A/2 ,B/2 ,15 put 0 ,B/2 ,15 prism_ NSP/3,5, get (NSP) Endgroup Placegroup "Z" !Ziel Placegroup "O" ! Operator Result = ISECTGROUP{3} ("Z", "O", 0, 0, 0 , 2) addx A*2 Placegroup Result del 1
2021-05-11 05:05 PM
2021-05-11 06:22 PM
Braza wrote:Worked perfectly! Thank you so much!
Hi Arnaut,
If I understand you correctly, there is a solution for this that I used in the Composite Mesh Object.
It is what I call a "GDL Jedi Trick" like "These are not the droids we are looking for"
So, to full a Called custom saved object to display new BM's or any other parameters, the trick is to: In the Call definition of the saved object, define all the parameters that you want to override with a "-1" value. The CALL commands says something like: if the compiler can't find the value in the local list of attributes it will adopt the very previous BM definition. So put a BM definition right before the CALL. Then it will stick to the Called object.
It will give only a "minor error occurred message" while saving it, but it wont affect the object functionality.
Hope this helps.
MODEL SOLID if GLOB_CONTEXT = 2 then add 0,0,GLOB_CUTPLANES_INFO[1] + GLOB_CSTORY_ELEV - GLOB_HSTORY_ELEV CUTPLANE{2} 0,0 del 1 endif i = von h = von_H Group "O" CALL "Operator Höhenfarben" PARAMETERS materialAttribute_1 = 2, materialAttribute_2 = 3, materialAttribute_3 = i Endgroup if Sichtbar then placegroup "O" endif repeat i = i + 1 h = h + hohe Gosub "Schicht": until h >= bis_H IF GLOB_CONTEXT=2 THEN CUTEND ENDIF del top !=========================================================== End !=========================================================== "Schicht": addz h-GLOB_ELEVATION!-Versatz CUTPLANE 1,1,0,0 addz -hohe CUTPLANE 1,1,0,1 !Circle 10 del 2 !material i !addz -10 !Block 10,10,10 !del 1 CALL "Operator Höhenfarben" PARAMETERS materialAttribute_1 = i, materialAttribute_2 = i, materialAttribute_3 = i, materialAttribute_4 = i, materialAttribute_5 = i, buildingMatAttribute_1 = i Cutend Cutend Return