pondělí 27. dubna 2020

Upgrade modelů Revit do použité verze

Zdravím všechny, koukám že už jsme sem nikdo dlouho nic nenapsali. A protože se nedávno na FB skupiny CAD a BIM v praxi diskutovalo o možných způsobech upgrade modelů na novou verzi Revitu, tak tady je jednoduchý (a nikoli úplný) skript pro Dynamo 2.0, který z vybraného adresáře vylistuje všechny *.RVT modely (včetně podadresářů) a přeuloží je do aktuální verze. Z centrálních modelů udělá centrální, z lokálních budou lokální. Před takovouto operací ale vždy všechny modely zkopírujte i stranou jako zálohu, nikdy nevíte, co vše se může stát.


Použité balíčky jsou kromě OOTB i Rhythm a možná i nějaký jiný :-) Ten uzel Application.BasicFileInfo je tam jen pro inspiraci, pokud budete chtít toto dále rozvíjet.

Za BIM-Fórum z.s.

Peter Jirát

pondělí 26. srpna 2019

Dynamo - přenos definic typů čar

Někdy se stane, že máte v Revitu obecnou poznámku (Generic Annotation) coby legendu, která má v sobě definované různé typy čar (například profesní sítě apod.). Tyto čáry byste rádi použili v modelu, ale tam je nelze nalézt (jsou to podkategorie GA, nikoli typy čar). S Dynamem si s tím lehce poradíte.
Níže je uveden graf Dynama i možnost stažení. Funguje v R2019 s některými uzly z balíku Rhythm.



Export_Line_Styles.dyn



Za BIM-Fórum z.s.

Peter Jirát

pondělí 29. července 2019

Dynamo - upgrade knihovny rodin

Pokud nemáte k dispozici některou z aplikací, které to umí (tedy upgrade knihovny rodin do vyšší verze Revitu), můžete využít Dynamo a krátký zápis, který to udělá. Včetně podadresářů, či možnosti si filtrovat hledané soubory.


Kromě standardních uzlů je jeden z balíku Rhythm.

EDIT: Ten uzel nečte rodiny, které jsou umístěné v rootu adresáře s podadresáři, které chcete převést. Je proto potřeba mít vše v podadresářích složky, jejíž obsah se bude upgradovat.

Za BIM-Fórum z.s.

Peter Jirát

středa 5. června 2019

Rozdělení řetězce kóty

Včera se mne kolega zeptal, zde lze rozdělit dlouhý řetězec kóty, nebo z něj jednu kótu z prostředku vymazat. Co vím, tak jediná možná úprava kóty byla pomocí odstranění vynášecích čar, kdy se dvě kóty spojí dohromady, nebo odstraní koncová kóta. Aplikaci na to taky žádnou nemám, tak jsem mu rychle odpověděl - "Nejde, okótuj si to znovu".
Pak mi to nedalo, tak jsem na to chvíli koukal, použil Google - a ono to samozřejmě jde.
Stačí použít oblíbenou klávesu Tab na tom řetězci, když ukážu myší na kótu, kterou chci z řetězce odstranit, tak se pomocí Tab doklikám na tu jedinou, a pak Delete, a je to.

Krátké video napoví:


V Revitu je to zřejmě od verze 2012, už jsem asi dlouho nic nekótoval :-) .

Za BIM-Fórum z.s.

Peter Jirát

pondělí 28. ledna 2019

Kružnice či oblouk třemi body v Revitu

Zdravím, dnes jedna geometrická i aritmetická úloha. Zkonstruovat kružnici či oblouk 3-mi body v Revitu není problém. Ale pokud to má být parametrický oblouk, tak určení polohy středu kružnice a jejího poloměru už tak jednoduché není. Sestrojit to pomocí os spojnic jednotlivých bodů je jednoduché, pokud to rýsujete. Zadat to Revitu v rodině, aby zobrazení a případné těleso na tuto kružnici napojené fungovalo správně, mne "trochu" potrápilo :-) .
Pro výpočet středu kružnice, když znáte polohu 3 bodů, je využito výpočtu determinantu soustavy rovnic a Cramerova pravidla - přiznávám, že už jsem to vše úspěšně zapomněl.
V Revitu v rodině vypadá zadání takto:


Pro zjednodušení jsem nedával vše do jednoho vzorce, dokola pak musíte řešit problém nekonzistentních jednotek. Hodnoty x a y jednotlivých bodů mohou být například výška a šířka dveří, třetí bod je na ose dveří ve výšce VO.

Textový zápis pro jednodušší kopírování:
m1 = (x1+x2)/2; n1 = (y1+y2)/2; m2 = (x1+x3)/2; n2 = (y1+y3)/2;

c1 = (x2-x1)*m1 + (y2-y1)*n1; c2 = (x3-x1)*m2 + (y3-y1)*n2;

mx = (x2-x1)*(y3-y1)+(y2-y1)*(x1-x3);

csx = (c1*(y3-y1)+c2*(y1-y2))/mx;
csy = (c1*(x1-x3)+c2*(x2-x1))/mx;
 
rs = sqrt((csx-x1)*(csx-x1)+(csy-y1)*(csy-y1));

Celkový zápis bez úpravy pro konzistentní jednotky:

csx = ((x2-x1)* (x1+x2)/2 + (y2-y1)* (y1+y2)/2*(y3-y1)+ (x3-x1)* (x1+x3)/2 + (y3-y1)* (y1+y3)/2*(y1-y2))/ (x2-x1)*(y3-y1)+(y2-y1)*(x1-x3);
csy = ((x2-x1)* (x1+x2)/2 + (y2-y1)* (y1+y2)/2*(x1-x3)+ (x3-x1)* (x1+x3)/2 + (y3-y1)* (y1+y3)/2*(x2-x1))/ (x2-x1)*(y3-y1)+(y2-y1)*(x1-x3);

Tak jsem snad někomu ušetřil pár horkých chvil.

Za BIM-Fórum z.s.

Peter Jirát

pondělí 24. září 2018

Průnik terénu a plochy šikmé základové desky

Klasická úloha, najít průnik terénu a základové desky ve výkopu, aby hrana desky byla zarovnaná akorát se stávajícím terénem a nelezla nikam nad/pod a tím nezkreslovala výměry výkopů.
Pro Dynamo jednoduchý graf:


Vyberete topografii (terén), vyberete plochu desky (může to být prvek základové desky, podlahy nebo i jiný prvek, který je ve sklonu a někde tu topografii protne), graf vykreslí modelové čáry po povrchu terénu, ke kterým už můžete upravit náčrt desky. Její horní hrana pak leží přímo na povrchu.
Dva uzly jsou použité z balíku Springs. Je tam lehké zjednodušení pro velmi krátké úseky, kde by měl Revit® problémy s délkou čáry.

Pokud bude problém s pojmenováním tohoto příspěvku, rád to změním :-)

Za BIM-Fórum z.s.
Peter Jirát

středa 2. května 2018

Dynamo - odstranění duplicitních rodin

Už se vám určitě stalo, že jste v modelu Revitu kopírovali rodiny, nebo používáte Copy/Monitor a při nesprávné definici se vám "namnoží" rodiny na jednom místě. Tuto chybu lze odhalit pravidelnou kontrolou Review warnings, ale při větším množství duplicitních rodin se odstranění této chyby stává úmorné - zaklikat všechny duplicity může trvat i několik minut.
Jednoduché Dynamo toto udělá za vás:




Výběr duplicitních rodin pro odstranění probíhá proti kontrole ve výpisu Review warnings, můžete si prográmek upravit pro všechny rodiny, ale raději mám při těchto činnostech trochu kontroly. Uzel pro odstranění výběru je z balíku Springs. Zkoušeno pro verzi Dynama 1.3.3.

Za BIM-Fórum z.s.

Peter Jirát