Á¶Ä¡ ¼¼Æ®
ID: org.eclipse.ui.actionSets
¼³¸í: ÀÌ È®ÀåÁ¡À» »ç¿ëÇÏ¿© ¸Þ´º, ¸Þ´º Ç׸ñ ¹× µµ±¸ ¸ðÀ½ ´ÜÃ߸¦ Workbench âÀÇ
°øÅë ¿µ¿ª¿¡ Ãß°¡ÇÕ´Ï´Ù.
ÀÌ Á¦°øÀ» ÅëĪÇÏ¿© Á¶Ä¡ ¼¼Æ®¶ó°í ÇÏ°í »ç¿ëÀÚ È¯°æ ¼³Á¤¿¡ µû¶ó Workbench â¿¡ ³ªÅ¸³³´Ï´Ù.
±¸¼º ¸¶Å©¾÷:
<!ELEMENT actionSet (menu)* (action)* (description?)>
<!ATTLIST actionSet
id CDATA
#REQUIRED
label CDATA #REQUIRED
visible (true
| false) #IMPLIED
>
<!ELEMENT description (#PCDATA)>
-
id - ÇØ´ç Á¶Ä¡ ¼¼Æ®¸¦ ½Äº°ÇÏ´Â µ¥ »ç¿ëÇÏ´Â °íÀ¯ÇÑ À̸§.
-
label - ÇØ´ç Á¶Ä¡ ¼¼Æ®¸¦ ³ªÅ¸³»±â À§ÇØ Workbench â ¸Þ´º¿¡ »ç¿ëÇÏ´Â º¯È¯ °¡´ÉÇÑ À̸§.
-
visible - Ãʱ⿡ Á¶Ä¡ ¼¼Æ®¸¦ Workbench â¿¡ Ç¥½ÃÇÒÁö ¿©ºÎ¸¦ ³ªÅ¸³»´Â
¼±ÅÃÀûÀÎ ¼Ó¼º. "Perspective »ç¿ëÀÚ Á¤ÀÇ ´ëÈ »óÀÚ"¿¡¼ ÀÌ ¿É¼ÇÀ» ¹«½ÃÇÒ ¼ö ÀÖ½À´Ï´Ù.
-
description - Á¶Ä¡ ¼¼Æ®¸¦ °£·«ÇÏ°Ô ¼³¸íÇÏ´Â ÅØ½ºÆ®°¡ Æ÷ÇԵǴ º»¹®ÀÇ ¼±ÅÃÀû ºÎ¼Ó¿ä¼Ò.
<!ELEMENT menu (separator)+>
<!ATTLIST menu
id
CDATA #REQUIRED
label
CDATA #REQUIRED
path
CDATA #IMPLIED
>
-
id - ÇØ´ç ¸Þ´º¸¦ ÂüÁ¶ÇÏ´Â µ¥ »ç¿ëÇÒ ¼ö ÀÖ´Â °íÀ¯ÇÑ ID
-
label - »õ ¸Þ´ºÀÇ ÅØ½ºÆ® ·¹À̺í. ·¹ÀÌºí¿¡´Â ´Ï¸ð´Ð Á¤º¸°¡ Æ÷ÇԵǾî¾ß ÇÕ´Ï´Ù.
-
path - ¸Þ´º Ç¥½ÃÁÙÀÇ ·çÆ®¿¡¼ ½ÃÀÛÇÏ´Â ¸Þ´ºÀÇ À§Ä¡. °æ·Î¸¦ »ý·«ÇÏ¸é ¸Þ´º
Ç¥½ÃÁÙÀÇ Perspective ¸Þ´º¿Í â ¸Þ´º »çÀÌ¿¡ ¸Þ´º°¡ Ãß°¡µË´Ï´Ù. °æ·ÎÀÇ ¸ðµç ÅäÅ«Àº
¸¶Áö¸· ÅäÅ«¸¸ Á¦¿ÜÇϰí WorkbenchÀÇ ±âÁ¸ ¸Þ´º¸¦ ÂüÁ¶ÇØ¾ß ÇÕ´Ï´Ù.
¸¶Áö¸· ÅäÅ«Àº °æ·ÎÀÇ ¸¶Áö¸· ¸Þ´º¿¡ ÀÖ´Â À̸§ ÁöÁ¤µÈ ±×·ìÀ» ³ªÅ¸³À´Ï´Ù.
<!ELEMENT separator EMPTY>
<!ATTLIST separator
name
CDATA #REQUIRED
>
name - ³ªÁß¿¡ Á¶Ä¡ °æ·ÎÀÇ ¸¶Áö¸· ÅäÅ«À¸·Î ÂüÁ¶ÇÒ ¼ö ÀÖ´Â ºÐ¸®ÀÚÀÇ À̸§. µû¶ó¼ ºÐ¸®ÀÚ´Â Á¶Ä¡¿Í
¼ºê¸Þ´º¸¦ Ãß°¡ÇÒ ¼ö ÀÖ´Â À̸§ ÁöÁ¤µÈ ±×·ì ¿ªÇÒÀ» ÇÕ´Ï´Ù.
<!ELEMENT action (selection)*>
<!ATTLIST action
id
NMTOKEN #REQUIRED
label
CDATA #REQUIRED
menubarPath
CDATA #IMPLIED
toolbarPath
CDATA #IMPLIED
icon
CDATA #IMPLIED
tooltip
CDATA #IMPLIED
helpContextId
CDATA #IMPLIED
state
(true | false) #IMPLIED
pulldown
(true | false) #IMPLIED
class
CDATA #REQUIRED
enablesFor
CDATA #IMPLIED
>
-
id - ÇØ´ç Á¶Ä¡¿¡ ´ëÇÑ ÂüÁ¶·Î »ç¿ëÇÒ ¼ö ÀÖ´Â °íÀ¯ÇÑ ID
-
label - ÄÁÅØ½ºÆ®¿¡ µû¶ó ´Ù¾çÇÑ ¹æ¹ýÀ¸·Î »ç¿ëÇÏ´Â º¯È¯ °¡´ÉÇÑ À̸§. ¸Þ´º¿¡¼´Â ¸Þ´º ÅØ½ºÆ®·Î
»ç¿ëµË´Ï´Ù. µµ±¸ ¸ðÀ½¿¡¼´Â ´ÜÃß ·¹À̺í·Î »ç¿ëµË´Ï´Ù. ·¹ÀÌºí¿¡´Â JFace
ÀÎÄÚµå ´Ï¸ð´Ð Á¤º¸¿Í ´ÜÃàŰ Á¤º¸°¡ Æ÷Ç﵃ ¼ö ÀÖ½À´Ï´Ù(¿¹ ÂüÁ¶).
-
menubarPath - ¸Þ´º Ç¥½ÃÁÙ¿¡¼ Á¶Ä¡ À§Ä¡¸¦ ÁöÁ¤Çϱâ À§ÇØ »ç¿ëÇÏ´Â ½½·¡½Ã·Î ±¸ºÐÇÑ °æ·Î('/').
¸¶Áö¸· ÅäÅ«¸¸ Á¦¿ÜÇÏ°í °æ·ÎÀÇ ¸ðµç ÅäÅ«Àº °èÃþ ±¸Á¶¿¡ ÀÖ´Â ±âÁ¸ ¸Þ´ºÀÇ À¯È¿ÇÑ ID¸¦ ³ªÅ¸³À´Ï´Ù.
¸¶Áö¸· ÅäÅ«Àº Á¶Ä¡°¡ Ãß°¡µÇ´Â À̸§ ÁöÁ¤µÈ ºÐ¸®ÀÚ ±×·ìÀ» ³ªÅ¸³À´Ï´Ù. °æ·Î¸¦ »ý·«ÇÏ¸é ¸Þ´º Ç¥½ÃÁÙ¿¡
Á¶Ä¡°¡ ³ªÅ¸³ªÁö ¾Ê½À´Ï´Ù.
-
toolbarPath - µµ±¸ ¸ðÀ½¿¡¼ Á¶Ä¡ À§Ä¡¸¦ ÁöÁ¤Çϱâ À§ÇØ »ç¿ëÇÏ´Â ½½·¡½Ã·Î ±¸ºÐÇÑ °æ·Î('/'). ù ¹øÂ°
ÅäÅ«Àº µµ±¸ ¸ðÀ½ ID(±âº» µµ±¸ ¸ðÀ½Àº "ÀϹÝ")¸¦ ³ªÅ¸³»°í µÎ ¹øÂ° ÅäÅ«Àº µµ±¸ ¸ðÀ½ÀÇ À̸§ ÁöÁ¤µÈ ±×·ìÀÔ´Ï´Ù. µµ±¸
¸ðÀ½¿¡ ±×·ìÀÌ ¾øÀ¸¸é ±×·ìÀÌ ÀÛ¼ºµË´Ï´Ù. toolbarPath¸¦ »ý·«Çϸé Á¶Ä¡°¡ µµ±¸ ¸ðÀ½¿¡ ³ªÅ¸³ªÁö
¾Ê½À´Ï´Ù.
-
icon - ÄÁÅØ½ºÆ®ÀÇ Á¶Ä¡¸¦ ½Ã°¢ÀûÀ¸·Î ³ªÅ¸³»±â À§ÇØ »ç¿ëÇÏ´Â ¾ÆÀÌÄÜÀÇ »ó´ë °æ·Î. À̸¦ »ý·«Çϰí
µµ±¸ ¸ðÀ½¿¡ Á¶Ä¡¸¦ Ç¥½ÃÇÒ °æ¿ì Workbench¿¡¼´Â À§Ä¡ Ç¥½Ã±â ¾ÆÀÌÄÜÀ» »ç¿ëÇÕ´Ï´Ù. °æ·Î´Â Á¦°øÇÏ´Â
Ç÷¯±×ÀÎÀÇ plugin.xml ÆÄÀÏ À§Ä¡¿¡ µû¶ó ´Ù¸¨´Ï´Ù.
-
tooltip - Á¶Ä¡°¡ µµ±¸ ¸ðÀ½¿¡ ³ªÅ¸³¯ °æ¿ì µµ±¸ ÆÁ ÅØ½ºÆ®ÀÇ °ª. °ªÀ» ¼³Á¤ÇÏÁö ¾ÊÀ¸¸é ¹«½ÃµË´Ï´Ù.
-
helpContextId - ÇØ´ç Á¶Ä¡¿¡ ´ëÇÑ µµ¿ò¸» ÄÁÅØ½ºÆ® ID¸¦ °¡¸®Å°´Â °íÀ¯ÇÑ ID. Á¶Ä¡°¡ ¸Þ´º Ç׸ñÀ¸·Î Ç¥½ÃµÉ
°æ¿ì ¸Þ´º Ç׸ñÀ» °Á¶Ç¥½ÃÇÑ Ã¤ F1 ۸¦ ´©¸£¸é ÁöÁ¤ÇÑ ÄÁÅØ½ºÆ® ID¿¡ °üÇÑ µµ¿ò¸»ÀÌ Ç¥½ÃµË´Ï´Ù.
-
state - Á¶Ä¡°¡ Åä±Û À¯Çü Áß ÇϳªÀÓÀ» ³ªÅ¸³»´Â ¼±ÅÃÀû ¼Ó¼º. ¸Þ´º¿¡ Ãß°¡ÇÒ °æ¿ì
¼±Åöõ Ç׸ñÀ¸·Î ³ªÅ¸³³´Ï´Ù. µµ±¸ ¸ðÀ½¿¡ Ãß°¡ÇÒ °æ¿ì¿¡´Â
Åä±Û ´ÜÃß°¡ µË´Ï´Ù.
ÀÌ ¼Ó¼º°ªÀ» Á¤ÀÇÇϸé Ãʱ⠻óÅÂ(true ¶Ç´Â false)·Î
»ç¿ëµË´Ï´Ù. ÀÌ ¼Ó¼ºÀº pulldown°ú ÇÔ²² »ç¿ëÇÒ ¼ö ¾ø½À´Ï´Ù.
-
pulldown - Á¶Ä¡¿¡ Ãß°¡ Ç®´Ù¿î ¸Þ´º°¡ ÀÖ´ÂÁö ³ªÅ¸³»´Â ¼±ÅÃÀûÀÎ ¼Ó¼º. µµ±¸ ¸ðÀ½¿¡ Á¶Ä¡°¡ ³ªÅ¸³ª°í
¼Ó¼º°ªÀÌ trueÀ̸é Á¶Ä¡ ¿·¿¡ Ç®´Ù¿î ¸Þ´º°¡ ³ªÅ¸³³´Ï´Ù. Á¶Ä¡°¡ ¸Þ´º¿¡ ³ªÅ¸³ª¸é ÀÌ ¼Ó¼ºÀº
¹«½ÃµË´Ï´Ù. ÀÌ ¼Ó¼ºÀº state¿Í ÇÔ²² »ç¿ëÇÒ ¼ö ¾ø½À´Ï´Ù.
-
class - org.eclipse.ui.IWorkbenchWindowActionDelegate ¶Ç´Â
org.eclipse.ui.IWorkbenchWindowPulldownDelegate¸¦ ±¸ÇöÇϴ Ŭ·¡½ºÀÇ ¿ÏÀüÇÑ À̸§. pulldownÀÌ
trueÀÏ °æ¿ì µÎ ¹øÂ° Ç׸ñÀ» ±¸ÇöÇØ¾ß ÇÕ´Ï´Ù.
-
enablesFor - Á¶Ä¡¸¦ Ȱ¼ºÈÇϱâ À§ÇØ ÃæÁ·ÇØ¾ß ÇÒ ¼±ÅûçÇ× °³¼ö¸¦ ³ªÅ¸³»´Â °ª. ÀÌ ¼Ó¼ºÀ»
ÁöÁ¤Çϰí Á¶°ÇÀÌ ÃæÁ·µÇ¸é Á¶Ä¡¸¦ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. Á¶°ÇÀÌ ÃæÁ·µÇÁö ¾ÊÀ¸¸é Á¶Ä¡¸¦ »ç¿ëÇÒ ¼ö
¾ø½À´Ï´Ù. ¼Ó¼ºÀ» ÁöÁ¤ÇÏÁö ¾ÊÀ¸¸é ¼±ÅÃÇÑ Ç׸ñ °³¼ö¿¡ ´ëÇØ¼ Á¶Ä¡¸¦ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.
´ÙÀ½°ú °°Àº ¼Ó¼º Çü½ÄÀÌ Áö¿øµË´Ï´Ù.
! - 0°³ Ç׸ñ ¼±ÅÃ
? - 0°³ ¶Ç´Â 1°³ Ç׸ñ ¼±ÅÃ
+ - 1°³ ÀÌ»óÀÇ Ç׸ñ ¼±ÅÃ
multiple, 2+ - 2°³ ÀÌ»óÀÇ Ç׸ñ ¼±ÅÃ
n - ¼±ÅÃÇÑ Ç׸ñÀÇ Á¤È®ÇÑ °³¼ö(¿¹: 4).
* - ¼±ÅÃÇÑ Ç׸ñ °³¼ö
<!ELEMENT selection EMPTY>
<!ATTLIST selection
class
CDATA #REQUIRED
name
CDATA #IMPLIED
>
-
class - Á¶Ä¡¸¦ »ç¿ëÇϱâ À§ÇØ ¼±ÅûçÇ×ÀÇ ¿ÀºêÁ§Æ®°¡ ¼ºêŬ·¡½º·Î ºÐ·ùÇϰųª
±¸ÇöÇϴ Ŭ·¡½º ¶Ç´Â ÀÎÅÍÆäÀ̽ºÀÇ ¿ÏÀüÇÑ À̸§.
-
name - ¼±ÅûçÇ×ÀÇ ¿ÀºêÁ§Æ®¿¡ ¼±ÅÃÀûÀ¸·Î Àû¿ëÇÒ ¼ö ÀÖ´Â À̸§ÀÇ ¿ÍÀϵå Ä«µå ÇÊÅÍ. ÀÌ ÇÊÅ͸¦
ÁöÁ¤Çߴµ¥ ÀÏÄ¡ÇÏ´Â Ç׸ñÀÌ ¾øÀ¸¸é Á¶Ä¡¸¦ »ç¿ëÇÒ ¼ö ¾ø½À´Ï´Ù.
Workbench´Â Ç÷¯±×Àο¡ ´ëÇÑ ¸Þ´º¸¦ »ý¼ºÇÏÁö ¾Ê½À´Ï´Ù. ¸Þ´º °æ·Î¿¡¼´Â
ÀÌ¹Ì ÀÖ´Â ¸Þ´º¸¦ ÂüÁ¶ÇØ¾ß ÇÕ´Ï´Ù.
Á¶Ä¡ È®Àå¿¡ ´ëÇÑ »ç¿ë °¡´É ±âÁØÀº Ãʱ⿡ enablesFor¿Í selection¿¡ ÀÇÇØ
Á¤Àǵ˴ϴÙ. ±×·¯³ª Á¶Ä¡ ´ëÇ¥°¡ ÀνºÅϽºÈµÇ¸é selectionChanged ¸Þ¼Òµå
³»¿¡¼ Á÷Á¢ Á¶Ä¡ »ç¿ë »óŸ¦ Á¦¾îÇÒ ¼ö ÀÖ½À´Ï´Ù.
Á¶Ä¡¿Í
¸Þ´º ·¹ÀÌºí¿¡´Â ´ÙÀ½ ±ÔÄ¢À» »ç¿ëÇÏ¿© ´Ï¸ð´Ð°ú ´ÜÃà۸¦ ÀÎÄÚµåÇϴ Ư¼ö ¹®ÀÚ°¡ Æ÷Ç﵃ ¼ö ÀÖ½À´Ï´Ù.
-
º¯È¯µÈ ÅØ½ºÆ®ÀÇ ¼±Åà ¹®ÀÚ ¾Õ¿¡ ¾ÚÆÛ»÷µå('&') ¹®ÀÚ¸¦ »ç¿ëÇÏ¿© ´Ï¸ð´ÐÀ»
ÁöÁ¤ÇÕ´Ï´Ù. XML ¹®ÀÚ¿¿¡´Â ¾ÚÆÛ»÷µå¸¦ »ç¿ëÇÒ ¼ö
¾øÀ¸¹Ç·Î & ¹®ÀÚ ¿£Æ¼Æ¼¸¦ »ç¿ëÇϽʽÿÀ.
-
@ µÚ¿¡ ÀÏ·ÃÀÇ ¼öÁ¤ÀÚ¿Í ÃÖÁ¾ ´ÜÃàŰ ¹®ÀÚ¸¦ »ç¿ëÇÏ¿© À̸§
¹®ÀÚ¿ ³¡¿¡ ¼±ÅÃÀûÀÎ ´ÜÃà۸¦ ÁöÁ¤ÇÕ´Ï´Ù(¿¹: &Save@Ctrl+S).
'+' ±âÈ£¸¦ ºÐ¸®¹®ÀÚ·Î »ç¿ëÇÏ¿© ¼öÁ¤ÀÚ¸¦ ¿¬°áÇÒ ¼ö ÀÖ½À´Ï´Ù(¿¹: @Ctrl+Shift+S).
¿¹:
´ÙÀ½Àº Á¶Ä¡ ¼¼Æ®ÀÇ ¿¹ÀÔ´Ï´Ù. ºÎ¼Ó¿ä¼Ò¿Í ¼Ó¼ºÀ» »ç¿ëÇÏ´Â ¹æ¹ý¿¡ ÁÖÀÇÇϽʽÿÀ.
<extension point = "org.eclipse.ui.actionSets">
<actionSet id="com.xyz.actionSet"
label="My Actions"
visible="true">
<menu id="com.xyz.xyzMenu"
label="XYZ Menu"
path="additions">
<separator name="group1"/>
</menu>
<action id="com.xyz.runXYZ"
label="&Run XYZ Tool"
menubarPath="com.xyz.xyzMenu/group1"
toolbarPath="Normal/XYZ"
icon="icons/runXYZ.gif"
tooltip="Run XYZ Tool"
helpContextId="com.xyz.run_action_context"
class="com.xyz.actions.RunXYZ"
enablesFor="1">
<selection class="org.eclipse.core.resources.IFile" name="*.java"/>
</action>
</actionSet>
</extension>
À§ ¿¹¿¡¼ "My Actions"¶ó°í ÁöÁ¤ÇÑ Á¶Ä¡°¡ óÀ½¿¡ °¢ Perspective ³»¿¡ Ç¥½ÃµË´Ï´Ù. ÀÌ´Â ´ÜÀÏ
¼±ÅûçÇ×(enablesFor ¼Ó¼º)¿¡ ´ëÇØ¼¸¸ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. ¶ÇÇÑ ¼±ÅûçÇ×ÀÇ ¿ÀºêÁ§Æ®°¡
ÁöÁ¤µÈ ÀÎÅÍÆäÀ̽º(IFile)¸¦ ±¸ÇöÇØ¾ß Çϸç Java ÆÄÀÏÀ̾î¾ß ÇÕ´Ï´Ù.
API Á¤º¸: class ¼Ó¼º °ªÀº org.eclipse.ui.IWorkbenchWindowActionDelegate ¶Ç´Â
org.eclipse.ui.IWorkbenchWindowPulldownDelegate¸¦ ±¸ÇöÇϴ Ŭ·¡½ºÀÇ ¿ÏÀüÇÑ À̸§À̾î¾ß
ÇÕ´Ï´Ù. pulldownÀÌ trueÀÏ °æ¿ì µÎ ¹øÂ° Ç׸ñÀ» ±¸ÇöÇØ¾ß ÇÕ´Ï´Ù. Ŭ·¡½º°¡ ½ÇÁ¦·Î ÇÊ¿äÇÑ ½ÃÁ¡¿¡ ¾Õ¼
Àüü Ç÷¯±×ÀÎÀÌ ·ÎµåµÇ´Â °ÍÀ» ¹æÁöÇϱâ À§ÇØ °¡´ÉÇÑ ³ªÁß¿¡ ÀÌ Å¬·¡½º¸¦ ·ÎµåÇÕ´Ï´Ù.
±âº» Á¦°ø ±¸Çö: Ç÷¯±×Àο¡¼ ÀÌ È®ÀåÁ¡À» »ç¿ëÇÏ¿© »õ·Î¿î »óÀ§ ·¹º§ ¸Þ´º(¿¹: µð¹ö±×)¸¦ Ãß°¡ÇÒ ¼ö
ÀÖ½À´Ï´Ù. Ç÷¯±×Àο¡¼´Â ´Ù¸¥ Ç÷¯±×ÀÎÀÌ ÇØ´ç Á¶Ä¡¸¦ Á¦°øÇÒ ¼ö ÀÖµµ·Ï À̸§ ÁöÁ¤µÈ
±×·ìÀ» Á¤ÀÇÇÒ ¼öµµ ÀÖ½À´Ï´Ù.
path ¼Ó¼º¿¡ ´ëÇÑ ´ÙÀ½ °ªÀ» »ç¿ëÇÏ¿© »óÀ§ ·¹º§ ¸Þ´º¸¦ ÀÛ¼ºÇÕ´Ï´Ù.
-
additions - â ¸Þ´º ¿ÞÂÊ¿¡ ÀÖ´Â ±×·ìÀ» ³ªÅ¸³À´Ï´Ù.
path ¼Ó¼ºÀ» »èÁ¦Çϸé additions ¸Þ´º Ç¥½ÃÁÙ ±×·ì¿¡ »õ ¸Þ´º°¡ Ãß°¡µË´Ï´Ù.
Workbench âÀÇ ±âº» ±×·ìÀº IWorkbenchActionConstants ÀÎÅÍÆäÀ̽º¿¡ Á¤Àǵ˴ϴÙ. µ¿ÀûÀÎ Á¦°øÀÇ
Äڵ忡 ÀÌ »ó¼ö¸¦ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. ±âÁ¸ Workbench ¸Þ´º ¹× µµ±¸ ¸ðÀ½°ú
¿Ïº®ÇÏ°Ô ÅëÇÕÇϱâ À§ÇØ °ªÀ» XML ÆÄÀÏ¿¡ º¹»çÇÒ ¼öµµ ÀÖ½À´Ï´Ù.
Workbench âÀÇ ´Ù¾çÇÑ ¸Þ´º ¹× µµ±¸ ¸ðÀ½ Ç׸ñÀº ¾Ë°í¸®Áò¿¡ µû¶ó Á¤Àǵ˴ϴÙ. ÀÌ °æ¿ì º°µµÀÇ ¸ÞÄ¿´ÏÁòÀ» »ç¿ëÇÏ¿©
âÀ» È®ÀåÇØ¾ß ÇÕ´Ï´Ù. ¿¹¸¦ µé¾î, »õ Workbench º¸±â¸¦ Ãß°¡Çϸé Perspective ¸Þ´º¿¡ »õ ¸Þ´º Ç׸ñÀÌ ³ªÅ¸³³´Ï´Ù. °¡Á®¿À±â,
³»º¸³»±â ¹× »õ ¸¶¹ý»ç È®Àåµµ ÀÚµ¿À¸·Î â¿¡ Ãß°¡µË´Ï´Ù.