iCAx开思网

标题: 风中残烛_2D来回走辅助线工具(源文件在13楼) [打印本页]

作者: 钟贞语    时间: 2008-3-7 16:07
标题: 风中残烛_2D来回走辅助线工具(源文件在13楼)
2D来回走辅助线


改了下可惜不稳定,只能给大家交流下.

本程式由风中残烛编写
使用上有任何问题请与我联系!
Email: ZHONG.2@126.COM      QQ: 52290025
声明:
本人外挂免费无限制提供,并不对程式使用造成任何损失负责!
未经本人允许,本外挂可随便传播,但不得用于商业用途!
如果你对外挂整合出售,请在外挂功能提示上注明风中残烛XXX
且不加收取任何费用!

使用帮助:

本程式只对坐标Z轴向有效!
本程式只生成线并不是刀路
如果你要生成刀路请结合光面的走曲线功能进行使用!
如果你熟悉宏和刀路模版,可以用宏调用本程式一次生成刀路
如果你对CLSF有兴趣且熟悉二次开发的话也可开发成直接生成刀路



                               2008-3-7   风中残烛

[ 本帖最后由 zhong14120 于 2008-3-12 20:59 编辑 ]
作者: 小鱼咖啡    时间: 2008-3-7 18:25
顶啊,好东西啊
作者: minxat    时间: 2008-3-7 20:46
多谢楼主的分享!!
作者: hulugua    时间: 2008-3-8 09:09
谢了楼主,期待更精彩的。
作者: sohuminicax    时间: 2008-3-8 09:47
不错的功能,希望能再加在完善
作者: wwyywwyy    时间: 2008-3-8 12:22
提示: 作者被禁止或删除 内容自动屏蔽
作者: open_lian    时间: 2008-3-8 12:32
谢了楼主,ding
作者: haierwang    时间: 2008-3-8 12:57
多谢楼主的分享!!
作者: YANCNC    时间: 2008-3-8 17:30
还有一点要完善就好了,不对之处请楼主谅解如下图
作者: YANCNC    时间: 2008-3-8 17:32
还有两张,有一张是想要的结果
作者: YANCNC    时间: 2008-3-8 17:32
电子档,有空请楼主看看
作者: 钟贞语    时间: 2008-3-8 18:07
我知道是什么问题
源文件发给你们
你们自己改吧
                     $$2D来回走刀$$
entity/obj,li(1000),pt,lo
number/XTRANS(12),di(2,1000,3),DP(3,3)
$$STRING/

q1=0.15
q2=1

n10:
     mask/3,5,6,9
                ident/'#风中残烛#提醒你:选择曲线',li,cnt,n,rsp
                jump/n10:,trm:,,,rsp



       
n20:       
               
PARAM/'#风中残烛#提醒你:输入参数',$
                   '吃刀深度...',q1,$
                   '偏置距离...',q2,$
                    altact,'==程式说明==',$
                                         RSP
                    jump/n10:,trm:,,ZHONG2:,rsp
                    
                    
  if/q2==0,jump/zhong1:
        if/absf(q1)>absf(q2),Q1=Q2       
  mo=modf(absf(q2),absf(q1) )  $$最后一刀
  $$print/mo
  mn=(absf(q2)-mo)/absf(q1)           $$次数
  $$print/mn
               
     if/n==1,obj = li(1)
     if/n>1,obj = GROUP/li(1..n)
     
     
     
     dO/n21:,i,1,n
     
     di(1,i,1..3)=&Spoint(li(i))   $$开始点
     di(2,i,1..3)=&epoint(li(i) )  $$结束点
     n21:
     
     k=0
     
     dO/n22:,i,1,n
     
          dO/n221:,M,1,n
                 
                  ifthen/di(1,I,1..3)==di(2,M,1..3)
                  jump/n22:
                      endif
            
          n221:
            
          dO/n222:,M,1,n
         
                  ifthen/di(1,I,1..3)==di(1,M,1..3) AND m<>i
                  jump/n22:
                      endif
              
          n222:
               K=K+1
               DP(K,1..3)=di(1,I,1..3)
             if/k==3,jump/zhong:
     n22:
     
   dO/n23:,i,1,n
     
          dO/n231:,M,1,n
                 
                  ifthen/di(2,I,1..3)==di(1,M,1..3)
                  jump/n23:
                      endif
            
          n231:
            
          dO/n232:,M,1,n
         
                  ifthen/di(2,I,1..3)==di(2,M,1..3) AND m<>i
                  jump/n23:
                      endif
              
          n232:
               K=K+1
               DP(K,1..3)=di(2,I,1..3)
                        if/k==3,jump/zhong:
         
     n23:
     
     
$$print/dp

$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
               $$转向$$

  if/q2<0,jump/n40:

$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
     
