HOME OGGETTI 3D LIBRI CORSI TUTORIAL FORUM SHOP CONTATTI   LOGIN









Autore Topic: Quota gdl 3d in archicad  (Letto 3382 volte)

0 Utenti e 1 Visitatore stanno visualizzando questo topic.

project05

  • Newbie
    ...sono qui da poco, il mio miglior amico è il pulsante RICERCA
  • *
  • Post: 2
Quota gdl 3d in archicad
« il: 04 Gennaio 2012, 18:52 »
Buonasera! mi sono appena iscritto su questo ottimo forum e questa è la mia prima discussione!

Mi occorreva la possibilità di effettuare la quotatura 3d in archicad 11 e così ho trovato l'ottimo tutorial di Fabrizio Diodati. Bene: ho compilato tutto il testo gdl 3d indicato, fatto il debug( tutto a posto) , ma una volta aperto l'oggetto mi ritrovo con un "qualcosa" che ha la linea di quota, le linee ortogonali ad essa, le frecce ma, manca il testo, addirittura ho provato a togliere la parte:
IF ruota THEN 
ADD A/2, B/3*2-dim_carattere, zzyzx 
ROTz 180 
ELSE 
ADD A/2, B/3*2+dim_carattere, zzyzx 
ENDIF rrr=request ("Linear_dimension", "", lin_form) 
quota=STR (lin_form, A) 
TEXT 0, 0, quota 
DEL TOP
che dovrebbe dare la quota e tutto rimane come prima, cioè sembra che quest'ultima informazione sia ininfluente!
Qualcuno sarebbe così gentile da dirmi dove può essere il problema?

ZioBob

  • Che pacchia un forum senza spocchia!
  • ADMIN
    ...ho creato questo spazio e lo amo
  • *
  • Post: 5.100
Re: Quota gdl 3d in ArchiCAD
« Risposta #1 il: 05 Gennaio 2012, 08:16 »
Hai creato i parametri richiesti e, soprattutto, assegnato un valore (diverso da zero) all'altezza del carattere?

Io ho provato solo la quota orizzontale (non quella verticale, e mi pare che sia tutto a posto.

Testo GDL 2D
Codice: [Seleziona]
HOTSPOT2 0,0
HOTSPOT2 A,0
HOTSPOT2 A,B
HOTSPOT2 0,B
 
unID=0
unID=unID+1
HOTSPOT2 0, B/3*2, unID, A, 1+256
unID=unID+1
HOTSPOT2 -1, B/3*2, unID, A, 3
unID=unID+1
HOTSPOT2 A, B/3*2, unID, A, 2

PROJECT2 3, 270, 0

Testo GDL 3D
Codice: [Seleziona]
IF SYMB_MIRRORED THEN
    ADDx A
    MULx -1
ENDIF

DEFINE STYLE "quotatura" carattere, dim_carattere*1000, 5, 0
SET STYLE "quotatura"

HOTSPOT 0, 0, zzyzx
HOTSPOT A, 0, zzyzx
HOTSPOT A, B, zzyzx
HOTSPOT 0, B, zzyzx

LIN_ 0, B/3*2, zzyzx, A, B/3*2, zzyzx
LIN_ 0, 0, zzyzx, 0, B, zzyzx
LIN_ A, 0, zzyzx, A, B, zzyzx
LIN_ 0, B/3*2, zzyzx, dim_marker, B/3*2+dim_marker, zzyzx
LIN_ 0, B/3*2, zzyzx, dim_marker, B/3*2-dim_marker, zzyzx
LIN_ A, B/3*2, zzyzx, A-dim_marker, B/3*2+dim_marker, zzyzx
LIN_ A, B/3*2, zzyzx, A-dim_marker, B/3*2-dim_marker, zzyzx


IF ruota THEN
    ADD A/2, B/3*2-dim_carattere, zzyzx
    ROTz 180
ELSE
    ADD A/2, B/3*2+dim_carattere, zzyzx
ENDIF
rrr=request ("Linear_dimension", "", lin_form)
quota=STR (lin_form, A)
TEXT 0, 0, quota
DEL TOP
-Roberto Corona-
archiradar  Staff



project05

  • Newbie
    ...sono qui da poco, il mio miglior amico è il pulsante RICERCA
  • *
  • Post: 2
Re: Quota gdl 3d in ArchiCAD
« Risposta #2 il: 05 Gennaio 2012, 10:47 »
Ciao e anzitutto mille grazie per la  tempestività della risposta!

Ho controllato i parametri che dicevi tu, ma tutto era come prima. Ho confrontato il codice scritto da me e quello postato da te e  non avevo notato differenze, cosicchè alla fine ho creato l'oggetto da zero e ho copiato direttamente il tuo testo e FUNZIONA!! solo non capisco come mai, nel codice postato da te, non compaia la parte iniziale relativa alla regolazione degli hotspot, cioè questa:

unID=unID+1
HOTSPOT 0, B/3*2, zzyzx, unID, A, 1+256
unID=unID+1
HOTSPOT -1, B/3*2, zzyzx, unID, A, 3
unID=unID+1
HOTSPOT A, B/3*2, zzyzx, unID, A, 2

in ogni caso, grazie di nuovo, ieri sera stavo impazzendo dietro a questa cosa!

ZioBob

  • Che pacchia un forum senza spocchia!
  • ADMIN
    ...ho creato questo spazio e lo amo
  • *
  • Post: 5.100
Re: Quota gdl 3d in ArchiCAD
« Risposta #3 il: 05 Gennaio 2012, 12:15 »
Probabilmente quando ho copiato il testo dallo script dal mio oggetto non l'ho preso tutto dall'inizio. Aggiungi anche quelle righe, per avere la possibilità di allungare e accorciare la quota graficamente in 3D.
Magari, come ho fatto nello script 2D, falle precedere dall''istruzione "unID=0". Non è essenziale, ma l'interprete GDL delle ultime versioni fa più controlli, quando si chiede la verifica del codice, e in questo caso ti avvertirebbe che c'è una variabile non inizializzata.
-Roberto Corona-
archiradar  Staff