How To ... Select Non-Quad Polygons
macroscript SelectNonQuadPolys category: "HowTo"
(
on isEnabled return
(
--选择的对象个数必须为一个,并且它的基础对象属性为可编辑多边形
selection.count == 1 and classOf selection[1].baseobject == Editable_Poly
)
on execute do
(
local face_selection = #{}
local base_obj = $.baseobject
-- 获取该对象的总面数
local num_faces = polyop.getNumFaces base_obj
for f = 1 to num_faces do
(
--获取其中一个面的顶点数
local num_face_verts = polyop.getFaceDeg base_obj f
if num_face_verts != 4 do face_selection[f] = true
) --end f loop
polyop.setFaceSelection base_obj face_selection
--In order to show the results of the selection to the user, we will first switch the command panel to modify mode...
max modify mode
--...then set the current object in Stack View to the base object we checked...
modPanel.setCurrentObject base_obj
subobjectlevel = 4
) --end on execute
) --end script