ÓÑÇéÌáʾ£ºÈç¹û±¾ÍøÒ³´ò¿ªÌ«Âý»òÏÔʾ²»ÍêÕû£¬Çë³¢ÊÔÊó±êÓÒ¼ü¡°Ë¢Ð¡±±¾ÍøÒ³£¡ÔĶÁ¹ý³Ì·¢ÏÖÈκδíÎóÇë¸æËßÎÒÃÇ£¬Ð»Ð»£¡£¡ ±¨¸æ´íÎó
3Kµç×ÓÊé ·µ»Ø±¾ÊéĿ¼ ÎÒµÄÊé¼Ü ÎÒµÄÊéÇ© TXTÈ«±¾ÏÂÔØ ½øÈëÊé°É ¼ÓÈëÊéÇ©

Èí¼þ¹¤³Ì˼Ïë-µÚÕÂ

°´¼üÅÌÉÏ·½Ïò¼ü ¡û »ò ¡ú ¿É¿ìËÙÉÏÏ·­Ò³£¬°´¼üÅÌÉ쵀 Enter ¼ü¿É»Øµ½±¾ÊéĿ¼ҳ£¬°´¼üÅÌÉÏ·½Ïò¼ü ¡ü ¿É»Øµ½±¾Ò³¶¥²¿£¡
¡ª¡ª¡ª¡ªÎ´ÔĶÁÍꣿ¼ÓÈëÊéÇ©ÒѱãÏ´μÌÐøÔĶÁ£¡




ͼ5¡£7¡¡¡¡SoniqueÈí¼þµÄ¼¸ÖÖ½çÃæ

¡¡¡¡ÈËÃǾ­³£¸ã²»Çå³þʲôÇé¿öÏÂÓ¦¸Ã×·Çó¡°Ò»ÖÂÐÔ¡±»ò¡°¸öÐÔ»¯¡±¡£ÔÚ´ó°×Ì죬µ±ÈËÃǶ¼´©´÷ÕûÆëʱ£¬ÓÐЩÈËϲ»¶Ö»¹Ò¼¸Æ¬ÕÚÐß²¼¡£¶øµ±´ó¼Ò¶¼³àÌõÌõµØÔÚ¹²¹«Ô¡ÊÒÏ´Ôèʱ£¬È´Ò²ÓÐÈËϲ»¶´©×ÅÒ·þ¡£

Èý¡¢½çÃæµÄ¹ãÒåÃÀ
¡¡¡¡¾¡¹Ü½çÃæµÄÃÀ²¢Ã»ÓÐÔö¼ÓÈí¼þµÄ¹¦ÄÜÓëÐÔÄÜ£¬È´ÓÖÊDZØΪ¿ÉÉٵġ£Óû§Ê¹ÓýçÃæʱ£¬³ýÁËÖ±½ÓµÄ¸Ð¹ÙÃÀ¸ÐÍ⣬»¹ÓкܴóÒ»²¿·ÖÃÀ¸ÐÊǼä½ÓµÄ£¬ËüÃÇ´æÔÚÓÚÈËÃǵÄʹÓÃÌåÑéÖУ¬ÀýÈç·½±ã£¬ÊµÓõȡ£ÓëͼÐÎÓû§½çÃæÏà±È£¬ÃüÁîÐÐÊÇ×îԭʼµÄ½çÃ棬ËüÄѼÇÓÖÄÑ¿´¡£µ«¶ÔÓÚÊìÁ·µÄÓû§¶øÑÔ£¬ËûÃÇÀÖÓÚʹÓÃÃüÁîÐÐÒÔ»ñµÃ¸ßЧÂÊ¡£ÃüÁîÐÐÒò¾ßÓиßЧÂʶøÓ®µÃÁËרҵÈËÊ¿µÄϲ°®£¬ÔçÆÚµÄUnixϵͳ¾ÍÊdz¹Í·³¹Î²µÄÃüÁîϵͳ¡£¿ÉÒÔ˵£¬Ò»ÇÐÓÐÀûÓÚÈË»ú½»»¥µÄ½çÃæÉè¼ÆÒòËض¼¾ßÓйãÒåÃÀ¡£
¡¡¡¡½çÃæÉè¼ÆµÄһЩÌØÊ⿼ÂÇÒ²ÌåÏÖÁ˹ãÒåÃÀ£¬ÈçÉ跨ʹ²ÐÕÏÈËÒ²¿ÉÒÔʹÓÃÈí¼þ¡£IBM¹«Ë¾ÔÚ1985ÄêÒѾ­´´½¨Á˲ÐÕÏÈ˹ú¼ÒÖ§³ÖÖÐÐÄ¡£Apple¹«Ë¾µÄרÃŽÌÓý°ì¹«ÊÒÔòÌṩÁËһЩÓÐÀûÓÚ²ÐÕÏÈËʹÓõļÆËã»úÐÅÏ¢²úÆ·¡£

