kolin napsal:1) Jaky ma vyznam, ze mohu menit vlastnosti car a padu komponent, aniz bych se prepnul do editace komponenty...
Je tomu tak proto, aby bylo možné globálně (zpravidla množinovými operacemi) měnit celou desku, např. zaměnit jeden typ pájecího bodu za jiný, všechna označení součástek přenést do vrstvy vnitřních obrysů, nastavit velikost znaků a typ čáry pro jména součástek, apod. Takové chování asi nejlépe odpovídá celkové koncepci systému. Naopak kdybych editace tohoto druhu zakázal, vnášel bych tím nekonsistenci -- do součástek by totiž i přesto bylo možno fyzicky zasáhnout skrz změny hodnot v tabulce rozměrů.
kolin napsal:... a to dokonce i v pripade ze mam komponentu uzamcenou (chapu ze zamek se tyka pozice, ale proc ne i jakekoliv zmeny komponenty)?
Vlajka Fixed skutečně fixuje jen polohu součástky. V systému je již po několik verzí připravena i vlajka Locked, která by vyloučila také ostatní editační zásahy, ale z různých důvodů (včetně výše zmíněné nekonsistence) jsem ji nikdy nepoužil.
kolin napsal:2) Pokud mam komponentu prilis u kraje desky a zacnu ji editovat tak, ze po prikazu Replace se jeji pozice LEFT nebo TOP dostane na minusove hodnoty, tak se proces stornuje a muzu editovat znovu.
Proc neni napriklad nejake upozorneni ze objekt zasahuje mimo pole editoru a proto bude napriklad odsazen o x,y milimetru?
Když jsem program psal, zdál se mi již případ, že se součástka editací výrazněji zvětší, dost netypický. Tím spíše pak případ, kdy přírůstek rozměrů součástky překročí šířku okraje desky. Zároveň jsem si říkal, že v editaci součástky nemůže být tolik neuložené práce jako v editaci desky. Proto jsem situaci, kdy součástku nelze umístit zpět, ošetřil v zásadě jako fatální chybu.
Mohu se podívat, co by se s tím dalo dělat, ale asi až v nějaké příští verzi.
kolin napsal:3) S tim souvisi i vec, ze kazda komponenta ma udaj o pozici vztazen k jednomu jejimu elementu (tzv.klicovemu). Pokud tento element odstranim a komponentu ulozim ("Replace This"), souradnice zustavaji, ovsem jiz plati pro jiny element, ktery ale v ramci komponenty lezi jinde. Komponenta jiz tedy neni po provedeni "Replace This" na svem miste.
Reseni: pokud se odstrani klicovy element, staci ke stavajicim souradnicim polohy cele komponenty pripocitat rozdil relativnich vzdalenosti mezi starym a novym klicovym elementem. Pak se po navratu z editace soucastky tato soucastka na desce nehne.
Má-li součástka nějaké vývody, je tím "klíčovým" prvkem vývod nejnižšího čísla. Pokud jste v rámci veškerých editací součástky tento vývod odstranil, užije se opět aktuální vývod nejnižšího čísla. Jenomže se součástkou se mohly stát i daleko složitější změny, a program nemůže uhodnout, co vlastně uživatel považuje za vztažný bod. Vývod (typicky) číslo 1 jsem užil, jelikož mi jeho odstranění připadá jako málo častý editační zásah. (Běžnější situace asi bude, že jej člověk posune, čímž se mu -- proti jeho přání -- na desce změní poloha středu součástky.)
Než zavádět jinou logiku, která by přinesla potíže zase v jiné situaci, by bylo lepší zavést explicitní vztažný bod součástky (např. v počátku relativních souřadnic editoru součástky). Do některé příští verze s tím již dlouho počítám.