¡¶Èí¼þ¹¤³Ì˼Ïë¡·

ÏÂÔر¾Êé

Ìí¼ÓÊéÇ©

Èí¼þ¹¤³Ì˼Ïë- µÚ34²¿·Ö


°´¼üÅÌÉÏ·½Ïò¼ü ¡û »ò ¡ú ¿É¿ìËÙÉÏÏ·­Ò³£¬°´¼üÅÌÉ쵀 Enter ¼ü¿É»Øµ½±¾ÊéĿ¼ҳ£¬°´¼üÅÌÉÏ·½Ïò¼ü ¡ü ¿É»Øµ½±¾Ò³¶¥²¿£¡
¡¡¡¡ÎªÁ˱༭Õæʵ¸ÐÊôÐÔ£¬³£ÐèÔÚ¶Ô»°¿òÖлæÖÆ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Ëùʾ£¬Êý¾Ý½á¹¹¼û¡¡DataPublish¡¡£º
struct¡¡DataPublish
¡¡¡¡£û
BYTE¡¡iDataType£»//¡¡2¡¡¸ö×Ö½ÚÊý¾ÝÀàÐÍ£¬ºê¶¨ÒåΪDATA_PUBLISH
charstrGroupName£§16£§£»//¡¡16¸ö×ֽڵŤ×÷×éÃû×Ö
charstrDataName£§16£§£»//¡¡16¸ö×Ö½ÚµÄÊý¾ÝÃû×Ö
DWORDdwLifeTime£»//¡¡4¡¡¸ö×Ö½ÚµÄÊý¾ÝÉúÃüÆÚ£¬ÒÔÃëΪµ¥Î»
DWORDdwLength£»//¡¡4¡¡¸ö×Ö½ÚµÄÊý¾ÝÄÚÈݵij¤¶È
char*pchContent£»//¡¡Êý¾ÝÄÚÈÝ
¡¡¡¡£ý£»

¡¡¡¡¡¡¡¡¡¡2×Ö½Ú¡¡¡¡¡¡¡¡¡¡¡¡16×Ö½Ú¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡16×Ö½Ú¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡4×Ö½Ú¡¡¡¡¡¡¡¡¡¡¡¡4×Ö½Ú

ͼ5¡£16¡¡¡¡ÓÃÓÚ·¢²¼µÄ±¨Îĸñʽ

¶þ¡¢¿Í»§³ÌÐòµÄ¡°¶©ÔÄ¡±Ð­Òé
¡¡¡¡¿Í»§»úÏò·þÎñÆ÷¶©ÔÄÊý¾Ý·ÖÁ½²½ÊµÏÖ£º
£¨1£©Ïȵ÷Óú¯ÊýQueryDataÏò·þÎñÆ÷·¢ËÍÒ»¸ö¡¡DataQuery¸ñʽµÄ±¨ÎÄ£¬ÓÃÓÚ²éѯҪ¶©ÔĵÄÊý¾ÝÊÇ·ñ´æÔÚ¡£
struct¡¡DataQuery
¡¡¡¡£û
¡¡¡¡BYTEiDataType£»//¡¡2¡¡¸ö×Ö½ÚÊý¾ÝÀàÐÍ£¬ºê¶¨ÒåΪDATA_QUERY
char¡¡strGroupName£§16£§£»//¡¡16¸ö×ֽڵŤ×÷×éÃû×Ö
¡¡¡¡char¡¡strDataName£§16£§£»¡¡//¡¡16¸ö×Ö½ÚµÄÊý¾ÝÃû×Ö
£ý£»
£¨2£©·þÎñÆ÷½ÓÊÕµ½²éѯʱ£¬°´ÕÕ¡¡DataQuery½á¹¹ÖеÄstrGroupNameºÍstrDataName½øÐÐËÑË÷¡£Èç¹û¸ÃÊý¾Ý²»´æÔÚ£¬ServerÏòClient·¢ËÍÒ»¸öFALSE±êÖ¾¡£Èç¹û¸ÃÊý¾Ý´æÔÚ£¬·þÎñÆ÷ÏÈÏò¿Í»§»ú·¢ËÍÒ»¸öTRUE±êÖ¾£¬Ö®ºóÁ¢¼´ÔÙÏò¿Í»§»ú·¢Ë͸ÃÊý¾Ý£¨DataPublish¸ñʽ£©¡£¡¡
¡¡¡¡Èç¹û¿Í»§»úµÃµ½TRUE±êÖ¾µÄ²éѯ½á¹û£¬¾Íµ÷Óú¯ÊýSubscribeDataÀ´½ÓÊÕ·þÎñÆ÷·¢Ë͹ýÀ´µÄÊý¾Ý¡£

