D
diedjee
Guest
Hello everybody,
Tā kā ilgu laiku es stumbled uz šo vietni, meklējot dažas atbildes, izmantojot Google.
Bet nesen es saņēmu problēmu, ko es neuzskatu atbildi uzreiz.
Es, izmantojot ADS automātiski izveidot induktors izkārtojumu un modelētu to.
Tā kā dažas nedēļas, es vērsa šo izkārtojumu ar rokām, bet tagad es vēlētos parametrize viņiem.
Šim nolūkam, es esmu, izmantojot makro un AEL skriptus.
Jo tā ir pirmā reize, kad es esmu rakstot AEL kods, te iespējams, ka es esmu ieviešot dažas bug ir ļoti liels, bet lielāko daļu laika es varu noteikt to, izmantojot rokasgrāmatas un internetā.
Nesen kļūda atnāca kas man nespēj atrast risinājumu.
Pēc skripts izveido regulārs daudzstūris.Kļūda notiek tad, kad tas mēģina rakstīt uz pēdējo indeksu masīva.(Functions.ael līnija 71, uzdevumu slejā 3) pa kreisi operanda spēkā neesošu masīvs piekļuvi)
Apjoma palielināšanai masīva nepalīdz daudz.
Lai izmantotu skriptu, jums ir izveidot ceļu izvietojums režīmā un piemērot šo skriptu tai.Pēc tam apkopo, uzstādītu noklusējuma vērtības, saglabātu un pievienot to kā sastāvdaļu citu shēma.(Tad kļūda parādās)
Alternatīvi var izmantot failus pielikumu ...
(Es pa kreisi mana atkļūdošanas izdrukas iespēju, lai jūs varētu redzēt, kas notiek ...)
Kods:
defun n_agon (n, rādiuss)
(
fputs (stderr "nagon start");
decl pnts;
/ / Decl nb;
/ / Nb = n;pnts = ((0, 0));
pnts = resize_array (pnts, 1, 0, n 1);
pnts = resize_array (pnts, 2, 0, 1);pnts [0, 0] = rādiuss * cos ((PI / (2 * n)));
pnts [0, 1] = rādiuss * sin ((PI / (2 * n)));fputs (stderr, identify_value (pnts));
fputs (stderr "nagon loopstart");
decl i;
(i = 1, i <= n, i )
(
pnts [i, 0] = rādiuss * cos ((i * 2 * PI / n) (PI / (2 * n)));
pnts [i, 1] = rādiuss * sin ((i * 2 * PI / n) (PI / (2 * n)));
fputs (stderr, strcat (i, ""));
)fputs (stderr, "n 1 =");
fputs (stderr, strcat ("", n 1));
fputs (stderr ", pnts =");
fputs (stderr, strcat ("", array_upperBound (pnts, 1)));
fputs (stderr, identify_value (pnts));decl end_pnts;
end_pnts = n 1;fputs (stderr, strcat ("end_pnts =" end_pnts, "n =" n ", upper1 =" array_upperBound (pnts, 1) ", upper2 =" array_upperBound (pnts, 2)));pnts [end_pnts, 0] = rādiuss * cos (PI / (2 * n));
pnts [end_pnts 1] = rādiuss * sin (PI / (2 * n));fputs (stderr "nagon apdare");
atgriešanās (pnts);
)
Tā kā ilgu laiku es stumbled uz šo vietni, meklējot dažas atbildes, izmantojot Google.
Bet nesen es saņēmu problēmu, ko es neuzskatu atbildi uzreiz.
Es, izmantojot ADS automātiski izveidot induktors izkārtojumu un modelētu to.
Tā kā dažas nedēļas, es vērsa šo izkārtojumu ar rokām, bet tagad es vēlētos parametrize viņiem.
Šim nolūkam, es esmu, izmantojot makro un AEL skriptus.
Jo tā ir pirmā reize, kad es esmu rakstot AEL kods, te iespējams, ka es esmu ieviešot dažas bug ir ļoti liels, bet lielāko daļu laika es varu noteikt to, izmantojot rokasgrāmatas un internetā.
Nesen kļūda atnāca kas man nespēj atrast risinājumu.
Pēc skripts izveido regulārs daudzstūris.Kļūda notiek tad, kad tas mēģina rakstīt uz pēdējo indeksu masīva.(Functions.ael līnija 71, uzdevumu slejā 3) pa kreisi operanda spēkā neesošu masīvs piekļuvi)
Apjoma palielināšanai masīva nepalīdz daudz.
Lai izmantotu skriptu, jums ir izveidot ceļu izvietojums režīmā un piemērot šo skriptu tai.Pēc tam apkopo, uzstādītu noklusējuma vērtības, saglabātu un pievienot to kā sastāvdaļu citu shēma.(Tad kļūda parādās)
Alternatīvi var izmantot failus pielikumu ...
(Es pa kreisi mana atkļūdošanas izdrukas iespēju, lai jūs varētu redzēt, kas notiek ...)
Kods:
defun n_agon (n, rādiuss)
(
fputs (stderr "nagon start");
decl pnts;
/ / Decl nb;
/ / Nb = n;pnts = ((0, 0));
pnts = resize_array (pnts, 1, 0, n 1);
pnts = resize_array (pnts, 2, 0, 1);pnts [0, 0] = rādiuss * cos ((PI / (2 * n)));
pnts [0, 1] = rādiuss * sin ((PI / (2 * n)));fputs (stderr, identify_value (pnts));
fputs (stderr "nagon loopstart");
decl i;
(i = 1, i <= n, i )
(
pnts [i, 0] = rādiuss * cos ((i * 2 * PI / n) (PI / (2 * n)));
pnts [i, 1] = rādiuss * sin ((i * 2 * PI / n) (PI / (2 * n)));
fputs (stderr, strcat (i, ""));
)fputs (stderr, "n 1 =");
fputs (stderr, strcat ("", n 1));
fputs (stderr ", pnts =");
fputs (stderr, strcat ("", array_upperBound (pnts, 1)));
fputs (stderr, identify_value (pnts));decl end_pnts;
end_pnts = n 1;fputs (stderr, strcat ("end_pnts =" end_pnts, "n =" n ", upper1 =" array_upperBound (pnts, 1) ", upper2 =" array_upperBound (pnts, 2)));pnts [end_pnts, 0] = rādiuss * cos (PI / (2 * n));
pnts [end_pnts 1] = rādiuss * sin (PI / (2 * n));fputs (stderr "nagon apdare");
atgriešanās (pnts);
)