Diskuzní fórum a databáze tipů a utilit pro AutoCAD, Inventor, Revit a další produkty Autodesk - od firmy Arkance Systems [www.cadforum.cz]
CZ | SK | EN | DE
Přihlášení
či registrace
   právě nás čte: 6588 
RSS kanál - CAD tipy RSS tipy
RSS diskuze

Diskuze Diskuzní fórum, poradna

 

NápovědaCAD diskuze, rady, výměna zkušeností

 
CAD Fórum - Homepage Veřejné diskuzní fórum k CAD aplikacím - ptejte se na libovolné otázky týkající se oboru CAx, podělte se o vaše znalosti a zkušenosti s programy AutoCAD, Inventor, Revit, Fusion 360, 3ds Max a s dalšími CAD aplikacemi. Zaregistrujte se nebo se přihlašte a zašlete váš příspěvek do odpovídajícího fóra. Viz další informace o CAD Fóru. Nechcete se registrovat? Zeptejte se v naší Facebook poradně.
Fórum nenahrazuje technický support firmy Arkance Systems (CAD Studio) - přímá podpora pro zákazníky funguje na helpdesk.cadstudio.cz
  FAQ FAQ  Prohledat fórum   Události   Registrovat Registrovat  Přihlásit Přihlásit

Array “ručne“ alebo v rutine.

 Odpovědět Odpovědět archiv
Autor
Lufttechnik Zobrazit panel
Nováček
Nováček

Přihlášen: 18.led.2021
Lokalita: Slovensko
Používám:
Autocad 2012
Stav: Offline
Bodů: 7
Možnosti příspěvku Možnosti příspěvku   Poděkování (0) Poděkování0   Citace Lufttechnik Citace  OdpovědětOdpověď Přímý odkaz na tuto zprávu Téma: Array “ručne“ alebo v rutine.
    Zasláno: 27.led.2021 v 08:14
Často používam Array jedného prvku , tak by som stále nemusel odpovedať na ponuku príkazu napisal som autolispovský riadok , kde zadám iba počet radov a stlpcov.
Zisťujem , že výsledok je však rozdielny v tom , že „ručný“ array mi vytvorí pole prvkov ako blok , teda všetko sa drží v kope , ale ten lisp ich nechá separátne. Teda ako rozbitý blok.
V podstate ten array nevykona „ASociative“ – taká je tam možnost , ale v nedokážem mu to v tom lispe zadat. Prosim poradite mi kde robim chybu ?
(DEFUN C:array1 ()
(COMMAND "INSERT" "meno-blocku" "0,0" "1" "1" "0" )
(SETQ RR (GETINT "POCET RADOV : "))
(SETQ SS (GETINT "POCET SLTPCOV : "))
(COMMAND "ARRAY" "L" "" "R" SS RR 5 5 )    - alternativa 1
(COMMAND "ARRAY" "L" "" "R" SS RR 5 5 AS Y "" ) - skúšam i toto alt.2
)

čísla 5 - sú zadane napevno ako rozostupy.


Upravil Lufttechnik - 27.led.2021 v 08:17
Zpět nahoru
johny Zobrazit panel
TOP uživatel
TOP uživatel

Přihlášen: 24.led.2006
Lokalita: ČR (JM)
Používám:
C3D 2020
Stav: Offline
Bodů: 1599
Možnosti příspěvku Možnosti příspěvku   Poděkování (2) Poděkování2   Citace johny Citace  OdpovědětOdpověď Přímý odkaz na tuto zprávu Zasláno: 27.led.2021 v 09:24
Použijte (initcommandversion).
Samo musíte mít defaultně arrayassociativity. Nebo si to do toho kódu mužete připsat.

(defun c:MenoArray ( / r c)

  (if (and (or (tblsearch "block" "meno-block")
       (prompt "\nError: 'meno-block' not found in the drawing."))
   (setq r (getint "\nNo of rows: "))
   (setq c (getint "\nNo of columns: "))
   )
    (progn
      (command "_.insert" "meno-block" "_s" 1 "_r" 0 "_non" '(0 0))
      (initcommandversion)
      (command "_.array" "_last" "" "_rec" "_row" r 5 0 "_col" c 5 "_exit")))
  (princ)
  )


Upravil johny - 27.led.2021 v 09:41
Zpět nahoru

Pro technickou podporu CAD
kontaktujte Helpdesk

Příbuzné CAD tipy:
Tip 6490:VIPVBA aplikace v 64bitové verzi AutoCADu (kompatibilita, migrace)
Tip 6215:Pole podél křivky.
Tip 3705:Pravoúhlé pole v Revitu.
Tip 609:V AutoCADu mi nejde volání příkazu 3DARRAY z LISPu.
Tip 7021:Jak přejmenovat anonymní blok zpět na standardní?
Tip 12496:Dynamické asociativní pole prvků po křivce.


 Odpovědět Odpovědět

Přejít na fórum Oprávnění fóra Zobrazit panel



Stránka byla vygenerována za 0,188 sekund.