la cosa mi fa ridere e riflettere.
a me solo la seconda.
ho appena fatto il passaggio a archicad13 e aprendo i miei script, facendo poi modifiche e salvandoli, ho pensato di rivederli su ArchiCAD 12 su un altro terminale.
risultato è il blocco. non si aprono.
La stessa cosa accade con i progetti, no? perché gli oggetti, che sono micro-progetti, dovrebbero fare eccezione? solo perché l'utente ha il permesso di vederne il codice? Tutto il modello 3D, a quanto si dice, è basato su una sorta di GDL, solo che la parte relativa agli strumenti "standard" è gestita da ArchiCAD.
soluzione finale che ho trovato è aprire entrambi e fare copia e incolla, fortunatamente dei pezzi che cambiavano.
già... questo infatti è il metodo normale. E per fortuna che con il GDL funziona... il copia-incolla di una semplice linea da ArchiCAD 13 a ArchiCAD 12, per esempio, credo che sia impossibile.
possibile che un file così poco legato alla versione di ArchiCAD ne possa dipendere così tanto? potrei anche scriverlo con blocco note e non cambierebbe in certi casi alla fine.
L'Oggetto non è un semplice "pezzo di testo". Ci sono altre cose, tra cui i parametri e l'immagine di anteprima. Col GDL puoi impostare il VALORE di un parametro, ma non puoi CREARLO. L'unica cosa che puoi creare sono variabili interne, che non danno la possibilità all'oggetto di essere parametrico. Nel tempo (quindi con il variare delle versioni di ArchiCAD) i tipi di parametri sono aumentati. Prima c'erano solo parametri numerici, poi anche le stringhe di testo, poi le liste, i parametri angolari, i numeri interi, i valori booleani, ora ci sono parametri di tipo "Titolo" e "Separatore"... come potrebbe interpretarli un ArchiCAD di qualche anno fa? Per non parlare dei comandi che vengono aggiunti ad ogni nuova versione del GDL.
Comunque, volendo, puoi fare proprio quello che dici. Non scrivere un oggetto ".GSM" ma un testo ".GDL" da richiamare con un oggetto di libreria. L'oggetto chiamante deve essere creato con la versione giusta di ArchiCAD, poi il testo lo scrivi col programma che vuoi, lo salvi e lo chiami con l'istruzione CALL, da qualsiasi versione di ArchiCAD. Proprio perché è compatibile con TUTTE le vecchie versioni del programma, questo metodo ha delle limitazioni notevoli (es. puoi usare solo 26 variabili, il cui nome è limitato alle singole lettere da A a Z).
bah....
Beh...
