Téma: Lepší viditelnost pracovní vrstvy

Mám dva náměty týkající lepší viditelnosti pracovní vrstvy. Oba jsou typu za málo peněz hodně muziky.

1. Typický případ: uprostřed práce s deskou potřebuji vyrobit novou součástku. To obnáší práci i ve vrstvách, které při návrhu DPS normálně nepotřebuji a tudíž jsou vypnuté. Takže musím takovou vrstvu nejdříve přepnout jako pracovní, pak ale zjistím, že nic nevidím, takže ji ještě v jiném menu zapnu, a po ukončení práce v této vrstvě ji musím zase vypínat.

Otázka do pranice je : Má nějaký smysl, aby pracovní vrstva byla neviditelná ? Podle mě si to odporuje. Na neviditelné vrstvě přece pracovat nemohu !

Takže navrhuji, aby pracovní vrstva byla viditelná vždy, tedy i tehdy, pokud je v menu Graphics|Layer Colors vypnuta. Ušetří to určitě trošku práce.

2. Možná by také stálo za úvahu, zda by pracovní vrstva neměla být viditelná lépe, než všechy ostatní. To znamená, že by při vykreslování byla vždy navrchu a neprolínala by se s jinými vrstvami. Dosavadní prolínání vrstev totiž viditelnost pracovní vrstvy omezuje. Například barva vrstvy B se téměř ztrácí pod světlešedými odstíny používanými pro potisk. Takže při práci musím většinu ostatních vrstev vypínat, abych pořádně viděl tu pracovní a nic mi na ní neuteklo. Tím pádem se stane, že mi uteče jiná věc, která by mi bývala neutekla, kdybych byl býval měl zapnutou jinou vrstvu, ale to bych zase ....

Obě výše zmíněné úpravy by také velmi zjednodušily prohlížení jednotlivých vrstev desky. Zvláště v závěru potřebuji prohlédnou každou vrstvu samostatně, zda se na ní něco nepošpatnilo. Takhle bych jen listoval vrstvymi pomci Ctrl+ a Ctrl- a měly bych okamžitý přehled. Pokud bych chtěl vidět fakt jen jednu vrstvu, tak všechny vypnu a bude vidět jen ta pracovní.

2

Re: Lepší viditelnost pracovní vrstvy

stefan.dubecky napsal:

(...) navrhuji, aby pracovní vrstva byla viditelná vždy, tedy i tehdy, pokud je v menu Graphics|Layer Colors vypnuta.

Což o to, přesně o tomhle jsem uvažoval už dávno.  Potíž nastává při přepínání vrstev pomocí Ctrl-+ a Ctrl--:  Kdybyste takto procházel "skrz" vypnuté vrstvy, muselo by se celé okno překreslovat při každém stisku jedné z těchto kláves, což by mohlo pěkně zdržovat.  (To jest, zdržovat uživatele; naprogramovat to takhle by mne opravdu mnoho času nestálo.) Ale asi bych mohl zvážit doplnění přepínače, jímž byste si toto chování zapnul na vlastní odpovědnost.

stefan.dubecky napsal:

2. Možná by také stálo za úvahu, zda by pracovní vrstva neměla být viditelná lépe, než všechy ostatní.

