Funkce pro manipulaci s výběrovou množinou

(ssadd [ename [ss]])
 
Argumenty:
 
ename
- jméno entity
 
ss
- výběrová množina
 
Popis:
  - přidá objekt (entitu) do vyběrové množiny, nebo vytvoří novou výběrovou množinu
 
Návratová hodnota:
  - nová nebo modifikovaná výběrová množina
 
Příklady:
  Nastavení proměnné e1 na jméno první entity ve výkresu:
  (setq e1 (entnext))
    vrací <Entity name: 1d62d60>
   
  Nastavení proměnné ss na prázdnou výběrovou množinu:
  (setq ss (ssadd))
    vrací <Selection set: 2>
   
  Přidání entity z e1 do výběrové množiny v ss:
(ssadd e1 ss)
    vrací <Selection set: 2>
   
  Získání entity následující za e1:
(setq e2 (entnext e1))
    vrací <Entity name: 1d62d68>
   
  Přidání e2 do ss entit:
  (ssadd e2 ss)
    vrací <Selection set: 2>

(ssdel ename ss)
 
Argumenty:
 
ename
- jméno entity
 
ss
- výběrová množina
 
Popis:
  - vymaže entitu z výběrové množiny
 
Návratové hodnoty:
  - jméno výběrové množiny
  - nil - když specifikovaná entita neexistuje ve výběrové množině
 
Příklady:
  V následujícím příkladě, entita jménem e1 je člen výběrové množiny ss, ale entita e3 není členem ss:
  (ssdel e1 ss)
    vrací <Selection set: 2>
   
  Výběrová množina je vrácena bez entity e1
  (ssdel e3 ss)
    vrací nil - e3 není členem výběrové množiny ss

(ssget [sel-method] [pt1 [pt2]] [pt-list] [filter-list])
 
Argumenty:
 
sel-method
- řetězec určující metodu výběru objektu:
 
  C - křížová selekce
 
  CP - Cpolygon selekce (všechny objekty přetnuté nebo vevnitř polygonu)
 
  F - místní selekce
 
  I - impicitní selekce
 
  L - poslední viditelný objekt je přidán do databáze
 
  P - poslední selekce
 
  W - selekce oknem
 
  WP - WPolygon (všechny objekty v specifikovaném polygonu)
 
  X - úplná databáze, vybere všechny entity v databázi (pokud není nastaven filter-list)
 
  :E - cokoli v pickboxu
 
  :N - volání po přidaných informacích
 
pt1
- relativní bod výběru
 
pt2
- relativní bod výběru
 
pt-list
- seznam bodů
 
filter-list
- asociační seznam obsahující vlastnosti objektů. Objekty, které odpovídají argumentu filter-list jsou přidány do výběrové množiny
 
Popis:
  - vytvoří výběrovou množinu z vybraných objektů
 
Návratové hodnoty:
  - jméno vytvořené výběrové množiny, proběhlo-li vše v pořádku
  - nil - když nebyly vybrány žádné objekty
 
Příklady:
  Požádá uživatele o výběr objektů k přidání do výběrové množiny:
(ssget)
    vrací <Selection set: 2>
   
  Vytvoření výběrové množiny z objektů jdoucí přes bod (2, 2)
  (ssget '(2 2))
    vrací nil
   
  Vytvoří výběrovou množinu z nejvíc používaných vybraných objektů:
  (ssget "_P")
    vrací <Selection set: 4>
   
  Vytvoří výběrovou množinu z objektů protínajících box (0, 0) (1, 1)
  (ssget "_C" '(0 0) '(1 1))
    vrací <Selection set: b>

(ssgetfirst)
 
Popis:
  - zjistí, které objekty jsou vybrány nebo uchopeny
 
Návratové hodnoty:
  - vrátí seznam dvou výběrů nastavených stejně jako ve funkci sssetfirst
  - první element je výběrová množina entit, které jsou uchopeny, ale nejsou vybrány
  - druhý element je výběrová množina entit, které jsou uchopeny i vybrány

Podívejte se na funkce ssget a sssetfirst.

(sslength ss)
 
Argumenty:
 
ss
- výběrová množina
 
Popis:
  - vrátí počet objektů (entit) ve výběrové množině
 
Návratová hodnota:
  - integer
 
Příklady:
  Přidej poslední objekt do nové výběrové množiny:
  (setq sset (ssget "L"))
    vrací <Selection set: 8>
   
  Zjištění délky nové výběrové množiny:
  (sslength sset)
    vrací 1

(ssmemb ename ss)
 
Argumenty:
 
ename
- jméno entity
 
ss
- výběrová množina
 
Popis:
  - zjistí zda objekt je členem výběrové množiny
 
Návratové hodnoty:
  - jméno entity - ename je členem ss
  - nil - ename není členem ss
 
Příklady:
  V následujících příkladech je entita jméno e2 členem výběrové množiny ss, a entita jméno e1 není členem ss:
  (ssmemb e2 ss)
    vrací <Entity name: 1d62d68>
   
  (ssmemb e1 ss)
    vrací nil

(ssname ss index)
 
Argumenty:
index
- integer nebo real - indikující element ve výběrové množině
- první element má index = 0
- k přístupu k entitám v rozmezí větším než 0-32767 je nutné použít indexy real
ss
- výběrová množina
Popis:
  - vrátí jméno objektu (entity) indexovaného elementu výběrové množiny
 
Návratové hodnoty:
  - jméno entity - proběhlo-li vše v pořádku
  - nil - index je záporný nebo větší než počet entit ve výběrové množině
 
Příklady:
  Získá jméno první entity ve výběrové množině:
  (setq ent1 (ssname ss 0))
    vrací <Entity name: 1d62d68>
   
  Získání jména čtvrté entity ve výběrové množině:
  (setq ent4 (ssname ss 3))
    vrací <Entity name: 1d62d90>
   
  Ukázka přístupu k entitě s indexem větším než 32767:
  (setq entx (ssname sset 50843.0))

Podívejte se na funkci entnext.

(ssnamex ss [index])
 
Argumenty:
 
ss
- výběrová množina
 
index
- integer nebo real - indikující element ve výběrové množině
    - první element má index = 0
 
Popis:
  - získá informace - jak byla vytvořena výběrová množina
 
Návratové hodnoty:
   
 
Příklady:
  (ssnamex ss3 0)
    vrací ((1 <Entity name: 1d62da0> 0 (0 (1.0 1.0 0.0))))

(sssetfirst gripset [pickset])
 
Argumenty:
 
gripset
- výběrová množina, která má být uchopena
 
- gripset je nil a pickset je specifikován, funkce sssetfirst uchopí a vybere pickset
 
- gripset je nil a pickset není specifikován, funkce sssetfirst vypne uchopovací ukazatele a vybere předchozí nastavení
 
pickset
- výběrová množina, která má být vybrána
 
Popis:
  - nastaví, který objekt je uchopena a který vybrán
 
Návratová hodnota:
  - výběrová množina nebo nastavené množiny
 
Příklady:
  Nakreslení čtverce a vytvoření tři výběrových množin, nakreslení první strany a přidání do gripset:
  (entmake (list (cons 0 "line") '(10 0.0 0.0 0.0) '(11 0.0 10.0 0.0)))
    vrací ((0 . "line") (10 0.0 0.0 0.0) (11 0.0 10.0 0.0))
  (setq gripset (ssget "_l"))
    vrací <Selection set: a5> - proměnná gripset ukazuje na vytvořenou výběrovou množinu
   
  Nakreslení druhé strany a přidání do gripset:
  (entmake (list (cons 0 "line") '(10 0.0 10.0 0.0) '(11 10.0 10.0 0.0)))
    vrací ((0 . "line") (10 0.0 10.0 0.0) (11 10.0 10.0 0.0))
  (ssadd (entlast) gripset)
    vrací <Selection set: a5>
   
  Jiná výběrová množina obsahující jen stranu 2:
  (setq 2onlyset (ssget "_l"))
    vrací <Selection set: a8>
     
  Proměnná pickset ukazuje na novou výběrovou množinu.
  Nakreslení čtvrté strany a přidání do gripset a pickset:
  (entmake (list (cons 0 "line") '(10 10.0 0.0 0.0) '(11 0.0 0.0 0.0)))
    vrací ((0 . "line") (10 10.0 0.0 0.0) (11 0.0 0.0 0.0))
  (ssadd (entlast) gripset)
    vrací <Selection set: a5>
  (ssadd (entlast) pickset)
    vrací <Selection set: ab>
     
  - gripset obsahuje strany 1-4, pickset obsahuje strany 3-4 a 2onlyset obsahuje jen stranu 2:
  - Nastavení uchopovacích ukazatelů on na všechny objekty ve výběrové množině gripset:
(sssetfirst gripset)
    vrací (<Selection set: a5>)
   
  - Nastavení uchopovacích ukazatelů off na všechny objekty ve výběrové množině gripset:
  (sssetfirst nil)
    vrací (nil)
   
  - Nastavení uchopovacích ukazatelů on a vybrání všech objektů v pickset:
  (sssetfirst nil pickset)
    vrací (nil <Selection set: ab>)

(setfunhelp c:fname [helpfile [topic [command]]])
 
Argumenty:
 
c:fname
- řetězec specifikující uživatelem definovaný příkaz (c:xxx funkce), musí se uvést prefix c:
 
helpfile
- řetězec - jméno help file, koncovka není vyžadována
 
topic
- řetězec identifikující ID téma helpu
 
command
- řetězec identifikující typ požadavku na help
 
Popis:
  - registruje uživatelem definovaný příkaz s helpem, po požadavku uživatele je zavolán help file a téma požadovaného helpu
 
Návratové hodnoty:
  - řetězec převzatý jako c:fname, proběhlo-li vše v pořádku
  - nil - v opačném případě
 
Příklady:
  Definice jednoduché funkce a přiřazení helpu:
  (defun c:foo ()
  (getstring "Press F1 for help on the foo command:")
  )
  (setfunhelp "c:foo" "acad.hlp" "circle")
    - poslední řádek přiřadí k funkci foo help acad.hlp položku (téma) circle, po nahrání funkce foo a zmáčknutí F1 se zobrazí help acad - circle

Podívejte se na funkci help.