> For the complete documentation index, see [llms.txt](https://primer2.dynamobim.org/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://primer2.dynamobim.org/pl/3_user_interface/2-library.md).

# Biblioteka

Biblioteka zawiera wszystkie wczytane węzły, w tym dziesięć domyślnych kategorii węzłów dołączonych do instalacji oraz dodatkowo wczytane węzły niestandardowe lub pakiety. Węzły w bibliotece są zorganizowane hierarchicznie w obrębie bibliotek, kategorii i, w razie potrzeby, podkategorii.

![](https://2069116583-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FT8P36P8hlroW5MOSGuXc%2Fuploads%2Fgit-blob-50decfbb6b4fb2474450cfd362755bd83836b427%2Flibrary-library-ui.png?alt=media)

* Węzły podstawowe: dostarczane z instalacją domyślną.
* Węzły niestandardowe: zapisz często używane procedury lub wykres specjalny jako węzły niestandardowe. Węzły niestandardowe można również udostępniać społeczności
* Węzły z aplikacji Package Manager: kolekcja opublikowanych węzłów niestandardowych.

Przeanalizujemy kategorie [hierarchii węzłów](#library-hierarchy-for-categories), pokażemy, w jaki sposób można [szybko wyszukiwać w bibliotece](#search-by-hierarchy), i zapoznamy się z niektórymi z [często używanych węzłów](#frequently-used-nodes), jakie się tam znajdują.

### Hierarchia biblioteki dla kategorii

Przeglądanie tych kategorii jest najszybszym sposobem zrozumienia hierarchii tego, co można dodać do obszaru roboczego, a także najlepszym sposobem odnajdowania nowych węzłów, których wcześniej nie używano.

Przeglądaj bibliotekę, klikając poszczególne menu, aby rozwijać kategorie i ich podkategorie

{% hint style="info" %}
Geometria to świetne menu, które doskonale nadają się do rozpoczęcia przeglądania, ponieważ zawierają największą liczbę węzłów.
{% endhint %}

![](https://2069116583-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FT8P36P8hlroW5MOSGuXc%2Fuploads%2Fgit-blob-9a46b13b1d449d76b3e66f164fa06482159ca3a2%2Flibrary-modified-and-resize-library-categories.jpg?alt=media)

> 1. Biblioteka
> 2. Kategoria
> 3. Podkategoria
> 4. Węzeł

Zapewnia to dodatkowe skategoryzowanie węzłów należących do tej samej podkategorii w zależności od tego, czy węzły **tworzą** dane, wykonują **operacje**, czy wysyłają **zapytania** dotyczące danych.

* ![](https://2069116583-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FT8P36P8hlroW5MOSGuXc%2Fuploads%2Fgit-blob-7535d7eb2d637f545ef595713756c730de0adc28%2Fuser-interface-create.jpg?alt=media) **Create** — węzły tworzenia: tworzą lub konstruują geometrię od podstaw. Np. okrąg.
* ![](https://2069116583-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FT8P36P8hlroW5MOSGuXc%2Fuploads%2Fgit-blob-088aef3f1cc0549f9ef74af850e726caf2783e81%2Fuser-interface-action.jpg?alt=media) **Action** — węzły działań: wykonują operacje na obiekcie. Np. skalowanie okręgu.
* ![](https://2069116583-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FT8P36P8hlroW5MOSGuXc%2Fuploads%2Fgit-blob-4c74657428b1cd9e8195f0ee5b35735cb2bf9601%2Fuser-interface-query.jpg?alt=media) **Query** — węzły zapytań: pobierają właściwość obiektu, który już istnieje. Np. pobieranie promienia okręgu.

Umieść wskaźnik myszy na węźle, aby wyświetlić informacje bardziej szczegółowe od jego nazwy i ikony. Dzięki temu można szybko zrozumieć, do czego służy węzeł, jakich wejść wymaga i jakie będą jego dane wyjściowe.

![](https://2069116583-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FT8P36P8hlroW5MOSGuXc%2Fuploads%2Fgit-blob-2acdecc46a6e48892c34c17cf799110e0f50fa29%2Fuser-interface-node-description.jpg?alt=media)

> 1. Opis — prosty opis węzła
> 2. Ikona — większa wersja ikony w menu Biblioteka
> 3. Wejścia — nazwa, typ danych i struktura danych
> 4. Wyjścia — typ danych i struktura

### Szybkie wyszukiwanie w bibliotece

Jeśli dosyć dobrze wiadomo, jaki węzeł ma zostać dodany do obszaru roboczego, wpisz w polu **Wyszukaj** nazwę węzła, aby wyszukać wszystkie pasujące węzły.

Wybierz, klikając węzeł, który chcesz dodać, lub naciśnij klawisz Enter, aby dodać wyróżnione węzły do środka obszaru roboczego.

![](https://2069116583-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FT8P36P8hlroW5MOSGuXc%2Fuploads%2Fgit-blob-7b997bfc01c563877255ed8ef7270df3efa1f220%2Fuser-interface-search.jpg?alt=media)

#### Wyszukiwanie według hierarchii

Podczas wyszukiwania węzłów oprócz słów kluczowych można wpisywać hierarchię, oddzielając jej elementy kropkami w polu wyszukiwania. Można tak również robić w węzłach Code Block (w których jest używany *język tekstowy dodatku Dynamo*).

Hierarchia każdej biblioteki jest odzwierciedlona w nazwach węzłów dodawanych do obszaru roboczego.

Wpisanie różnych części miejsca węzła w hierarchii biblioteki w formacie `library.category.nodeName` zwraca różne wyniki:

* `library.category.nodeName`

![](https://2069116583-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FT8P36P8hlroW5MOSGuXc%2Fuploads%2Fgit-blob-271e54df326f0f0aca264b2087f91a1dd74c0e15%2Flibrary-search-by-hierarchy-1-geometry-point-by-coordinates.jpg?alt=media)

* `category.nodeName`

![](https://2069116583-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FT8P36P8hlroW5MOSGuXc%2Fuploads%2Fgit-blob-a4f8e09baf730d972acadbb6614bcc196822b6b4%2Flibrary-search-by-hierarchy-2-point-by-coordinates.jpg?alt=media)

* `nodeName` lub `keyword`

![](https://2069116583-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FT8P36P8hlroW5MOSGuXc%2Fuploads%2Fgit-blob-31ddb1110fde890457d91982ab48021ec0919dc4%2Flibrary-search-by-hierarchy-3-by-coordinates.jpg?alt=media)

Zazwyczaj nazwa węzła w obszarze roboczym jest renderowana w formacie `category.nodeName`, z pewnymi ważnymi wyjątkami, szczególnie w przypadku kategorii widoków i wejść.

Należy zwrócić uwagę na podobnie nazwane węzły i na różnicę ich kategorii:

* Węzły z większości bibliotek mają format kategorii

![](https://2069116583-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FT8P36P8hlroW5MOSGuXc%2Fuploads%2Fgit-blob-3367ffb487b26825473c590cc7e7953ff29c83ed%2Flibrary-node-category-differences-1.jpg?alt=media)

* Węzły `Point.ByCoordinates` i `UV.ByCoordinates` mają tę samą nazwę, ale pochodzą z różnych kategorii

![](https://2069116583-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FT8P36P8hlroW5MOSGuXc%2Fuploads%2Fgit-blob-80eb03b413c7bfd031d519439d10e077916583de%2Flibrary-node-category-differences-2.jpg?alt=media)

* Istotne wyjątki to funkcje wbudowane, Core.Input, Core.View i operatory

![](https://2069116583-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FT8P36P8hlroW5MOSGuXc%2Fuploads%2Fgit-blob-c68204a41a5e5986eec0adf010f73342f9a96ee3%2Flibrary-node-category-differences-3.jpg?alt=media)

### Często używane węzły

Do podstawowej instalacji dodatku Dynamo dołączono setki węzłów — które są niezbędne do tworzenia programów wizualnych? Skupmy się na tych, które pozwalają zdefiniować parametry programu (**Input**), wyświetlić wyniki działania węzła (**Watch**) oraz zdefiniować wyjścia lub funkcjonalność za pomocą skrótu (**Code Block**).

#### Węzły Input

Węzły Input (wejścia) są podstawowym sposobem obsługi kluczowych parametrów programu wizualnego przez użytkownika — Ciebie lub kogoś innego. Oto kilka pozycji dostępnych w bibliotece podstawowej:

| Węzeł          |                                                                                                                                                                                                                       | Węzeł          |                                                                                                                                                                                                                       |
| -------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Boolean        | ![](https://2069116583-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FT8P36P8hlroW5MOSGuXc%2Fuploads%2Fgit-blob-67ee50df2e0e23eb942d7621ec8a23a06fc2ed09%2Flibrary-boolean.jpg?alt=media)        | Number         | ![](https://2069116583-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FT8P36P8hlroW5MOSGuXc%2Fuploads%2Fgit-blob-cb60039615673dc39cd2b6d4e8922e57a1355503%2Flibrary-number.jpg?alt=media)         |
| String         | ![](https://2069116583-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FT8P36P8hlroW5MOSGuXc%2Fuploads%2Fgit-blob-f4e00a4ec0457cdb1644f26e87eec928ccc3a0b0%2Flibrary-string.jpg?alt=media)         | Number Slider  | ![](https://2069116583-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FT8P36P8hlroW5MOSGuXc%2Fuploads%2Fgit-blob-5866edeccc7098b56ab0e3c59d54ac8ef8fa4d0e%2Flibrary-number-slider.jpg?alt=media)  |
| Directory Path | ![](https://2069116583-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FT8P36P8hlroW5MOSGuXc%2Fuploads%2Fgit-blob-2fbb4f43632bf799012d0d59f6c81077088830fc%2Flibrary-directory-path.jpg?alt=media) | Integer Slider | ![](https://2069116583-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FT8P36P8hlroW5MOSGuXc%2Fuploads%2Fgit-blob-1c55e236b4fb6073f7f6127c905d1f4c4c5e0fe8%2Flibrary-integer-slider.jpg?alt=media) |
| File Path      | ![](https://2069116583-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FT8P36P8hlroW5MOSGuXc%2Fuploads%2Fgit-blob-de82ac1d1f24374b522e2ac17ac2d4e1a4640d02%2Flibrary-file-path.jpg?alt=media)      |                |                                                                                                                                                                                                                       |

#### Watch oraz Watch3D

Węzły Watch (obserwacyjne) są niezbędne do zarządzania danymi, które przepływają przez program wizualny. Wynik węzła można wyświetlić w **podglądzie danych węzła**, umieszczając wskaźnik myszy na węźle.

![](https://2069116583-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FT8P36P8hlroW5MOSGuXc%2Fuploads%2Fgit-blob-cc29ebe7ed491801e7ed093053319fa687ac95f5%2Flibrary-node-preview.jpg?alt=media)

Przydatne jest wyświetlenie informacji w węźle **Watch**

![](https://2069116583-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FT8P36P8hlroW5MOSGuXc%2Fuploads%2Fgit-blob-bea827892c5da51f78c46bb8003fa99a0bb6b08f%2Flibrary-watch-node.jpg?alt=media)

Można też wyświetlić wyniki geometrii za pomocą węzła **Watch3D**.

![](https://2069116583-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FT8P36P8hlroW5MOSGuXc%2Fuploads%2Fgit-blob-6d314a342370a64dc4abf1661cb26fc0fb3da9f8%2Flibrary-watch3d-node.gif?alt=media)

Oba te elementy znajdują się w kategorii widoku w bibliotece podstawowej.

{% hint style="info" %}
Wskazówka: czasami podgląd 3D może rozpraszać, gdy program wizualny zawiera wiele węzłów. Warto rozważyć wyczyszczenie zaznaczenia opcji Wyświetlanie podglądu tła w menu Ustawienia i użycie zamiast tego węzła Watch3D do wyświetlania podglądu geometrii.
{% endhint %}

#### Code Block

Węzły Code Block (bloki kodu) umożliwiają definiowanie bloku kodu z wierszami oddzielonych średnikami. Może to być coś tak prostego, jak `X/Y`.

Bloków kodu można też używać jako skrótów do definiowania wejścia liczbowego lub wywoływania funkcji innego węzła. Składnia potrzebna do tego celu jest zgodna z konwencją nazewnictwa języka tekstowego Dynamo, [DesignScript](/pl/8_coding_in_dynamo/8-1_code-blocks-and-design-script/2-design-script-syntax.md).

Oto prosty przykład (z instrukcjami) użycia bloku kodu w skrypcie.

![](https://2069116583-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FT8P36P8hlroW5MOSGuXc%2Fuploads%2Fgit-blob-61d1c0b5e4d8334fd7b4b1fefe6ea6f3daf59eef%2Flibrary-codeblockdemo.gif?alt=media)

1. Kliknij dwukrotnie, aby utworzyć węzeł Code Block
2. `Circle.ByCenterPointRadius(x,y);`Typ
3. Kliknij obszar roboczy, aby wyczyścić zaznaczenie i automatycznie dodać wejścia `x` i `y`.
4. Utwórz węzły Point.ByCoordinates i Number Slider, a następnie połącz je z wejściami bloku kodu.
5. Wynik wykonania programu wizualnego jest pokazany jako okrąg w podglądzie 3D