5¡£5¡¡ÏµÍ³Éè¼ÆʾÀý
¡ª¡ªÖ§³ÖЭͬ¹¤×÷µÄ½»»¥Ê½ÈýάͼÐÎÈí¼þ¿ª·¢ÏµÍ³

¡¡¡¡±¾½ÚÂÛÊö¡°Ö§³ÖЭͬ¹¤×÷µÄ½»»¥Ê½ÈýάͼÐÎÈí¼þ¿ª·¢ÏµÍ³¡±µÄϵͳÉè¼Æ£¬×÷Ϊ±¾ÕµÄʾÀý£¨¡¡È¡²ÄÓÚ×÷ÕߵIJ©Ê¿ÂÛÎŤ×÷£§ÁÖÈñ¡¡2000£§£©¡£

5¡£5¡£1¡¡Éè¼Æ±³¾°
¡¡¡¡Í¼Ðαê×¼ÔÚͼÐÎÁìÓòÓÐ×ÅÖØÒªµÄµØ룬Ëü²»½ö¼ÓËÙÁË3DÓ¦ÓóÌÐòµÄ¿ª·¢£¬¶øÇÒʹ3DÓ¦ÓóÌÐòµÄ¿ÉÒÆÖ²ÐÔ¸üºÃ¡£ÀúÊ·ÉÏÔø³öÏÖµÄͼÐαê×¼£¨»òAPI£©ÓÐCore¡¢GKS¡¢PHIGS¡¢PEX¡¢GL¡¢Dore¡¢RenderMan¡¢Hoops¡¢OpenGLµÈµÈ¡£¾­¹ý¾ºÕùÓëÌÔÌ­£¬Ä¿Ç°OpenGL³ÉΪ¹ú¼ÊÉϹ«ÈϵÄ3DͼÐι¤Òµ±ê×¼£¬ÔÚUnixÓëPCƽ̨µÃµ½¹ã·ºÓ¦Óá£OpenGLÌṩÁËÊý°Ù¸ö¿âº¯Êý£¬¿ÉÒÔ·½±ãµØ»æÖƾßÓÐÕæʵ¸ÐµÄ3DͼÐΡ£µ«ÊÇÔÚ¿ª·¢½»»¥Ê½µÄ3DͼÐÎÓ¦ÓóÌÐòʱ£¬Í¼ÐεĻæÖÆÖ»ÊÇÒ»²¿·Ö¹¤×÷£¬¸ü¶àµÄ¹¤×÷¼¯ÖÐÔÚ³¡¾°Êý¾Ý½á¹¹¡¢Í¼ÐζÔÏó¡¢Èýά½»»¥ºÍͼÐÎÓû§½çÃæµÄÉè¼ÆÉÏ¡£
¡¡¡¡ÓÉÓÚOpenGLÓë´°¿ÚϵͳÎ޹أ¬²»ÌṩÈκν»»¥ÊֶΣ¬±ØÐëÓɳÌÐòÔ±×Ô¼º±àдËùÓеĽ»»¥¹¦ÄÜ¡£²¢ÇÒOpenGL¡¡µÄ±à³Ì½Ó¿ÚÊǵͼ¶µÄCº¯Êý£¬²»Ìṩ¿É¸´ÓõĶÔÏó¿â»òÕßÓ¦ÓóÌÐò¿ò¼Ü£¬¿ª·¢Ð§Âʲ»¸ß¡£ÎªÁË¿Ë·þÕâЩÀ§ÄÑ£¬ÈËÃÇÍùÍùÔÚͼÐαê×¼Ö®ÉÏÔÙ½¨Á¢¸ü¸ß¼¶µÄ¿ª·¢¹¤¾ß£¨3D¡¡Toolkit»ò3D¡¡Engine£©¡£»ùÓÚOpenGLµÄÖøÃûµÄ¿ª·¢¹¤¾ßÓÐOpen¡¡Inventor¡¢IRIS¡¡Performer¡¢Optimeizer/Cosmo3DÒÔ¼°GLUTµÈµÈ¡£Open¡¡Inventor±»ÓþΪÊǽ»»¥Ê½3D¿ª·¢¹¤¾ßµÄ¡°ÊÂʵ±ê×¼¡±£¬µ«ÏÔȻûÓÐÒ»¸ö3D¿ª·¢¹¤¾ßÄÜÂú×ãËùÓеÄÓ¦ÓÃÐèÇó£¬3DµÄ¹ã·ºÓ¦ÓÃÐèÒª¸ü¶àµÄ¿ª·¢¹¤¾ßÖ§³Ö¡£
Ëæ׿ÆËã»úͼÐμ¼ÊõÓëÍøÂç¼¼ÊõµÄѸÃÍ·¢Õ¹£¬Á½ÕߵĽáºÏÊÆÔÚ±ØÐС£ÔÚÉÌÒµ¡¢¿ÆÑС¢½ÌÓý¡¢ÓéÀÖµÈÁìÓò£¬ÓÃÓÚ·Ö²¼Ê½ÐéÄâ»·¾³£¨Distributed¡¡Virtual¡¡Environments£»¡¡DVEs£©ºÍ¼ÆËã»úÖ§³ÖЭͬ¹¤×÷£¨puter¡¡Supported¡¡Cooperative¡¡Work£»¡¡CSCW£©µÄͼÐÎϵͳÒѳÉΪÑо¿ÓëÓ¦ÓõÄÈȵ㡣ÖøÃûµÄDVEsϵͳÓÐDIVE¡¢dVS¡¢MR¡¢Repo¡­3DµÈ¡£µ«ÊÇÕâЩDVEsϵͳȱ·¦3D¿ª·¢¹¤¾ßµÄ½»»¥Ê½Í¼Ðι¦ÄÜÒÔ¼°Í¨ÓÃÐÔ£¬¶øͨÓõÄ3D¿ª·¢¹¤¾ßÈçOpen¡¡InventorÔòÓÖ²»Ö§³Ö·Ö²¼Ê½¼ÆËãºÍЭͬ¹¤×÷¡£ÓÉÓÚÔÚ´°¿Úϵͳ¡¢Í¼ÐÎÖ§³Å¿â¡¢±à³ÌÓïÑԵȷ½Ãæ´æÔÚ²îÒ죬ÉÏÊöDVEsϵͳºÍ3D¿ª·¢¹¤¾ßÄÑÒÔ·½±ãµØ½áºÏʹÓá£
¡¡¡¡ÎÒÃǶ෽Ãæ·ÖÎöÁË3DÐèÇó¼°ÈíÓ²¼þÌõ¼þ£¬ÑÐÖÆÍê³ÉÔËÐÐÓÚPCƽ̨£¬Ö§³ÖЭͬ¹¤×÷µÄ½»»¥Ê½ÈýάͼÐÎÈí¼þ¿ª·¢ÏµÍ³£¬Èçͼ5¡£8Ëùʾ¡£ÆäÖУº
£¨1£©Intra3D¡¡2¡£0ÊÇ»ùÓÚOpenGLµÄͨÓý»»¥Ê½ÈýάͼÐÎÈí¼þ¿ª·¢¹¤¾ß£¬¿ÉÓÃÓÚ¿ìËÙ¿ª·¢Window¡¡9x/NTϵĽ»»¥Ê½ÈýάͼÐÎÓ¦ÓÃÈí¼þ¡£
£¨2£©CNC¡¡1¡£0ÊÇÖ§³ÖЭͬ¹¤×÷µÄÍøÂçͨѶ¿ª·¢ÏµÍ³£¨Cooperative¡¡work¡¡municator£©£¬ÆäºËÐÄÊÇÖ§³Ö¡°·¢²¼¡ª¶©ÔÄģʽ¡±Óë¡°×鲥ģʽ¡±µÄ·þÎñÆ÷ÓëAPI¡£
¡¡¡¡½áºÏIntra3D¡¡2¡£0ºÍCNC¡¡1¡£0£¬¿ÉÒÔ¿ìËÙ¿ª·¢Ö§³ÖЭͬ¹¤×÷µÄ½»»¥Ê½ÈýάͼÐÎÓ¦ÓÃÈí¼þ¡£¡¡¡¡¡¡¡¡¡¡¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡

