技術的な問題ではない感じで恐縮ですが……
質問内容
Win32コンソールアプリケーションで printf
で表示を行っているのですが,どうにかして明るさの諧調を表現したいです.
例えば,黒字に白で文字が表示される場合,+
よりも #
のほうがより白が多いために明るく見えると思うので,これを利用すれば明暗2諧調を表現できます.
そういった感じで,いくつかの種類の文字を用いることによって数段階の諧調を表現したいです.
このことに適した文字のセットとして何か良いものが無いでしょうか?
- 半角の方がうれしいですが,そうでなくとも構いません.
- 諧調数は最低でも5段階くらいは欲しいです.
3段階とかであれば,.oO
とかで行けるかな?と思うのですが…
背景事情
文字でピラミッドを表示するプログラムを作っています.
以下のような表示を行うものです.これは3段のピラミッドです.
| | | | | #### | | #### | | ######## | | ######## | | ############ | | ############ | | | | |
解像度と見る角度を変えると,以下のようになります.
全てを #
で描画すると何が何だかわからなくなってしまうので,この例では,各面をそれぞれ固定の文字で表示しています.
| | | | | ^^^^^^^^^^^^^ | | +^^^^^^^^^^^^### | | +++++++++++##### | | +++++++++++##### | | +++++++++++##### | | ^^^+++++++++++#####^^^^^^^# | | ^^^^^^+++++++++++###^^^^^^^### | | ++^^^^^^^^^^^^^^+++^^^^^^^###### | | ++++++++++++++^^^^^^^^^######### | | ++++++++++++++++++++++########## | | ++++++++++++++++++++++##########^^^^^^^# | | ^^^++++++++++++++++++++++########^^^^^^#### | | ^^^^^^++++++++++++++++++++++#####^^^^^^####### | | +++^^^^^^^^^^^^^^+++++++++++++##^^^^^^^######### | | +++++++++++++++^^^^^^^^^^^^^^+^^^^^^############ | | +++++++++++++++++++++++++++^^^^^^^############## | | +++++++++++++++++++++++++++++++++############ | | +++++++++++++++++++++++++++++++++######### | | +++++++++++++++++++++++++++++++++####### | | ++++++++++++++++++++++#### | | +++++++++++## | | | | |
今やりたいことは,シェーディング計算の結果を表示に反映させることです.
シェーディング計算の処理と,表示すべき明るさを数段階に離散化した結果を得るところまではできています.
↓はその結果を数字で表示している(数値が大きいほど明るい)例ですが,これでは見た目として意味がわかりません.
コンソールアプリにおいて明るさを適切に表示する方法について,前述のように困っている状況です.
| | | | | 1222222222222 | | 11222222222222 | | 11777777777777 | | 11777777777777 | | 2222211777777777777222 | | 1222222117777777777772222 | | 11222222177777777777722222 | | 111222222772222222222222222 | | 11112222222222777777777777772 | | 1222222111177777777777777777777777722 | | 11222222111777777777777777777777777222 | | 111222222117777777777777777777777772222 | | 1111222222177777777777777777777777722222 | | 11111222222777777777777777777777722222222 | | 11111222222222222222222222222222222777777 | | 1111177777777777777777777777777777777777 | | 1111177777777777777777777777777777777777 | | 111177777777777777777777777777777777777 | | 11177777777777777777777777777777777777 | | 1177777777777777777777777777777777777 | | 17777777777 | | | | |
回答1件
あなたの回答
tips
プレビュー