找回密码 注册 QQ登录
开思网工业级高精度在线3D打印服务

iCAx开思网

CAD/CAM/CAE/设计/模具 高清视频【积分说明】如何快速获得积分?快速3D打印 手板模型CNC加工服务在线3D打印服务,上传模型,自动报价
查看: 23345|回复: 31
打印 上一主题 下一主题

[分享]法兰克、三菱后处理源代码全“民”共享

[复制链接]
跳转到指定楼层
1
发表于 2005-11-10 18:14:35 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多同行朋友,交流,分享,学习。

您需要 登录 才可以下载或查看,没有帐号?注册

x
源代码有分享精神的不多,我来试吃“螃蟹”,请多多指教!

* DEMO 3 axes Post Processor for FANUC
* Cimatron90 VER 9.0
* Last update : 23-FEB-1998

********************************************************
* define private variables:
FORMAT (SEQUENCING)  Seq SubSeq CNTRL_NUM NURBS_DEG count first deg ;
FORMAT (TOOL)        CutterComp FirstTool LastTool ;
FORMAT (COORDINATES) Xold Yold Zold DXcenter DYcenter DZcenter ;
FORMAT (COORDINATES) Zinit Clear Depth CNTRL_X  CNTRL_Y  CNTRL_Z  KNOT_ ;
FORMAT (COORDINATES) Xhome Yhome Zhome ;
FORMAT (COORDINATES) XfirstOrigin YfirstOrigin ZfirstOrigin ;
FORMAT (USER_1)      CurrSubNum ;
FORMAT (coordinates) ORIGOLDI ORIGOLDJ ORIGOLDK ;

* define private flags:
FORMAT (USER_2)      FlagSub FlagSeq FlagSpin;
FORMAT (USER_2)      FirstOriginChange FlagError Flagrotmac  ;

* define private constants:
FORMAT (USER_2)      YES NO ;

* change the format of existing variables:
FORMAT (USER_1)      SUB_NUMBER ;
FORMAT (COORDINATES) Time ;---定义时间变量

********************************************************
INTERACTION (USER_1)       "MAIN-PROGRAM-NUMBER"     MainNum     = 100  ;
INTERACTION (TOOL)         "DIACOMP=TOOL+<xx>"       DiaComp     = 50   ;
INTERACTION (USER_1)       "TOOL-CHANGE-PROGRAM"     ChangeTool  = 8000 ;
INTERACTION (CHARACTER)    "SEQUENCING<Y/N>"         NumYN       = "N"  ;
INTERACTION (SEQUENCING)   "SEQUENC-START"           SeqStart    = 10   ;
INTERACTION (SEQUENCING)   "SEQUENC-INCR."           SeqIncr     = 10   ;
INTERACTION (CHARACTER)    "SUBROUTINES<Y/N>"        Sub         = "N"  ;
INTERACTION (USER_1)       "SUB-PROGRAM-NUMBER"      StartSubNum = 1000 ;

********************************************************
NON_MODAL  ALL_VAR;
MODAL      X_CURPOS Y_CURPOS Z_CURPOS ;
MODAL      LIN_MOV CIRC_MOV MCH_FEED SPIN_SPEED SPIN_DIR MCH_COOL MCH_DWELL;
MODAL      CUTCOM_ON  CUTCOM_OFF ;
MODAL      CYC_DEPTH CYC_PECK CYC_DWELL CYC_RETR CYC_CLEAR Depth Clear NURBS_MOV;
      
IDENTICAL  X_CURPOS X_ENDPT ;
IDENTICAL  Y_CURPOS Y_ENDPT ;

********************************************************
NEW_LINE_IS $ ;
      IF_SET (FlagSeq _EQ_ NO)
         OUTPUT \J ;
      ELSE
         IF_SET (FlagSub _EQ_ NO)
            OUTPUT \J "N" Seq ;
            Seq = Seq + SeqIncr ;
         ELSE
            OUTPUT \J "N" SubSeq ;
            SubSeq = SubSeq + SeqIncr ;
         END_IF ;
      END_IF ;

********************************************************
BEGINNING OF TAPE:
      YES              = 1 ;
      NO               = 0 ;
      Seq              = SeqStart ;

      FlagSeq = NO ;
      FlagSub = NO ;
      IF_SET (NumYN _EQ_ "y") FlagSeq = YES ; END_IF ;
      IF_SET (NumYN _EQ_ "Y") FlagSeq = YES ; END_IF ;

      IF_SET (Sub   _EQ_ "y") Sub     = "Y" ; END_IF ;
      IF_SET (Sub   _EQ_ "Y")  
         SET_OFF NO_SUBROUT ;
      ELSE
         SET_ON  NO_SUBROUT ;
      END_IF ;

