์˜์–ดํ”„๋ž‘์Šค์–ด์ŠคํŽ˜์ธ์–ด

Ad


์˜จ์›์Šค ํŒŒ๋น„์ฝ˜

geomviewgv - ํด๋ผ์šฐ๋“œ์—์„œ์˜ ์˜จ๋ผ์ธ

Ubuntu Online, Fedora Online, Windows ์˜จ๋ผ์ธ ์—๋ฎฌ๋ ˆ์ดํ„ฐ ๋˜๋Š” MAC OS ์˜จ๋ผ์ธ ์—๋ฎฌ๋ ˆ์ดํ„ฐ๋ฅผ ํ†ตํ•ด OnWorks ๋ฌด๋ฃŒ ํ˜ธ์ŠคํŒ… ์ œ๊ณต์—…์ฒด์—์„œ geomviewgv๋ฅผ ์‹คํ–‰ํ•˜์„ธ์š”.

์ด๊ฒƒ์€ Ubuntu Online, Fedora Online, Windows ์˜จ๋ผ์ธ ์—๋ฎฌ๋ ˆ์ดํ„ฐ ๋˜๋Š” MAC OS ์˜จ๋ผ์ธ ์—๋ฎฌ๋ ˆ์ดํ„ฐ์™€ ๊ฐ™์€ ์—ฌ๋Ÿฌ ๋ฌด๋ฃŒ ์˜จ๋ผ์ธ ์›Œํฌ์Šคํ…Œ์ด์…˜ ์ค‘ ํ•˜๋‚˜๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ OnWorks ๋ฌด๋ฃŒ ํ˜ธ์ŠคํŒ… ์ œ๊ณต์—…์ฒด์—์„œ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ๋Š” geomviewgv ๋ช…๋ น์ž…๋‹ˆ๋‹ค.

ํ”„๋กœ๊ทธ๋žจ:

์ด๋ฆ„


Geomview - ๋Œ€ํ™”ํ˜• ๊ธฐํ•˜ํ•™ ๋ทฐ์–ด

๊ฐœ์š”