Èý¡¢¿Í»§³ÌÐòµÄ¡°×é²¥¡±Ð­Òé
¿Í»§»úÏȵ÷Óú¯ÊýQueryGroupIPÏò·þÎñÆ÷·¢ËÍÒ»¸öGroupAddress¸ñʽµÄ±¨ÎÄ£¬ÓÃÓÚ²éѯ×é²¥µØÖ·¡£·þÎñÆ÷·µ»ØÏàÓ¦µÄÊ®½øÖƵã·ÖʽµÄIPµØÖ·¡£
struct¡¡GroupAddress
¡¡¡¡£û
¡¡¡¡BYTEiDataType£»//¡¡2¡¡¸ö×Ö½ÚÊý¾ÝÀàÐÍ£¬ºê¶¨ÒåΪGROUP_ADDRESS
char¡¡strGroupName£§16£§£»//¡¡16¸ö×ֽڵŤ×÷×éÃû×Ö
£ý£»
¡¡¡¡¿Í»§»úµ÷Óú¯ÊýMulticastMessageÏòÖ¸¶¨µÄ×飨¸ù¾Ý×é²¥µØÖ·£©²¥·ÅÏûÏ¢¡£×é²¥µÄÊý¾Ý±¨½á¹¹¡¡DataMulticast¶¨ÒåÈçÏ£º
¡¡¡¡struct¡¡DataMulticast
¡¡¡¡£û
DWORDdwContentType£»//¡¡×é²¥µÄÊý¾Ý±¨ÀàÐÍ£¬ÓÉÓû§¶¨Òå
char*pchContent£»//¡¡×é²¥µÄÊý¾Ý±¨ÄÚÈÝ£¬ÓÉÓû§¶¨Òå
¡¡¡¡£ý£»
¡¡¡¡Èç¹û¿Í»§»ú½ÓÊÕµ½×é²¥µÄÏûÏ¢£¬½«×Ô¶¯µ÷Óú¯ÊýMessageResponseÀ´ÏìÓ¦¸ÃÏûÏ¢¡£MessageResponseÊÇÐ麯Êý£¬Ëü½«¸ù¾ÝdwContentTypeÐÅÏ¢¾ö¶¨ÈçºÎ´¦Àíµ½À´µÄ×é²¥ÏûÏ¢£¬¾ßÌ幦ÄÜÓÉÓû§¶¨Òå¡£

5¡£5¡£3¡£2¡¡¡¡CNC¡¡·þÎñÆ÷µÄÉè¼Æ
Ò»¡¢Êý¾Ý½á¹¹
CNC¡¡·þÎñÆ÷µÄÊý¾Ý½á¹¹Ö÷ÒªÓÉÈý²¿·Ö×é³É£º
£¨1£©Ò»ÕÅÓÃÓÚ¹ÜÀí×é²¥µØÖ·µÄÁ´±í¡£×é²¥µØÖ·ÓÉ·þÎñÆ÷¶¯Ì¬Éú³É£¬¿Í»§»ú¿ÉÒÔÏò·þÎñÆ÷²éѯÈÎÒâ×éµÄ×é²¥µØÖ·¡£
£¨2£©Ò»ÕÅÓÃÓÚ¹ÜÀíÏß³ÌÖ¸ÕëµÄÁ´±í¡£·þÎñÆ÷²ÉÓöàÏ̲߳¢·¢´¦Àí¼¼Êõ£¬Ê¹¿Í»§»ú»ñµÃ×î¿ìµÄÏìÓ¦¡£
£¨3£©Ã¿¸ö×鶼ÓÐÒ»ÕÅÓÃÓÚ¹ÜÀí¡°·¢²¼¡ª¶©ÔÄ¡±µÄÊý¾ÝµÄHash±í¡£ÓÉÓÚͬһʱ¿Ì£¬ÏµÍ³¿ÉÄÜ´æÔÚ¶à¸öÉú²úÕßÓëÏû·ÑÕߣ¬Êý¾ÝµÄ´æÈ롢ȡ³öËٶȳÉΪ·þÎñÆ÷ÐÔÄܵÄÖØÒªÖ¸±ê¡£Hash±í¿ÉÒÔÌṩ±ÈÁ´±í¸ü¿ìµÄÊý¾Ý¼ìË÷Ëٶȡ£Hash±íÖеÄÊý¾ÝÏî½á¹¹¼ûDataElement¡¡£º
struct¡¡DataElement
¡¡¡¡£û
charstrGroupName£§16£§£»//¡¡¹¤×÷×éµÄÃû³Æ
charstrDataName£§16£§£»//¡¡Êý¾ÝµÄÃû³Æ
BYTEiStorageType£»//¡¡´æ´¢ÀàÐÍ£º¡¡STORAGE_FILE¡¡»ò¡¡STORAGE_MEMORY
ColeDateTimeTimeToDie£»//¡¡×÷·Ïʱ¿Ì
BOOLbLock£»//¡¡Ëø¶¨±êÖ¾£º¡¡TRUE¡¡»ò¡¡FALSE
DWORDdwLength£»//¡¡Êý¾ÝµÄ³¤¶È
char*pchContent£»//¡¡Êý¾ÝÄÚÈÝ
¡¡¡¡£ý£»

