Jak umieścić jeden obiekt jednocześnie z przodu i z tyłu innego obiektu?


37

Próbowałem (jako test) zrobić okrąg z przechodzącym przez niego paskiem. Pasek powinien przechodzić pod jedną stroną koła i nad drugą.

Zrobiłem to, dzieląc okrąg na dwa obiekty, jednak widoczne są szwy, w których dokonano podziału, mimo że ścieżki dokładnie do siebie pasują.

wprowadź opis zdjęcia tutaj

Ponadto cień pod lewą częścią koła nie wchodzi na pasek tak, jak powinien, i nie mogę wymyślić żadnego sposobu, aby to naprawić bez podziału obiektu cienia.

Czy jest na to lepszy sposób?


W razie potrzeby mogę również przesłać plik svg .


2
Czy próbowałeś podzielić poprzeczkę? Upewnij się również, że nie jesteś w powiększeniu ułamkowym, ponieważ czasami wpływają one na renderowanie linii i połączeń linii.
Johnny Kutnowski

Z jakiego oprogramowania korzystasz? Ilustrator?
Henrik Ekblom

1
Mieszane nakładanie obiektu nie jest dozwolone w Inkscape, ale można postępować na kilka sposobów. Najszybciej prawdopodobnie wycina się koło, w którym znajduje się pasek (cięcie jest proste). Alternatywnie możesz dokładniej przesuwać punkty połączenia (szwy nie powinny być widoczne: prawdopodobnie problem polegał na sposobie przecięcia koła).
Paolo Gibellini

2
PS Wyrównanie krawędzi wydaje się być problemem Inkscape (patrz tutaj , tutaj i tutaj ). Zobacz także FAQ Inkscape na temat antyaliasingu : Zrób swoje poziome / pionowe krawędzie na siatce pikseli i użyj pociągnięć o szerokości całej liczby pikseli. Eksportuj mapę bitową w rozdzielczości 90 dpi, aby jednostka 1 px odpowiadała 1 pikselowi mapy bitowej
Paolo Gibellini

@JohnnyKutnowski Zmienia się wraz z powiększeniem, czasem podział prawie znika. Jest to jednak bardzo widoczne przy powiększeniu 1: 1.
gandalf3

Odpowiedzi:


42

Luka, którą widzisz, wynika z niedoskonałego renderowania przez Inkscape i niekoniecznie stanowi problem w zależności od tego, w jaki sposób eksportujesz lub używasz SVG (o ile precyzyjnie tniesz). Jednak cienie najprawdopodobniej będą powodować problemy, gdy zostaną pocięte (to jedyny sposób, w jaki mogę je naprawić).

Oto moje rozwiązanie tego problemu. Jako przykład wyciąłem prosty pasek, ponieważ jest to łatwiejsze. Ale przecięcie kół zewnętrznych ma pewną zaletę, o której wspomnę później. Najpierw obraz:

Niektóre techniki nakładania

Po lewej stronie do demonstracji wykorzystuje się przezroczyste obiekty (jeden niebieski, jeden czerwony), po prawej pokazuje wynik.

  • Na górze odtworzyłem to, co zrobiłeś i po prostu przeciąłem pasek. Prowadzi to do wyżej wspomnianej luki w niektórych poziomach powiększenia lub eksportu pikseli (może się to zdarzyć również w niektórych programach do renderowania plików PDF lub podobnych).
  • Na środku pozwalam, aby dwie połówki pręta zachodziły na siebie, co pozwala uniknąć odstępu, ale pozwala, aby pasek wydawał się nieco grubszy wokół cięcia (może być konieczne powiększenie, aby to zobaczyć).
  • Na dole użyłem tego, co zalecam¹. Największe zachodzenie na siebie to połowa szerokości paska. Nie mogłem znaleźć żadnego poziomu powiększenia ani eksportu, dla którego spowodowałoby to niepożądany efekt aliasingu (tj. Przerwa lub pogrubiony pasek).

Spójrzmy teraz na cienie:

wprowadź opis zdjęcia tutaj

Kolejność jest taka sama jak powyżej. Po prawej stronie mamy same cienie dla lepszej ilustracji.

  • Cień dla prostego cięcia wygląda dobrze, ale widzimy, że jest nieco słabszy w pozycji cięcia. Staje się to większym problemem dla cieni bardziej zaciekłych.
  • W środku mamy poważny problem.
  • Na dole możemy rozpoznać pozycję cięcia, ale cień nie jest ani słabszy, ani silniejszy, a jedynie inaczej rozłożony. W szczególności nie pogorszy się, jeśli cień stanie się bardziej niewyraźny. Cięcie jest jeszcze mniej widoczne, jeśli nie dzieje się to na prostym odcinku, dlatego może być lepiej wyciąć koła zamiast środkowego paska.

¹ Możesz to zrobić w następujący sposób:

  1. Wykonaj cięcie jak zwykle.
  2. Dodaj węzeł na środku każdej przyciętej krawędzi.
  3. Przesuń każdy węzeł na zewnątrz o jedną czwartą szerokości² wszystkiego, co wycinasz.

² Dla tej wartości empirycznie stwierdziłem, że zniekształcenie cienia jest najniższe.


Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.