๊ฒ€๋ทฐ [-b r g b] [-์”จ ๋ช…๋ น ํŒŒ์ผ] [-์Šน๋ฆฌ #์ฐฝ๋ฌธ] [-noinit] [-nopanels] [-noopengl]
[-wpos x๋ถ„ ymin xํฌ๊ธฐ ํฌ๊ธฐ] [-wpos xํฌ๊ธฐ, yํฌ๊ธฐ[@์—‘์Šค๋ฏผ,์ด๋ฏผ]] [-์ „์ž ์™ธ๋ถ€ ๋ชจ๋“ˆ-
name] [-M[cg][sp] ํŒŒ์ดํ”„ ์ด๋ฆ„] [-์‹œ์ž‘ ์™ธ๋ถ€ ๋ชจ๋“ˆ ์ด๋ฆ„ [์•„๋ฅดํ—จํ‹ฐ๋‚˜ ...] --]
[-๋‹ฌ๋ฆฌ๋‹ค ์™ธ๋ถ€ ๋ชจ๋“ˆ ๊ฒฝ๋กœ [์•„๋ฅดํ—จํ‹ฐ๋‚˜ ...] --] [ํŒŒ์ผ ...]

๊ธฐ์ˆ 


Geomview๋Š” Geometry Center์—์„œ ์ž‘์„ฑ๋œ ๋Œ€ํ™”ํ˜• ๊ธฐํ•˜ํ•™ ๋ทฐ์–ด์ž…๋‹ˆ๋‹ค. ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค
๋ช…๋ น์ค„์— ์ œ๊ณต๋œ ํŒŒ์ผ์˜ ๊ฐœ์ฒด๋ฅผ ์‚ฌ์šฉ์ž๊ฐ€ ๋ณด๊ณ  ๋ณผ ์ˆ˜ ์žˆ๋„๋ก ํ—ˆ์šฉํ•ฉ๋‹ˆ๋‹ค.
๋Œ€ํ™”์‹์œผ๋กœ ์กฐ์ž‘ํ•˜์‹ญ์‹œ์˜ค.

geomview์˜ ํ˜„์žฌ ๋ฒ„์ „(1.7)์€ Silicon Graphics Irises ๋ฐ X Window System์—์„œ ์‹คํ–‰๋ฉ๋‹ˆ๋‹ค.
์›Œํฌ์Šคํ…Œ์ด์…˜. ์šฐ๋ฆฌ๋Š” ๊ท€ํ•˜๊ฐ€ ์ด ์ œํ’ˆ์„ ์‚ฌ์šฉํ•˜๋ฉด์„œ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ๋Š” ๋ฌธ์ œ์— ๋Œ€ํ•ด ๋“ฃ๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค.
๋‹น์‚ฌ์— ์—ฐ๋ฝํ•˜๋Š” ๋ฐฉ๋ฒ•์— ๋Œ€ํ•œ ์ •๋ณด๋Š” ์•„๋ž˜๋ฅผ ์ฐธ์กฐํ•˜์„ธ์š”.

๋งˆ์šฐ์Šค๋ฅผ ํ†ตํ•ด ๊ฐ์ฒด ์„ธ๊ณ„์— ๋Œ€ํ•œ ๋Œ€ํ™”ํ˜• ์ œ์–ด๋ฅผ ์ œ๊ณตํ•˜๋Š” ๊ฒƒ ์™ธ์—๋„
ํ‚ค๋ณด๋“œ, geomview์—๋Š” ๊ฑฐ์˜ ๋ชจ๋“  ์ œ์–ด๋ฅผ ์œ„ํ•œ ํ•ด์„๋œ ๋ช…๋ น ์–ธ์–ด๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.
๋””์Šคํ”Œ๋ ˆ์ด์˜ ์ธก๋ฉด. ์ด ์–ธ์–ด๋กœ ๋œ ๋ช…๋ น๋ฌธ์ด ํฌํ•จ๋œ ํŒŒ์ผ์„ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
ํ•ด๋‹น ์–ธ์–ด๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋‹ค๋ฅธ ํ”„๋กœ๊ทธ๋žจ๊ณผ ํ†ต์‹ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋ณด๋‹ค ๊ธฐํ•˜ํ•™(5), ์˜ˆ๋ฅผ ๋“ค์–ด ํŒŒ์ผ
์–ธ์–ด์— ๋Œ€ํ•œ ์ž์„ธํ•œ ๋‚ด์šฉ์€ geomview ๋ฐฐํฌํŒ์˜ man/cat5/geomview.5๋ฅผ ์ฐธ์กฐํ•˜์„ธ์š”.

์ด์šฉ ๊ฐ€์ด๋“œ


์ด ๋งค๋‰ด์–ผ ํŽ˜์ด์ง€๋Š” geomview์— ๋Œ€ํ•œ (๋งค์šฐ) ๊ฐ„๊ฒฐํ•œ ์ฐธ์กฐ ๋งค๋‰ด์–ผ๋กœ๋งŒ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค. ์— ๋Œ€ํ•œ
ํ”„๋กœ๊ทธ๋žจ๊ณผ ์ฝ์„ ์ˆ˜ ์žˆ๋Š” ๋ฐ์ดํ„ฐ ํŒŒ์ผ์˜ ํ˜•์‹์— ๋Œ€ํ•œ ๋ณด๋‹ค ์ž์„ธํ•œ ์†Œ๊ฐœ๋Š” ๋‹ค์Œ์„ ์ฐธ์กฐํ•˜์„ธ์š”.
geomview ๋ฐฐํฌํŒ์˜ "doc" ๋””๋ ‰ํ„ฐ๋ฆฌ์— ์žˆ๋Š” "overview" ๋ฐ "oogltour" ๋˜๋Š” ๋” ๋‚˜์€ ๋ฐฉ๋ฒ•์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.
์ „์ฒด ๋งค๋‰ด์–ผ์„ ์ฐธ์กฐํ•˜์„ธ์š”: "doc" ๋””๋ ‰ํ† ๋ฆฌ์— ์žˆ๋Š” "geomview.tex" ๋˜๋Š” "geomview.ps". ๊ทธ๋งŒํผ
์†Œ์Šค ๋ฐฐํฌํŒ์—๋Š” ์™ธ๋ถ€ ๋ชจ๋“ˆ์„ ์ž‘์„ฑํ•˜๋Š” ๋ฐฉ๋ฒ•์— ๋Œ€ํ•œ ํŠœํ† ๋ฆฌ์–ผ๋„ ํฌํ•จ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.
"src/bin/example" ๋””๋ ‰ํ† ๋ฆฌ.

์˜ต์…˜


-b ์ฐฝ ๋ฐฐ๊ฒฝ์ƒ‰์„ ์ง€์ •๋œ rgb ๊ฐ’์œผ๋กœ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค.

-c ํ‘œ์ค€ ์ž…๋ ฅ์˜ ๊ฒฝ์šฐ ``-''์ผ ์ˆ˜ ์žˆ๋Š” commandfile์˜ ๋ช…๋ น์„ ํ•ด์„ํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋งŒํผ
๋ช…๋ น ์–ธ์–ด๋Š” ๋‹ค์Œ์— ์„ค๋ช…๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ๊ธฐํ•˜ํ•™(5). ๋ช…๋ น์€ ๋ฌธ์ž ๊ทธ๋Œ€๋กœ ์ œ๊ณต๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
``-c "(ui-panel main off)"'' ์™€ ๊ฐ™์ด; ๊ด„ํ˜ธ๊ฐ€ ํฌํ•จ๋˜์–ด ์žˆ์œผ๋ฏ€๋กœ ๋‹ค์Œ๊ณผ ๊ฐ™์•„์•ผ ํ•ฉ๋‹ˆ๋‹ค.
์ธ์šฉ.

-wins geomview๊ฐ€ ์ฒ˜์Œ์— #windows ์นด๋ฉ”๋ผ ์ฐฝ์„ ํ‘œ์‹œํ•˜๋„๋ก ํ•ฉ๋‹ˆ๋‹ค.

-wpos ์ฒซ ๋ฒˆ์งธ ์นด๋ฉ”๋ผ ์ฐฝ์˜ ์ดˆ๊ธฐ ์œ„์น˜์™€ ํฌ๊ธฐ๋ฅผ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค. ``-''๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด,
์ฐฝ ๋ฐฐ์น˜๋ฅผ ๋ฌป๋Š” ๋ฉ”์‹œ์ง€๊ฐ€ ๋‚˜ํƒ€๋‚ฉ๋‹ˆ๋‹ค.

-M ๊ฐ์ฒด ์ด๋ฆ„
๋‹ค์Œ์„ ํ†ตํ•ด ์ „์†ก๋œ ์ง€์˜ค๋ฉ”ํŠธ๋ฆฌ(๋˜๋Š” ๋ช…๋ น) ํ‘œ์‹œ(๋™์ ์œผ๋กœ ๋ณ€๊ฒฝ ๊ฐ€๋Šฅ)
``ํ† ๊ฒ€๋ทฐ -g ๊ฐ์ฒด ์ด๋ฆ„ [geomview-shell-๋ช…๋ น]'' ๋˜๋Š” ``๊ฒ€ ์žฌ๋ฃŒ ๊ฐ์ฒด ์ด๋ฆ„ ํŒŒ์ผ
...''. ๋ฐ์ดํ„ฐ๋Š” ์ด๋ฆ„์ด ์ง€์ •๋œ geomview ๊ฐ์ฒด๋กœ ๋‚˜ํƒ€๋‚ฉ๋‹ˆ๋‹ค. ๊ฐ์ฒด ์ด๋ฆ„.

์‹ค์ œ๋กœ ๋ช…๋ช…๋œ ํŒŒ์ดํ”„ ``/tmp/geomview/๋ฅผ ์ˆ˜์‹ ํ•ฉ๋‹ˆ๋‹ค.๊ฐ์ฒด ์ด๋ฆ„''; ๋‹น์‹ ์€ ๋‹ฌ์„ฑํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค
์‰˜ ๋ช…๋ น๊ณผ ๋™์ผํ•œ ํšจ๊ณผ:
mkdir /tmp/geomview;
mknod /tmp/geomview/๊ฐ์ฒด ์ด๋ฆ„ p
(๋””๋ ‰ํ† ๋ฆฌ์™€ ๋ช…๋ช…๋œ ํŒŒ์ดํ”„๊ฐ€ ์•„์ง ์กด์žฌํ•˜์ง€ ์•Š๋Š”๋‹ค๊ณ  ๊ฐ€์ •), ๋‹ค์Œ์„ ์‹คํ–‰ํ•ฉ๋‹ˆ๋‹ค.
geomview ๋ช…๋ น:
(๊ธฐํ•˜ํ•™ ๊ฐ์ฒด ์ด๋ฆ„ < /tmp/geomview/๊ฐ์ฒด ์ด๋ฆ„)

-M[cg][ps[un|in|in6]] ํŒŒ์ดํ”„ ์ด๋ฆ„|TCPํฌํŠธ

XNUMXD๋ดํƒˆ์˜ -M ์˜ต์…˜์€ ์ˆ˜์ •์ž๋ฅผ ํ—ˆ์šฉํ•ฉ๋‹ˆ๋‹ค: a 'g' ์ ‘๋ฏธ์‚ฌ์—๋Š” ๊ธฐํ•˜ํ•™ ๋ฐ์ดํ„ฐ๊ฐ€ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค(๊ธฐ๋ณธ๊ฐ’).
๋™์•ˆ 'c' ์ ‘๋ฏธ์‚ฌ์—๋Š” GCL ๋ช…๋ น์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค. ใ… 'p'๋Š” ์—ฐ๊ฒฐ์ด ๋‹ค์Œ์„ ์‚ฌ์šฉํ•ด์•ผ ํ•จ์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค.
๋ช…๋ช…๋œ ํŒŒ์ดํ”„(NeXT๋ฅผ ์ œ์™ธํ•œ ๋ชจ๋“  ํ•ญ๋ชฉ์˜ ๊ธฐ๋ณธ๊ฐ’), 's'๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค๋Š” ๋œป์ด๋‹ค.
UNIX ๋„๋ฉ”์ธ ์†Œ์ผ“(NeXT์˜ ๊ธฐ๋ณธ๊ฐ’). Geomview ๋ฒ„์ „ 1.9๋ถ€ํ„ฐ
์ธํ„ฐ๋„ท ๋„๋ฉ”์ธ ์†Œ์ผ“๋„ ์ง€์›๋ฉ๋‹ˆ๋‹ค. ์‚ฌ์šฉ '์ฃ„' Geomview๊ฐ€ ๋“ฃ๊ฒŒ ํ•˜๋ ค๋ฉด
๋‹ค์Œ์—์„œ ์ œ๊ณตํ•˜๋Š” IPv4 ํฌํŠธ TCPํฌํŠธ, ๋˜๋Š” 'sin6' Geomview๊ฐ€ IPv6๋ฅผ ์ˆ˜์‹ ํ•˜๋„๋ก ํ•ฉ๋‹ˆ๋‹ค.
ํฌํŠธ(๋˜ํ•œ TCPํฌํŠธ). 'ํ•ด'๋Š” '์˜ ๋™์˜์–ด์ด๋‹ค.s', ์ฆ‰ Unix๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.
์ด๋ฆ„์ด ์žˆ๋Š” ๋„๋ฉ”์ธ ์†Œ์ผ“ ํŒŒ์ดํ”„ ์ด๋ฆ„. ๋ฉด ํŒŒ์ดํ”„ ์ด๋ฆ„ ์Šฌ๋ž˜์‹œ('/')๋กœ ์‹œ์ž‘ํ•˜๊ณ  ๊ทธ ๋‹ค์Œ
์ ˆ๋Œ€ ๊ฒฝ๋กœ ์ด๋ฆ„์œผ๋กœ ๊ฐ€์ •๋ฉ๋‹ˆ๋‹ค. ๊ทธ๋ ‡์ง€ ์•Š์œผ๋ฉด ๋ช…๋ช…๋œ ํŒŒ์ดํ”„๋‚˜ ์†Œ์ผ“์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.
์•„๋ž˜์— ์ƒ์„ฑ๋จ ${TMPDIR}/geomview/.

So -๋งฅ์Šค ํ”„๋ ˆ๋“œ ๋ช…๋ช…๋œ UNIX ๋„๋ฉ”์ธ ์†Œ์ผ“์—์„œ ์ฝ๊ธฐ ๋ช…๋ น์„ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.
/tmp/geomview/ํ”„๋ ˆ๋“œ, -๋งฅ์‹  40000 IPv4 ํฌํŠธ์—์„œ ์ฝ๊ธฐ ๋ช…๋ น์„ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.
'40000'.

-noopengl
(์•„๋งˆ๋„) ํ•˜๋“œ์›จ์–ด ๊ฐ€์† ๋ Œ๋”๋ง์„ ์œ„ํ•ด OpenGL ์‚ฌ์šฉ์„ ๋น„ํ™œ์„ฑํ™”ํ•ฉ๋‹ˆ๋‹ค.
Geomview ๋ฐ”์ด๋„ˆ๋ฆฌ๋Š” ์ปดํŒŒ์ผ๋œ OpenGL์„ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค.
ํˆฌ๋ช…๋„ ๋ฐ ์งˆ๊ฐ ์ง€์›

-๋…ธํŒจ๋„
ํŒจ๋„ ์—†์ด ๊ทธ๋ž˜ํ”ฝ ์ฐฝ๋งŒ ํ‘œ์‹œํ•˜๊ธฐ ์‹œ์ž‘ํ•ฉ๋‹ˆ๋‹ค. ํŒจ๋„์€ ๋‚˜์ค‘์— ํ˜ธ์ถœ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
ํ‰์†Œ์™€ ๊ฐ™์ด "Px" ํ‚ค๋ณด๋“œ ๋‹จ์ถ•ํ‚ค ๋˜๋Š” "(ui-panel ...)" ๋ช…๋ น์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

-๋…ธ์ด๋‹ˆํŠธ
์ดˆ๊ธฐํ™” ํŒŒ์ผ์„ ์ฝ์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๊ธฐ๋ณธ์ ์œผ๋กœ geomview๋Š” ์‹œ์Šคํ…œ ์ „์ฒด๋ฅผ ์ฝ์Šต๋‹ˆ๋‹ค.
".geomview" ํŒŒ์ผ, ๊ทธ ๋’ค์— $HOME/.geomview ๋ฐ ./.geomview์˜ ํŒŒ์ผ์ด ์˜ต๋‹ˆ๋‹ค.

-e ๋ชจ๋“ˆ ์ด๋ฆ„
์™ธ๋ถ€ ๋ชจ๋“ˆ์„ ์‹œ์ž‘ํ•ฉ๋‹ˆ๋‹ค. ๋ชจ๋“ˆ ์ด๋ฆ„ ๋ชจ๋“ˆ๊ณผ ๊ด€๋ จ๋œ ์ด๋ฆ„์ž…๋‹ˆ๋‹ค.
๋ชจ๋“ˆ์— ์˜ํ•ด ์ •์˜๋œ ๋Œ€๋กœ ๋ฉ”์ธ ํŒจ๋„์˜ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋ธŒ๋ผ์šฐ์ €์— ๋‚˜ํƒ€๋‚ฉ๋‹ˆ๋‹ค.
๋ช…๋ น ์ •์˜(์ฐธ์กฐ ๊ธฐํ•˜ํ•™(5) ์ž์„ธํ•œ ๋‚ด์šฉ์€).

-์Šคํƒ€ํŠธ ๋ชจ๋“ˆ ์ด๋ฆ„ ์ธ์ˆ˜ ... --
-e์™€ ๋น„์Šทํ•˜์ง€๋งŒ ์™ธ๋ถ€ ๋ชจ๋“ˆ์— ์ธ์ˆ˜๋ฅผ ์ „๋‹ฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. "--" ์‹ ํ˜ธ๋Š”
์ธ์ˆ˜ ๋ชฉ๋ก์˜ ๋; ๋งˆ์ง€๋ง‰ ์ธ์ˆ˜์ธ ๊ฒฝ์šฐ "--"๋Š” ์ƒ๋žต๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
geomview ๋ช…๋ น์ค„์—์„œ.

-์šด์˜ ์‰˜ ๋ช…๋ น ์ธ์ˆ˜ ...
-start์™€ ๋น„์Šทํ•˜์ง€๋งŒ ๋Œ€์‹  ์™ธ๋ถ€ ๋ชจ๋“ˆ์˜ ์‹คํ–‰ ํŒŒ์ผ ๊ฒฝ๋กœ ์ด๋ฆ„์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.
๋ชจ๋“ˆ์˜ ์ด๋ฆ„.

๊ธฐํ•˜ํ•™ FILE ํ˜•์‹


geomview๊ฐ€ ์ฝ๋Š” ํŒŒ์ผ์˜ ํ˜•์‹์€ ๋‹ค์Œ์— ์„ค๋ช…๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ์šฐ๊ธ€(5); "man 5 oogl"์„ ์ž…๋ ฅํ•˜๊ฑฐ๋‚˜
์ž์„ธํ•œ ๋‚ด์šฉ์€ geomview ๋ฐฐํฌํŒ์˜ man/cat5/oogl.5 ํŒŒ์ผ์„ ์ฐธ์กฐํ•˜์„ธ์š”.

MinneView(geomview์˜ ์ „์‹ ) ์‚ฌ์šฉ์ž ์ฐธ๊ณ  ์‚ฌํ•ญ: geomview๋Š” MinneView ํŒŒ์ผ์„ ์ฝ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
ํ•˜์ง€๋งŒ MinneView๋Š” ๋ชจ๋“  geomview ํŒŒ์ผ์„ ์ฝ์„ ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.

์Šคํƒ€ํŠธ ์—… ํŒŒ์ผ


geomview๋ฅผ ์‹œ์ž‘ํ•˜์ž๋งˆ์ž ์‹œ์Šคํ…œ ์ „์ฒด์—์„œ ๋ช…๋ น์„ ์ฝ๊ณ  ์‹คํ–‰ํ•ฉ๋‹ˆ๋‹ค.
geomview ๋””๋ ‰ํ„ฐ๋ฆฌ์˜ "data" ํ•˜์œ„ ๋””๋ ‰ํ„ฐ๋ฆฌ์— ์žˆ๋Š” .geomview ํŒŒ์ผ์ž…๋‹ˆ๋‹ค. ๊ทธ๋Ÿฐ ๋‹ค์Œ,
ํ˜„์žฌ ๋””๋ ‰ํ„ฐ๋ฆฌ์— .geomview๋ผ๋Š” ํŒŒ์ผ์ด ์žˆ์œผ๋ฉด ํ•ด๋‹น ํŒŒ์ผ์˜ ๋ช…๋ น์ด ์‹คํ–‰๋ฉ๋‹ˆ๋‹ค. ๋งŒ์•ฝ์—
์‚ฌ์šฉ์ž์˜ ํ™ˆ ๋””๋ ‰ํ„ฐ๋ฆฌ์— no๊ฐ€ ์žˆ์œผ๋ฉฐ, ๋ฐœ๊ฒฌ๋˜๋ฉด ์‹คํ–‰ํ•ฉ๋‹ˆ๋‹ค. ์‹œ์ž‘ ํŒŒ์ผ
์ดํ›„ ๋ช…๋ น์ด ์šฐ์„  ์ ์šฉ๋˜๋ฏ€๋กœ ๊ฐœ๋ณ„ ์‚ฌ์šฉ์ž๋Š” ์‹œ์Šคํ…œ ์ „์ฒด ๊ธฐ๋ณธ๊ฐ’์„ ์žฌ์ •์˜ํ•ฉ๋‹ˆ๋‹ค.
์ด์ „ ๊ฒƒ๋ณด๋‹ค.

์™ธ๋ถ€ ๋ชจ๋“ˆ


Geomview์—๋Š” ๋ช…๋ น ์–ธ์–ด๋ฅผ ํ†ตํ•ด ๋‹ค๋ฅธ ํ”„๋กœ๊ทธ๋žจ๊ณผ ์ƒํ˜ธ ์ž‘์šฉํ•  ์ˆ˜ ์žˆ๋Š” ๊ธฐ๋Šฅ์ด ์žˆ์Šต๋‹ˆ๋‹ค.
"์™ธ๋ถ€ ๋ชจ๋“ˆ". ์ด๋Ÿฌํ•œ ๋ชจ๋“ˆ์€ ๋งŽ์ด ์ž‘์„ฑ๋˜์–ด "์‘์šฉ ํ”„๋กœ๊ทธ๋žจ"์— ๋‚˜ํƒ€๋‚ฉ๋‹ˆ๋‹ค.
๊ธฐ๋ณธ geomview ํŒจ๋„์˜ ๋ธŒ๋ผ์šฐ์ €. ๋ชจ๋“ˆ์„ ํ˜ธ์ถœํ•˜๋ ค๋ฉด ํ•ด๋‹น ๋ชจ๋“ˆ์—์„œ ๋งˆ์šฐ์Šค๋ฅผ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.
์ด ๋ธŒ๋ผ์šฐ์ €์˜ ๋ชจ๋“ˆ ํ•ญ๋ชฉ์ž…๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋ฉด ๋ชจ๋“ˆ์ด ์‹œ์ž‘๋˜๊ณ  ์ถ”๊ฐ€ ํ•ญ๋ชฉ์ด ์ถ”๊ฐ€๋ฉ๋‹ˆ๋‹ค.
``[1] Crayola''์™€ ๊ฐ™์ด ๋Œ€๊ด„ํ˜ธ ์•ˆ์˜ ์ˆซ์ž๋กœ ์‹œ์ž‘ํ•˜๋Š” ๋ธŒ๋ผ์šฐ์ €
ํ•ด๋‹น ๋ชจ๋“ˆ์˜ ์‹คํ–‰ ์ค‘์ธ ์ธ์Šคํ„ด์Šค๋ฅผ ๋‚˜ํƒ€๋ƒ…๋‹ˆ๋‹ค. ๋ฅผ ํด๋ฆญํ•˜์—ฌ ๋ชจ๋“ˆ์„ ์ข…๋ฃŒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
๋ฒˆํ˜ธ ํ•ญ๋ชฉ์—. ๋ชจ๋“ˆ์€ geomview์™€ ๋ณ„๋„๋กœ ๋ฌธ์„œํ™”๋ฉ๋‹ˆ๋‹ค. ์„ค๋ช…์„œ ๋ณด๊ธฐ
์ž์„ธํ•œ ๋‚ด์šฉ์€ ๊ฐ ๋ชจ๋“ˆ ํŽ˜์ด์ง€๋ฅผ ์ฐธ์กฐํ•˜์„ธ์š”.

์„ค์น˜ AN ์™ธ๋ถ€ MODULE


Geomview๋Š” ๋ชจ๋“ˆ์šฉ ํŠน์ˆ˜ ๋””๋ ‰ํ† ๋ฆฌ์—์„œ ์™ธ๋ถ€ ๋ชจ๋“ˆ์„ ์ฐพ์Šต๋‹ˆ๋‹ค. ์ง€์˜ค๋ทฐ์—์„œ๋Š”
๋ฐฐํฌ ํŠธ๋ฆฌ๋Š” "bin/$MACHTYPE" ํ•˜์œ„ ๋””๋ ‰ํ„ฐ๋ฆฌ์ž…๋‹ˆ๋‹ค. ๋ชจ๋“ˆ์€ ๋‘ ๊ฐœ๋กœ ๊ตฌ์„ฑ๋ฉ๋‹ˆ๋‹ค.
ํŒŒ์ผ: ์‹คํ–‰ ๊ฐ€๋Šฅํ•œ ํ”„๋กœ๊ทธ๋žจ ๋ฐ ์ด๋ฆ„์ด ๋‹ค์Œ๊ณผ ๊ฐ™์€ "๋ชจ๋“ˆ ์ดˆ๊ธฐํ™” ํŒŒ์ผ"์ž…๋‹ˆ๋‹ค.
".geomview-" ๋’ค์— ๋ชจ๋“ˆ ์ด๋ฆ„์ด ์˜ต๋‹ˆ๋‹ค. ๋ชจ๋“ˆ ์ดˆ๊ธฐํ™” ํŒŒ์ผ์€ geomview์— ์‹คํ–‰ ๋ฐฉ๋ฒ•์„ ์•Œ๋ ค์ค๋‹ˆ๋‹ค.
๊ทธ ํ”„๋กœ๊ทธ๋žจ. ํ•ญ์ƒ ์ด ๋‘ ํŒŒ์ผ์„ ํ•จ๊ป˜ ๋ณด๊ด€ํ•˜์‹ญ์‹œ์˜ค. geomview์—๋Š” ๋‘ ๊ฐ€์ง€๊ฐ€ ๋ชจ๋‘ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.
๋ชจ๋“ˆ์„ ์‹คํ–‰ํ•˜๋ ค๋ฉด ์ƒˆ ๋ชจ๋“ˆ์„ ์„ค์น˜ํ•˜๋ ค๋ฉด ๋ชจ๋“ˆ์˜
geomview์˜ ๋ชจ๋“ˆ ๋””๋ ‰ํ„ฐ๋ฆฌ์— ์žˆ๋Š” ์‹คํ–‰ ํŒŒ์ผ๊ณผ ํ•ด๋‹น ์ดˆ๊ธฐํ™” ํŒŒ์ผ์ž…๋‹ˆ๋‹ค. ๋‹ค์Œ์— ๋‹น์‹ ์€
geomview๋ฅผ ์‹คํ–‰ํ•˜๋ฉด ํ•ด๋‹น ๋ชจ๋“ˆ์— ๋Œ€ํ•ด ์•Œ๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.

Geomview๋Š” ์‹ค์ œ๋กœ ๋””๋ ‰ํ† ๋ฆฌ ๋ชฉ๋ก์—์„œ ๋ชจ๋“ˆ์„ ์ฐพ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ธฐ๋ณธ์ ์œผ๋กœ
"bin/$MACHTYPE" ๋””๋ ‰ํ† ๋ฆฌ๊ฐ€ ์ด ๋ชฉ๋ก์— ์žˆ์Šต๋‹ˆ๋‹ค. set-emodule-path ๋ช…๋ น์„ ์ฐธ์กฐํ•˜์‹ญ์‹œ์˜ค.
๊ธฐํ•˜ํ•™(5) ์ž์„ธํ•œ ๋‚ด์šฉ์€.

"src/bin/example" ๋””๋ ‰ํ† ๋ฆฌ์— ์™ธ๋ถ€ ๋ชจ๋“ˆ์„ ์ž‘์„ฑํ•˜๋Š” ๋ฐฉ๋ฒ•์— ๋Œ€ํ•œ ํŠœํ† ๋ฆฌ์–ผ์ด ์žˆ์Šต๋‹ˆ๋‹ค.

์™ธ๋ถ€ MODULE INIT ํŒŒ์ผ


์™ธ๋ถ€ ๋ชจ๋“ˆ ์ดˆ๊ธฐํ™” ํŒŒ์ผ์€ geomview์— ํ•ด๋‹น ๋ชจ๋“ˆ์„ ์‹คํ–‰ํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์•Œ๋ ค์ฃผ๋Š” ํŒŒ์ผ์ž…๋‹ˆ๋‹ค. ๊ทธ๊ฒƒ์€
์ด๋ฆ„์€ ".geomview-" ๋’ค์— ๋ชจ๋“ˆ ์ด๋ฆ„์ด ์™€์•ผ ํ•ฉ๋‹ˆ๋‹ค(์˜ˆ: ".geomview-foo"). ๊ทธ๊ฒƒ
geomview ๋ช…๋ น์„ ํฌํ•จํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ผ๋ฐ˜์ ์œผ๋กœ ๋‹จ์ผ emodule-define์„ ํฌํ•จํ•ฉ๋‹ˆ๋‹ค.
geomview์˜ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋ธŒ๋ผ์šฐ์ €์— ๋ชจ๋“ˆ์„ ์ž…๋ ฅํ•˜๋Š” ๋ช…๋ น:

(emodule ์ •์˜ "Foo" "foo")

์ฒซ ๋ฒˆ์งธ ๋ฌธ์ž์—ด์€ ๋ธŒ๋ผ์šฐ์ €์— ๋‚˜ํƒ€๋‚˜๋Š” ์ด๋ฆ„์ž…๋‹ˆ๋‹ค. ๋‘ ๋ฒˆ์งธ ๋ฌธ์ž์—ด์€
๋ชจ๋“ˆ์„ ํ˜ธ์ถœํ•˜๋Š” ๋ช…๋ น์ž…๋‹ˆ๋‹ค. ์ธ์ˆ˜๊ฐ€ ํฌํ•จ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์‹ค์ œ๋กœ ๊ทธ๊ฒƒ์€ ์ž„์˜์ ์ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค
์‰˜ ๋ช…๋ น.

ํ‚ค๋ณด๋“œ ์ˆ์ปท


ํ‚ค๋ณด๋“œ๋ฅผ ํ†ตํ•ด ๋งŽ์€ geomview ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. "?"๋ฅผ ์น˜๋Š” ์ค‘ ๋ฒ„ํŠผ์„
๋ฉ”์ธ ํŒจ๋„ ๋˜๋Š” "?"๋ฅผ ์ž…๋ ฅํ•ฉ๋‹ˆ๋‹ค. ์–ด๋Š ์ฐฝ์—๋‚˜ ์ปค์„œ๋ฅผ ๋†“์œผ๋ฉด geomview๊ฐ€ ๋‹ค์Œ์„ ์ธ์‡„ํ•˜๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.
๋ชจ๋“  ํ‚ค๋ณด๋“œ ๋‹จ์ถ•ํ‚ค๋ฅผ ๋‚˜์—ดํ•˜๋Š” ํ‘œ์ค€ ์ถœ๋ ฅ์˜ ๋ฉ”์‹œ์ง€์ž…๋‹ˆ๋‹ค.

์ปค์„œ๊ฐ€ ๊ทธ๋ž˜ํ”ฝ ์ฐฝ์— ์žˆ๋Š” ๋™์•ˆ ํ‚ค๋ณด๋“œ ๋ช…๋ น์ด ์ ์šฉ๋˜๋ฉฐ ๋Œ€๋ถ€๋ถ„์˜ ๊ฒฝ์šฐ
์ œ์–ดํŒ. ๋Œ€๋ถ€๋ถ„์˜ ๋ช…๋ น์€ ๋‹ค์Œ ์„ ํƒ ์ ‘๋‘์–ด ์ค‘ ํ•˜๋‚˜๋ฅผ ํ—ˆ์šฉํ•ฉ๋‹ˆ๋‹ค.
(์•„๋ฌด๊ฒƒ๋„ ์ œ๊ณต๋˜์ง€ ์•Š์œผ๋ฉด ๋ช…๋ น์ด ํ˜„์žฌ ๊ฐœ์ฒด์— ์ ์šฉ๋ฉ๋‹ˆ๋‹ค):
g ์„ธ๊ณ„ ๊ธฐํ•˜ํ•™ g# #'๋ฒˆ์งธ ๊ธฐํ•˜ํ•™ g* ๋ชจ๋“  ๊ธฐํ•˜ํ•™
c ํ˜„์žฌ ์นด๋ฉ”๋ผ c# #'๋ฒˆ์งธ ์นด๋ฉ”๋ผ c* ๋ชจ๋“  ์นด๋ฉ”๋ผ
๋งŽ์€ ๊ฒฝ์šฐ ์ˆซ์ž ์ ‘๋‘์–ด๋ฅผ ํ—ˆ์šฉํ•ฉ๋‹ˆ๋‹ค. ์—†๋Š” ๊ฒฝ์šฐ ํ˜„์žฌ ๊ฐ’์„ ์ „ํ™˜ํ•˜๊ฑฐ๋‚˜ ์žฌ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค.
์™ธ๊ด€:
๊ทธ๋ฆฌ๊ธฐ: ์Œ์˜: ๊ธฐํƒ€:
af Faces 0as Constant av eVert Normals: ํ•ญ์ƒ ๋ทฐ์–ด๋ฅผ ํ–ฅํ•ฉ๋‹ˆ๋‹ค.
ae Edges 1as Flat #aw ์„  ๋„ˆ๋น„(ํ”ฝ์…€)
๋…ธ๋ฉ€ 2as ๋งค๋„๋Ÿฌ์šด #ac ๊ฐ€์žฅ์ž๋ฆฌ ๋ฉด๋ณด๋‹ค ๊ฐ€๊นŒ์›€(5-100 ์‹œ๋„)
ab ๊ฒฝ๊ณ„ ์ƒ์ž 3as ๋ถ€๋“œ๋Ÿฝ๊ณ  ์กฐ๋ช…์ด ์—†๋Š” al ์Œ์˜ ์„ 
aV ๋ฒกํ„ฐ aT๋Š” ํ…์Šค์ฒ˜ ๋งคํ•‘ ์‹œ ํˆฌ๋ช…์„ฑ์„ ํ—ˆ์šฉํ•ฉ๋‹ˆ๋‹ค.
์ƒ‰์ƒ: aC๋Š” ์˜ค๋ชฉํ•œ ๋‹ค๊ฐํ˜•์„ ํ—ˆ์šฉํ•ฉ๋‹ˆ๋‹ค.
Cf Ce Cn Cb CB ๋ฉด/๊ฐ€์žฅ์ž๋ฆฌ/์ผ๋ฐ˜/bbox/backgnd ์ฐธ์กฐ
๋ชจ์…˜: ๋ณด๊ธฐ:
r ํšŒ์ „ [ ์™ผ์ชฝ๋งˆ์šฐ์Šค=XY ํ‰๋ฉด, 0vp ์ง๊ต ๋ทฐ
t ์ค‘๊ฐ„=Z์ถ•, 1vp ํˆฌ์‹œ๋„ ๋ณ€ํ™˜
z ์คŒ FOV Shift=์Šฌ๋กœ์šฐ ๋ชจ์…˜, vd ๋‹ค๋ฅธ ๋ทฐ์˜ ์นด๋ฉ”๋ผ ๊ทธ๋ฆฌ๊ธฐ
f r/t ๋ชจ๋“œ๋กœ ๋น„ํ–‰ํ•ฉ๋‹ˆ๋‹ค. ] #vv ์‹œ์•ผ
o ๊ถค๋„ [์™ผ์ชฝ=์กฐ์ข…, ์ค‘๊ฐ„=์†๋„] #vn ๊ทผ๊ฑฐ๋ฆฌ ํด๋ฆฝ ๊ฑฐ๋ฆฌ
s ์Šค์ผ€์ผ #vf ๋จผ ํด๋ฆฝ ๊ฑฐ๋ฆฌ
W/W ์ตœ๊ทผ/๋ชจ๋“  v+ ์ƒˆ ์นด๋ฉ”๋ผ ์ถ”๊ฐ€
h/H ์ค‘์ง€/๋ชจ๋“  vx ์ปค์„œ ์ผœ๊ธฐ/๋„๊ธฐ ์ค‘์ง€
@ ๋™์ž‘ ์ค‘์‹ฌ ์„ ํƒ(์˜ˆ: g3@) VB ํ›„๋ฉด ํด๋ฆฌ ์ปฌ ์ผœ๊ธฐ/๋„๊ธฐ
#vl ์ดˆ์  ๊ฑฐ๋ฆฌ
L ๊ฐ์ฒด ๋ณด๊ธฐ v~ ์†Œํ”„ํŠธ์›จ์–ด ์Œ์˜ ์ผœ๊ธฐ/๋„๊ธฐ
์‡ผ ํŒจ๋„: Pm Pa Pl Po ๋ฉ”์ธ/์™ธ๊ด€/์กฐ๋ช…/๋ชจํ˜ธํ•จ
Pt Pc PC Pf ๋„๊ตฌ/์นด๋ฉ”๋ผ/๋ช…๋ น/ํŒŒ์ผ ๋ธŒ๋ผ์šฐ์ €
Ps P - tty์˜ ์ €์žฅ/์ฝ๊ธฐ ๋ช…๋ น
์กฐ๋ช…: โ€‹โ€‹ls le ์กฐ๋ช… ํ‘œ์‹œ/์กฐ๋ช… ํŽธ์ง‘
๋ฏธํ„ฐ๋ฒ•: me mh ms ์œ ํด๋ฆฌ๋“œ ์Œ๊ณก์„  ๊ตฌํ˜•
๋ชจ๋ธ: mv mp mc ๊ฐ€์ƒ ํˆฌ์˜ ๋“ฑ๊ฐ
๋‹ค๋ฅธ:
N ์ •๊ทœํ™” < Pf ๋กœ๋“œ ํ˜•์ƒ/๋ช…๋ น ํŒŒ์ผ
0N ์—†์Œ > Ps ๋ฌด์–ธ๊ฐ€๋ฅผ ํŒŒ์ผ ui์— ์ €์žฅ ๋ชจ์…˜์— ๊ด€์„ฑ์ด ์žˆ์Œ
1N ๊ฐ TV NTSC ๋ชจ๋“œ ํ† ๊ธ€ uc ์ œํ•œ๋œ(X/Y) ๋ชจ์…˜
์ž์ฒด ์ขŒํ‘œ๊ณ„๋กœ 2N all uo ๋ชจ์…˜
ํ˜„์žฌ ๋Œ€์ƒ ๊ฐœ์ฒด๋กœ ๋งˆ์šฐ์Šค ์˜ค๋ฅธ์ชฝ ๋ฒ„ํŠผ์„ ๋‘ ๋ฒˆ ํด๋ฆญํ•˜์—ฌ ์„ ํƒ
Shift-์˜ค๋ฅธ์ชฝ ๋งˆ์šฐ์Šค๋กœ ๊ด€์‹ฌ ์ง€์ (๊ฐ€์šด๋ฐ) ์„ ํƒ
๋ Œ๋”๋งจ:
RR์€ RIB ์ถœ๋ ฅ์„ ๋‹ค์Œ์œผ๋กœ ๋ณด๋ƒ…๋‹ˆ๋‹ค. NNN.rib(๊ธฐ๋ณธ fileprefix == "geom")
RC ์‹ค๋ฆฐ๋”๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์„ ์„ ์—๋ฎฌ๋ ˆ์ดํŠธํ•ฉ๋‹ˆ๋‹ค(๊ธฐ๋ณธ๊ฐ’)
RP ๋‹ค๊ฐํ˜•์„ ์‚ฌ์šฉํ•˜์—ฌ ์„ ์„ ์—๋ฎฌ๋ ˆ์ดํŠธํ•ฉ๋‹ˆ๋‹ค.
Ra๋Š” ASCII RIB ํ˜•์‹์„ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค(๊ธฐ๋ณธ๊ฐ’)
Rb๋Š” BINARY RIB ํ˜•์‹์„ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.
Rt ํ‘œ์‹œ ํ† ํฐ์„ ์„ ํƒํ•˜์—ฌ .tiff ํŒŒ์ผ์„ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค(๊ธฐ๋ณธ๊ฐ’)
Rf๋Š” ๋””์Šคํ”Œ๋ ˆ์ด ํ† ํฐ์„ ์„ ํƒํ•˜์—ฌ ํ”„๋ ˆ์ž„ ๋ฒ„ํผ๋ฅผ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค.
Rs ๋‹ค๊ฐํ˜•์œผ๋กœ ๋ฐฐ๊ฒฝ์ƒ‰ ์‹œ๋ฎฌ๋ ˆ์ด์…˜(๊ธฐ๋ณธ๊ฐ’)
Rx ๋ฐฐ๊ฒฝ ์‹œ๋ฎฌ๋ ˆ์ด์…˜ ์—†์Œ - ์™„์ „ํžˆ ํˆฌ๋ช…ํ•œ(์•ŒํŒŒ) ๋ฐฐ๊ฒฝ

๋…ธํŠธ


"geomview" ๋ช…๋ น์€ ์‹ค์ œ๋กœ ๋‹ค์–‘ํ•œ ํ™˜๊ฒฝ ๋ณ€์ˆ˜๋ฅผ ์„ค์ •ํ•˜๋Š” ์‰˜ ์Šคํฌ๋ฆฝํŠธ์ž…๋‹ˆ๋‹ค.
geomview์— ๋กœ์ปฌ ์„ค์ •์— ๋Œ€ํ•ด ์•Œ๋ ค์ฃผ๊ณ  geomview ์‹คํ–‰ ํŒŒ์ผ์„ ํ˜ธ์ถœํ•ฉ๋‹ˆ๋‹ค.
ํ”„๋กœ๊ทธ๋žจ "gvx"(๋˜๋Š” "gvx.OGL"). "gvx"๋ฅผ ๋‹จ๋…์œผ๋กœ ์‹คํ–‰ํ•˜์ง€ ๋งˆ์‹ญ์‹œ์˜ค. ํ•ญ์ƒ geomview๋ฅผ ํ˜ธ์ถœํ•˜์‹ญ์‹œ์˜ค.
"geomview" ์‰˜ ์Šคํฌ๋ฆฝํŠธ.

onworks.net ์„œ๋น„์Šค๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์˜จ๋ผ์ธ์œผ๋กœ geomviewgv๋ฅผ ์‚ฌ์šฉํ•˜์„ธ์š”.


๋ฌด๋ฃŒ ์„œ๋ฒ„ ๋ฐ ์›Œํฌ์Šคํ…Œ์ด์…˜

Windows ๋ฐ Linux ์•ฑ ๋‹ค์šด๋กœ๋“œ

Linux ๋ช…๋ น

Ad