ͼ5¡£8¡¡Ö§³ÖЭͬ¹¤×÷µÄ½»»¥Ê½ÈýάͼÐÎÈí¼þ¿ª·¢ÏµÍ³

5¡£5¡£2¡¡Í¨Óý»»¥Ê½ÈýάͼÐÎÈí¼þ¿ª·¢¹¤¾ß¡¡Intra3D¡¡2¡£0
¡¡¡¡Intra3D¡¡2¡£0µÄºËÐÄÊǼ¯³ÉÁ˳¡¾°Êý¾Ý½á¹¹¡¢Í¼ÐζÔÏó¡¢Èýά½»»¥Ëã·¨ºÍͼÐÎÓû§½çÃæµÄC£«£«Àà¿âÓ루ponent¡¡Object¡¡Model£©¶ÔÏó¿â£¬Ö§³ÖVisual¡¡C£«£«¡¢Visual¡¡Basic¡¢DelphiµÈÓïÑÔµÄÓ¦Óñà³Ì¡£Intra3DµÄºËÐÄ¿â·ÖËIJ㴴½¨£º
£¨1£©µÚÒ»²ãΪ¡°»ù´¡¶ÔÏóÓ뺯Êý¡±£¨Basic¡¡Objects¡¡and¡¡Functions£©£»
£¨2£©µÚ¶þ²ãΪ¡°Í¼ÐζÔÏó¡±£¨Graphical¡¡Objects£©£»
£¨3£©µÚÈý²ãΪ¡°³¡¾°Í¼Óë½Úµã¡±£¨Scene¡¡Graph¡¡and¡¡Nodes£©£»
£¨4£©µÚËIJãΪ¡°»æÖÆÓë½»»¥¡±£¨Rendering¡¡and¡¡Interaction£©¡£
Ìåϵ½á¹¹Èçͼ5¡£9Ëùʾ£¬ÆäÖи߲㹹¼þ¿ÉÒÔÒýÓõͲ㹹¼þ£¬µ«µÍ²ã¹¹¼þ²»ÄÜÒýÓø߲㹹¼þ¡£

