
이 이미지처럼 수채화처럼 보이는 색상으로 도형을 채울 수 있나요?
tikz나 pgfplots를 사용하시나요?
소스:http://bartoszmilewski.com/2015/07/29/representable-functors/
답변1
복잡한 그림을 생성하는 "저렴한" 방법이 있습니다. 하지만 티처럼케이Z 매뉴얼에 따르면,
이것들은 무엇보다도 휴대성이 가장 낮으며 렌더러에게 가장 무거운 부담을 줍니다. 속도가 느리고 올바르게 인쇄되지 않을 수도 있습니다!
\documentclass[tikz,border=9]{standalone}
\begin{document}
\pgfdeclarefunctionalshading{watercolor}{\pgfpoint{-25bp}{-25bp}}{\pgfpoint{25bp}{25bp}}{}{
-0.1 0.651
exch 4 2 roll
12.5 div exch 12.5 div 1 index dup mul add
true
{dup dup mul 2 index dup mul sub 3 index add 3 1 roll 2 mul mul 3 index add exch 2 copy dup mul exch dup mul add 4 le}{false}ifelse
{dup dup mul 2 index dup mul sub 3 index add 3 1 roll 2 mul mul 3 index add exch 2 copy dup mul exch dup mul add 4 le}{false}ifelse
{dup dup mul 2 index dup mul sub 3 index add 3 1 roll 2 mul mul 3 index add exch 2 copy dup mul exch dup mul add 4 le}{false}ifelse
{dup dup mul 2 index dup mul sub 3 index add 3 1 roll 2 mul mul 3 index add exch 2 copy dup mul exch dup mul add 4 le}{false}ifelse
{dup dup mul 2 index dup mul sub 3 index add 3 1 roll 2 mul mul 3 index add exch 2 copy dup mul exch dup mul add 4 le}{false}ifelse
{dup dup mul 2 index dup mul sub 3 index add 3 1 roll 2 mul mul 3 index add exch 2 copy dup mul exch dup mul add 4 le}{false}ifelse
{dup dup mul 2 index dup mul sub 3 index add 3 1 roll 2 mul mul 3 index add exch 2 copy dup mul exch dup mul add 4 le}{false}ifelse
{dup dup mul 2 index dup mul sub 3 index add 3 1 roll 2 mul mul 3 index add exch 2 copy dup mul exch dup mul add 4 le}{false}ifelse
{0 0 0}{1 1 1}ifelse
}
\tikz{\shade[shading=watercolor](-10,-10)rectangle(10,10);}
\end{document}
메모
나는 이것이 수채화처럼 보인다고 주장하는 것이 아닙니다. 나는 그것을 달성하려고 노력하지도 않았습니다. 나는 예술에 멍청하다. 나머지는 당신의 일입니다.
노트 2
수채화의 원리는 물감 분자가 캔버스 위를 달리다가 시간이 지날수록 속도가 느려지는 것입니다. 따라서 수채화를 시뮬레이션하는 가장 좋은 방법은 아마도 PDE를 수치적으로 해결하는 것입니다. 에서는 이는 허용되지 않습니다 \pgfdeclarefunctionalshading
. 하지만 2D 배열이 있으면 시도해 볼 가치가 있습니다.