_

[LISP] CADPL - Tool translator [Tool]

Forum poświęcone flagowemu produktowi oraz aplikacjom pochodnym Autodesku. To jedyne forum mające w tytule nazwę programu, a to ze względu na jego olbrzymią popularność w Polsce. Można tutaj umieszczać również posty z ogólnie pojętej tematyki "Kreślarskie 2D".

Re: [LISP] CADPL - Tool translator [Tool]

Postprzez kruuger » mar 22, 2012 15:29

kojacek napisał(a):
Kod: Zaznacz cały
(defun jk:STR_HowManyChar (Str Char)
  (-
    (strlen Str)
    (length
      (vl-remove
        (ascii Char)
        (vl-string->list Str)
      )
    )
  )
)


i:

Kod: Zaznacz cały
(jk:STR_HowManyChar  "\"123\" \"416\" \"719\" \"A1c\"" "\"") ;; ----> 8
(jk:STR_HowManyChar  "\"123\" \"416\" \"719\" \"A1c\"" "1")  ;; ------> 4
(jk:STR_HowManyChar  "\"123\" \"416\" \"719\" \"A1c\"" "p")  ;;; ----> 0

moze jk:STR_CountChar ?
k.
Avatar użytkownika
kruuger
 
Posty: 4845
Dołączył(a): paź 27, 2005 20:14
Lokalizacja: Kraków

Re: [LISP] CADPL - Tool translator [Tool]

Postprzez kruuger » mar 27, 2012 12:17

przerwijmy to milczenie :)
jedyny blad jaki namierzylem to np. dwie identyczne linie z komentarzem. program podmienia obie naraz. sie popracuje jeszcze nad tym. okienko dcl juz dynamiczne.
testowac.
do obgadania:
Kod: Zaznacz cały
kr:DLG_SetTileList
jk:STR_HowManyChar
kr:STR_GetDateTime

k.
Załączniki
ToolTranslator.lsp
(14.4 KiB) Pobrane 67 razy
Avatar użytkownika
kruuger
 
Posty: 4845
Dołączył(a): paź 27, 2005 20:14
Lokalizacja: Kraków

Re: [LISP] CADPL - Tool translator [Tool]

Postprzez kojacek » mar 27, 2012 21:24

kruuger napisał(a):przerwijmy to milczenie :)
jedyny blad jaki namierzylem to np. dwie identyczne linie z komentarzem. program podmienia obie naraz. sie popracuje jeszcze nad tym. okienko dcl juz dynamiczne.
testowac.
do obgadania:
Kod: Zaznacz cały
kr:DLG_SetTileList
jk:STR_HowManyChar
kr:STR_GetDateTime

k.


musiem wrócić do źródeł i przelecieć parę funkcji... ;) do Pack-a, bowiem się ich nazbierało nieco.
kojacek
Avatar użytkownika
kojacek
 
Posty: 5464
Dołączył(a): paź 03, 2005 20:17

Re: [LISP] CADPL - Tool translator [Tool]

Postprzez kojacek » mar 28, 2012 11:08

kruuger napisał(a):do obgadania:
Kod: Zaznacz cały
kr:DLG_SetTileList
jk:STR_HowManyChar
kr:STR_GetDateTime



Ad. 1
Proponuję tak - Pos może być INT lub STR (reprezentujacy INT), jesli zaś =Nil przyjmujemy że jest 0 (pierwsza pozycja na liscie). Innymi słowy - zawsze coś. Funkcja z proponowanymi zmianami:

Kod: Zaznacz cały
(defun kr:DLG_SetTileList (Key Lst Pos)
  (start_list Key)
  (mapcar (quote add_list) Lst)
  (end_list)
;;;  (if Pos
;;;    (cond
;;;      ( (= (type Pos)(quote STR))
;;;        (set_tile Key(itoa (atoi Pos)))
;;;      )
;;;      ( (= (type Pos)(quote INT))
;;;        (set_tile Key (itoa Pos))
;;;      )
;;;      (T nil)
;;;    )
;;;  )
  (set_tile Key
    (itoa
      (cond
        ( (numberp Pos)(fix Pos))
        ( (= (type Pos)(quote STR))(atoi Pos))
        (t 0)
      )
    )
  )
)


kojacek
Avatar użytkownika
kojacek
 
Posty: 5464
Dołączył(a): paź 03, 2005 20:17

Re: [LISP] CADPL - Tool translator [Tool]

Postprzez kruuger » mar 28, 2012 11:31

kojacek napisał(a):
kruuger napisał(a):do obgadania:
Kod: Zaznacz cały
kr:DLG_SetTileList
jk:STR_HowManyChar
kr:STR_GetDateTime



Ad. 1
Proponuję tak - Pos może być INT lub STR (reprezentujacy INT), jesli zaś =Nil przyjmujemy że jest 0 (pierwsza pozycja na liscie). Innymi słowy - zawsze coś. Funkcja z proponowanymi zmianami:

Kod: Zaznacz cały
(defun kr:DLG_SetTileList (Key Lst Pos)
  (start_list Key)
  (mapcar (quote add_list) Lst)
  (end_list)
;;;  (if Pos
;;;    (cond
;;;      ( (= (type Pos)(quote STR))
;;;        (set_tile Key(itoa (atoi Pos)))
;;;      )
;;;      ( (= (type Pos)(quote INT))
;;;        (set_tile Key (itoa Pos))
;;;      )
;;;      (T nil)
;;;    )
;;;  )
  (set_tile Key
    (itoa
      (cond
        ( (numberp Pos)(fix Pos))
        ( (= (type Pos)(quote STR))(atoi Pos))
        (t 0)
      )
    )
  )
)


