明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 1394|回复: 6

关于数据定义的问题

[复制链接]
发表于 2004-10-29 10:38:00 | 显示全部楼层 |阅读模式
我在程序中定义了一点数组ADS_POINT SS[20],然后给这个数组赋值,ADS_POINT_SET(SS,POINT1),请问这样可以吗??编译能通过,可是在CAD下运行总得不到想要的结果,有时还导致CAD崩溃,麻烦了!急,谢
发表于 2004-10-29 10:56:00 | 显示全部楼层

回复

AutoCAD points are defined as the following array type:

typedef ads_real ads_point[3]; 

A point always includes three values. If the point is two-dimensional, the third element of the array can be ignored; it is safest to initialize it to 0.

不可以

发表于 2004-10-29 10:56:00 | 显示全部楼层
#define ads_point_set(from, to) (*(to)= *(from), (to)[1]=(from)[1], (to)[2]=(from)[2])


你把 你的使用代码贴出来看看
 楼主| 发表于 2004-10-29 15:54:00 | 显示全部楼层
我的意思是可以定义点数组吗??象这样:ADS_POINT SS[20]
发表于 2004-10-29 16:02:00 | 显示全部楼层
可以
 楼主| 发表于 2004-10-29 16:06:00 | 显示全部楼层
ads_name pipe[100];////////管段的数组
ads_point as_point[200],ae_point[200];///////管段起始节点的数组
ads_point totalpoint[200];
for(int i=0;i<len1;i++)
{acedSSName(sspipe,i,pipe);
line_data(pipe,as_point,ae_point);
as_point[X]=totalpoint[2*i][X];
as_point[Y]=totalpoint[2*i][Y];
as_point[Z]=totalpoint[2*i][Z];
ae_point[X]=totalpoint[2*i+1][X];
ae_point[Y]=totalpoint[2*i+1][Y];
ae_point[Z]=totalpoint[2*i+1][Z];
}代码如上,编译通过了.可在CAD下运行总是不可以,为什么呢??其实我就是想定义点数组,怎么解决这问题呢??急
发表于 2004-10-30 10:02:00 | 显示全部楼层
你跟踪调试一下,说不定问题不在这里。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-11-26 10:21 , Processed in 0.169795 second(s), 23 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表