¡¡¡¡Í¼5¡£9¡¡¡¡Intra3D¡¡2¡£0¡¡µÄÌåϵ½á¹¹

¡¡¡¡Intra3D¡¡2¡£0ÊÇÃâ·ÑÈí¼þ£¬ÓÐÅäÌ×Êé¼®¡¶½»»¥Ê½ÈýάͼÐμ¼ÊõÓë³ÌÐòÉè¼Æ¡·¡£±ê×¼°æÈí¼þÔ¼25Õ×£¬ºËÐÄ¿â7Íò¶àÐÐC£«£«´úÂëÈ«²¿¹«¿ª£¬Óû§¿ÉÒÔ·½±ãµØÐÞ¸ÄÄÚºËÒÔÊÊÓ¦²»Í¬µÄÐèÇó¡£

5¡£5¡£2¡£1¡¡Ö÷Ҫģ¿éºÍ¹¦ÄÜ
Ò»¡¢»ù´¡¶ÔÏóÓ뺯Êý²ã
£¨1£©¶¨ÒåÁËÓÃÓÚ¶ÔÏóÒýÓüÆÊýµÄÄÚ´æ¹ÜÀí»ùÀࣻ
£¨2£©Ê¸Á¿¡¢¾ØÕóÓëËÄÔª×éÔËË㣬Êó±ê¸ú×ÙÇòËã·¨£»
£¨3£©µãÕó×ÖÌåÓëÈýάʸÁ¿×ÖÌåÊä³ö£¬³£ÓÃÓÚÊý¾Ý¿ÉÊÓ»¯Í¼ÐεÄÊý¾Ý±ê×¢£»
£¨4£©Í¼ÏñÊäÈëÊä³öÒÔ¼°ÎÆÀíÓ³É䣬֧³ÖBMP¡¢GIF¡¢JPEG¡¢SGI¡¢TGAµÈͼÏñ¸ñʽ£»
£¨5£©³£Óü¸ºÎͼԪµÄ»æÖÆ£¬Èç׶¡¢Öù¡¢Çò¡¢»·µÈ£¬²¢Ö§³ÖSweptÐÎÌ壬ÂÝÐýÌåµÄ»æÖÆ£»
£¨6£©Ìṩ450ÓàÖÖ²ÄÖÊ£¬ÔÚµÚËIJãÖпÉÒÔ½»»¥Ê½±à¼­ÕâЩ²ÄÖÊ¡£
¶þ¡¢Í¼ÐζÔÏó²ã
¡¡¡¡Í¼ÐζÔÏóÄܽ«Êý¾Ýת»¯Îª¼¸ºÎÄ£ÐͲ¢¿ÉÒÔ»æÖƳöÀ´¡£Intra3D¡¡2¡£0°æÌṩÁËÈýÀàͼÐζÔÏó£º
£¨1£©³£Óü¸ºÎ¶ÔÏó£¬È糤·½Ì塢׶Ìå¡¢Ô²ÖùÌå¡¢ÇòÌå¡¢Ô²»·Ìå¡¢SweptÐÎÌåµÈ£»
£¨2£©¶à±ßÐÎÄ£ÐͶÔÏ󣬿ÉÓÃÓÚ»æÖÆAutodesk¹«Ë¾¡£3dsÄ£ÐͺÍWavefront¹«Ë¾µÄ¡£objÄ£ÐÍ£»
£¨3£©ÉÌҵͳ¼ÆͼÐζÔÏó£¬ÈçÖùÐÎͼ¡¢´ø״ͼ¡¢ÌõÐÎͼ¡¢ÕÛÏßͼ¡¢Ãæ»ýͼ¡¢±ýͼ¡¢ËþÐÎͼ¡¢ÇúÏßͼ¡¢ÇúÃæͼ¡¢½ø³Ìͼ¡¢¹ÉƱͼµÈ¡£
¡¡¡¡Í¼ÐζÔÏóµÄ¿ª·¢ÓëÓ¦ÓÃÎÊÌâÃÜÇÐÏà¹Ø£¬Óû§¿ÉÒÔʹÓü̳з½·¨À©³äеÄͼÐζÔÏ󣬶ø²»»áÓ°Ïìµ½ÆäËüÈý²ãµÄ¹¹¼þ¡£
Èý¡¢³¡¾°Í¼Óë½Úµã
¡¡¡¡³¡¾°Í¼£¨Scene¡¡Graph£©ÊÇÓÐÏòÎÞ»·Í¼£¬Scene¡¡GraphµÄÖ÷Òª½ÚµãÓУº£¨1£©SceneNodeÊÇËùÓнڵãµÄ»ùÀà¡£ÔÚSceneNodeÖж¨ÒåÁ˾ֲ¿×ø±êϵÒÔ¼°ÏàÓ¦µÄͼÐα任£¬ÕâÑù±ãÓÚµÚËIJãÒÔͬÑùµÄ²Ù×÷·½Ê½ÊµÏÖÈýά½»»¥¡££¨2£©Ïà»ú½Úµã£¨CameraNode£©Ö§³ÖƽÐÐͶӰÓë͸ÊÓͶӰ£¬Ö§³Ö¶à¸öÏà»úÇл»¡££¨3£©¹âÔ´½ÚµãÓÐÈýÖÖ£ºÆ½ÐйâÔ´½Úµã£¨DirLightNode£©¡¢µã¹âÔ´½Úµã£¨PointLightNode£©ºÍ׶¹âÔ´½Úµã£¨SpotLightNode£©¡££¨4£©ÐÎÌå½Úµã£¨ShapeNode£©ÓÃÓÚÒýÓÃͼÐζÔÏó£¬ÓйØͼÐζÔÏóµÄÈýά½»»¥¾ùÓÉShapeNode´¦Àí¡£
ËÄ¡¢»æÖÆÓë½»»¥²ã
¡¡¡¡Intra3DµÄ½»»¥·ÖÁ½ÀࣺһÀàÊǶÔÐÎÌå¡¢¹âÔ´ºÍÏà»úµÄÖ±½Ó²Ù×÷£¬ÁíÒ»ÀàÊÇÕæʵ¸ÐÊôÐԵı༭¡£Intra3DµÄ³¡¾°ÊÓͼ¹¹¼þ£¨SceneView£©·â×°Á˽»»¥Ê½»æÖƵÄËùÓÐϸ½Ú£¬ÈçÏûÏ¢´¦Àí¡¢³¡¾°½ÚµãµÄ±éÀú»æÖÆ¡¢¶àÖزÉÑùÏû¾â³Ý¡¢Êó±ê½»»¥µÈ¡£ÎªÁ˱ãÓڱ༭Õæʵ¸ÐÊôÐÔ£¬Intra3D¶¨ÖÆÁËһЩ³£ÓöԻ°£ºÊ¸Á¿×ÖÌå¶Ô»°£¨FontDialog£©¡¢ÑÕÉ«¶Ô»°£¨ColorDialog£©¡¢²ÄÖÊ¿â¶Ô»°£¨MaterialLibDialog£©¡¢²ÄÖʶԻ°£¨MaterialDialog£©Óë¹âÔ´¶Ô»°£¨DirLightDialog£»¡¡PointLightDialog£»¡¡SpotLightDialog£©¡£

