hylovegj 发表于 2011-5-30 15:05:30

如何判断单元是否赋了属性?

如题,PCL有没有判断单元是否赋了属性的内部函数?如果没有,如何借助其它内部函数间接地实现?

010710309 发表于 2011-5-30 18:54:50

UTILITIES——Group——group element with no Properties,不知能否用函数调用

happy2008wcb 发表于 2011-5-31 12:42:29

UTILITIES里面的不能用函数调用的,至少这部分的代码不是公开的

hylovegj 发表于 2011-8-5 08:27:23

本帖最后由 hylovegj 于 2011-8-5 08:29 编辑

我自己来回答吧!可以用db_get_region_for_elements函数的返回值region_ids判断。如果一个单元没有赋属性,它的region_id是0,否则为非零整数。下面是一个例子:

function show_elems_without_props()
integer cur_group_id,num_elems,i,num_elems_without_props=0
integer elem_ids(virtual),region_ids(virtual)
db_get_current_group_id(cur_group_id)
db_count_elems_in_group(cur_group_id,num_elems)
sys_allocate_array(elem_ids,1,num_elems)
sys_allocate_array(region_ids,1,num_elems)
db_get_elem_ids_in_group(num_elems,cur_group_id,elem_ids)
db_get_region_for_elements(num_elems,elem_ids,region_ids)
for(i=1 to num_elems)
    if(region_ids(i)!=0)then
      continue
    else
      gm_hilight_entity(124,elem_ids(i),-1)
      num_elems_without_props += 1
    end if
end for
sys_free_array(elem_ids)
sys_free_array(region_ids)
write("There is(are) "//str_from_integer(num_elems_without_props)//" elemt(s) in the current group with on properties")
end function

happy2008wcb 发表于 2011-8-5 12:48:51

兄弟,最近大成了,呵呵,恭喜一下哈

hylovegj 发表于 2011-8-5 14:15:25

兄弟,最近大成了,呵呵,恭喜一下哈
happy2008wcb 发表于 2011-8-5 12:48 http://forum.simwe.com/images/common/back.gif
在波哥面前不敢称大成,最主要的还是波哥指点得好。

lei2yu 发表于 2011-9-22 08:41:05

happy2008wcb 发表于 2011-8-5 12:48 static/image/common/back.gif
兄弟,最近大成了,呵呵,恭喜一下哈

兄弟,能加个好友么,我也一直搞pcl的东东。有许多需要学习的。QQ469282543

lei2yu 发表于 2011-9-22 08:41:30

hylovegj 发表于 2011-8-5 14:15 static/image/common/back.gif
在波哥面前不敢称大成,最主要的还是波哥指点得好。

哥们,加个好友呗,我也一直搞pcl的东东。有许多需要学习的。QQ469282543

ygs2008 发表于 2011-9-22 09:11:09

都是PCL高手啊。呵呵。

bonefish 发表于 2011-11-14 08:59:23

mark一下,以后用得着

guolinhit 发表于 2011-11-15 19:37:20

property>show>thickness,厚度为零的就是没有属性的

zhxar606 发表于 2013-1-4 16:55:16

这个很有用啊
特别是对于复合材料铺层问题,很方便:)
页: [1]
查看完整版本: 如何判断单元是否赋了属性?