admin管理员组

文章数量:1530847

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

本文标签: 输入序号刀路移动扩展