- 积分
- 923
- 明经币
- 个
- 注册时间
- 2004-2-22
- 在线时间
- 小时
- 威望
-
- 金钱
- 个
- 贡献
-
- 激情
-
|
楼主 |
发表于 2004-10-30 14:28:00
|
显示全部楼层
我把第二个函数改成了如下,是想把图形中每个直线的端点都存入一个点数组中去,数组中的每个点两两不相同:void vcstp2jd() { // TODO: Implement the command int sizeofpoint=len1*2; ads_name pipe;////////管段的数组 ads_point as_point[200],ae_point[200];///////管段起始节点的数组 ads_point *totalpoint; if((totalpoint=new ads_point[sizeofpoint])==NULL)///////分配堆内存 {ads_alert("没有分配成功!"); } int n=-1; for(int i=0;i<len1;i++) {acedSSName(sspipe,i,pipe); line_data(pipe,as_point,ae_point); for(int j=0;j<sizeofpoint;j++) {if(as_point[X]!=totalpoint[j][X]&&as_point[Y]!=totalpoint[j][Y]) {n=n+1; ads_point_set(as_point,totalpoint[n]); } } for(j=0;j<sizeofpoint;j++) {if(ae_point[X]!=totalpoint[j][X]&&ae_point[Y]!=totalpoint[j][Y]) {n=n+1; ads_point_set(ae_point,totalpoint[n]); } } }
if (sspipe) acedSSFree(sspipe); delete[]totalpoint; }
编译同样可以通过,可是在CAD下运行的时候却总是提示发生异常,然后CAD自动关闭,为什么!!!急,谢谢了 |
|