Learn to manage BIM workflows and create professional Archicad templates with the BIM Manager Program.

GDL
About building parametric objects with GDL.

How to display diagonals in a TUBE?

muril00ng
Enthusiast

Hello all,
Please, In TUBE or TUBE{2}, Is there a flag which allows displaying diagonal when TUBE change direction to 90 degrees?
Image attache show the TUBE preview, and I marked in red the lines I want to keep visible in 3D, elevations etc.
Thanks in advance.
muril00ng_0-1739125759825.png

 

____________________________________
Murilo Noleto
http://www.kilobim.com.br/
AC 12 - 27 | Win 10 | 16GB | NVidia GTX 1050Ti | AMD Ryzen 7 1700X
7 REPLIES 7
Pertti Paasky
Expert

muril00ng, You can control the visiility edgelines in many ways by mask value

Please, read GDL manual on page 93:

TUBE n, m, mask,
u1, w1, s1,

un, wn, sn,
x1, y1, z1, angle1,
...
xm, ym, zm, anglem

mask: controls the existence of the bottom and top polygons’ surfaces and edges.
mask = j1 + 2*j2 + 16*j5 + 32*j6 + 64*j7 + 128*j8 + 512*j10 + 1024*j11 + 2048*j12 + 4096*j13,
where each j can be 0 or 1.
j1: base surface is present,
j2: end surface is present,
j5: base edges (at x2, y2, z2) are visible,
j6: end edges (at xm-1, ym-1, zm-1) are visible,
j7: cross-section edges are visible, surface is articulated,
j8: cross-section edges are sharp, the surface smoothing will stop here in OpenGL and rendering,
j10: base edges participate in line elimination (Compatibility: introduced in Archicad 23.),
j11: end edges participate in line elimination (Compatibility: introduced in Archicad 23.),
j12: longitudinal edges (which connect cross sections) participate in line elimination (Compatibility: introduced in Archicad 23.),
j13: edges of cross sections participate in line elimination (Compatibility: introduced in Archicad 23.).

si: status of the lateral edges.
0: lateral edges starting from the node are all visible,
1: lateral edges starting from the node are used for showing the contour.
2: when using Archicad or Z-buffer Rendering Engine and setting Smooth Surfaces, the lateral edge belonging to this point defines a
break. This solution is equivalent to the definition of additional nodes. The calculation is performed by the compiler. With other rendering
methods, it has the same effect as using 0.

- AC-24 FIN - WIN 10 - HP Zbook -
“A winner is just a loser who tried one more time.”
George M. Moore, Jr.
muril00ng
Enthusiast

Thanks Pertti,
I 've tried that already, however diagonals don't appear.

 

muril00ng_0-1739195901082.png


Here's the code:

 

!!! A = 0.300
!!! B = 0.250
material 18
TUBE 5, 6, 1+2+16+32+64,

!!! profile
0, 0, 0,
0.040, 0, 0,
0.040, 0.010, 0,
0, 0.010, 0,
0, 0, 0,

!!! path
0,-0.2,0,0,
0,0,0,0,
0,B,0,0,
A,B,0,0,
A,0,0,0,
A,-0.2,0,0

 

____________________________________
Murilo Noleto
http://www.kilobim.com.br/
AC 12 - 27 | Win 10 | 16GB | NVidia GTX 1050Ti | AMD Ryzen 7 1700X

I have come across the same issue.

Seems that the surfaces that are co-planar (i.e the horizontal surfaces), will have no join line at the corner.

But the other surfaces at the corners will show a join line because they are at an angle to each other.

 

I have not found any of the masking or status values that can show that horizontal join.

 

Barry.

One of the forum moderators.
Versions 6.5 to 27
i7-10700 @ 2.9Ghz, 32GB ram, GeForce RTX 2060 (6GB), Windows 10
Lenovo Thinkpad - i7-1270P 2.20 GHz, 32GB RAM, Nvidia T550, Windows 11
Pertti Paasky
Expert

Ok, then we can try to split the tube into peaces. 

- AC-24 FIN - WIN 10 - HP Zbook -
“A winner is just a loser who tried one more time.”
George M. Moore, Jr.

@Pertti Paasky wrote:

Ok, then we can try to split the tube into peaces. 


I know what you mean, but that defeats the purpose of it being a tube.

In my case an adjustable polyline object where I can feed the co-ordinates into the TUBE with PUT commands.

 

Barry.

One of the forum moderators.
Versions 6.5 to 27
i7-10700 @ 2.9Ghz, 32GB ram, GeForce RTX 2060 (6GB), Windows 10
Lenovo Thinkpad - i7-1270P 2.20 GHz, 32GB RAM, Nvidia T550, Windows 11

The advantage of breaking it apart is that when it comes to curves tubes have to be segmented. so looping the tube points initially and segmenting will make that easier if it's something that will eventually need to be used

All done with the tube command.

No need to break into individual segments.

 

BarryKelly_0-1740015190540.png

 

 

Barry.

One of the forum moderators.
Versions 6.5 to 27
i7-10700 @ 2.9Ghz, 32GB ram, GeForce RTX 2060 (6GB), Windows 10
Lenovo Thinkpad - i7-1270P 2.20 GHz, 32GB RAM, Nvidia T550, Windows 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!