17. ÆÄÀÏ °ü·Ã ÇÔ¼ö AutoLISP´Â ASCII ÄÚµåÀÇ ÅØ½ºÆ® ÆÄÀϸ¸À» Áö¿øÇϸç, ´õ¿íÀÌ ÇÑ °³ÀÇ ÆÄÀÏ¿¡ ´ëÇØ¼ Read¿Í Write¸¦ µ¿½Ã¿¡ Áö¿øÇÏ Áö ¾Ê¾Æ ¸¹Àº Á¦¾àÀÌ µû¸¨´Ï´Ù. º¹ÀâÇÑ µ¥ÀÌÅ͸¦ ÆÄÀÏÀ» ÅëÇØ ó¸®ÇÒ ¶§´Â ObjectARX³ª VBA¸¦ »ç¿ëÇÏ´Â ÂÊÀÌ ÈξÀ È¿À²ÀûÀÌÁö¸¸ Ç×»ó ±×·¯ÇϵíÀÌ À߸¸ »ç¿ëÇÏ¸é ¸Å¿ì À¯¿ëÇÏ°Ô ÇÁ·Î±×·¥¿¡ Àû¿ëÇÒ ¼ö°¡ ÀÖ½À´Ï´Ù. ÇÏÁö¸¸ ¿äÁòÀº ÄÄ Ç»ÅÍ ¼º´ÉÀÌ ¶Ù¾î ³ª¹Ç·Î LIST¸¦ ÀÌ¿ëÇØ¼ ó¸®ÇÏ´Â °Íµµ ÈǸ¢ÇÑ ´ë¾ÈÀ̶ó ÇÒ ¼ö ÀÖ°Ú½À´Ï´Ù. AutoLISPÀº µ¥ÀÌÅÍ Å¸ÀÔ¿¡ »ó°ü¾øÀÌ ÆÄÀÏ °ü·Ã ÇÔ¼ö¸¦ ÅëÇØ¼ ºÒ·¯¿Â ¸ðµç µ¥ÀÌÅÍ´Â ¹®ÀÚ¿·Î ÀνÄÇϹǷΠ¹®ÀÚ¿ ÀÌ¿ÜÀÇ µ¥ÀÌÅÍ(¼ýÀÚ, ¸®½ºÆ® µî)¸¦ ÆÄÀÏ¿¡¼ ÀÐ¾î »ç¿ëÇÒ ¶§´Â º¯È¯ ÇÔ¼ö¸¦ »ç¿ëÇØ¼ º¯È¯À» ÇØ¾ß ÇÕ´Ï´Ù. µ¥ÀÌÅ͸¦ »ç¿ëÇÏÁö ¾Ê´Â´Ù¸é º¯È¯ÇÏÁö ¾Ê¾Æµµ ¹«¹æÇÏÁö¸¸........... ÆÄÀÏ¿¡ ±â·ÏÀ» ÇÒ ¶§µµ Àд °Í°ú ¸¶Âù°¡Áö·Î ¹®ÀÚ¿¸¸ ±â·ÏÇÒ ¼ö ÀÖÀ¸¸ç ¹®ÀÚ¿ ÀÌ¿ÜÀÇ µ¥ÀÌÅ͸¦ ±â·ÏÇÏ°í ½ÍÀ» ¶§´Â ¿ª½Ã º¯È¯ ÇÔ¼ö¸¦ »ç¿ëÇØ¼ º¯È¯À»....... ÀÌó·³ AutoLISPÀº ÆÄÀÏ¿¡¼ Àаųª ±â·ÏÇÒ ¶§ ¹®ÀÚ¿¸¸À» ÀνÄÇϱ⠶§¹®¿¡ ÆÄÀÏ ÇÔ¼ö¸¦ »ç¿ëÇØ¼ ÇÁ·Î±×·¥À» ÇÒ ¼ö ÀÖ´Â ¹üÀ§°¡ ±ØÈ÷ Á¦ÇÑ µË´Ï´Ù.
(1) ±â´É »ç¿ëÀÚ°¡ ÁöÁ¤ÇÑ Mode¿¡ µû¶ó Àб⠶Ǵ ¾²±â ¸ðµå·Î ÆÄÀÏÀ» ¿ÀÇÂÇϸç, ÆÄÀÏÀ» ¼º°øÀûÀ¸·Î ¿ÀÇÂÇϸé AutoCAD´Â "File-Descriptor(ÆÄÀÏ ±â¼ú¾î)"¸¦ ¹ÝȯÇÕ´Ï´Ù. "File-Descriptor"´Â ÆÄÀÏ Á¾·á½Ã ¹Ýµå½Ã ÇÊ¿äÇϸç, °íÁ¤ÀûÀÌÁö ¾Ê½À´Ï´Ù. µû¶ó¼ ¹Ýµå½Ã [SETQ] ÇÔ¼ö¸¦ »ç¿ë ÇÏ¿© ÀúÀåÇÏ¿©Çϸç Read(Write)½Ã¿Í ÆÄÀÏ Á¾·á½Ã "File-Descriptor"¸¦ ÁöÁ¤ÇØ ÁÖ¾î¾ß ÇÕ´Ï´Ù. ÁÖÀÇ : [open] ÇÔ¼ö´Â À§¿¡¼ ¼³¸íÇßµíÀÌ Àбâ¿Í ¾²±â, Ãß°¡ Áß¿¡¼ ÇѰ¡Áö Mode·Î¸¸ ¿ÀÇÂÀÌ °¡´ÉÇÕ´Ï´Ù.
(2) »ç¿ë¹ý (open "File-Name" "Mode") ** Âü°í "File-Name"¿¡ µð·ºÅ丮¸¦ ÁöÁ¤ÇÏ·Á¸é "/" ¶Ç´Â "\\"¸¦ »ç¿ëÇØ¾ß ÇÑ´Ù.([Load] ÇÔ¼ö ÂüÁ¶)
(3) ¿¹Á¦
(1) ±â´É "File-Descriptor"·Î ÁöÁ¤µÈ ÆÄÀÏÀ» Á¾·á½Ã۰í "nil"À» ÀÀ´äÇÕ´Ï´Ù. [close] ÇÔ¼ö´Â ¹Ýµå½Ã "File-Descriptor"¸¦ Æ÷ÇÔÇØ¾ß Çϸç, "File-Descriptor"´Â ÆÄÀÏ Open½Ã ¾òÀ» ¼ö ÀÖ½À´Ï´Ù.
(2) »ç¿ë¹ý (close File-Descriptor)
(3) ¿¹Á¦
(1) ±â´É Űº¸µå ¶Ç´Â ÆÄÀÏ¿¡¼ ¹®ÀÚ¿À» ÀоîµéÀÔ´Ï´Ù. ÆÄÀÏÀº "File-Descriptor"·Î ÁöÁ¤µÇ¸ç, ÁöÁ¤µÈ ÆÄÀÏ¿¡¼ ÇÑ ÁÙÀ» ¹®ÀÚ¿·Î ÀоîµéÀÔ´Ï´Ù. ÇÑ ÁÙÀ» ÀÐÀº ´ÙÀ½ ´Ù½Ã "read-line"Çϸé ÀÚµ¿À¸·Î ´ÙÀ½ ÁÙÀ» ÀÐÀ¸¸ç, ÆÄÀÏÀÇ ³¡¿¡ µµ´ÞÇϸé "nil"À» ÀÀ´äÇÕ´Ï´Ù. ** Âü°í ¨ç [read-line] ÇÔ¼ö¸¦ »ç¿ëÇϱâ À§Çؼ´Â ¸ÕÀú, ÆÄÀÏÀ» ¿ÀÇÂ(open)ÇØ¾ß ÇÕ´Ï´Ù. ¸¸¾à, ÆÄÀÏÀÌ Á¾·á(close)µÇ°Å³ª, ¿ÀǵǾî ÀÖÁö ¾ÊÀ¸¸é ¿¡·¯°¡ ¹ß»ýÇÕ´Ï´Ù. ¨è List ÇüÅ·ΠÀúÀåµÇ¾î ÀÖ´Â ÆÄÀÏÀ» Àоîµé¿©µµ AutoLISP¿¡¼´Â ´ÜÀÏ ¹®ÀÚ¿·Î ÀνÄÇÕ´Ï´Ù.
(2) »ç¿ë¹ý (read-line "File-Descriptor")
(3) ¿¹Á¦
(4) ¿¹Á¦ ÇÁ·Î±×·¥
(1) ±â´É Űº¸µå ¶Ç´Â ÆÄÀÏ¿¡¼ ÇϳªÀÇ ¹®ÀÚ¸¦ Àоî ASCII ÄÚµå·Î Ãâ·ÂÇÕ´Ï´Ù. "File-Descriptor"°¡ ÁöÁ¤µÇ¾î ÀÖÀ¸¸é, ÆÄÀÏ¿¡¼ ÇϳªÀÇ ¹®ÀÚ¸¦ Àоî ASCII ÄÚµå·Î Ãâ·ÂÇϸç "File-Descriptor"°¡ ÁöÁ¤µÇÁö ¾ÊÀ¸¸é, »ç¿ëÀÚ°¡ Űº¸µå·Î ÀÔ·ÂÇϱ⸦ ±â´Ù¸³´Ï´Ù. [read-line] ÇÔ¼ö¿Í °°ÀÌ ÇÑ ÁÙÀ» ÀÐÀº ´ÙÀ½ ´Ù½Ã [read-char]ÇÏ¸é ´ÙÀ½ ¶óÀÎÀ» ÀнÀ´Ï´Ù.
(2) »ç¿ë¹ý (read-char "File-Descriptor")
(3) ¿¹Á¦
(1) ±â´É È¸é ¶Ç´Â ÆÄÀÏ¿¡ ¹®ÀÚ¿À» ¾¹´Ï´Ù. ¾²±â ¸ðµå·Î ¿ÀÇÂµÈ "File-Descriptor"°¡ ÁöÁ¤µÇ¾î ÀÖÀ¸¸é ÆÄÀÏ¿¡ ¹®ÀÚ¿À» ±â·ÏÇÕ´Ï´Ù. [write-line]Àº °³Ç๮ÀÚ(\n)¸¦ Æ÷ÇÔÇϹǷΠÀÚµ¿À¸·Î ÁÙ ¹Ù²ÞÀÌ ÀϾ´Ï´Ù. µû¶ó¼, ±â·ÏµÇ´Â ¹®ÀÚ¿Àº º°µµ ·Î °³Ç๮ÀÚ(\n)À» Æ÷ÇÔÇÒ Çʿ䰡 ¾ø½À´Ï´Ù.
(2) »ç¿ë¹ý (write-line "String" "File-Descriptor")
(3) ¿¹Á¦ (write-line "Smaple Write Line" fileop1) (setq swl "Test Write line") (write-line swl fileop1)
(4) ¿¹Á¦ ÇÁ·Î±×·¥
(1) ±â´É ¾²±â, Ãß°¡ ¸ðµå·Î ¿ÀÇÂµÈ ÆÄÀÏ¿¡ ÁöÁ¤ÇÑ ¹®ÀÚÀÇ ASCII ÄÚµå °ªÀ» ±â·ÏÇÕ´Ï´Ù. (2) »ç¿ë¹ý (write-char Number File-descriptor) (3) ¿¹Á¦ (write 65 fileop1) (write 66 fileop1) (write 67 fileop1)
7. ¿¹Á¦ ÇÁ·Î±×·¥ (1) ÁöÁ¤ÇÑ ÆÄÀÏÀÇ ³»¿ëÀ» º¹»ç
(2) ÆÄÀÏÀÇ ³»¿ë¿¡¼ »ç¿ëÀÚ°¡ ÁöÁ¤ÇÑ ¶óÀÎÀ» Àбâ
(3) ¼±ÅÃÇÑ PLineÀÇ VertexµéÀ» ÆÄÀÏ¿¡ ±â·Ï
Àû»ö ¹ÙÅÁÀÇ ¶óÀÎÀº XY Æ÷ÀÎÆ®¸¦ ºÐ¸®ÇÏ´Â ±¸ºÐÀÚ¸¦ °ø¹é(" ")À¸·Î ¼³Á¤ÇÑ °ÍÀÔ´Ï´Ù. ¸¸¾à ÄÞ¸¶(,)³ª ±âŸ ´Ù¸¥ ¹®ÀÚ¸¦ »ç¿ëÇÏ°í ½Í´Ù¸é " " ºÎºÐÀ» ±³Ã¼ÇÏ¸é µË´Ï´Ù. ÄÞ¸¶ »ç¿ë ¿¹ : (write-line (strcat (rtos (cadr wonso)) "," (rtos (caddr wonso))) WFile)
(4) ¼±ÅÃÇÑ ÆÄÀÏÀÇ Vertex·Î PLine ±×¸®±â
À§ ÇÁ·Î±×·¥Àº 3¹ø ¿¹Á¦¸¦ ÅëÇØ¼ ¹Þ¾Æ ÀúÀåÇÑ ÁÂÇ¥µé·Î PLine¸¦ »ý¼ºÇÏ´Â ÇÁ·Î±×·¥ÀÔ´Ï´Ù. Àû»ö ¹ÙÅÁÀÇ ¶óÀÎÀº ±¸ºÐÀÚ¸¦ ÀνÄÇØ¼ XY Æ÷ÀÎÆ®¸¦ ºÐ¸®ÇÏ´Â ºÎºÐÀÔ´Ï´Ù. ÄÞ¸¶³ª ±âŸ ´Ù¸¥ ±¸ºÐÀÚ¸¦ »ç¿ëÇÏ¿´´Ù¸é 3¹ø ¿¹Á¦Ã³·³ " " ºÎºÐÀ» µ¿ÀÏÇÏ°Ô º¯°æÇØÁÖ¸é µË´Ï´Ù. ÄÞ¸¶ »ç¿ë ¿¹ : (= (substr rline t_num 1) ",")
** File Descriptor? File Descriptor´Â ÆÄÀÏ °ü¸®¸¦ À§ÇØ ½Ã½ºÅÛÀÌ ÇÊ¿ä·Î ÇÏ´Â Á¤º¸¸¦ °¡Áö°í ÀÖ½À´Ï´Ù. ÀϹÝÀûÀ¸·Î File Descriptor¿¡ Æ÷ÇԵǴ ³»¿ëÀº ´ÙÀ½°ú °°½À´Ï´Ù. ¨ç ÆÄÀÏÀÇ ±âÈ£Çü À̸§ ¨è º¸Á¶ ±â¾ïÀåÄ¡»óÀÇ ÆÄÀÏ À§Ä¡ ¨é ÆÄÀÏÀÇ ±¸Á¶ ¨ê º¸Á¶ ±â¾ï ÀåÄ¡ÀÇ À¯Çü ¨ë ¿¢¼¼½º Á¦¾î µ¥ÀÌÅÍ ¨ì ÆÄÀÏÀÇ À¯Çü ¨í Á¦°Å½Ã±â ¨î »ý¼º½Ã±â ¨ï ÃÖÁ¾ ¼öÁ¤ ½Ã±â ¨ð ¿¢¼¼½º Ƚ¼ö À§ÀÇ ³»¿ëµéÀº ´Ù¸¥ ÇÁ·Î±×·¥ ¾ð¾î¿¡¼ °¡Áö°í ÀÖ´Â ³»¿ëÀÔ´Ï´Ù. AutoLISP¿¡¼´Â ¾î¶² ³»¿ëÀ» °¡Áö°í ÀÖ´ÂÁö´Â ÀÚ·á°¡ ¾ø¾î¼............... ¾Æ¸¶µµ °ÅÀÇ ºñ½ÁÇÑ ³»¿ëÀ» °¡Áö°í ÀÖÀ» °Å¶ó »ý°¢µË´Ï´Ù.
|