abbrechen
Suchergebnisse werden angezeigt für 
Stattdessen suchen nach 
Meintest du: 
abbrechen
Suchergebnisse werden angezeigt für 
Stattdessen suchen nach 
Meintest du: 
Bibliotheken und Objekte
Archicad- und BIMcloud-Bibliotheken, deren Verwaltung und Migration, Objekte und andere Bibliotheksteile, etc.
GELÖST!

Objekt 3D Höhenkote

TB Seidl
Contributor

Liebe Community!

 

Ich verwende sehr gerne das Objekt "3D Höhenkote" von Heimo Mooslechner.

Könnte mir jemand helfen wie ich es so umstellen/ umschreiben könnte, sodass mir der Wert "über Meeresspiegel" anstelle "bezogen auf Projekursprung" angezeigt wird?

 

Vielen Dank im voraus!

Claudia

AC 27 u. 28, Windows 10
1 AKZEPTIERTE LÖSUNG

Akzeptierte Lösungen
Lösung
Hmooslechner
Moderator

gute Idee!

 

hier mal das geänderte Objekt in einer AC28EduAut-Datei:

https://www.dropbox.com/scl/fi/yi7zuv5ybjhx2m04zabqa/Meeresh-he-mit-3D-H-henkote.pln?rlkey=xruvbv731...

 

 

Änderungen 10.1.2025: Normal-Null (Meereshöhe) alsOption hinzugefügt - einmal die Normal-Null des Projektes oder alternativ die Eingabe einer eigenen Höhenangabe.

 

neu angelegte Parameter: 

 

"NN"     - Schalter ob man die Normal-Null haben will - wenn ja, dann noch:

"eingeneNN"    - wenn man dort eine Zahle eingibt, wird dann diese zur ermittelten Höhe des Objektes hinzugefügt, wenn dort 0 drin ist, dann nimmt es die Projekt-eingestellte Meereshöhe.

 

 

2D-Script: 

 


Hotspot2 0, 0

Dingz = SYMB_POS_z

DEFINE STYLE BemTextStyle "Arial", zzyzx/3/GLOB_SCALE*1000, 8, 0
style BemTextStyle 

circle2 0,0,ZZYZX/3

line2 -ZZYZX/3, 0, ZZYZX/3, 0
line2 0,-ZZYZX/3,0,ZZYZX/3
add2 0,zzyzx/3*1.2

if eingeneNN # 0 then 
		Meereshohe = eingeneNN
	else
		Meereshohe= GLOB_PROJECT_ALTITUDE
endif


		if nn = 1 then

				TEXT2 0, 0, str(Dingz+Meereshohe, 7, 2) 

			else

				TEXT2 0,0, str(Dingz, 7, 2)
				
		endif



	
del 1

 

3D-Script:

EPS = 0.00001  !!!Einfach ein kleiner Wert..


!CameraX = GLOB_EYEPOS_X !!!Versuch den Text immer lesbar hinzudrehen - aber dies erfordert einen Neuaufbau 3D
!Cameray = GLOB_EYEPOS_y
!Cameraz = GLOB_EYEPOS_z

!Dingx = SYMB_POS_X
!Dingy = SYMB_POS_y
Dingz = SYMB_POS_z

!xdist = CameraX - Dingx
!ydist =  Cameray - Dingy
!
!Dist = SQR(xdist^2 + ydist^2)
!
!
!
!
!	beta = xdist/dist
!	IF beta > 1 THEN beta = 1
!	IF beta < -1 THEN beta = -1
!
!	alpha2D = ACS (beta)
!

material Pfeilmat
!!!   CONE h, r1, r2, alpha1, alpha2
CONE zzyzx, 0, zzyzx/3, 90, 90



hotspot 0,0,0,1

material Textmat
DEFINE STYLE BemTextStyle "Arial", zzyzx/GLOB_SCALE*30000, 8, 0
addz zzyzx * 1.05

	style BemTextStyle 

!addy zzyzx/3*1.2
!	TEXT EPS, 0, str(Dingz, 7, 2)
!del 1

	  rotz 0! Alpha2D+90  !!!Versuch den Text immer lesbar hinzudrehen - aber dies erfordert einen Neuaufbau 3D
	  rotx 90



	if eingeneNN # 0 then 
			Meereshohe = eingeneNN
		else
			Meereshohe= GLOB_PROJECT_ALTITUDE
	endif


		if nn = 1 then

				TEXT EPS, 0, str(Dingz+Meereshohe, 7, 2) 

			else

				TEXT EPS, 0, str(Dingz, 7, 2)

		endif

	  del 2