V souvislosti s přepínáním pohledů ( http://www.formica.cz/forum/viewtopic.php?id=17 ) jsem uvažoval příkaz či přepínač, jímž byste mohl obarvit všechny (zobrazované) vrstvy krom té právě aktivní šedivě.  (Tím byste získal přehled, v jakém místě desky pracujete, ale ostatní vrstvy by příliš nerušily.)

Naopak kreslit některou vrstvu přes ostatní by byl problém, protože celá grafika je naprogramována na předpokladu, že se vrstvy OR-ují dohromady; v takovém případě totiž nezáleží na pořadí kreslení objektů.

3

Re: Lepší viditelnost pracovní vrstvy

1. Pracovní vrstva vždy viditelná : Se zdržováním při překreslování bych si na Vašem místě nelámal hlavu - doby 386-ek jsou již nenávratně pryč a na dnes běžně používaných strojích nad 1GHz nebude s rychlostí překreslování žádný problém. Snad vyjma případu velkých vyplněných ploch, ale to už je stejně vždy v závěru práce, takže to neva. S přepínačem bych v tomto případě šetřil. Ono někdy méně je více. A už teď jich v programu máte víc než dost a je trochu problém se ve všech orientovat.

2. Zvýraznění pracovní vrstvy : Změnit ostatní vrstvy na šedivé se mi moc nezdá, protože pak spolu budou splývat a moc toho na nich vidět nebude. Mám pro Vás ale jiný návrh : stlumit u ostatních vrstev jejich světlost, ale poměr barevných složek zachovat. Tady by naopak nastavovací řádek měl velký smysl. Nastavilo by se, na kolik % původní hodnoty by se nepracovní vrstvy stlumily. Každému to může vyhovovat jinak. Kdo tuto funkci nechce, ponechá nastavení 100%.

4

Re: Lepší viditelnost pracovní vrstvy

ad 1) nastaly ovsem doby Vist a Win7, kde se pouziva jiny zpusob vykreslovani. Ted je tam pry rychlejsi vse nasypat do bufferu a pak jako celek zobrazit. Formica to kresli postupne primo. A to je, jak jsme pochopil, ve Formice hodne programatorske prace. I kdyz mozna by uz nebyla od veci, WinXP pomalu upadaji i k me nelibosti (zrovna pred tydnem jsem kupoval 2TB disk od Westernu, a ten s XP defacto nepocita - pouziva 4k clustery pro NTFS a pro WinXP musim specielne usadit jumper, nebo pouzit nejakej soft na zarovnani dat)
Ted jsem rad, ze v praci delam na XP, protoze u Vist to byl porod, zvlaste u vylite desky.