´æ´¢ÀàÐÍ£¨iStorageType£©µÄÓÃ;£º°ÑÊý¾ÝÈ«²¿±£´æÔÚÄÚ´æÖн«·Ç³£ÏûºÄ·þÎñÆ÷µÄÄÚ´æ×ÊÔ´£¬ÔںܶàÇé¿öÏÂÊÇûÓбØÒªµÄ¡£ÎªÁËÌá¸ßÄÚ´æµÄʹÓÃЧÂÊ£¬·þÎñÆ÷½ö°ÑÉúÃüÆڽ϶̻òÕß³¤¶È½Ï¶ÌµÄÊý¾Ý±£´æÔÚÄÚ´æÖУ¨¼´ÎªSTORAGE_MEMORYÀàÐÍ£©£¬¶ø°ÑÉúÃüÆڽϳ¤»òÕß³¤¶È½Ï³¤µÄÊý¾Ý±£´æÔÚÎļþÖУ¨¼´ÎªSTORAGE_FILEÀàÐÍ£©¡£
×÷·Ïʱ¿Ì£¨TimeToDie£©µÄÓÃ;£º¿Í»§»ú·¢²¼µÄÊý¾Ý¾ùÖ¸¶¨ÁËÉúÃüÆÚ£¬·þÎñÆ÷ÔÚ½ÓÊÕµ½Êý¾Ýʱ¼´¿É¼ÆËã³ö×÷·Ïʱ¿Ì¡£·þÎñÆ÷½«¶¨ÆÚɨÃèHash±í£¬Èô·¢ÏÖÓÐÊý¾Ý³¬³ö×÷·Ïʱ¿Ì£¨²¢ÇÒûÓб»Ëø¶¨£©£¬¼´¿Éɾ³ý´ËÊý¾Ý¡£
Ëø¶¨±êÖ¾£¨bLock£©µÄÓÃ;£ººÜ¶à¿Í»§»ú¿ÉÄÜͬʱ¶©ÔÄij¸öÊý¾Ý£¬¶ø¸ÃÊý¾Ý¿ÉÄÜÒѳ¬³ö×÷·Ïʱ¿Ì¼´½«±»É¾³ý¡£Îª±ÜÃâ³åÍ»£¬¹æ¶¨Ö»ÒªÓпͻ§»ú¶©ÔÄÊý¾Ý£¬¾ÍÓÃiLock±êÖ¾À´Ëø¶¨´ËÊý¾Ý£¬Ö±µ½¶©ÔÄÍê³Éºó²ÅÏû³ýËø¶¨¡£

¶þ¡¢¶àÏ̲߳¢·¢¼¼Êõ
·þÎñÆ÷ÓÐÒ»¸öÖ÷Ï̺߳Ͷà¸ö×ÓÏ̡߳£Ö÷Ï̸߳ºÔð¿Í»§»úµÄÈëÁ¬½ÓÇëÇó£¬È»ºó´´½¨Ò»¸ö×ÓÏß³ÌÀ´´¦ÀíÕâ¸öTCPÁ¬½Ó¡£Ã¿¸ö×ÓḬ̈߳´ÕÕCNC¡¡APIµÄЭÒéÓë¿Í»§»úͨѶ¡£ÓÉÓÚÓжà¸ö×ÓÏ̹߳²Ïí·þÎñÆ÷ÖеÄÊý¾Ý£¬¶àÏ̶߳Թ²Ïí×ÊÔ´µÄͬ²½·ÃÎʳÉΪʵÏÖµÄÄѵ㡣CNC¡¡Ö÷Òª²ÉÓÃÁ˹ؼüÇø¡¢»¥³â¶ÔÏóµÈͬ²½Êֶνâ¾öÕâ¸öÎÊÌâ¡£

