MQL로 작성된 UI 갤러리 - 페이지 48

 
Реter Konow #:

그러나 픽셀의 색상이 -1이 아닌 다른 색상인 경우 나머지 픽셀과 구분하는 것은 비현실적이며 투명도 함수는 도움이 되지 않습니다. 여기에 문제가 있습니다.

저는 투명한 배경 (알파 채널 포함)의 PNG 아이콘에 대해 이야기하고 있습니다.

 
Nikolai Semko #:
...

저도 그림자를 사용하곤 했어요. 더 이상 그렇게하지 않습니다.
그림자, 그라데이션 및 컬이없는 현대적인 패션.
한마디로 미니멀리즘은 렌더링 성능에 유리합니다.


물론 패션은 다르지만 렌더링에 대해 엄격하게 이야기하면 작은 아이콘의 그림자를 추가로 처리하는 것은 하위 수식으로 계산 된 값으로 16 * 16 배열 셀을 초기화하는 것뿐입니다. 따라서 창에 있는 각 아이콘에 대해 손가락으로 셀 수 있습니다. 렌더링에 밀리초의 지연이 거의 없습니다. 또 다른 한 가지는 많은 요소가있는 큰 캔버스의 표면을 다시 그리는 이벤트입니다. 그러면 의심 할 여지없이 그래픽 가젯이 느려집니다. 그러나 첫 번째 그림이나 전체 캔버스를 변경할 때만 가능합니다. 항상 그런 것은 아니지만 특정 이벤트에서만 그렇습니다. 다른 경우에는 메모리에서 저장된 리소스를 제거하고 아무것도 그리지 않습니다.

그게 바로 그런 방식입니다...
 
Nikolai Semko #:

배경이 투명한 (알파 채널 포함) PNG 아이콘에 대해 이야기하고 있습니다.

따라서 투명도가 없습니다. 배경은 -1로 표시되어 있습니다. 알고리즘은 이 값을 렌더링 캔버스의 기본 픽셀 색상으로 변경하기만 하면 됩니다. 즉, 이 경우 색상을 혼합할 필요가 없습니다. 그러나 다른 용도로는 투명도 기능이 매우 유용합니다. 그건 그렇고, 나는 오래된 기사에서 당신의 조언에 따라 그것을 빌 렸습니다. 그러나 아직 사용하지 않았습니다. 유용하게 쓰일 수 있을 것 같습니다...
 
Nikolai Semko #:

...

그건 그렇고, 내가 처리 할 수없는 그래픽 문제가 있습니다. 정말 어렵습니다. 그것을 해결하려고 시도하고 포기했습니다. 할 수 없어서가 아니라 시간이 너무 많이 걸렸습니다. 장단점을 따져보고 시도를 포기했습니다.

캔버스 색채 작업의 대가로 알고 있습니다. 물어볼 수밖에 없네요.

그래서 여기 문제가 있습니다:

버튼 표면의 색상과 조화를 이루고 부드럽게 지나가면서 곡선을 변경하지 않고 강조하는 방식으로 간단한 버튼 프레임의 색상 그라데이션을 계산하는 방법입니다. 예를 들어 밝은 노란색 버튼이 있습니다. 4~5픽셀 두께의 프레임을 올바르게 색칠하는 방법은 무엇일까요? 프레임은 측면에 따라 조명이 다르다는 점을 명심해야 합니다. 앞쪽과 왼쪽에서는 프레임이 밝고 오른쪽과 아래쪽에서는 프레임이 어둡습니다. 또한 베이스에 가까울수록 프레임이 더 어두워집니다. 또한 눈부심도 있습니다.

버튼의 원래 색상이 주어졌을 때 프레임의 색상을 어떻게 계산하나요?


바로 그 질문입니다. :)
 

명확한 예입니다:


버튼의 가장자리에 색상이 지정되지 않았습니다. 그 이유는 필요한 색상을 계산하지 못했기 때문입니다. 일반적인 그라데이션은 적합하지 않습니다. 여기에는 빛, 그림자, 각도 및 색조를 계산하는 공식이 필요합니다. 저는 이 분야에 대한 역량이 부족합니다.

 
Реter Konow #:
그런데 제가 해결할 수 없는 그래픽 문제가 하나 있습니다. 정말 어려운 문제입니다. 해결하려고 하다가 포기했습니다. 못해서가 아니라 시간이 너무 많이 걸렸어요. 장단점을 따져보고 더 이상의 시도를 포기했습니다.

캔버스 색채 작업에 관해서는 전문가라고 알고 있습니다. 물어볼 수밖에 없네요.

그래서 여기 도전 과제가 있습니다:

버튼 표면의 색상과 조화를 이루고 부드럽게 전환하여 곡선을 변경하지 않고 강조하는 방식으로 간단한 버튼 프레임의 색상 그라디언트를 계산하는 방법입니다. 예를 들어 밝은 노란색 버튼이 있습니다. 4~5픽셀 두께의 프레임을 올바르게 색칠하는 방법은 무엇일까요? 프레임은 측면에 따라 조명이 다르다는 점을 염두에 두어야 합니다. 앞쪽과 왼쪽에서는 프레임이 밝고 오른쪽과 아래쪽에서는 프레임이 어둡습니다. 또한 베이스에 가까울수록 프레임이 더 어두워집니다. 게다가 눈부심도 있습니다.

원래 버튼 색상을 기준으로 프레임의 색상을 어떻게 계산할 수 있나요?


질문이 있습니다. :)

1. 색상-대조되는 색상에는 표가 있습니다 (이 경우 진한 파란색 음영을 가져와야 함).

2. 그림자 : 전구 (XYZ 공간의 점, 숫자 좌표, 축을 만들 필요 없음)를 시뮬레이션하고 그림자의 경계를 표시하는 직선의 가장자리까지 시뮬레이션합니다. 이 경우 그라디언트는 버튼의 높이와 지오메트리에 따라 첫 번째 경계에서 두 번째 경계로 확장됩니다.

 
Renat Akhtyamov #:

1. 색상별로-대조되는 색상에는 표가 있습니다 (이 경우 진한 파란색 음영이 나타나야 함).

2. 그림자 : 전구 (점)를 모방하고 그림자의 경계를 표시하는 직선의 가장자리까지 모방합니다. 이 경우 그라디언트는 버튼의 높이와 지오메트리에 따라 첫 번째 경계에서 두 번째 경계로 확장됩니다.

함수, 공식 또는 문서에 대한 링크를 제공해 주실 수 있나요? 도움이 될 것입니다.
 
Реter Konow #:
함수, 공식 또는 문서에 대한 링크를 제공해 주실 수 있나요? 도움이 될 것입니다.

수백만 개의 답변이 있는 Google의 모든 것

https://www.geeksforgeeks.org/how-to-determine-the-length-of-a-shadow/

https://www.sravni.ru/kursy/info/cvetovoj-krug-ittena/

How to determine the length of a Shadow? - GeeksforGeeks
How to determine the length of a Shadow? - GeeksforGeeks
  • www.geeksforgeeks.org
A Computer Science portal for geeks. It contains well written, well thought and well explained computer science and programming articles, quizzes and practice/competitive programming/company interview Questions.
 

수백만 개의 답변은 필요 없습니다. 올바른 답변 하나만 있으면 됩니다(가급적이면 즉시).

그렇지 않으면 이 일을 할 의미가 별로 없습니다. 수익성이 없으니까요.


그리고 문제는 그림자의 길이가 아니라버튼 프레임의색상을 버튼 자체의 색상정확히 맞추는 것이었습니다.

 
Реter Konow #:

수백만 개의 답변은 필요 없습니다. 올바른 답변 하나만 있으면 됩니다(가급적이면 즉시).

그렇지 않으면 굳이 할 필요가 없습니다. 수익성이 없으니까요.


그리고 문제는 그림자의 길이가 아니라버튼 프레임의색상을 버튼 자체의 색상정확히 맞추는 것이었습니다.

이것이 바로 그림자입니다.

색상이 대비되면 아티스트가 지루해지기 때문에 사용자에게만 아름답게 보일 것입니다.