del 1

 

AC5.5-AC27EduAut, PC-Win10, MacbookAirM1, MacbookM1Max, Win-I7+Nvidia

Lösung in ursprünglichem Beitrag anzeigen

2 ANTWORTEN 2
Lösung
Hmooslechner
Moderator

gute Idee!

 

hier mal das geänderte Objekt in einer AC28EduAut-Datei:

https://www.dropbox.com/scl/fi/yi7zuv5ybjhx2m04zabqa/Meeresh-he-mit-3D-H-henkote.pln?rlkey=xruvbv731...

 

 

Änderungen 10.1.2025: Normal-Null (Meereshöhe) alsOption hinzugefügt - einmal die Normal-Null des Projektes oder alternativ die Eingabe einer eigenen Höhenangabe.

 

neu angelegte Parameter: 

 

"NN"     - Schalter ob man die Normal-Null haben will - wenn ja, dann noch:

"eingeneNN"    - wenn man dort eine Zahle eingibt, wird dann diese zur ermittelten Höhe des Objektes hinzugefügt, wenn dort 0 drin ist, dann nimmt es die Projekt-eingestellte Meereshöhe.

 

 

2D-Script: 

 


Hotspot2 0, 0

Dingz = SYMB_POS_z

DEFINE STYLE BemTextStyle "Arial", zzyzx/3/GLOB_SCALE*1000, 8, 0
style BemTextStyle 

circle2 0,0,ZZYZX/3

line2 -ZZYZX/3, 0, ZZYZX/3, 0
line2 0,-ZZYZX/3,0,ZZYZX/3
add2 0,zzyzx/3*1.2

if eingeneNN # 0 then 
		Meereshohe = eingeneNN
	else
		Meereshohe= GLOB_PROJECT_ALTITUDE
endif


		if nn = 1 then

				TEXT2 0, 0, str(Dingz+Meereshohe, 7, 2) 

			else

				TEXT2 0,0, str(Dingz, 7, 2)
				
		endif



	
del 1

 

3D-Script:

EPS = 0.00001  !!!Einfach ein kleiner Wert..


!CameraX = GLOB_EYEPOS_X !!!Versuch den Text immer lesbar hinzudrehen - aber dies erfordert einen Neuaufbau 3D
!Cameray = GLOB_EYEPOS_y
!Cameraz = GLOB_EYEPOS_z

!Dingx = SYMB_POS_X
!Dingy = SYMB_POS_y
Dingz = SYMB_POS_z

!xdist = CameraX - Dingx
!ydist =  Cameray - Dingy
!
!Dist = SQR(xdist^2 + ydist^2)
!
!
!
!
!	beta = xdist/dist
!	IF beta > 1 THEN beta = 1
!	IF beta < -1 THEN beta = -1
!
!	alpha2D = ACS (beta)
!

material Pfeilmat
!!!   CONE h, r1, r2, alpha1, alpha2
CONE zzyzx, 0, zzyzx/3, 90, 90



hotspot 0,0,0,1

material Textmat
DEFINE STYLE BemTextStyle "Arial", zzyzx/GLOB_SCALE*30000, 8, 0
addz zzyzx * 1.05

	style BemTextStyle 

!addy zzyzx/3*1.2
!	TEXT EPS, 0, str(Dingz, 7, 2)
!del 1

	  rotz 0! Alpha2D+90  !!!Versuch den Text immer lesbar hinzudrehen - aber dies erfordert einen Neuaufbau 3D
	  rotx 90



	if eingeneNN # 0 then 
			Meereshohe = eingeneNN
		else
			Meereshohe= GLOB_PROJECT_ALTITUDE
	endif


		if nn = 1 then

				TEXT EPS, 0, str(Dingz+Meereshohe, 7, 2) 

			else

				TEXT EPS, 0, str(Dingz, 7, 2)

		endif

	  del 2
del 1

 

AC5.5-AC27EduAut, PC-Win10, MacbookAirM1, MacbookM1Max, Win-I7+Nvidia

Hallo Heimo!

Hat ein wenig gedauert, bis ich es ausprübieren konnte.

In ArchiCAD 27 hab ich es nämlich leider nicht geschafft das Skipt zu ändern, sodass es klappt.

Aber eben habe ich ArchiCAD 28 installiert und gleich Dein neues Objekt geöffnet.

 

Es funktioniert super! Vielen Dank dafür!!!

Deine 3D Höhenkote macht vieles für mich einfacher.

 

Ganz liebe Grüße,

Claudia

AC 27 u. 28, Windows 10

Setup info provided by author