*-----Unit matrix (MUST be input in this order !!!)
      ROT_MAT1   = 1.0 ; ROT_MAT2   = 0.0 ; ROT_MAT3   = 0.0 ;
      ROT_MAT4   = 0.0 ; ROT_MAT5   = 1.0 ; ROT_MAT6   = 0.0 ;
      ROT_MAT7   = 0.0 ; ROT_MAT8   = 0.0 ; ROT_MAT9   = 1.0 ;

*-----shift all data according to the MCHINE ZERO indicated by the  
*     user in the POSTPR interaction
      TRANS_MATX = 0 - X_MACH  ;
      TRANS_MATY = 0 - Y_MACH  ;
      TRANS_MATZ = 0 - Z_MACH  ;

*-----shift the HOME according to the MCHINE ZERO indicated by the
*     user in the POSTPR interaction
      Xhome = X_HOME - X_MACH  ;
      Yhome = Y_HOME - Y_MACH  ;
      Zhome = Z_HOME - Z_MACH  ;

*-----tool location is HOME
      Xold = X_HOME ;
      Yold = Y_HOME ;
      Zold = Z_HOME ;

*-----For 1st ORIGIN CHANGE
      FirstOriginChange = YES ;

      MCH_FEED   = 9999 ;

*-----output  
      IF_SET (FlagSeq _EQ_ YES )
         OUTPUT "%" \J;
      ELSE
         OUTPUT " %" \J;
      END_IF ;

*--For the first origin change
   ORIGOLDI=0 ; ORIGOLDJ=0 ; ORIGOLDK=1 ;
   flagrotmac = no ;

   Time=0.001; 定义初始值
      
BEGINNING OF PROC:  
      KEEP   PROC_NAME ;
      SET_ON MCH_COOL ;
      FlagSub = NO ;
      SubSeq  = SeqStart ;

END OF PROC:
      Time = Time + N_GEN_TIME;
  
END OF TAPE:
      IF_SET (FirstTool _NE_ LastTool)
         OUTPUT $ " T" NEXT_TOOL " M98 P" ChangeTool;
      END_IF ;
      OUTPUT $ " M09 " ;
      OUTPUT $ " M30 " ;
      
      
END OF FILE:
      IF_SET (FlagSeq _EQ_ YES )
         OUTPUT \J "%" ;
      ELSE
         OUTPUT \J " %" ;
      END_IF ;
       OUTPUT  "(估计工时:" Time " 分钟)" ;   有没有办法帮偶搞到程序头?
********************************************************
FEED:
      KEEP MCH_FEED ;

SPIN:
      KEEP SPIN_SPEED ;

COOLANT:
      KEEP MCH_COOL ;

DWELL:
      KEEP MCH_DWELL ;

CUTTER COMPENSATION:
      KEEP  CUTCOM_ON ;

CUTTER COMPENSATION: COFF:
      KEEP  CUTCOM_OFF ;

********************************************************
TOOL CHANGE: FIRST:
      SET_ON  SPIN_SPEED SPIN_DIR ;
*-----save first tool number
      FirstTool = CURR_TOOL ;
      LastTool  = CURR_TOOL ;

*-----tool cutter compensation register number
      CutterComp = CURR_TOOL +  DiaComp ;

*-----assuming 1st tool is in the spindle, there is no need
*     for tool change)
      OUTPUT $ " T" CURR_TOOL ;
*-----more then one tool in this run of the Post Processor
      IF_SET (NEXT_TOOL _NE_ CURR_TOOL)
         OUTPUT $ " T" NEXT_TOOL ;
      END_IF ;
