We value your input!
Please participate in Archicad 28 Home Screen and Tooltips/Quick Tutorials survey

GDL
About building parametric objects with GDL.

2D drawings in elevation

Hello,

I have tried to make a 2d draw by this way :
- Draw a complex illustration
- Save it as a dwg file
- Open an object and call this dwg (with the right dwg translator)
- Add ADD and ROT commands into 3D script to put this drawing at the right place
- I delete 2D script and use FRAGMENT2 command to draw an above view
At this point I have got a 2D draw visible in 2D/3D with this gsm

Now I am able to see this draw in elevation but not in all elevations because this 2d object has only one orientation. How to display this 2D plot in 3D instead of the 3D projection? Or how do I orient my 2D object perpendicular to the elevation view?
Christophe - FRANCE
Archicad Designer and Teacher
Archicad 15 to 27 FRA FULL

OS 11.6 Big Sur - MacBook Pro 2017 - 16Go RAM
"Quality is never an accident ; it's always the result of an intelligent effort" John Ruskin
10 REPLIES 10
Csilla Mai
Graphisoft Alumni
Graphisoft Alumni
Hi Christophe,

For what purpose do you need the drawing on elevation? Would changing the object's subtype to Label and place it on elevation as an independent label do the trick for you?
Csilla Mai
Library Platform, Engineering Manager
GRAPHISOFT SE
Lingwisyer
Guru
For what purpose do you need the drawing on elevation?

It's like using Face-Me objects in 3D, but instead between the floor plan and sections/elevations. Though I don't see there being many objects that could make use of this simplicity?

AC22-23 AUS 7000Help Those Help You - Add a Signature
Self-taught, bend it till it breaksCreating a Thread
Win11 | i9 10850K | 64GB | RX6600 Win10 | R5 2600 | 16GB | GTX1660
Hello Csilla and Lingwisyer,
Csilla wrote:
For what purpose do you need the drawing on elevation?
Like I write I put a 3D element into my model like a tree for example with one plan view and its 3D view in elevation. When I drag my object in another place, this one move in a plan view AND in 3D. My 3D representation is like a 2D an free drawing (not a heavy and not very beautiful 3D representation).
Csilla wrote:
Would changing the object's subtype to Label and place it on elevation as an independent label do the trick for you?
Thanks about this idea but I have no 2D/3D representation by this way.
Lingwisyer wrote:
It's like using Face-Me objects in 3D, but instead between the floor plan and sections/elevations.
Exactly !!

I have already read a way to create a model view which was able to lock object orientation to make them visible into elevation but I am not able to find it again. 😕
Christophe - FRANCE
Archicad Designer and Teacher
Archicad 15 to 27 FRA FULL

OS 11.6 Big Sur - MacBook Pro 2017 - 16Go RAM
"Quality is never an accident ; it's always the result of an intelligent effort" John Ruskin
Csilla Mai
Graphisoft Alumni
Graphisoft Alumni
The elevation's direction is not known in GDL.
If it helps, you can create a Face-Me object in 3D with the following script (it refreshes at Ctrl+Shift+R) and use a 3D Document instead of the section/elevation.
nTrans  = 0
EPS     = 0.0001
dx      = GLOB_EYEPOS_X - GLOB_TARGPOS_X
dy      = GLOB_EYEPOS_Y - GLOB_TARGPOS_Y

rotx 90
nTrans = nTrans + 1

if SYMB_MIRRORED then
	roty SYMB_ROTANGLE
else
	roty -SYMB_ROTANGLE
endif
nTrans = nTrans + 1

if abs(GLOB_EYEPOS_X - GLOB_TARGPOS_X)<EPS then
	if GLOB_EYEPOS_Y>GLOB_TARGPOS_Y then
		roty 180
		nTrans = nTrans + 1
	endif
