Libraries & objects
About Archicad and BIMcloud libraries, their management and migration, objects and other library parts, etc.

Plane with Dashed line as border in 3D

Anonymous
Not applicable
Hi,

We need to show a slab, mesh, fill or zone borders with dashed line in 3D if we are looking from the top.

I created an object which 3D script is

pen 10
material “yellow colour”
set line_type “Dashed”

prism_ 5, 0.001,
0, 0, 0,
0, 1, 0,
2, 1, 0,
2, 0, 0,
0, 0, -1

lin_ 0,0,0, 0,1,0
lin_ 0,1,0, 2,1,0
lin_ 2,1,0, 2,0,0
lin_ 2,0,0, 0,0,0

In 3D I am not getting dashed line I am only getting solid line.

Is any one had any idea how to get the dashed plane in 3d?

Is there any object available as “3Ddashedline”?

plane.JPG
10 REPLIES 10
Barry Kelly
Moderator
There is no such thing as a dashed line in 3D unfortunately.
So you have to make one yourself by drawing a whole series of short lines with gaps in between.

The code you need will be something like this for each one of you edges.

if fra(a/0.15)<>0 then
No_Dsh=No_Dsh+1
endif
addz 0.05
addx -a*0.5
for Cnt=1 to No_Dsh
lin_ 0,0,0,0.1,0,0
lin_ 0,-b,0,0.1,-b,0
lin_ 0,0,zzyzx,0.1,0,zzyzx
lin_ 0,-b,zzyzx,0.1,-b,zzyzx
addx (a+0.05)/No_Dsh
next Cnt
del No_Dsh


You will need to adjust the "a", 'b" and "zzyzx" parameters to suit the size and direction you want the line to travel.

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
Barry Kelly
Moderator
In fact that code draws 4 lines of a cube so you actually only need just one line in the for/next loop.

if fra(a/0.15)<>0 then
No_Dsh=No_Dsh+1
endif
addz 0.05
addx -a*0.5
for Cnt=1 to No_Dsh
lin_ 0,0,0,0.1,0,0
addx (a+0.05)/No_Dsh
next Cnt
del No_Dsh


0.05 is the gap and 0.1 is the line length.
0.15 is the length of the gap and the line together.


To do the entire cube try this.

No_Dsh=int(a/0.15)
if fra(a/0.15)<>0 then
No_Dsh=No_Dsh+1
endif
addz 0.05
addx -a*0.5
for Cnt=1 to No_Dsh
lin_ 0,0,0,0.1,0,0
lin_ 0,-b,0,0.1,-b,0
lin_ 0,0,zzyzx,0.1,0,zzyzx
lin_ 0,-b,zzyzx,0.1,-b,zzyzx
addx (a+0.05)/No_Dsh
next Cnt
del No_Dsh

No_Dsh=int(b/0.15)
if fra(b/0.15)<>0 then
No_Dsh=No_Dsh+1
endif
for Cnt=1 to No_Dsh
lin_ 0,0,0,0,-0.1,0
lin_ a,0,0,a,-0.1,0
lin_ 0,0,zzyzx,0,-0.1,zzyzx
lin_ a,0,zzyzx,a,-0.1,zzyzx
addy -(b+0.025)/No_Dsh
next Cnt
del No_Dsh

No_Dsh=int(zzyzx/0.15)
if fra(zzyzx/0.15)<>0 then
No_Dsh=No_Dsh+1
endif
for Cnt=1 to No_Dsh
lin_ 0,0,0,0,0,0.1
lin_ 0,-b,0,0,-b,0.1
lin_ a,0,0,a,0,0.1
lin_ a,-b,0,a,-b,0.1
addz (zzyzx+0.025)/No_Dsh
next Cnt
del No_Dsh+2
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

Are you still unable to use LineType in 3D?

AC27 on window 11

No, there is no line type in 3D.

 

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

GDL LIN_ cannot be used as a hidden type in section or elevation.

AC27 on window 11

@LeeJaeYoung wrote:

GDL LIN_ cannot be used as a hidden type in section or elevation.


I am a bit confused.

Is this a statement? (yes, it is true there is no hidden line type in 3D).

Or are you asking a further question.

 

LIN_ in 3D is solid and that is it.

PRISM & POLY etc., will have masking codes to turn edges on/off.

But they are on (= solid) or off completely (= not there).

 

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

Not sure if this helps in your case – 3D document with graphic override.

Screen Shot 2022-09-05 at 00.24.17.png

LeeJaeYoung_0-1662348738987.png

I am trying to express the hidden railing like a CAD drawing.

AC27 on window 11

Archicad does not have the ability to show hidden elements with a hidden (dashed) line type in sections, elevations or 3D.

 

You can draw a dashed line in section/elevation or you can overlay a white dashed line to make a solid line below appear dashed.

You can also use a lined hatch with thick white hatch lines to mask what is behind it.

 

Or as Ignacio has suggested, you can create a 3D Document of a 3D view and then you can alter the lines types (as they are now 2D lines).

There is also an option to 'show hidden edges' in a 3D document and you can set the line style.

But is will show ALL hidden edges of hidden elements - you can't pick and choose.

 

Besides that, it looks to me that you aren't wanting to show actual hidden elements (i.e. an element hidden behind another element).

You just want to show certain elements as dashed in your section/elevation.

You can't do this without drawing or overlaying dashed lines yourself manually.

 

Even if you could set an element as dashed in a section, it would then appear dashed in all other sections, elevations and 3D views.

 

Also, with railings, there are MVO options for full, simplified or symbolic appearance.

The latter 2 you can set the line type to a dashed line.

So if it is just railings you are looking at, yes it can be done in MVO options - which you can set different MVO scheme for each view - so some can be dashed and some can be solid.

 

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