Article View: pl.comp.grafika
Article #223582Re: Photoshop - działania na wektorach
From: Marek
Date: Wed, 05 Feb 2014 21:45
Date: Wed, 05 Feb 2014 21:45
100 lines
4884 bytes
4884 bytes
W dniu 2014-02-05 19:00, GAD Zombie pisze:
> W dniu 2014-01-27 16:04, Marek pisze:
>> macierz i móc jakoś wykorzystać koordynaty węzłów potem. Ten program
>> nawet koło składa z krzywych chociaż w SVG zawiera od wielu lat taga
>
> Chyba muszę stanąć w obronie Inkscape. Sprawdziłem, jak zapisywana jest
> elipsa i wygląda tak:
> <g
> inkscape:label="Layer 1"
> inkscape:groupmode="layer"
> id="layer1">
> <path
> sodipodi:type="arc"
>
> style="opacity:0.56840001;fill:none;stroke:#000000;stroke-width:4.63800001;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
>
> id="path3942"
> sodipodi:cx="302.85715"
> sodipodi:cy="509.50504"
> sodipodi:rx="240"
> sodipodi:ry="254.28572"
> d="m 542.85715,509.50504 a 240,254.28572 0 1 1 -480.000003,0
> 240,254.28572 0 1 1 480.000003,0 z" />
> </g>
>
> Czyli poza stylami, to masz typ "arc" czyli łuk i jego wymiary. Nie ma
> tu osobnych krzywych.
>
> Inna sprawa, że sprawdziłem też i w Inkscape to, o co pytałeś (łączenie
> krzywych w jeden kształt) zrobione jest elegancko i składa jak należy
> (przynajmniej tyle, ile wypróbowałem). Czyli więcej niż PS.
>
> Dla mnie to całkiem dobrze wygląda.
>
>
:-D
No to muszę Cię zmartwić. Dobrze narysowana elipsa wygląda np. tak:
<ellipse rx="250" ry="100" fill="red" />
Jedna linia kodu. Krócej i bardziej przejrzyście? :-D Tu masz dokumentację.
http://www.w3.org/TR/SVG/shapes.html#EllipseElement
Po drugie: nie ma typu "łuk". Zapewne masz na myśli zapis
sodipodi:type="arc". To oznacza, że w przestrzeni nazw sodipodi
zdefiniowano atrybut "type" i nadano mu wartość "arc". Mówiąc po polsku,
autor aplikacji Inkscape potrzebował kilku niestandardowych parametrów,
niezdefiniowanych w SVG po to aby jego program mógł tam przechowywać
swoje prywatne parametry.
Po trzecie, elipsę rysuje nie kod:
sodipodi:cx="302.85715"
sodipodi:cy="509.50504"
sodipodi:rx="240"
sodipodi:ry="254.28572"
lecz kod:
d="m 542.85715,509.50504 a 240,254.28572 0 1 1 -480.000003,0
240,254.28572 0 1 1 480.000003,0 z"
To są te "osobne krzywe", których nie dostrzegłeś. Możesz wykasować ten
pierwszy i zobaczysz, że elipsa się nadal narysuje. A co oznacza ten
kod? A mianowicie:
1. Ustaw początek w punkcie 542.85715,509.50504
2. Narysuj łuk
3. Potem kolejny w innych koordynatach i wymairach
....
N. zamknij krzywą.
Owszem - powstanie elipsa z tego jednakże od dupy strony podejście.
Spróbuj teraz przesunąć tą elipsę. Wszystko w atrybucie "d" się zmieni
albo zostanie dopisana macierz transformacji (już nie pamiętam w jaki
sposób Inkscape to spieprzy). Tymczasem przesunięcie elipsy w SVG
powinno wyglądać tak:
<ellipse rx="250" ry="100" fill="red" transform="translete(100,200)" />
Doszedł tylko jeden atrybut. Prościej?
Zgodzę się, że kształtowanie działa w Inkscape tak samo naturalnie jak w
wielu programach. Wektory w PS pod tym względem to jakaś patologia.
Kolejny chory patent na UI wymyślony w Adobe. No ale nie w tym rzecz.
Inkscape tworzy większość elementów "gdzieś w przestrzeni" zamiast w
punkcie (0,0) + transformacja. Jedynym podstawowym kształtem jaki
Inkscape zna jest prostokąt a resztę wali na ścieżkach. Tak jakby autor
Inkscape nie czytał dokumentacji SVG nigdy. Co gorsze: gdy przesuwamy
element, to robi z prostego procesu zaawansowane przekształcenia w
przestrzeni godne Einsteina. Są to przekształcenia macierzowe albo
rysowanie ścieżki od nowa ale w innych koordynatach. Patrząc na kod w
życiu nie zgadniesz co to za kształt i gdzie on jest.
--
Pozdrawiam
Marek
Technical Details
Message-ID:
<lcubda$v11$1@node2.news.atman.pl>Path:
mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!agh.edu.pl!news.agh.edu.pl!newsfeed2.atman.pl!newsfeed.atman.pl!.POSTED!not-for-mailReferences:
<lc2n8m$1i9$1@node1.news.atman.pl> <lc5o69$e3g$2@opal.futuro.pl> <lc5sih$an0$1@node1.news.atman.pl> <lctu7b$tlp$1@srv13.cyf-kr.edu.pl>Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!agh.edu.pl!news.agh.edu.pl!newsfeed2.atman.pl!newsfeed.atman.pl!.POSTED!not-for-mail From: Marek <precz@spamowi.com> Newsgroups: pl.comp.grafika Subject: Re: Photoshop - działania na wektorach Date: Wed, 05 Feb 2014 22:45:12 +0100 Organization: ATMAN - ATM S.A. Lines: 100 Message-ID: <lcubda$v11$1@node2.news.atman.pl> References: <lc2n8m$1i9$1@node1.news.atman.pl> <lc5o69$e3g$2@opal.futuro.pl> <lc5sih$an0$1@node1.news.atman.pl> <lctu7b$tlp$1@srv13.cyf-kr.edu.pl> NNTP-Posting-Host: 89-69-209-185.dynamic.chello.pl Mime-Version: 1.0 X-Trace: node2.news.atman.pl 1391636714 31777 89.69.209.185 (5 Feb 2014 21:45:14 GMT) X-Complaints-To: usenet@atman.pl NNTP-Posting-Date: Wed, 5 Feb 2014 21:45:14 +0000 (UTC) User-Agent: Mozilla/5.0 (Windows NT 6.3; WOW64; rv:24.0) Gecko/20100101 Thunderbird/24.3.0 In-Reply-To: <lctu7b$tlp$1@srv13.cyf-kr.edu.pl> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit