Registrierter Nutzer Registriert seit: 26.11.2009
Beiträge: 12
rst_b: Offline
Ort: Berlin Beitrag Datum: 11.03.2010 Uhrzeit: 00:06 ID: 38201 | Social Bookmarks: Guten Abend, kann mir jemand bei folgendem Problem helfen? Ich habe in Vektorworks ein Script geschrieben, dass die Elemente auf einer Ebene um einen bestimmten Wert extrudiert. Jetzt funktioniert es zwar, im Debug - Modus gibt Vektorworks mir allerdings eine Fehlermeldung aus, dass die Umwandlung von Text zu Zahl nicht möglich ist, nach Ablauf des Skriptes ist jedoch das Ergebnis genau so wie ich wollte. Code: elementh := FActLayer; WHILE (elementh<>NIL) DO BEGIN recvalue:=GetRField(elementh, 'Bebauung', 'Geschoss'); value:=Str2Num(recvalue); bottom:=0; top:=value*3.5; elementh2:=elementh; elementh:=NextObj(elementh); h:=HExtrude(elementh2, bottom, top); END; Danke für Hilfe rst |
| |
|
Registrierter Nutzer Registriert seit: 18.02.2004
Beiträge: 116
Matthias: Offline
Ort: Freising Beitrag Datum: 11.03.2010 Uhrzeit: 11:10 ID: 38209 | Social Bookmarks: Das zweite Handle müsstest Du Dir sparen können, wenn Du erst extrudierst und dann das nächste Objekt auswählst: Code: elementh := FActLayer; WHILE (elementh<>NIL) DO BEGIN recvalue:=GetRField(elementh, 'Bebauung', 'Geschoss'); value:=Str2Num(recvalue); bottom:=0; top:=value*3.5; h:=HExtrude(elementh, bottom, top); elementh:=NextObj(elementh); END; Code: elementh := FActLayer; WHILE (elementh<>NIL) DO BEGIN recvalue:=GetRField(elementh, 'Bebauung', 'Geschoss'); bottom:=0; top:=recvalue*3.5; h:=HExtrude(elementh, bottom, top); elementh:=NextObj(elementh); END; Ich hab's nicht getestet, aber es sollte gehen... Gruß, Matthias |
Registrierter Nutzer Registriert seit: 26.11.2009
Beiträge: 12
rst_b: Offline
Ort: Berlin Beitrag Datum: 11.03.2010 Uhrzeit: 20:00 ID: 38215 | Social Bookmarks: Danke Matthias für deine Hilfe. Aber leider hat das mit dem erst extrudieren und dann nächstes Objekt auswählen nicht geklappt, deshalb diese "Notlösung" mit dem zweiten Handle. Die Funktion GetRField gibt nach der Beschreibung (siehe VectorScript 2010 Function Reference -> GetRField) aber ein DYNARRAY of CHAR zurück, also einen String. Deshalb die Umwandlung. Die Verwendung ohne Umwandlung gibt folgenden Fehler zurück: { Error: The operands are not of compatible types. } Also die Umwandlung drin lassen und dann das Extrudieren vor die Zuweisung des nächsten Elements und keine weitere Zuweisung des Handle ergibt, dass nur das erste Objekt der Ebene extrudiert wird alle anderen bleiben so. Wie dem auch sei, mit der Lösung läuft es, auch wenn die Umwandlung nicht möglich ist. Und eine Fehlermeldung erscheint. (?) Danke |
| |
|
Ähnliche Themen | ||||
Thema | Autor | Architektur-Themenbereiche | Antworten | Letzter Beitrag |
PDF fehlermeldung aus vector works | evaholzinger | Präsentation & Darstellung | 6 | 17.01.2007 16:43 |
Fehlermeldung allplan C000001D | evaholzinger | Präsentation & Darstellung | 9 | 26.10.2006 13:30 |
ALLPLAN 2004 Fehlermeldung | edyy | Präsentation & Darstellung | 2 | 15.11.2004 14:10 |
Nemetschek 17 Fehlermeldung | mattes | Präsentation & Darstellung | 1 | 19.08.2004 11:05 |
GDL-Script fuer Treppen | kathy | Präsentation & Darstellung | 2 | 11.12.2002 15:02 |