GDL
About building parametric objects with GDL.

How can I get an override material for the wall?

LeeJaeYoung
Virtuoso

I'm trying to get the override material for the wall from window & door.
How can I get an override material for the wall?

 

스크린샷 2023-11-01 200046.png

AC27 on window 11
13 REPLIES 13
Barry Kelly
Moderator

I am sure you have discussed this in other posts.

You need WALL_MAT_A, WALL_MAT_B, WALL_MAT_EDGE

But I think the values returned depend on how the window/door is placed in the wall - opening toward reveal side or not.

 

Barry.

One of the forum moderators.
Versions 6.5 to 27
Dell XPS- i7-6700 @ 3.4Ghz, 16GB ram, GeForce GTX 960 (2GB), Windows 10
Lenovo Thinkpad - i7-1270P 2.20 GHz, 32GB RAM, Nvidia T550, Windows 11
Lingwisyer
Guru

Following from Barry's, you can determine which side of the wall the door / window reveal was set to then flip WALL_MAT_A and WALL_MAT_B as required.

AC22-23 AUS 7000Help Those Help You - Add a Signature
Self-taught, bend it till it breaksCreating a Thread
Win10 | R5 2600 | 16GB | GTX1660 

Thank you for answer. ^^

Doesn't the 3D script take the master scripter's v... - Graphisoft Community
I've discussed WALL_MAT_A before.
The story progressed as a way to check because FLIPPED in 2D SCRIPT did not work in 3D SCRIPT.
And I also used WALL_MAT_A as a test, but the script didn't work, so I thought it didn't work.
That's why I posted a question, wondering if there might be something else.
I hope you understand. ^^

I have doubts about whether I need to change my mind about comparing the materials obtained in step 1 of WALL_SKINS_PARAMS. ????

I thought I would get the material index from the building material obtained in step 1 and compare it with WALL_MAT_A.
If I change the surface material like I did, is there a variable that will tell me what the value has changed?

In other words, is there a way to know when an icon was pressed and the material changed?

Thank you always for your consideration. ^^

 

 

 

Solved: Why is the default value of WALL_FLIPPED 1? - Graphisoft Community

I don't think I understood at this time.
I couldn't remember at all.
I think I just solved the question about the WALL_FLIPPED value.
sorry. ^^
I apologize for not being able to understand your in-depth explanation due to my limited skills.

Have a happy day.. ^^

AC27 on window 11

I would like to know how to know when this button has been pressed.
I'm asking this question because I think I need to know whether this button was pressed when comparing wall_mat_a with wall_skin_param.

AC27 on window 11

It is a boolean value.

If it is 0, the wall is not flipped.

If it is 1, the wall is flipped.

 

Barry.

One of the forum moderators.
Versions 6.5 to 27
Dell XPS- i7-6700 @ 3.4Ghz, 16GB ram, GeForce GTX 960 (2GB), Windows 10
Lenovo Thinkpad - i7-1270P 2.20 GHz, 32GB RAM, Nvidia T550, Windows 11

Are you referring to wall_flipped?

wall_flipped 3D script does not work properly.

And I want to know if that button is on/off.

 

Doesn't the 3D script take the master scripter's v... - Graphisoft Community

AC27 on window 11

@LeeJaeYoung wrote:

Are you referring to wall_flipped?

wall_flipped 3D script does not work properly.

And I want to know if that button is on/off.


I thought you were talking about WALL_FLIPPED.

I have never actually used it but it is supposed to be usable in 3D.

This is not the same as the button for flipping in the windows and doors.

That I think is WIDO_REVEAL_SIDE.

 

Barry.

One of the forum moderators.
Versions 6.5 to 27
Dell XPS- i7-6700 @ 3.4Ghz, 16GB ram, GeForce GTX 960 (2GB), Windows 10
Lenovo Thinkpad - i7-1270P 2.20 GHz, 32GB RAM, Nvidia T550, Windows 11
Lingwisyer
Guru

From an object I was experimenting with.

 

IF SYMB_ROTANGLE = 180 then
		BUILDING_MATERIAL WALL_SKINS_PARAMS[WALL_SKINS_NUMBER][18]							!Inside building material
		SECT_ATTRS{2} WALL_SKINS_PARAMS[WALL_SKINS_NUMBER][9]
	else
		BUILDING_MATERIAL WALL_SKINS_PARAMS[1][18]											!outside building material
		SECT_ATTRS{2} WALL_SKINS_PARAMS[1][7]
endIF

	IF skin_return = "Custom" | skin_return = "Custom Inside" then
			gs_fw_side_left = gs_fw_side_left_i
			gs_fw_side_right = gs_fw_side_right_i
			gs_fw_upper = gs_fw_upper_i
			gs_fw_lower = gs_fw_lower_i
		ELSE
			IF SYMB_ROTANGLE = 180 then
					gs_fw_side_left = WALL_SKINS_PARAMS[WALL_SKINS_NUMBER][2]
					gs_fw_side_right = WALL_SKINS_PARAMS[WALL_SKINS_NUMBER][2]
					gs_fw_upper = WALL_SKINS_PARAMS[WALL_SKINS_NUMBER][2]
					gs_fw_lower = WALL_SKINS_PARAMS[WALL_SKINS_NUMBER][2]
				else
					gs_fw_side_left = WALL_SKINS_PARAMS[1][2]
					gs_fw_side_right = WALL_SKINS_PARAMS[1][2]
					gs_fw_upper = WALL_SKINS_PARAMS[1][2]
					gs_fw_lower = WALL_SKINS_PARAMS[1][2]
			endIF
	endIF

	IF WIDO_REVEAL_SIDE = 0 then
			WALL_MAT = WALL_MAT_A
		else
			WALL_MAT = WALL_MAT_B
	endIF

 

 

AC22-23 AUS 7000Help Those Help You - Add a Signature
Self-taught, bend it till it breaksCreating a Thread
Win10 | R5 2600 | 16GB | GTX1660 

LeeJaeYoung_0-1699502239012.png

I would like to know the function that determines whether this button has been pressed.
Even though I read it, I can't find that part.

Does this have anything to do with it?
WALL_SKINS_PARAMS
[19] skin edge surface index (considering wall edge surface override). Compatibility: introduced in ARCHICAD 22.

AC27 on window 11

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!