else

	alf = atn(abs(dy/dx))
	
	if SYMB_MIRRORED then
		if dx<0 and dy>0 then 
			roty -(180-alf)
			nTrans = nTrans + 1
		endif
		if dx<0 and dy<0 then 
			roty -(180+alf)
			nTrans = nTrans + 1
		endif
		if dx>0 and dy<0 then 
			roty -(-alf)
			nTrans = nTrans + 1
		endif
		if dx>0 and dy>0 then 
			roty -(alf)
			nTrans = nTrans + 1
		endif
	else
		if dx<0 and dy>0 then 
			roty (180-alf)
			nTrans = nTrans + 1
		endif
		if dx<0 and dy<0 then 
			roty (180+alf)
			nTrans = nTrans + 1
		endif
		if dx>0 and dy<0 then 
			roty (-alf)
			nTrans = nTrans + 1
		endif
		if dx>0 and dy>0 then 
			roty (alf)
			nTrans = nTrans + 1
		endif
	endif
	
	roty 90
	nTrans = nTrans + 1
endif
rotx 270
nTrans = nTrans + 1		

! ===========================================
! Body in 3D
! ===========================================

del nTrans
Csilla Mai
Library Platform, Engineering Manager
GRAPHISOFT SE
Csilla,

It is very kind but it is not my aim at all.
Here you are able to find an example I have just found about what I need to do :
LIMITED SHARING - REFER TO @YVES HOUSSIER


I hope to be able to modify it.

Have a great day,
Christophe - FRANCE
Archicad Designer and Teacher
Archicad 15 to 27 FRA FULL

OS 11.6 Big Sur - MacBook Pro 2017 - 16Go RAM
"Quality is never an accident ; it's always the result of an intelligent effort" John Ruskin
Csilla Mai
Graphisoft Alumni
Graphisoft Alumni
Hi Christophe,

I've checked the library you sent. In addition to the rotation above it rotates back the objects with the symbol rotation angle in elevation:

if SYMB_MIRRORED then
	cor_ang = 360-SYMB_ROTANGLE
else
	cor_ang = (SYMB_ROTANGLE - 180)
endif

if GLOB_VIEW_TYPE = 5 then   ! in Elevation View
	rotz -cor_ang
endif
Please let me know if this is the rotation method you needed.
Csilla Mai
Library Platform, Engineering Manager
GRAPHISOFT SE
Hello Csilla,

Today I read your comment with happiness but without being able to understand.
I do not understand all the different steps about the link I share.
I wish understand each step. Where each script i should write and why...
On day I will be able to do it alone but not yet for sure.
Christophe - FRANCE
Archicad Designer and Teacher
Archicad 15 to 27 FRA FULL

OS 11.6 Big Sur - MacBook Pro 2017 - 16Go RAM
"Quality is never an accident ; it's always the result of an intelligent effort" John Ruskin
Yves
Advocate
Hello,
Mr. Christophe Fortineau
I am the author of the modifications of these tree objects based on the official Archicad library object and you know it very well.
The minimum courtesy when you share objects would be to specify the author and the provenance.

And normally these objects are "available and reserved" for registered and presented users on archi-cadlink.
Yves Houssier
Belgium
Archicad 19 -> 24
iMac - Mac Os 10,13
Yves wrote:
Hello,
Mr. Christophe Fortineau
I am the author of the modifications of these tree objects based on the official Archicad library object and you know it very well.
The minimum courtesy when you share objects would be to specify the author and the provenance.

And normally these objects are "available and reserved" for registered and presented users on archi-cadlink.
Thanks Yves Houssier about your answer.

Csilla has also started his approach to the subject very well. I admit not having been aware of the conditions of limited sharing of this resource of which you are the author.
The subject here is not about your excellent work but about understanding a specific subject, in which you are not involved.
You are a very respectable person both for your work and for your courtesy here and elsewhere, but please admit that it is sad to have to refer to an international forum to find answers to your questions. You also see me very disappointed with your dissatisfaction. Strongly hoping here as elsewhere for richer and more courteous exchanges.
Christophe - FRANCE
Archicad Designer and Teacher
Archicad 15 to 27 FRA FULL

OS 11.6 Big Sur - MacBook Pro 2017 - 16Go RAM
"Quality is never an accident ; it's always the result of an intelligent effort" John Ruskin