---法线问题基本是通过角度判断
--- normal*a.*正常的*,*普通的* problem*n.*问题,疑难* form*n.*形式*,*形状*vt.*形成* verdict*n.*裁决*,*定论*
---
/*
polyop.getFaceSelection $
p_22 = polyop.getFaceNormal $ 19 --node:<node=unsupplied>
p_14 = polyop.getFaceNormal $ 151 --node:<node=unsupplied>
acos (dot p_22 p_14)
*/
---可以通过面的角度进行,
---这个操作估计即 思路有了问题, 应该在已有工具上使用。
fn normal_flipvt face_num =
(
level1 =modpanel.getcurrentobject()
if classOf level1==Edit_Poly or classOf level1== Editable_Poly then
(
/* try ( selfaces = polyop.getNumFaces level1)
catch (
selfaces= $.Edit_Poly.EditPolyMod.GetNumFaces() --node:$
) */
selfaces = polyop.getFaceSelection $
selfaces=(selfaces as array)
-- selfaces.numberSet
for i in 1 to selfaces.count do ---*aux.v.vt.*做*,*干*,*办
(
try ( $.EditablePoly.SetSelection #Face #{(selfaces[i])})
catch ($.Edit_Poly.EditPolyMod.select #Face #{(selfaces[i])} )
/* try ( $.EditablePoly.SetSelection #Face #{(selfaces[i+1])})
catch ($.Edit_Poly.EditPolyMod.select #Face #{(selfaces[i+1])} ) */
p_22 = polyop.getFaceNormal $ ((selfaces[i]))
/* p_14 = polyop.getFaceNormal $ (selfaces[i+1]) */
p_14 = polyop.getFaceNormal $ face_num
if acos (dot p_22 p_14)>130. then
(
try ( $.EditablePoly.SetSelection #Face #{(selfaces[i])})
catch ($.Edit_Poly.EditPolyMod.select #Face #{(selfaces[i])} )
try ($.EditablePoly.flipNormals 1)
catch (
$.Edit_Poly.EditPolyMod.ButtonOp #FlipFace
)
)
)---end*n.*末端*,*目标*vt.*结束*
)
) --- end*n.*末端*,*目标*vt.*结束* function*n.*功能*,*职务*,*函数*
try (DestroyDialog gt_yongchao_normal) catch ()
--- 我觉得英爱充开始就杜绝。
rollout gt_yongchao_normal "盖天-强力uv" 162 height:300
(
button pickk "拾取顶层面" --[filter:<function>]*[toolTip:<string>]*[autoDisplay:<boolean>]*
button btn1 "修真法线" 107 height:30
on pickk pressed do
(
if classOf level1==Edit_Poly or classOf level1== Editable_Poly then
(
selfaces = polyop.getFaceSelection $
if selfaces.numberSet==1 then
(
pickk.text= (selfaces as Array)[1] as string
)
)
)---end*n.*末端*,*目标*vt.*结束* pick*vt.*拾;采摘;挑选*
on btn1 pressed do
(
for i in selection do
(
normal_flipvt (try (pickk.text as integer)catch (1))
)
)
)
CreateDialog gt_yongchao_normal