2) zni to zajimave. Mozna, ze bych to ocenil i ja. A mozna by me spis zajimala drobna modifikace prepinani viditelnosti vrstvy: 100% svetlost, 50% svetlost, 0%. Jenze, mam pocit, ze by se to ORovalo tak, zeby to rusilo jeste vice. Schvalne si to zkusme: vrstvu 23 mam fialovou, stahl jsem jeji svetelnost a razem vidim, ze prekryvy se sedobilou, kterou mam na potisk, se zdaji byt jakoby vysvicene - to mi prijde nepouzitelne. Znamenalo by to tedy nejspis zmenu logiky pri vykreslovani... :(

5 Naposledy upravil: stefan.dubecky (2011-04-01 08:56:56)

Re: Lepší viditelnost pracovní vrstvy

Přemýšlím stále o způsobu kreslení jednotlivých vrstev na obrazovce (ORování) a mám čím dále tím větší pocit, že je to sice jednoduché ale ne moc dobré.
1. ORování způsobuje nečekané konfikty barev - jeden z mnoha uvádí výše pan Och. Takže si nemohu volit barvy podle libosti, protože musím pořád sledovat interakce s jinými barvami.
2. Nemohu jednoznačně plně zobrazit pracovní vrstvu, aniž bych nevypínal ostatní vrstvy.
3. Zobrazení je poněkud nelogické, protože neodpovídá skutečnosti, kdy se jedna vrstva schovává pod druhou. Správně je to při výstupu, např do souboru PDF, kdy vrstvy s vyšší prioritou překrývají ty s nižší prioritou. Je to tak i ve skutečnosti - nejníže je deska samotná, na ní je měď, tu překrývá maska a navrchu je potisk, který překrává vše. Obrazovka této skutečné logice neodpovídá. Ještě výrazněji vyvstane tento problém, pokud chci namalovat něco více než jen tišták. Třeba nyní kreslím tišák jako součást dalšího mechanického uspořádání. Je umístěn v krabičce, ta má své víko a celá je přimontována na nosném plechu. Každé mechanické části jsem přidělil vrstvu - pro plech, krabičku, tišák a víko. Když to dám do PDF, je to bezvadný. Pokud mám povoleny všechny zmíněné vrtsvy, je vidět jen zavřená krabička (víko má nejvyšší prioritu). Odkliknu vrstu s víkem a vidím tišák uvnitř krabičky. Odkliknu tišák  (mám ho zatím jen jako přednávrh v jediné vrstvě) a vidím i dno krabičky. Odkliknu krabičku a vidím samotný nosný plech. Skvělý. Ovšem na obrazovce je z toho bohužel ORová matlanice patlanice - moc dobře se taková věc nedělá. Uvědomte si, že pro popsaný případ musím jednotlivé části kreslit jako vyplněné plochy, aby fungovaly překryvy.

Podle mě by daleko lepší bylo vrstvy nemíchat. Znamenalo by to vykreslovat jednotlivé elementy vždy do odpovídající vrstvy. Tedy mít 24 paměových polí - v podstatě černobílých. Výsledný obraz pak vznikne postupným překreslováním jednotlivých předpřipravených vrstev do výsledné barevné paměti na základě jejich priority (od nejnižší), aktuálního povolení a barevného nastavení.

6

Re: Lepší viditelnost pracovní vrstvy

Měl bych návrh řešení problému s Ctrl+ a Ctrl- tak, aby se při procházení nezapnutými hladinami stále nepřekreslovala obrazovka. ??plně by stačilo upravit funkci Ctrl+ a Ctrl- tak, že poleze jen po viditelných vrstvách. Překreslování pak nehrozí a je to navíc i logičtější - většinou chci zvolit jako pracovní jednu z viditelných vrstev. Je to pak i o hodně rychlejší, když přeskočím neviditelné vrstvy, kterých bývá většina. Pokud bych chtěl použít jako pracovní neviditelnou vrstvu, použil bych kterýkoliv jiný způsob volby vrstvy. Vrstva by se tím zároveň zviditelnila, dokud by byla pracovní.

Ještě by u Ctrl+ a Ctrl- bylo dobré, kdyby se vrstvy točily také dokola (z 23 na 0 a zpět). Někdy je to prostě rychlejší cesta

7

Re: Lepší viditelnost pracovní vrstvy

stefan.dubecky napsal:

Měl bych návrh řešení problému s Ctrl+ a Ctrl- tak, aby se při procházení nezapnutými hladinami stále nepřekreslovala obrazovka. ??plně by stačilo upravit funkci Ctrl+ a Ctrl- tak, že poleze jen po viditelných vrstvách. Překreslování pak nehrozí a je to navíc i logičtější - většinou chci zvolit jako pracovní jednu z viditelných vrstev. Je to pak i o hodně rychlejší, když přeskočím neviditelné vrstvy, kterých bývá většina. (...)

Ještě by u Ctrl+ a Ctrl- bylo dobré, kdyby se vrstvy točily také dokola (z 23 na 0 a zpět). Někdy je to prostě rychlejší cesta

To zřejmě je docela užitečný nápad.  Zkusil jsem to teď takhle naprogramovat a během weekendu Vám pokusný Layout.exe pošlu (možná tam totiž mezitím přidám ještě něco dalšího).  Snad je ta úprava docela neškodná, ale pro zachování zpětné kompatibility by to možná chtělo změněnou funkci zapínat nějakým novým přepínačem.

(Přesně vzato, teď to nastavuje nejbližší vyšší / nižší viditelnou vrstvu modulo 24, je-li viditelná vůbec nějaká; jinak o jedničku vyšší / nižší, ale opět modulo 24.)

Ctrl-+ / Ctrl-- ostatně nemění jen vrstvu ukazatele, ale popřípadě také vrstvu přesouvaných či kopírovaných prvků (jsou-li všechny na jediné).  Z toho důvodu je jejich funkce trošku přetížená a asi by nebylo radno se v ní vrtat přespříliš.  Ale toto se zdá být v toleranci.

stefan.dubecky napsal:

(...) Pokud bych chtěl použít jako pracovní neviditelnou vrstvu, použil bych kterýkoliv jiný způsob volby vrstvy. Vrstva by se tím zároveň zviditelnila, dokud by byla pracovní. (...)

V principu by to asi možné bylo, ale je dost pracné ošetřit, aby takto zviditelněná vrstva opět zhasla při nové změně vrstvy ukazatele.  Zajímal by mne názor ostatních uživatelů, zda by takováhle úprava opravdu stála za úsilí.

8 Naposledy upravil: Tomáš Och (2011-04-10 17:48:18)

Re: Lepší viditelnost pracovní vrstvy

Tak jsem si to zkusil, predpokladam, ze nove je jen prepinani pouze mezi viditelnymi vrstvami. Nevidim tam nic vadneho a libi se mi to.

K pracnosti osetrit opetovne zhasnuti vrstvy - predpokladam, ze je tam nejaky veliky hak, takze by neslo pouzit nasledujici:

- podivam se do spec.promenne (viz radek nize) a pokud tam je 1, tak stavajici defaultni vrstvu zneviditelnim (nam muze vlastne byt jedno, jestli uzivatel mezitim vrstvu schoval, ci znovu zobrazil)
- pokud ma vrstva, na niz se chci prepnout, viditelnost 0, nastavim si spec.promennou na 1
- zviditelnim vrstvu
- prepnu se na tuto vrstvu

Po tomto zapise vidim, ze hacek je asi v tom, ze byste (stejne jako ja) mel rad osetreno i to, ze uzivatel po automatickem zobrazeni vrstvy sam hybal s viditelnosti teto vrstvy, a tudiz by nemusel mit zajem o to, aby se mu vrstva opet schovala....nebo tam je neco, co mi nedochazi?

9

Re: Lepší viditelnost pracovní vrstvy

Tomáš Och napsal:

K pracnosti osetrit opetovne zhasnuti vrstvy (...)

Prakticky jde spíše o to, jak je v Layoutu vše provázané dohromady:  Například viditelnost vrstvy může být svázána i s tím, co je detekováno pod ukazatelem, a existence takového prvku zas může ovlivňovat polohu ukazatele (který přiskočí k jeho středu).  Kdybych řekl, že vždy budou zobrazovány všechny explicitně zapnuté vrstvy plus (dočasně) vrstva ukazatele, musel bych projít všechna místa v programu, kde se tato vrstva může změnit, a znovu ověřit jejich logiku.  Protože jsem s takovouhle dynamickou vazbou původně nepočítal, musel bych to ověřovat a ošetřovat jednotlivě -- vedle změn vrstvy ukazatele "uvnitř" editace jde třeba o její změny přečtením .pcb souboru, jakož i o další situace, které bych musel teprve hledat.  Jinými slovy, k dočasnému zapnutí té vrstvy by sice docházelo na jediném místě v programu, ale k jejímu vypnutí na mnoha.  Jistě se to všechno ošetřit dá, ale jednak s tím je práce (a riziko chyb), jednak vznikají vazby, které mohou být na překážku při nějaké budoucí úpravě.  Odtud vyplynula otázka, zda by úprava uživatelům za to vše stála.

10

Re: Lepší viditelnost pracovní vrstvy

Za mne - me by se takova funkce libila. Pomerne dost se mi stava, ze mam nejakou vrstvu vypnutou, aby nerusila, a jen na chvili do ni potrebuju mrknout. Takto by to bylo rychlejsi. Jeden cas jsem to mel vyresene tim prepinanim preddefinovanych grafickych pohledu a bylo to super..

11 Naposledy upravil: stefan.dubecky (2011-04-15 07:34:17)

Re: Lepší viditelnost pracovní vrstvy

Vyřazení neviditelných vrstev z Ctrl+/- funguje v pohodě a bude to asi krok správným směrem. Díky.

12

Re: Lepší viditelnost pracovní vrstvy

Nejnovější verze s upraveným Ctrl+/- má tuto vlastnost : pokud generuji pomocí Files|Artwork| více než 2 soubory a tyto soubory již existují, je tedy potřeba je přepsat, nedává program jako dříve možnost přepsat všechny, ale nabízí pro každý ze souborů pouze možnost OK.

13

Re: Lepší viditelnost pracovní vrstvy

Aha, to asi bude tím, že jde jen o pokusnou verzi, která má původní dialogy zkusmo nahrazeny windowsovským oknem.  (Velká část tohoto vlákna by totiž patřila do http://www.formica.cz/forum/viewforum.php?id=5 .)  V nějaké další pokusné verzi to buď opravím, nebo se vrátím k těm starým dialogům.