Uživatelské nástroje

Nástroje pro tento web


cs:openscad

Rozdíly

Zde můžete vidět rozdíly mezi vybranou verzí a aktuální verzí dané stránky.

Odkaz na výstup diff

Obě strany předchozí revizePředchozí verze
Následující verze
Předchozí verze
cs:openscad [2019/04/12 13:34] – [Styl psaní kódu (coding style)] kaklikcs:openscad [2021/07/27 08:02] (aktuální) kaklik
Řádek 1: Řádek 1:
-====== Dobré zvyky pro použití OpenSCAD ======+====== Ověřené postupy pro použití OpenSCAD ======
  
 [[http://www.openscad.org/|OpenSCAD]] je nástroj pro návrh 3D modelů technických zařízení. Na rozdíl od většiny návrhových nástrojů OpenSCAD využívá pro popis objektu programovací jazyk.  Tento přístup umožňuje jednak parametrizaci modelů a navíc jejich snadné verzování s identifikací přesné změny. Základní úvod do používání programu je na [[http://blog.cubehero.com/2013/11/19/know-only-10-things-to-be-dangerous-in-openscad/|Know only 10 things to be dangerous in OpenSCAD]], existuje také [[http://www.openscad.org/cheatsheet/|přehled základních funkcí]]. [[http://www.openscad.org/|OpenSCAD]] je nástroj pro návrh 3D modelů technických zařízení. Na rozdíl od většiny návrhových nástrojů OpenSCAD využívá pro popis objektu programovací jazyk.  Tento přístup umožňuje jednak parametrizaci modelů a navíc jejich snadné verzování s identifikací přesné změny. Základní úvod do používání programu je na [[http://blog.cubehero.com/2013/11/19/know-only-10-things-to-be-dangerous-in-openscad/|Know only 10 things to be dangerous in OpenSCAD]], existuje také [[http://www.openscad.org/cheatsheet/|přehled základních funkcí]].
  
  
-=== Styl psaní kódu (coding style) ===+==== Styl psaní kódu (coding style) ====
  
 Je praktické dodržovat některá základní pravidla při vytváření modelů v openscadu. Je praktické dodržovat některá základní pravidla při vytváření modelů v openscadu.
Řádek 12: Řádek 12:
   * Proměnné a operátory oddělovat mezerami   * Proměnné a operátory oddělovat mezerami
   * Používat odsazení o 4 mezery (tabulátor) ve vnořeném bloku kódu   * Používat odsazení o 4 mezery (tabulátor) ve vnořeném bloku kódu
 +  * Operace nad tělesem (translace, rotace) jsou vždy samostatně jedna na řádku, objekty se kterými manipulují jsou na řádku následujícím a jsou považovány za vnořený blok.
  
  
Řádek 24: Řádek 25:
  
  
-== Názvy souborů ==+==== Názvy souborů ====
  
 Názvy jednotlivých souborů modelů jsou číselné ve formátu //(Název_)XXX_XXXX.scad// kde první trojčíslí určuje zamýšlený materiál ze kterého se má model realizovat:  Názvy jednotlivých souborů modelů jsou číselné ve formátu //(Název_)XXX_XXXX.scad// kde první trojčíslí určuje zamýšlený materiál ze kterého se má model realizovat: 
Řádek 37: Řádek 38:
  
  
 +==== Knihovny ====
  
 +Knihovny by v projektech měly být ve složce // src/lib/ //, s tím že složka lib může mít další podsložky. Například standardní knihovny společné pro více projektů ve formě submodulu. 
 +Submodul s knihovnami vytvoříme příkazem 
 +
 +  git submodule add git@github.com:ThunderFly-aerospace/Openscad_stdlib.git lib/stdlib
 +
 +==== Tiskové sestavy ====
 +
 +Jedna tištěná komponenta obvykle  zahrnuje víc práce, než jen samotný návrh dílu. Pro tisk je návrh modelu obvykle potřeba opatřit ještě souborem, který model napozicuje do polohy ve které se má tisknout.  Tato poloha z praktických důvodů často totiž je odlišná od návrhové polohy dílu. 
 +
 +Pro tiskový soubor obvykle používáme název __print_plate__. Struktura takového souboru pak typicky vypadá nějak takhle: 
 +
 +  use <../888_1001.scad>
 +  use <../lib/stdlib/shortcuts.scad>
 +  
 +  safety_hole = 2.5;
 +  
 +  place_in_rect(30, 80) // arange that stuff in a grid
 +  {
 +      888_1001(hole_diameter = safety_hole);
 +      888_1001(hole_diameter = safety_hole);
 +  
 +      888_1001(hole_diameter = safety_hole);
 +      888_1001(hole_diameter = safety_hole);
 +  
 +      888_1001(hole_diameter = safety_hole);
 +      888_1001(hole_diameter = safety_hole);
 +  
 +  }
 +
 +
 +
 +==== Doporučená technická řešení ====
 +
 +Ověřené způsoby, kterými lze vyřešit standardní omezení tisku
 +
 +=== Tolerance rozměrů při návrhu ===
 +
 +  - Otvory jsou tištěny vždy menší než navrhované
 +  - Válce jsou vždy trošku větší než navrhované
 +
 +Výše uvedené fakty vedou k tomu, že při vytvoření modelu, kde hřídel má stejný průměr jako otvor, tak tyto modely nebudou pasovat do sebe.  
 +Fakticky zajistit, aby hřídel byla [[https://cs.wikipedia.org/wiki/L%C3%ADcov%C3%A1n%C3%AD|definovaně lícovaná]] do otvoru současný 3D tisk dopředu neumí a je to otázkou experimentů a nastavování parametrů. 
 +
 +**Je třeba ale zdůraznit, že nalezené parametry platí vždy pro konkrétní počet polygonů díry a válce a pro konkrétní průměr. Výraznou změnou průměru tak dojde k porušení nalezeného lícování.** 
 +
 +Určitou výhodou ale je, že model tištěný opakovaně na stejné tiskárně ze stejného typu filamentu má velmi opakovatelné vlastnosti. 
 +
 +=== Tisk stropů převisů ===
 +
 +  - Tiskárna umí přemostit díru v modelu, most však nesmí obsahovat díry
 +  - Nejhorší možný tvar v modelu je zakulacený strop
 +
 +Z výše uvedených bodů například vyplývá, že když chceme uzavřít otvor pro zapuštění šroubu, kde hlava šroubu začíná u tiskové podložky. Tak je výhodné zapuštění ukončit plnou vrstvou o tloušťce jedné tiskové vrstvy v našich modelech je k tomuto účelu určena konstanta //layer_tickness//
 +
 +Na následujícím obrázku je pak videt jak takový tiskový model vypadá
 +
 +{{ :cs:sw:3dprint:screw_hole_3dprint.png?400 |}}
 +
 +Horizontální mosty je pak potřeba po vytištění odstranit vrtákem. 
 +
 +
 +
 +
 +
 +==== Alternativní editory ====
 +
 +Integrovaný editor v OpenSCADu není moc pohodlný pro užívání. Je proto vhodnější zdrojové kódy modelů editovat v jiném editoru. OpenSCAD to podporuje tím, že při novém uložení souboru znovu zobrazí náhled. Některé editory podporují pluginy, které znají jazyk OpenSCADdu.
 +
 +
 +=== Použití editoru Atom ===
 +
 +[[https://atom.io/|ATOM]] je nástroj pro univerzální editaci zdrojových kódů.
 +
 +Pro OpenSCAD je potřeba [[cs:openscad#pouziti_editoru_atom|doinstalovat]] balíček language-openscad.
 +
 +
 +Editor atom je pro tento účel vhodným editorem. Instalace je docela jednoduchá a rychlá. Editor pak nabízí mnoho pokročilých funkcí.
 +
 +Instalace lze provést v nastavení, do kterého se dostaneme přes ```Edit -> Preferences``` (klávesová zklatka ctlr+, (čárka)). V levém sloupci nastavení je potřeba zvolit `install` a vyhledat ```language-openscad```. Následně je potřeba nainstalovat stejnojmenný plugin.
 +
 +Pak stačí otevřít soubor a editor by měl sám poznat, že se jedná o OpenSCAD soubor. Bude se to projevovat tak, že syntaxe bude správně obarvená a bude to znát určité openscad funkce.
  
 === Použití editoru SublimeText === === Použití editoru SublimeText ===
  
-Editor integrovaný přímo do OpenSCADu není moc pohodlný pro užívání. Je proto vhodnější zdrojové kódy modelů editovat v editoru [[https://www.sublimetext.com/|SublimeText 3]].  K tomu je ale vhodné si do editoru nainstalovat plugin, který zná jazyk OpenSCADdu+Další vhodný editor je [[https://www.sublimetext.com/|SublimeText 3]].
  
-Instalaci lze provést přes systém balíčků, který můžeme aktivovat volbou //Tools -> Install Package Control..//+Instalaci pluginu lze provést přes systém balíčků, který můžeme aktivovat volbou //Tools -> Install Package Control..//
  
 {{:cs:sw:sublimetext3_package_control_install.png?400|}} {{:cs:sw:sublimetext3_package_control_install.png?400|}}
cs/openscad.1555076055.txt.gz · Poslední úprava: 2019/04/12 13:34 autor: kaklik