丢失的11组码
今天偶然让我发现一个有意思的事情,我发现被修剪的SPLINE线竟然丢失了组码11,难怪我的程序会出现BUG,有图为证:原先这两根spline线是一样的,只不过上面的白线被修剪后只剩下了控制点(组码10),下面的一根是正常的spline线。我们先假设下面的一根spline线组码表为en-list。
我想到了两个个有意思的事情:
A 竟然spline不需要组码11,那么如果我将一根正常的spline线的11组码全部都去掉是否还能能产生spline线呢,如果产生了spline线又是怎样的一根spline线呢?
结果我用vl-remove将所有11组码去掉生成新表en-list,然后再entmake,结果是确实产生了一根与原来在外型上一摸一样的spline线,但是去掉组码11后再单击图元就如同上图的那根白线一样只能看见控制点(组码10);
B竟然spline可以不需要组码11,那么如果我们留下组码11去掉组码10又会有什么情况发生呢?
同理,我用vl-remove去掉所有组码10的表生成新表en-list,entmake后任然能产生和原来一摸一样的spline,但是这次当我用"(entget (car (entsel)))"来检查这次生成的spline的组码表时,我发现组码11竟然出现了!
由此可见,组码10是由组码11产生的,而组码10又是是spline组码表不可或缺的。
我这就算抛砖引玉吧,请大家对于spline还有什么特别的地方畅所欲言,说实在对于spline我还有些组码没能理解。
楼上第十行的组码11应该是组码10吧。 厉害啊,在此更正"同理,我用vl-remove去掉所有组码10的表生成新表en-list",此处的“10”改为“11”。 chengx2000 发表于 2011-6-15 22:35 static/image/common/back.gif
厉害啊,在此更正"同理,我用vl-remove去掉所有组码10的表生成新表en-list",此处的“10”改为“11”。
这里为什么要改呢?
页:
[1]