kojacek

ha, pieknie. jest ok

ja zmordowalem wczesniejszy blad. po moich testach wszystko wydaje sie dzialac poprawnie.
k.
Załączniki
ToolTranslator.lsp
(14.46 KiB) Pobrane 77 razy
Avatar użytkownika
kruuger
 
Posty: 4845
Dołączył(a): paź 27, 2005 20:14
Lokalizacja: Kraków

Re: [LISP] CADPL - Tool translator [Tool]

Postprzez kojacek » mar 28, 2012 11:46

kruuger napisał(a): ha, pieknie. jest ok

To zostanie kwestia nazwy. Robimy DLG czy do wora DCL wejdzie? Ja swoje mam/miałem DLG i DCL, ale nie ma ich duzo wiec smiało mozna polaczyć.
Kod: Zaznacz cały
cd:DCL_SetTileList
czy krótko:
Kod: Zaznacz cały
cd:DCL_PutList
?
kojacek
Avatar użytkownika
kojacek
 
Posty: 5464
Dołączył(a): paź 03, 2005 20:17

Re: [LISP] CADPL - Tool translator [Tool]

Postprzez kruuger » mar 28, 2012 12:20

bardziej bym obstawal przy Set (settile "ti" "0")
cd:DCL_SetList
k.
Avatar użytkownika
kruuger
 
Posty: 4845
Dołączył(a): paź 27, 2005 20:14
Lokalizacja: Kraków

Re: [LISP] CADPL - Tool translator [Tool]

Postprzez kojacek » mar 28, 2012 12:42

kruuger napisał(a):bardziej bym obstawal przy Set (settile "ti" "0")
cd:DCL_SetList


Stoi zatem: cd:DCL_SetList [1]
co do reszty nie mam uwag oprócz nazw:
jk:STR_HowManyChar na cd:STR_CountChar [2]
oraz:
kr:STR_GetDateTime na cd:SYS_GetDateTime [3]
daję STR na SYS, bowiem czas systemowy odzwierciedla funkcjonalność, niźli (chyba) typ zwracanej wartości. Cos pamiętam że może to nie działac na chińczykach (nie mają menucmd z M (modemacro)) - chyba ZK cos kiedyś wspominał (?)

Jakby to wszystko pasowało to opis i do CADPL-Pack-a, zaraz może iść (tam tez czeka, już (chyba) gotowa funkcja: jk:SYS_EntSelObj (cd:USR_EntSelObj... ))[4] i porcyjka do aktualizacji ([1-2-3-4]) w sam raz. Potem popatrzymy co dalej.

kojacek
Avatar użytkownika
kojacek
 
Posty: 5464
Dołączył(a): paź 03, 2005 20:17

Re: [LISP] CADPL - Tool translator [Tool]

Postprzez kruuger » mar 28, 2012 12:59

1 ok
2 ok
3 ok. no bylo ze nie dziala modemacro. mozna by jakis zamiennik oparty na CDATE napisac, ale na pewno nie tak wypasny jak macro
4. hmm, moze skoro mamy grupe USR to wrzucic to tam ?

skrobie jakies naglowki. skoncze to wrzuce.
k.
Avatar użytkownika
kruuger
 
Posty: 4845
Dołączył(a): paź 27, 2005 20:14
Lokalizacja: Kraków

Re: [LISP] CADPL - Tool translator [Tool]

Postprzez kruuger » mar 28, 2012 13:15

Kod: Zaznacz cały
; =========================================================================================== ;
; Zwraca date/czas systemowa(y) / Return system date/time                                     ;
;  Format [STR] -                                                                             ;
;   ----- Data / Date -----    |   ---- Czas / Time ----                                      ;
;   D       ->   5             |   H       ->   4                                             ;
;   DD      ->   05            |   HH      ->   04                                            ;
;   DDD     ->   Sat           |   MM      ->   53                                            ;
;   DDDD    ->   Saturday      |   SS      ->   17                                            ;
;   M       ->   9             |   MSEC    ->   506                                           ;
;   MO      ->   09            |   AM/PM   ->   AM or PM                                      ;
;   MON     ->   Sep           |   am/pm   ->   am or pm                                      ;
;   MONTH   ->   September     |   A/P     ->   A  or P                                       ;
;   YY      ->   89            |   a/p     ->   a  or p                                       ;
;   YYYY    ->   1989          |                                                              ;
; ------------------------------------------------------------------------------------------- ;
; (cd:SYS_GetDateTime "DDD\",\" DD MON YYYY - H:MMam/pm")                                     ;
; =========================================================================================== ;
(defun cd:SYS_GetDateTime (Format)
  (menucmd (strcat "m=$(edtime,$(getvar,DATE)," Format ")"))
)

?
Avatar użytkownika
kruuger
 
Posty: 4845
Dołączył(a): paź 27, 2005 20:14
Lokalizacja: Kraków

Poprzednia stronaNastępna strona

Powrót do AutoCAD

Kto przegląda forum

Użytkownicy przeglądający ten dział: Brak zidentyfikowanych użytkowników