XTRANS=MATRIX/TRANSL,0,0,absf(q1)
     do/n30:,i,1,mn
     obj=transf/XTRANS,obj
      
                        ifthen/ modf(i,2)==0
                        
                           lo=LINE/DP(1,1..2),dp(1,3)-absf(q1)+absf(q1)*i$
                           , DP(1,1..2),dp(1,3)+absf(q1)*i
                        
                else
                      lo=LINE/DP(2,1..2),dp(2,3)-absf(q1)+absf(q1)*i$
                     , DP(2,1..2),dp(2,3)+absf(q1)*i
                  
                 endif
                
     

     
     n30:
     
      ifthen/mo>0
         XTRANS=MATRIX/TRANSL,0,0,mo
         obj=transf/XTRANS,obj
         
         
         $$print/i
                                 ifthen/ modf(mn,2)==1
                        
                           lo=LINE/DP(1,1..2),dp(1,3)+absf(q1)*i$
                           , DP(1,1..2),dp(1,3)+absf(q1)*i+mo
                        
                else
                      lo=LINE/DP(2,1..2),dp(2,3)+absf(q1)*i$
                     , DP(2,1..2),dp(2,3)+absf(q1)*i+mo
                  
                 endif
         
        endif
     
     jump/trm:
     
$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
n40:
XTRANS=MATRIX/TRANSL,0,0,-absf(q1)
     do/n50:,i,1,mn
     obj=transf/XTRANS,obj
      
                        ifthen/ modf(i,2)==0
                        
                           lo=LINE/DP(1,1..2),dp(1,3)+absf(q1)-absf(q1)*i$
                           , DP(1,1..2),dp(1,3)-absf(q1)*i
                        
                else
                      lo=LINE/DP(2,1..2),dp(2,3)+absf(q1)-absf(q1)*i$
                     , DP(2,1..2),dp(2,3)-absf(q1)*i
                  
                 endif
                
     

     
     n50:
     
      ifthen/mo>0
         XTRANS=MATRIX/TRANSL,0,0,-mo
         obj=transf/XTRANS,obj
         
         
         $$print/i
                                 ifthen/ modf(mn,2)==1
                        
                           lo=LINE/DP(1,1..2),dp(1,3)-absf(q1)*i$
                           , DP(1,1..2),dp(1,3)-absf(q1)*i-mo
                        
                else
                      lo=LINE/DP(2,1..2),dp(2,3)-absf(q1)*i$
                     , DP(2,1..2),dp(2,3)-absf(q1)*i-mo
                  
                 endif
         
        endif
     
     jump/trm:


$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
trm:
halt


ZHONG:

messg/'所选曲线有间隙...','请重新选择'
                jump/n10:
               
ZHONG1:

messg/'无效深度...','请重新输入'
                jump/n20:
ZHONG2:       

print/'2D来回走辅助线'
print/''
print/'本程式由风中残烛编写'
print/'使用上有任何问题请与我联系!'
print/'Email: ZHONG.2@126.COM      QQ: 52290025'
print/'声明:'
print/'本人外挂免费无限制提供,并不对程式使用造成任何损失负责!'
print/'未经本人允许,本外挂可随便传播,但不得用于商业用途!'
print/'如果你对外挂整合出售,请在外挂功能提示上注明风中残烛XXX'
print/'且不加收取任何费用!'
print/''
print/'使用帮助:'
print/''
print/'本程式只对坐标Z轴向有效!'
print/'本程式只生成线并不是刀路'
print/'如果你要生成刀路请结合光面的走曲线功能进行使用!'
print/'如果你熟悉宏和刀路模版,可以用宏调用本程式一次生成刀路'
print/'如果你对CLSF有兴趣且熟悉二次开发的话也可开发成直接生成刀路'
print/''
print/''
print/''
print/'                               2008-3-7   风中残烛  '
print/''
print/''
print/''
print/''
print/''
print/''

jump/n20:
作者: lbd    时间: 2008-3-9 01:36
谢楼主的分享
作者: YANCNC    时间: 2008-3-9 21:43
原帖由 zhong14120 于 2008-3-8 18:07 发表
我知道是什么问题
源文件发给你们
你们自己改吧
                     $$2D来回走刀$$
entity/obj,li(1000),pt,lo
number/XTRANS(12),di(2,1000,3),DP(3,3)
$$STRING/

q1=0.15
q2=1

n10:
     mask ...

可惜俺不会做开发,
作者: CLBCNC    时间: 2008-3-9 21:53
多谢楼主的分享!!
作者: lwp2006    时间: 2008-3-10 19:08
谢谢楼主分享 ,。。。。。。。。
作者: lozj    时间: 2008-3-12 03:06
多谢楼主的分享!!
作者: wuaimia    时间: 2008-3-12 20:05
多谢楼主的分享!!
作者: 钟贞语    时间: 2008-3-12 21:01
力不从心,不稳定版可以试试等距但不要用到工作上,如有开发高手可以交流下的可向我要源文件!
作者: penglin.    时间: 2008-3-16 16:29
值得顶一下!
作者: 稻草的愿望    时间: 2008-4-19 12:57
顶!!!!!!!!!!!!!




欢迎光临 iCAx开思网 (https://www.icax.org/) Powered by Discuz! X3.3