admin管理员组文章数量:1568419
2024年4月23日发(作者:)
powermill宏表达式大全
1、刀路余量列表查看宏
STRING LIST StrList = fill(28,"=")
STRING Str1=replace(join(StrList,"-"),"-","")
STRING Str2=replace(join(fill(32," "),"-"),"-","")
STRING str="刀路余量列表查看:"+CRLF+$Str1+CRLF+" 刀路"+$Str2+"余量
"+CRLF+join(fill(26,"-"),"-")+CRLF
BOOL Flag=1
FOREACH Toolpath IN FOLDER('Toolpath') {
INT i=0
while i
IF essSetValues[i].Thickness!=0
AND essSetValues[i].AxialThickness!=0 {
$Flag=0
CONTINUE
}
$i=i+1
}
STRING Str1=string(ess)+"/"+string(hickness)
$str=str+$+replace(join(fill(28-length($)," "),"-
"),"-","")+Str1+CRLF+join(fill(26,"-"),"-")+CRLF
}
IF FLAG {
VIEW MODEL ; SHADE RAINBOW
} ELSE {
VIEW MODEL ; SHADE VTHICKNESS
}
MACRO PAUSE $str
2、选面产生孔特征宏
CREATE FEATURESET ; FORM FEATURE FEATURECREATE
EDIT FEATURECREATE TYPE HOLE EDIT FEATURECREATE CIRCULAR ON
EDIT FEATURECREATE FILTER CURVES EDIT FEATURECREATE
ABSOLUTE EDIT FEATURECREATE BOTTOMDEFINE ABSOLUTE
EDIT FEATURECREATE TOPDEFINE MAXINPUT
EDIT FEATURECREATE BOTTOMDEFINE MININPUT
EDIT FEATURESET ; INSERT POINTS
FEATURE CANCEL
3、单刀路碰撞检查宏
DIALOGS MESSAGE ON
FORM COLLISION
EDIT COLLISION TYPE COLLISION
EDIT COLLISION SCOPE ALL
TOPDEFINE
EDIT COLLISION SPLIT_TOOLPATH Y
EDIT COLLISION SPLIT_TOOLPATH N
EDIT COLLISION SHANK_CLEARANCE "0.5"
EDIT COLLISION HOLDER_CLEARANCE "0.5"
EDIT COLLISION DEPTH N
EDIT COLLISION DEPTH Y
EDIT COLLISION ADJUST_TOOL Y
EDIT COLLISION APPLY
COLLISION ACCEPT
4、单刀路过切检查宏
FORM COLLISION
EDIT COLLISION TYPE GOUGE
EDIT COLLISION APPLY
COLLISION ACCEPT
5、NC批量改名-序号+刀具名+RF宏
//命名方式:序号+刀具名+RF
INT i=1
FOREACH NC IN FOLDER('NCProgram') {
STRING NCName=
STRING ToolName=""
STRING Type="R"
REAL m=0
FOREACH Toolpath IN components(entity('NCProgram', NCName)) {
$ToolName=
IF entity('Toolpath',).Strategy=='drill' {
$m=entity('Toolpath',).ess
} else {
$m=entity('Toolpath',).Thickness
}
Break
}
IF m
$Type='F'
}
STRING Cmd='RENAME NCProgram
'+$Type
DOCOMMAND $Cmd
$i=i+1
}
6、批量命名刀路-序号+刀具名宏
'+$NCName+' '+i+'-'+$ToolName+'-
DIALOGS MESSAGE OFF
DIALOGS ERROR OFF
INT i=1
FOREACH toolpath IN folder('TOOLPATH') {
STRING thname=
STRING LIST StrList=tokens(toolname,"_")
STRING NewName=select(i
RENAME TOOLPATH $thname $NewName
$i=i+1
}
DIALOGS MESSAGE OFF
DIALOGS ERROR OFF
7、Z轴移动边界宏
string prompt="输入边界沿着Z轴移动的距离:"
REAL i=0
bool err=0
do {
$i=input $prompt
$err=ERROR i
if err {
$prompt="请输入一个数值:"
} else {
MODE NOGUI GEOMETRY_TRANSFORM START BOUNDARY ;
MODE NOGUI TRANSFORM TYPE TRANSLATE
MODE NOGUI TRANSFORM ORIGIN ACTIVE_WORKPLANE
MODE NOGUI COORDINPUT COORDTYPE RELATIVE//相对移动
MODE NOGUI COORDINPUT COORDINATES 0 0 $i
MODE NOGUI GEOMETRY_TRANSFORM FINISH ACCEPT
}
} while err
8、Z轴移动参考线宏
string prompt="输入边界沿着Z轴移动的距离:"
REAL i=0
bool err=0
do {
$i=input $prompt
$err=ERROR i
if err {
$prompt="请输入一个数值:"
} else {
MODE NOGUI GEOMETRY_TRANSFORM START PATTERN ;
MODE NOGUI TRANSFORM TYPE TRANSLATE
MODE NOGUI TRANSFORM ORIGIN ACTIVE_WORKPLANE
MODE NOGUI COORDINPUT COORDTYPE RELATIVE//相对移动
MODE NOGUI COORDINPUT COORDINATES 0 0 $i
MODE NOGUI GEOMETRY_TRANSFORM FINISH ACCEPT
}
} while err
9、锁定Z-扩展XY方向宏
string prompt="输入毛坯扩展的数值:"
REAL i=0
bool err=0
do {
$i=input $prompt
$err=ERROR i
if err {
$prompt="请输入一个数值:"
} else {
FORM BLOCK
EDIT BLOCKTYPE BOX
EDIT BLOCK LIMITTYPE MODEL
EDIT BLOCK ALL UNLOCK
EDIT BLOCK ZLEN LOCK
EDIT BLOCK ZMAX LOCK
EDIT BLOCK ZMIN LOCK
EDIT BLOCK RESETLIMIT $i
EDIT BLOCK RESET
BLOCK ACCEPT
DRAW BLOCK
break
}
} while err
10、批量安全高度(不激活刀路)宏
DIALOGS MESSAGE OFF
DIALOGS ERROR OFF
STRING a= "输入安全高度"
int q= ""
$q= input $a
FOREACH c IN folder('TOOLPATH') {
EDIT PAR "entity('toolpath',$).ce" $q
}
DIALOGS MESSAGE ON
DIALOGS ERROR ON
版权声明:本文标题:powermill宏表达式大全 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:https://www.elefans.com/dianzi/1713881526a376150.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论