cancel
Showing results for 
Search instead for 
Did you mean: 
EN
cancel
Showing results for 
Search instead for 
Did you mean: 
Davor P
Enthusiast

29 MVO object LOD drop in GDL script wanted

Has anyone figured out how to tap into 29 MVO LOD for objects? Was fairly simple in 27 and before. 29 uses different macros and before I spend time reverse engineering, does anyone already have a solution?
Also would anyone know what 28 uses?

 

Operating system used: Windows 11

BIM4BIM - by BIM managers for BIM managers
www.bim4bim.com | audit.bim4bim.com
2 Replies 2
Lingwisyer
Guru

I have not looked at it, but the macros should be the same between 28 and 29. The library is suppose to be independant of AC version, mostly...

AC22-29 AUS 3200Help Those Help You - Add a Signature
Self-taught, bend it till it breaksCreating a Thread
Win11 | i9 10850K | 64GB | RX6600 Win11 | R5 2600 | 16GB | GTX1660
Davor P
Enthusiast

The difference is the parameter name and enum values for full/simplified/schematic.


If anyone comes across the same problem - here is my solution - feel free to let me know if it can be improved.
I don't have 2D script LOD part as I did not need it.

Assuming you already have "iDetlevel3D" parameter.
Add another parameter
"iDetLev3d", set type to integer, same as "iDetlevel3D"

3D script:


! version check

n = REQUEST("PROGRAM_INFO", "", name, version)
IF version <= 27 THEN
    IF iDetlevel3D = 1 THEN
        CALL "DetlevelFunctionMacro" PARAMETERS iDetlevel3D = iDetlevel3D, returned_parameters _iDetlevel3D
    ELSE
        _iDetlevel3D = iDetlevel3D
    ENDIF
ELSE
    CALL "GetObjectGlobals" PARAMETERS  iObjectDet3D = iDetLev3D,   RETURNED_PARAMETERS     _unused, _iDetlevel3D
ENDIF


IF version <=  27 THEN
    IF _iDetlevel3D = 5 GOSUB "SCHEMATIC"
    IF _iDetlevel3D = 4 GOSUB "SIMPLIFIED"
ELSE
    IF _iDetlevel3D = 1 GOSUB "SCHEMATIC"
    IF _iDetlevel3D = 2 GOSUB "SIMPLIFIED"
ENDIF

IF _iDetlevel3D = 3 GOSUB "DETAILED"

Parameter script:

VALUES{2} "iDetlevel3D" 1, "By MVO", 3, "Detailed", 4, "Simplified", 5, "Schematic"

IF iDetlevel3D = 1 THEN PARAMETERS iDetLev3D = 0
IF iDetlevel3D = 3 THEN PARAMETERS iDetLev3D = 3
IF iDetlevel3D = 4 THEN PARAMETERS iDetLev3D = 2
IF iDetlevel3D = 5 THEN PARAMETERS iDetLev3D = 1
BIM4BIM - by BIM managers for BIM managers
www.bim4bim.com | audit.bim4bim.com

Didn't find the answer?

Check other topics in this Forum

Back to Forum

Read the latest accepted solutions!

Accepted Solutions

Start a new conversation!