5¡£5¡£2¡£2¡¡Óû§½çÃæÉè¼Æ
¡¡¡¡Intra3DµÄ³¡¾°ÊÓͼ¹¹¼þSceneViewÓÃÓÚ¿ìËÙ´´½¨½»»¥Ê½3DÓ¦ÓóÌÐòµÄÖ÷½çÃæ¡£SceneViewÖ§³Öselecting¡¢scaling¡¢rotating¡¢translating¡¢creating¡¢deletingµÈÈýÊ®ÓàÖÖ²Ù×÷£¬²¢Ìṩ¹¤¾ßÌõ·½±ãÓÚ½»»¥£¬Èçͼ5¡£10Ëùʾ¡£
¡¡¡¡ÎªÁ˱༭Õæʵ¸ÐÊôÐÔ£¬³£ÐèÔÚ¶Ô»°¿òÖлæÖÆ3D¡¡Í¼ÐΡ£MicrosoftµÄ´°¿Úϵͳ²»Ìṩ3DµÄ¶Ô»°´°¿Ú¡£Ê¹ÓÃIntra3DµÄWindow3D¹¹¼þ¿ÉÔÚ¶Ô»°¿òÖд´½¨¶à¸ö3DÊÓͼ£¬Í¼5¡£11µÄ²ÄÖʶԻ°ºÍͼ5¡£12µÄ²ÄÖÊ¿â¶Ô»°¶¼Ê¹ÓÃÁËWindow3D¹¹¼þ¡£ÑÕÉ«±à¼­ÊÇ3DͼÐγÌÐòÖÐ×î³£ÓõĽ»»¥£¬²ÄÖÊÓë¹âÔ´µÄ±à¼­Êµ¼ÊÉÏÊÇͨ¹ý¸Ä±äÑÕÉ«·ÖÁ¿À´ÊµÏֵġ£ÐèÒª½øÐÐÑÕÉ«±à¼­µÄ½»»¥¾ùÉæ¼°HSVÓëRGBģʽµÄÑÕɫת»»¡£Intra3DµÄ¡°»æÖÆÓë½»»¥²ã¡±ÊµÏÖÁËÕâЩ¼ÆË㣬²¢ÇÒÌṩ²ÊÉ«µÄ»¬¶¯ÌõÓÃÓÚÊó±ê½»»¥¡£Í¼5¡£13¡¢Í¼5¡£14·Ö±ðΪµã¹âÔ´¶Ô»°ºÍÑÕÉ«¶Ô»°¡£
¡¡¡¡Í¼5¡£10¡¡¡¡ÓÃÓÚÖ±½Ó²Ù×÷µÄÈýά½»»¥¹¤¾ßÌõ
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Í¼5¡£11¡¡¡¡²ÄÖʶԻ°¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Í¼5¡£12¡¡¡¡²ÄÖÊ¿â¶Ô»°¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Í¼5¡£13¡¡µã¹âÔ´¶Ô»°¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Í¼5¡£14¡¡¡¡ÑÕÉ«¶Ô»°

