Professional Documents
Culture Documents
892
Lpez!ce x
Lpez!ce x
Tabela D.1 w tym dodatku pokazuje symboliczne wartoci kodw bdw generowanych przez AutoLISP. Zmienna systemowa AutoCADa ERRNO ma nadawan jedn
z przedstawionych wartoci wtedy, gdy wywoanie funkcji AutoLISPu spowoduje bd
wykryty przez AutoCAD. Aplikacje AutoLISPu mog sprawdza aktualn warto
zmiennej systemowej ERRNO przez wywoanie (getvar "errno").
Zmiennej ERRNO nie zawsze jest nadawana warto zero, zatem jeli nie
zostanie sprawdzony jej stan zaraz po tym, jak funkcja AutoLISPu zgosi bd,
to bd, na ktry wskazuje jej warto, moe by mylcy. Zmienna ta jest
zawsze zerowana podczas wejcia do edytora rysunku.
Moliwe wartoci zmiennej ERRNO i ich znaczenie mog zmieni si w przyszych wydaniach AutoCADa.
Znaczenie
Funkcje AutoLISPu
893
BvupMJTQ!!qsbluzd{oz!lvst
Znaczenie
Funkcje AutoLISPu
ssget
ssget
Nieprawidowe wykorzystanie
elementu def. bloku
Nieprawidowe wykorzystanie
elementu Zodn
entsel nentsel
entnext entupd
entnext
10
entlast
11
entdel
12
13
Bdny identyfikator
handent
14
handent
15
16
trans
17
entmod trans
18
tblnext tblsearch
19
tblnext tblsearch
20
setvar
21
setvar
22
setvar
23
24
entmake entmod
25
Za nazwa warstwy
entmake entmod
26
entmake entmod
27
Za nazwa koloru
entmake entmod
28
entmake
29
Za nazwa symbolu
entmake
Epebufl!E
894
Znaczenie
Funkcje AutoLISPu
30
entmake entmod
31
32
entmod
33
entmod
34
Niedozwolona modyfikacja
widocznoci rzutni
entmake entmod
35
entmake entmod
36
Zy typ elementu
entmake
37
Zy element PLINE
entmake
38
entmake
39
40
entmake
41
entmake
42
Zy wektor prostopady
entmake
43
entmake
44
entmake
45
entmake
46
entmake
47
entmake
48
entmake entmod
49
entmake entmod
50
entmake entmod
51
entmake entmod
52
entsel nentsel
53
54
entmake entmod
55
entmake entmod
895
BvupMJTQ!!qsbluzd{oz!lvst
Znaczenie
Funkcje AutoLISPu
56
ssget
57
ssget
58
ssget
59
ssget
60
ssget
61
ssget
62
ssget
63
ssget
64
ssget
65
ssget
66
ssget
67
ssget
68
tablet
69
tablet
70
Niewane argumenty
tablet
71
72
73
xload
74
xload
75
Wczytano ju maksymaln
dopuszczaln ilo aplikacji
xload
Epebufl!E
896
Znaczenie
Funkcje AutoLISPu
76
xload
77
xload
78
79
xunload
80
81
82
83
84
85
xload
Lpnvojlbuz!c
e
Lpnvojlbuz!c
ex
uz!c
ex
Po wykryciu warunkw bdu, AutoLISP przerywa dziaanie funkcji i wywouje
funkcj uytkownika *error*, z komunikatem wskazujcym rodzaj bdu. Jeeli nie
zdefiniowano funkcji *error* (*error* ma przypisan warto nil), podejmowane s
standardowe dziaania obsugi bdw i wywietlany jest komunikat:
error: komunikat
bd: komunikat
oraz tzw. wsteczny lad funkcji. Jeeli zdefiniowano funkcj *error*, to jest ona
wywoywana z jednym argumentem komunikat.
Cez!qsphsbn
Cez!qsphsbn x!vzulpxzd
qsphsbn x!vzulpxzdi
x!vzulpxzdi
Poniej przedstawiono list komunikatw bdw, ktre pojawiaj si w trakcie uruchamiania funkcji AutoLISPu. Wikszo z nich wskazuje na typowe bdy programw
takie jak:
897
BvupMJTQ!!qsbluzd{oz!lvst
bdnie podana nazwa funkcji lub symbolu,
nieprawidowy typ lub liczba argumentw funkcji,
niezrwnowaona liczba nawiasw,
brak cudzysowu (niezakoczone acuchy),
prba wykorzystania niezakoczonej funkcji.
Poniej przedstawiono w porzdku alfabetycznym nazwy oraz opisy bdw programw uytkowych.
arguments of a defun can't have the same name
Bd ten spowoduje funkcja zdefiniowana z wieloma argumentami o tej samej nazwie.
AutoCAD rejected function
Przekazano bdne argumenty funkcjom AutoCADa (na przykad prba ustawienia
zmiennej systemowej tylko do odczytu poleceniem SETVAR (ZMSYS) lub uycia
tblnext z nieprawidow nazw tablicy) lub samo uycie funkcji jest bdem w aktualnym
kontekcie. Przykadowo, nie wolno stosowa funkcji getxxx wewntrz funkcji command.
AutoLISP stack overflow
Przekroczona zostaa pojemno obszaru stosu AutoLISPu. Moe to by wynikiem intensywnego wykorzystywania rekurencji funkcji lub bardzo duych list argumentw funkcji.
bad argument type
Do funkcji przekazano argument niewaciwego typu (np. nie mona uy funkcji
strlen dla liczby typu integer).
bad association list
Lista przekazana funkcji assoc nie zawiera list z nazwami kluczowymi.
bad conversion code
Komunikat taki wskazuje, e dla funkcji trans zosta podany niewaciwy identyfikator
obszaru (papieru lub modelu).
bad ENTMOD list
Jedna z podlist listy asocjacji, dostarczonej funkcji entmod, zawiera niewaciw
warto.
bad ENTMOD value
Jedna z list w licie asocjacji (skojarze), przekazanych funkcji entmod, zawiera nieprawidow warto.
bad formal argument list
Podczas wyliczania funkcji, AutoLISP wykry nieprawidow list argumentw formalnych. Moe to wystpi np. w przypadku, gdy zamiast funkcji podano list danych.
Epebufl!E
898
bad function
Pierwszy (zerowy) element listy nie jest dopuszczaln nazw funkcji. Moe to wystpi
np. w przypadku, gdy pierwszy element jest liczb lub nazw zmiennej. Komunikat ten
moe wskazywa rwnie na to, e funkcja jest bdnie zdefiniowana na przykad
brakuje listy wymaganych argumentw formalnych.
bad function code
Taki komunikat wskazuje, e polecenie TABLET (PULPIT) otrzymao niewaciwy
identyfikator funkcji.
bad grvecs list value
Ktry skadnik listy dla funkcji grvecs nie jest punktem 2W lub 3W.
bad grvecs matrix value
Macierz dostarczona funkcji grvecs zostaa le uformowana lub zawiera dane
niewaciwego typu (na przykad STR, SYM itp.).
bad list
Przekazano funkcji nieprawidowo uformowan list. Moe to wystpi w przypadku,
gdy liczba rzeczywista (typ real) zaczyna si kropk dziesitn; naley pamita o tym,
e zapis takiej liczby musi zaczyna si wtedy zerem.
bad list of points
Komunikat wywietlany przez ssget w przypadku, gdy wraz z parametrami _F, _CP lub
_WP zostanie przesana lista pusta lub lista zawierajca obiekty inne, ni punkty.
Komunikat taki moe te wywietli funkcja grvecs.
bad node
Funkcja type napotkaa pozycj nieprawidowego typu.
bad node type in list
Funkcja foreach napotkaa pozycj nieprawidowego typu.
bad point argument
bad point value
Niewaciwie zdefiniowany punkt (lista dwch liczb typu real) zosta przekazany
funkcji oczekujcej na podanie wsprzdnych. Moe to wystpi w przypadku, gdy
liczba rzeczywista mniejsza od 1 zaczyna si kropk dziesitn; naley pamita o tym,
e zapis takiej liczby musi zaczyna si od zera.
bad real number detected
Nastpia prba przesania z AutoLISPu do AutoCADa niewaciwej liczby
rzeczywistej (typu real).
899
BvupMJTQ!!qsbluzd{oz!lvst
bad ssget list
Argument przekazany funkcji (ssget "E") nie jest prawidow list z danymi elementu
(tak jek wynik funkcji entget).
bad ssget list value
Jedna z list skadowych na licie filtru przekazanej do (ssget "x") zawiera niepoprawn
warto.
bad ssget mode string
Bd ten wystpuje wtedy, gdy argument mode funkcji jest (niedopuszczalnym)
niedozwolonym tekstem.
bad xdata list
Bd taki powstaje wtedy, gdy funkcjom xdsize, ssget, entmod, entmake lub textbox
zostaje podana le uformowana lista dodatkowych danych elementu (xdata).
base point is required
Funkcja getcorner zostaa wywoana bez podania wymaganego argumentu (punktu
bazowego).
Boole arg1 <0 or >15
Pierwszy argument funkcji boole musi by liczb typu integer z zakresu od 0 do 15.
can't evaluate expression
Bd ten moe by spowodowany niewaciwym pooeniem kropki dziesitnej lub
innym le skonstruowanym wyraeniem.
can't open (file) for input LOAD failed
Plik o nazwie przekazanej funkcji load nie zosta znaleziony lub uytkownik nie ma
dostpu do czytania pliku.
can't reenter AutoLISP
Bufor komunikacyjny AutoCAD-AutoLISP jest wykorzystywany przez aktywn
funkcj; adna nowa funkcja nie moe by wywoana przed jej zakoczeniem.
console break
Uytkownik wprowadzi Ctrl+C w czasie dziaania funkcji.
divide by zero
Dzielenie przez zero jest niedozwolone.
divide overflow
Wynik dzielenia przez bardzo ma liczb jest obarczony duym bdem.
Epebufl!E
89:
8:1
BvupMJTQ!!qsbluzd{oz!lvst
incorrect number of arguments
Podano wicej ni jeden argument funkcji quote.
incorrect number of arguments to a function
Liczba argumentw przekazanych funkcji nie odpowiada liczbie argumentw formalnych okrelonych w funkcji defun.
incorrect request for command list data
Napotkana funkcja command nie moe by wykonana ze wzgldu na dziaanie innej
funkcji.
input aborted
Wykryto warunek bdu lub przedwczesnego koca pliku, co powoduje przerwanie
wczytywania pliku.
insufficient node space
Do wykonania danego dziaania funkcji zabrako wolnego obszaru sterty.
insufficient string space
Obszar sterty jest zbyt may do ulokowania podanego acucha tekstowego.
invalid argument
Nieprawidowy typ argumentu lub argument poza dopuszczalnym zakresem.
invalid argument list
Przekazano funkcji uszkodzon list argumentw.
invalid character
Wyraenie zawiera niepoprawny znak.
invalid dotted pair
Pary kropkowe s listami zawierajcymi dwa argumenty oddzielone sekwencj spacja
kropka spacja. Bd ten moe pojawi si w przypadku, gdy mniejsza od 1 liczba
rzeczywista rozpoczyna si kropk dziesitn; naley pamita o tym, e liczba taka
musi zaczyna si zerem.
invalid integer value
Zostaa napotkana liczba typu integer o wartoci spoza dopuszczalnego zakresu.
LISPSTACK overflow
Przekroczono obszar stosu AutoLISPu. Moe to wystpi w przypadku wielokrotnego
zagniedenia funkcji rekurencyjnej lub funkcji z bardzo du list argumentw.
Naley sprbowa zwikszy warto zmiennej rodowiskowej LISPSTACK.
Epebufl!E
8:2
malformed list
Odczytywana z pliku lista skoczya si przedwczenie. Najczstsz przyczyn jest bd
parowania nawiasw otwierajcych i zamykajcych lub znakw cytowania.
malformed string
acuch czytany z pliku zakoczy si przedwczenie.
misplaced dot
Bd ten moe pojawi si w przypadku, gdy zapis liczby o wartoci bezwzgldnej
mniejszej od 1 rozpoczyna si kropk dziesitn; naley pamita o tym, e liczba taka
musi zaczyna si zerem.
null function
Zostaa wykonana prba wyliczenia niezdefiniowanej funkcji.
quit/exit abort
Jest to wynik wywoania funkcji quit lub exit. Funkcje te nie s aktualnie stosowane
w AutoLISPie.
string too long
acuch alfanumeryczny dostarczony funkcju setvar jest za dugi.
too few arguments
Za mao argumentw przekazano funkcji wewntrznej.
too few arguments to grvecs
Funkcja grvecs otrzymaa zbyt ma liczb argumentw.
too many arguments
Za duo argumentw przekazano funkcji wewntrznej.
Cez!xfxous{of
Cez!xfxous{of
Bdy opisane poniej pojawiaj si wyjtkowo rzadko. Wskazuj na wewntrzne bdy
w AutoLISPie i ich pojawienie si powinno by zgaszane dystrybutorowi programu.
bad argument to system call
System operacyjny wykry bdne odwoanie do systemu wygenerowane przez
AutoLISP (tylko w rodowisku systemw typu UNIX).
bus error
System operacyjny wykry bd magistrali (tylko w rodowisku systemw typu UNIX).
8:3
BvupMJTQ!!qsbluzd{oz!lvst
hangup
System operacyjny wykry sygna zawieszenie systemu (tylko w rodowisku
systemw typu UNIX).
illegal instruction
System operacyjny wykry bdn instrukcj maszynow (tylko w rodowisku
systemw typu UNIX).
segmentation violation
System operacyjny wykry prb zaadresowania pamici znajdujcej si poza
przydzielonym dla procesu obszarem (tylko w rodowisku systemw typu UNIX).
unexpected signal nnn
Wykryto nieoczekiwane pojawienie si sygnau wygenerowanego przez system
operacyjny (tylko w rodowisku systemw typu UNIX).