*-----standard tool change commands. (assuming 1st tool is in
      OUTPUT $ " G90 G80 G00 G17 G40 G54" ;
      OUTPUT $ "( 刀具名称---" CURR_NAME "×" CLEAR_LENG ")";
      OUTPUT $ "( 曲面偏移=" PART_OFST " 曲面公差=" PART_TOL" 轮廓偏移=" CONT_OFST " 轮廓公差=" CONT_TOL " )";
      OUTPUT $ "( 程式名称=" TP_NAME "本程式由" USER_NAME "编制 )";
      OUTPUT $ " Z" Zhome " S" SPIN_SPEED " " SPIN_DIR ;      (以上红色部分为程序头,双引号间内容可根据个人喜好修改)

  
TOOL CHANGE:
      SET_ON  SPIN_SPEED SPIN_DIR ;

*-----tool cutter compensation register number
      CutterComp = CURR_TOOL +  DiaComp ;

*-----tool change command (by using an internal tool change  
*     subroutine)
      OUTPUT $ " T" CURR_TOOL " M98 P"  ChangeTool ;
      OUTPUT $ " T" NEXT_TOOL ;
*-----standard tool change commands. (assuming 1st tool is in
      OUTPUT $ " G90 G80 G00 G17 G40 G54" ;
      OUTPUT $ "( 刀具名称---" CURR_NAME "×" CLEAR_LENG ")";
      OUTPUT $ "( 曲面偏移=" PART_OFST " 曲面公差=" PART_TOL" 轮廓偏移=" CONT_OFST " 轮廓公差=" CONT_TOL " )";
      OUTPUT $ "( 程式名称=" TP_NAME "本程式由" USER_NAME "编制 )";
      OUTPUT $ " Z" Zhome " S" SPIN_SPEED " " SPIN_DIR ;

TOOL CHANGE: LAST:
      SET_ON  SPIN_SPEED SPIN_DIR ;
*-----save last tool number
      LastTool = CURR_TOOL ;

*-----tool cutter compensation register number
      CutterComp = CURR_TOOL +  DiaComp ;

      OUTPUT $ " T" CURR_TOOL " M98 P"  ChangeTool ;
*-----the last tool is the same as the first tool
      IF_SET (NEXT_TOOL _NE_ CURR_TOOL)
         OUTPUT $ " T" NEXT_TOOL ;
      END_IF ;
*-----standard tool change commands. (assuming 1st tool is in
      OUTPUT $ " G90 G80 G00 G17 G40 G54" ;
      OUTPUT $ "( 刀具名称---" CURR_NAME "×" CLEAR_LENG ")";
      OUTPUT $ "( 曲面偏移=" PART_OFST " 曲面公差=" PART_TOL" 轮廓偏移=" CONT_OFST " 轮廓公差=" CONT_TOL " )";
      OUTPUT $ "( 程式名称=" TP_NAME "本程式由" USER_NAME "编制 )";
      OUTPUT $ " Z" Zhome " S" SPIN_SPEED " " SPIN_DIR ;

[ 本帖最后由 sjhxs 于 2005-11-27 19:00 编辑 ]

评分

参与人数 1技术 +1 收起 理由
dearbabyer + 1 我很赞同

查看全部评分

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏2 分享淘帖 赞一下!赞一下!
2
发表于 2005-11-10 18:14:58 | 只看该作者
********************************************************
LINEAR MOTION: FAST:
      FlagSpin = NO ;
      IF_SET (SPIN_SPEED) FlagSpin = YES ; END_IF ;
      IF_SET (SPIN_DIR)   FlagSpin = YES ; END_IF ;
      IF_SET (FlagSpin _EQ_ YES)
         SET_ON SPIN_SPEED SPIN_DIR ;
         OUTPUT $ " S" SPIN_SPEED " " SPIN_DIR ;
      END_IF ;

      OUTPUT $ ;
      IF_SET (LIN_MOV)  OUTPUT " " LIN_MOV   ; END_IF ;
      IF_SET (X_CURPOS) OUTPUT " X" X_CURPOS ; END_IF ;
      IF_SET (Y_CURPOS) OUTPUT " Y" Y_CURPOS ; END_IF ;
      IF_SET (Z_CURPOS) OUTPUT " Z" Z_CURPOS ; END_IF ;
      IF_SET (MCH_COOL) OUTPUT  " " MCH_COOL ; END_IF ;
      SET_ON CIRC_MOV NURBS_MOV ;
      Xold = X_CURPOS ;
      Yold = Y_CURPOS ;
      Zold = Z_CURPOS ;

LINEAR MOTION:
      FlagSpin = NO ;
      IF_SET (SPIN_SPEED) FlagSpin = YES ; END_IF ;
      IF_SET (SPIN_DIR)   FlagSpin = YES ; END_IF ;
      IF_SET (FlagSpin _EQ_ YES)
         SET_ON SPIN_SPEED SPIN_DIR ;
         OUTPUT $ " S" SPIN_SPEED " " SPIN_DIR ;
      END_IF ;

      OUTPUT $ ;
      IF_SET (LIN_MOV)    OUTPUT " "  LIN_MOV    ; END_IF ;
      IF_SET (CUTCOM_ON)  OUTPUT " "  CUTCOM_ON " D" CutterComp ; END_IF ;
      IF_SET (CUTCOM_OFF) OUTPUT " "  CUTCOM_OFF ; END_IF ;
      IF_SET (X_CURPOS)   OUTPUT " X" X_CURPOS   ; END_IF ;
      IF_SET (Y_CURPOS)   OUTPUT " Y" Y_CURPOS   ; END_IF ;
      IF_SET (Z_CURPOS)   OUTPUT " Z" Z_CURPOS   ; END_IF ;
      IF_SET (MCH_FEED)   OUTPUT " F" MCH_FEED   ; END_IF ;
      IF_SET (MCH_COOL)   OUTPUT  " " MCH_COOL   ; END_IF ;
      SET_ON CIRC_MOV NURBS_MOV;
      Xold = X_CURPOS ;
      Yold = Y_CURPOS ;
      Zold = Z_CURPOS ;

********************************************************
CIRCULAR MOTION:
      FlagSpin = NO ;
      IF_SET (SPIN_SPEED) FlagSpin = YES ; END_IF ;
      IF_SET (SPIN_DIR)   FlagSpin = YES ; END_IF ;
      IF_SET (FlagSpin _EQ_ YES)
         SET_ON SPIN_SPEED SPIN_DIR ;
         OUTPUT $ " S" SPIN_SPEED " " SPIN_DIR ;
      END_IF ;

      DXcenter = X_CENTER - Xold ;
      DYcenter = Y_CENTER - Yold ;
      DZcenter = Z_CENTER - Zold ;
      OUTPUT $ ;
      IF_SET (CIRC_MOV)          OUTPUT " " CIRC_MOV  ; END_IF ;
      IF_SET (X_CURPOS)          OUTPUT " X" X_ENDPT  ; END_IF ;
      IF_SET (Y_CURPOS)          OUTPUT " Y" Y_ENDPT  ; END_IF ;
      IF_SET (Z_CURPOS)          OUTPUT " Z" Z_ENDPT  ; END_IF ;
      IF_SET (DXcenter _NE_ 0.0) OUTPUT " I" DXcenter ; END_IF ;
      IF_SET (DYcenter _NE_ 0.0) OUTPUT " J" DYcenter ; END_IF ;
      IF_SET (DZcenter _NE_ 0.0) OUTPUT " K" DZcenter ; END_IF ;
      IF_SET (MCH_FEED)          OUTPUT " F" MCH_FEED ; END_IF ;
      IF_SET (MCH_COOL)          OUTPUT  " " MCH_COOL ; END_IF ;
      SET_ON LIN_MOV NURBS_MOV ;
      Xold = X_CURPOS ;
      Yold = Y_CURPOS ;
      Zold = Z_CURPOS ;
******************************************************************
NURBS MOTION: START:
OUTPUT $ NURBS_MOV "P" NURBS_DEG ;
count = 0;
first = 1;
SET_ON MCH_FEED;
NURBS MOTION:
IF_SET (first _EQ_ 1)
OUTPUT "K" KNOT_ "X" CNTRL_X "Y" CNTRL_Y "Z" CNTRL_Z "F" MCH_FEED;
END_IF;
IF_SET (first _EQ_ 0)
OUTPUT $ "K" KNOT_ "X" CNTRL_X "Y" CNTRL_Y "Z" CNTRL_Z;
END_IF;
first = 0;
NURBS MOTION: END:
deg = NURBS_DEG ;
REPEAT
count = count + 1 ;
OUTPUT $ "K" KNOT_ ;
UNTIL (count _EQ_ deg) ;
SET_ON LIN_MOV CIRC_MOV MCH_FEED;
********************************************************
INSERT WITH:
      OUTPUT $ INS_STR ;

INSERT WITHOUT:
      OUTPUT  \J INS_STR ;

MESSAGE:
      OUTPUT $ "( " MESS_STR " )"  ;

********************************************************
CYCLE: ON:
      FlagSpin = NO ;
      IF_SET (SPIN_SPEED) FlagSpin = YES ; END_IF ;
      IF_SET (SPIN_DIR)   FlagSpin = YES ; END_IF ;
      IF_SET (FlagSpin _EQ_ YES)
         SET_ON SPIN_SPEED SPIN_DIR ;
         OUTPUT $ " S" SPIN_SPEED " " SPIN_DIR ;
      END_IF ;

      SET_ON X_CURPOS Y_CURPOS Z_CURPOS   ;
      SET_ON CYC_DEPTH CYC_RETR CYC_CLEAR MCH_FEED MCH_COOL ;
      SET_ON Zinit Depth Clear ;
      Zinit    = Z_CURPOS + CYC_DZINIT ;
      Depth    = Z_CURPOS - CYC_DEPTH ;
      Clear    = Z_CURPOS + CYC_CLEAR ;
      IF_SET (Zold _LT_ Zinit)
                        OUTPUT $ " Z" Zinit ;
          ELSE
                        OUTPUT $ " Z" Zold ;
          END_IF ;
                         OUTPUT $ ;
                         OUTPUT " "  CYC_RETR ;
                         OUTPUT " "  CYC_CODE ;
                         OUTPUT " X" X_CURPOS ;
                         OUTPUT " Y" Y_CURPOS ;
                         OUTPUT " Z" Depth    ;
                         OUTPUT " R" Clear ;
      IF_SET (CYC_PECK)  OUTPUT " Q" CYC_PECK  ; END_IF ;
      IF_SET (CYC_DWELL) OUTPUT " P" CYC_DWELL ; END_IF ;
      IF_SET (CYC_XSHFT) OUTPUT " I" CYC_XSHFT ; END_IF ;
      IF_SET (CYC_YSHFT) OUTPUT " J" CYC_YSHFT ; END_IF ;
                         OUTPUT " F" MCH_FEED ;
                         OUTPUT " "  MCH_COOL ;
      SET_ON  LIN_MOV CIRC_MOV ;
      SET_OFF CYC_DEPTH CYC_CLEAR;
      Xold = X_CURPOS ;
      Yold = Y_CURPOS ;
      Zold = Z_CURPOS ;

CYCLE:
      Depth = Z_CURPOS - CYC_DEPTH ;
      Clear = Z_CURPOS + CYC_CLEAR ;
      OUTPUT $ ;
      IF_SET (CYC_RETR)   OUTPUT " "  CYC_RETR   ; END_IF ;
      IF_SET (X_CURPOS)   OUTPUT " X" X_CURPOS   ; END_IF ;
      IF_SET (Y_CURPOS)   OUTPUT " Y" Y_CURPOS   ; END_IF ;
      IF_SET (Depth)      OUTPUT " Z" Depth      ; END_IF ;
      IF_SET (Clear)      OUTPUT " R" Clear      ; END_IF ;
      IF_SET (CYC_PECK)   OUTPUT " Q" CYC_PECK   ; END_IF ;
      IF_SET (CYC_DWELL)  OUTPUT " P" CYC_DWELL  ; END_IF ;
      IF_SET (CYC_XSHFT)  OUTPUT " I" CYC_XSHFT  ; END_IF ;
      IF_SET (CYC_YSHFT)  OUTPUT " J" CYC_YSHFT  ; END_IF ;
      IF_SET (SPIN_SPEED) OUTPUT " S" SPIN_SPEED ; END_IF ;
      IF_SET (SPIN_DIR)   OUTPUT " "  SPIN_DIR   ; END_IF ;
      IF_SET (MCH_FEED)   OUTPUT " F" MCH_FEED   ; END_IF ;
      IF_SET (MCH_COOL)   OUTPUT " "  MCH_COOL   ; END_IF ;
      SET_ON  LIN_MOV CIRC_MOV ;
      SET_OFF CYC_DEPTH CYC_CLEAR;
      Xold = X_CURPOS ;
      Yold = Y_CURPOS ;
      Zold = Z_CURPOS ;

CYCLE: OFF:
      OUTPUT $ " G80 Z" Zinit ;
      SET_ON  LIN_MOV CIRC_MOV ;
      Zold = Zinit ;

********************************************************
ORIGIN CHANGE:

*-----Save the first origin data for later use
   IF_SET (FirstOriginChange _EQ_ YES )
         XfirstOrigin      = X_ORIGIN  ;
         YfirstOrigin      = Y_ORIGIN  ;
         ZfirstOrigin      = Z_ORIGIN  ;
         FirstOriginChange = NO        ;
   END_IF ;

*.....distance between the rotation center and the ORIGIN
      TRANS_MATX = X_ORIGIN - XfirstOrigin - X_MACH  ;
      TRANS_MATY = Y_ORIGIN - YfirstOrigin - Y_MACH  ;
      TRANS_MATZ = Z_ORIGIN - ZfirstOrigin - Z_MACH  ;
*      SET_OFF CIR_INTERP ;    (去除 * 号则不输出G02、G03)
*.....check for change in orientation ( 4,5 axis positioining )
    FlagError  = NO ;
    Flagrotmac = no ;

   IF_SET ( I_ORIGIN _NE_ ORIGOLDI ) FLAGROTMAC = YES ; END_IF ;
   IF_SET ( J_ORIGIN _NE_ ORIGOLDJ ) FLAGROTMAC = YES ; END_IF ;
   IF_SET ( K_ORIGIN _NE_ ORIGOLDK ) FLAGROTMAC = YES ; END_IF ;

   IF_SET ( FLAGROTMAC _EQ_ YES )     FlagError  = YES ; END_IF ;

   IF_SET (FlagError _EQ_ YES)
       PRINT  \J "Error: ucs rotation was found in:" ;
       PRINT  \J "       TP=" TP_NAME " PROC=" PROC_NUM " (" PROC_NAME ")" ;
       PRINT  \J "Error: Cannot post ucs rotaion toolpaths" ;
       OUTPUT \J " M00 (Error: ucs rotation was found)" ;
       OUTPUT \J " M00 (TP=" TP_NAME " PROC=" PROC_NUM " - " PROC_NAME ")" ;
   END_IF ;

   ORIGOLDI = I_ORIGIN ;
   ORIGOLDJ = J_ORIGIN ;
   ORIGOLDK = K_ORIGIN ;

********************************************************
AXISCHANGE:
    FlagError  = NO ;
    IF_SET (AXIS_NUM  _GT_ 3)         FlagError = YES ; END_IF ;

    IF_SET (FlagError _EQ_ YES)
       PRINT  \J "Error: 4/5 axes motion was found in:" ;
       PRINT  \J "       TP=" TP_NAME " PROC=" PROC_NUM " (" PROC_NAME ")" ;
       PRINT  \J "Error: Cannot post 5 axes toolpaths" ;
       OUTPUT \J " M00 (Error: 4/5 axes motion was found)" ;
       OUTPUT \J " M00 (TP=" TP_NAME " PROC=" PROC_NUM " - " PROC_NAME ")" ;

    END_IF ;

********************************************************
SUBROUTINE CALL:
      CurrSubNum = SUB_NUMBER + StartSubNum ;
      OUTPUT $ " M98 P" CurrSubNum  ;

BEGINNING OF SUB:
      SET_ON  MCH_FEED MCH_COOL LIN_MOV CIRC_MOV ;
      FlagSub = YES ;
      OUTPUT \J " " ;
      IF_SET (FlagSeq _EQ_ YES)
         OUTPUT \J "O" CurrSubNum ;
      ELSE
         OUTPUT \J " O" CurrSubNum ;
      END_IF ;

END OF SUB:
      OUTPUT $  " M99" ;
      FlagSub = NO ;

SUBROUTINE RETURN:
      SET_ON LIN_MOV CIRC_MOV X_CURPOS Y_CURPOS Z_CURPOS;
  
********************************************************
3
发表于 2005-11-10 18:49:41 | 只看该作者
还是HJXHS兄实在.祝早点上班.
4
发表于 2005-11-10 18:50:19 | 只看该作者
老兄精神可嘉,顶
5
发表于 2005-11-10 21:07:28 | 只看该作者
精神可嘉
6
发表于 2005-11-10 21:13:05 | 只看该作者
支持源文件!
7
发表于 2005-11-10 21:31:43 | 只看该作者
虽然不懂还是要顶!!!!!!
8
发表于 2005-11-10 22:57:32 | 只看该作者
最好是在源代码重要输出段加上注释,这样好点。
9
发表于 2005-11-15 23:15:17 | 只看该作者
10
发表于 2005-11-16 10:03:33 | 只看该作者
精神可嘉!!!
强烈支持!!!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

3D打印手板模型快速制作服务,在线报价下单!

QQ 咨询|手机版|联系我们|iCAx开思网  

GMT+8, 2024-12-23 12:50 , Processed in 0.032194 second(s), 13 queries , Gzip On, Redis On.

Powered by Discuz! X3.3

© 2002-2024 www.iCAx.org

快速回复 返回顶部 返回列表