5¡£5¡£3¡¡Ö§³ÖЭͬ¹¤×÷µÄÍøÂçͨѶ¿ª·¢ÏµÍ³¡¡CNC¡¡1¡£0
×î¼òµ¥µÄЭͬ¹¤×÷ģʽÊÇÈÃÁ½¸ö¿Í»§»úÖ±½ÓͨѶ£¬¿ÉÒÔÓÃSocket±à³ÌʵÏÖ¡£¼ÙÉèÓС¡n¡¡¸ö¿Í»§»ú²Î¼ÓЭͬ¹¤×÷£¬Ã¿¸ö¿Í»§»ú½«ÓëËùÓÐÆäËüµÄ¿Í»§»úͨѶ¡£ÄÇô×ܹ²´æÔÚn£¨n¡­1£©/2¡¡¸öSocketÖ±½ÓͨѶ£¬²¢ÇÒÿ¸ö¿Í»§»úµÄ±ä¶¯½«µ¼ÖÂÆäËü¿Í»§»úµÄÐ޸ġ£ÕâÖÖSocketÖ±½ÓͨѶʹµÃЭͬ¹¤×÷µÄ¹ÜÀíºÍ¿Í»§»úµÄ³ÌÐòÉè¼Æ±äµÃ·Ç³£À§ÄÑ¡£CNCϵͳÌṩÁËÖ§³Ö¡°·¢²¼¡ª¶©ÔÄ£¨Publish¡­Subscribe£©¡±Óë¡°×é²¥£¨Multicast£©¡±¡¡Ä£Ê½µÄ·þÎñÆ÷ÓëAPI£¬¿ÉÒÔ¸ßЧµØ¹ÜÀí¶à¸ö×éȺµÄЭͬ¹¤×÷£¬²¢Ê¹µÃ¿Í»§»úµÄ³ÌÐòÉè¼ÆÊ®·Ö¼òµ¥¡£CNC¡¡1¡£0µÄϵͳ½á¹¹Èçͼ5¡£15Ëùʾ¡£
¡¡¡¡CNC¡¡·þÎñÆ÷½«¿Í»§»ú·Ö×é¹ÜÀí¡£ÔÚ¡°·¢²¼¡ª¶©ÔÄ¡±Ä£Ê½ÖУ¬½«²úÉúÊý¾ÝµÄ½ø³Ì³ÆΪÉú²úÕߣ¨Producer£©£¬½«½ÓÊÜÊý¾ÝµÄ½ø³Ì³ÆΪÏû·ÑÕߣ¨Consumer£©¡£Éú²úÕß¿ÉÒÔÏò·þÎñÆ÷·¢²¼Êý¾Ý£¬·þÎñÆ÷±£´æÕâЩÊý¾Ý¡£Ïû·ÑÕß¿ÉÒÔÏò·þÎñÆ÷¶©ÔÄÊý¾Ý¡£Ã¿¸ö¿Í»§»ú¿ÉÄÜÊǺܶàÊý¾ÝµÄÉú²úÕß»òÏû·ÑÕß¡£Í¬Ò»Ê±¿Ì£¬CNCϵͳÔÊÐíÓÐÈÎÒâ¶à¸öÉú²úÕߺÍÏû·ÑÕß´æÔÚ¡£CNCµÄ¡°·¢²¼¡ª¶©ÔÄ¡±¡¡¹¦ÄÜÊÇÓÃTCPЭÒéʵÏֵġ£
ÔÚ¡°×é²¥¡±¡¡Ä£Ê½ÖУ¬·þÎñÆ÷¶¯Ì¬µØ·ÖÅäÿ¸ö×éµÄ×é²¥µØÖ·¡£¿Í»§»ú¿ÉÒÔÏò·þÎñÆ÷ÉêÇë¼ÓÈëÈÎÒâ×飬ÔÊÐíÏòÈÎÒâ×é²¥·ÅÏûÏ¢£¬·þÎñÆ÷²»±£´æÕâЩ×é²¥ÏûÏ¢¡£CNCµÄ¡°×é²¥¡±¹¦ÄÜÊÇÓÃUDPЭÒéʵÏֵġ£