Èý¡¢WinsockµÄʹÓÃ
CNC¡¡1¡£0ÔËÐÐÓÚWindows¡¡9x/NTϵͳÏ£¬µ×²ãµÄÍøÂçͨѶ³ÌÐòÓÃWinsock±àд¡£WinsockÓÐÁ½ÖÖ¹¤×÷·½Ê½£º×èÈû·½Ê½ºÍ·Ç×èÈû·½Ê½¡£×èÈû·½Ê½µÄÓŵãÊDZà³Ì¼òµ¥£¬¿É¿¿ÐԺá£È±µãÊÇÈÝÒ×ʹӦÓóÌÐò×èÈûס£¬²»ÄÜ´¦ÀíÆäËüÊÂÎñ¡£·Ç×èÈû·½Ê½ÊÇÀûÓÃWindows¡¡ÏûÏ¢»úÖÆʵÏֵġ£ÓŵãÊÇÔÚÊý¾Ýµ½À´µÄʱºò£¬ÏµÍ³ÏòÓ¦ÓóÌÐò´°¿Ú·¢ËÍÏûÏ¢£¬Ê¹µÃÓ¦ÓóÌÐò²»±Ø×ÜÔڵȴýÊý¾Ý£¬Ìá¸ßÁ˹¤×÷ЧÂÊ¡£È±µãÊÇÔÚ·¢ËͺͽÓÊÕÊý¾Ýʱ£¬Ó¦ÓóÌÐò²¢²»½«ÊÂÇé×öÍ꣨²»×èÈû£©£¬ÒÔÖÁÓÚÓ¦ÓóÌÐòҪά»¤¸´ÔÓµÄ״̬»ú¡£
¼øÓÚ×èÈû·½Ê½ºÍ·Ç×èÈû·½Ê½¸÷ÓÐÓÅȱµã£¬CNC¡¡·þÎñÆ÷²ÉÓÃÁË»ìºÏ·½Ê½¡£Ö÷Ï̲߳ÉÓ÷Ç×èÈûµÄÏûÏ¢Çý¶¯·½Ê½£¬¿ÉÒÔ¿ìËÙÏìÓ¦¿Í»§»úµÄÈëÁ¬½Ó¡£ÔÚ×ÓÏß³ÌÖУ¬ÈÔ²ÉÓ÷Ç×èÈûµÄÏûÏ¢Çý¶¯·½Ê½½ÓÊÜ¿Í»§»úµÄÇëÇó£¬Ö»ÓÐÔÚÏìÓ¦ÇëÇóʱ£¬²ÉÓÃ×èÈûµÄ·½Ê½Ò»´ÎÐÔµØÍê³ÉÊý¾ÝµÄ·¢ËÍ»ò½ÓÊÕ¡£

5¡£5¡£4¡¡Ó¦ÓÃʾÀý
ͼ5¡£17¡¢Í¼5¡£18ÊDzμÓЭͬ¹¤×÷µÄÁ½¸ö¿Í»§³ÌÐòʾÀý£¬ÕâÁ½¸ö³ÌÐò¾ùÓÃIntra3D¡¡2¡£0¡¡ºÍCNC¡¡1¡£0¿ª·¢¡£Í¼5¡£17µÄ¿Í»§³ÌÐòÏòCNC¡¡·þÎñÆ÷¶©ÔÄ¡¡¡£3dsºÍ¡¡¡£obj¸ñʽµÄ¶à±ßÐÎÄ£ÐÍÊý¾Ý²¢Ö´Ðн»»¥Ê½»æÖÆ¡£Í¼5¡£18µÄ¿Í»§³ÌÐòÏòCNC¡¡·þÎñÆ÷¶©ÔÄÉÌҵͳ¼ÆͼÐÎÊý¾Ý²¢Ö´Ðн»»¥Ê½»æÖÆ¡£ÁíÓÐÒ»¸ö¿Í»§»ú£¨Êý¾ÝÔ´£©ÏòCNC¡¡·þÎñÆ÷·¢²¼¸÷ÖÖÊý¾Ý£¬²¢ÓÃ×é²¥À´Í¨Öª¸÷¸ö¿Í»§»úµ±Ç°·¢²¼ÁËʲôÊý¾Ý£¨¶ÌÏûÏ¢£©¡£
¡¡¡¡Intra3D¡¡2¡£0ºÍCNC¡¡1¡£0Ä¿Ç°ÒѾ­¿ÉÒÔʵÓã¬ÇëÓë×÷ÕßÁªÏµ£¬Ãâ·ÑË÷È¡Èí¼þ¡£

5¡£6¡¡¡¡Ð¡¡¡½á

ÈÃÎÒÃÇÓÃÖøÃû3DÓÎÏ·Èí¼þQuakeµÄÉè¼ÆʦMichael¡¡Abrash¡¡µÄ»°×ܽ᱾Õ£º¡°ËùÓÐÕæÕý½Ü³öµÄÉè¼ÆÒ»µ©±»Éè¼ÆºÃ£¬¿´ÆðÀ´¶¼ÊÇÄÇôµÄ¼òµ¥ºÍÏÔ¶øÒ×¼û¡£µ«ÊÇÔÚ»ñµÃ½Ü³öÉè¼

СÌáʾ£º°´ »Ø³µ [Enter] ¼ü ·µ»ØÊéÄ¿£¬°´ ¡û ¼ü ·µ»ØÉÏÒ»Ò³£¬ °´ ¡ú ¼ü ½øÈëÏÂÒ»Ò³¡£ ÔÞһϠÌí¼ÓÊéÇ©¼ÓÈëÊé¼Ü