ͼ5¡£15¡¡¡¡CNC¡¡1¡£0¡¡µÄϵͳ½á¹¹

5¡£5¡£3¡£1¡¡¡¡CNC¡¡¿Í»§»úµÄAPIÉè¼Æ
ÀàCNCClient¿Í»§»úÓÃÀ´ÊµÏÖ¡°·¢²¼¡ª¶©ÔÄ¡±ºÍ¡°×é²¥¡±¹¦ÄÜ£¬Ö÷Òª½Ó¿Ú£¨¹«Óк¯Êý£©ÈçÏ£º
class¡¡CNCClient
¡¡¡¡£ûpublic£º
BOOL¡¡Connect£¨¡­£©£»//¡¡Á¬½Ó·þÎñÆ÷
BOOL¡¡Disconnect£¨£©£»//¡¡Óë·þÎñÆ÷¶Ï¿ªÁ¬½Ó
BOOL¡¡PublishData£¨¡­£©£»//¡¡Ïò·þÎñÆ÷·¢²¼Êý¾Ý
BOOL¡¡QueryData£¨¡­£©£»¡¡//¡¡Ïò·þÎñÆ÷²éѯÊý¾Ý
BOOL¡¡SubscribeData£¨¡­£©£»//¡¡Ïò·þÎñÆ÷¶©ÔÄÊý¾Ý
GROUPIP¡¡QueryGroupIP£¨¡­£©£»¡¡//¡¡Ïò·þÎñÆ÷²éѯ×é²¥µØÖ·
DWORD¡¡MulticastMessage£¨¡­£©£»//¡¡·¢ËÍ×é²¥ÏûÏ¢
virtual¡¡void¡¡MessageResponse£¨¡­£©£»//¡¡ÏìÓ¦×é²¥ÏûÏ¢
¡­
£ý£»
Ò»¡¢¿Í»§³ÌÐòµÄ¡°·¢²¼¡±Ð­Òé
¿Í»§»úÏò·þÎñÆ÷·¢²¼µÄÿ¸öÊý¾Ý±¨¾ùº¬ÓÐÊý¾ÝÀàÐÍ¡¢¹¤×÷×éÃû³Æ¡¢Êý¾ÝÃû³Æ¡¢ÉúÃüÆÚºÍÊý¾Ý³¤¶ÈµÄÐÅÏ¢¡£±¨ÎĸñʽÈçͼ5¡£16Ëùʾ£¬Ê
·µ»ØĿ¼ ÉÏÒ»Ò³ ÏÂÒ»Ò³ »Øµ½¶¥²¿ ÔÞ£¨5£© ²È£¨4£©
δÔĶÁÍꣿ¼ÓÈëÊéÇ©ÒѱãÏ´μÌÐøÔĶÁ£¡
ÎÂÜ°Ìáʾ£º ο´Ð¡ËµµÄͬʱ·¢±íÆÀÂÛ£¬Ëµ³ö×Ô¼ºµÄ¿´·¨ºÍÆäËüС»ï°éÃÇ·ÖÏíÒ²²»´íŶ£¡·¢±íÊéÆÀ»¹¿ÉÒÔ»ñµÃ»ý·ÖºÍ¾­Ñé½±Àø£¬ÈÏÕæдԭ´´ÊéÆÀ ±»²ÉÄÉΪ¾«ÆÀ¿ÉÒÔ»ñµÃ´óÁ¿½ð±Ò¡¢»ý·ÖºÍ¾­Ñé½±ÀøŶ£¡