关于ARX中与AcdbImage相关的一些问题
如何进行获取某一位置的象素值(包括二值、8位、16位、256色、真彩等)不知道对不对
首先,调用函数:virtual AcGiSentScanLines* AcDbImage::getScanLines(
const AcGiRequestScanLines& pScanLines) const = 0;
pScanLines参数将返回一个AcGiRequestScanLines结构的地址。
然后,用类似这样的方法
pScanLines->mColorDepth;
得到你要的东西。
从你的问题中我觉得你可能弄错了windows象素值的概念。因此mColorDepth也许不是你要的,你可以看看ARX 2000的帮助中有关AcGiRequestScanLines的说明。
我还是说具体点吧?希望有人能回答这个问题
我的意思是:ACAD中可以插入图像文件,如TIF,BMP等。这些图像显示在CAD中有一定的位置坐标信息,图像显示范围内某一点坐标X,Y对应着某一象元点PX,PY,可以通过计算求得X,Y所对应的PX,PY,然后可以读取图像文件的头部,求得PX,PY在文件中的位置,取得其象元值。我现在想知道的是如何不通过对图像文件进行读取,直接通过CAD求得某一点X,Y所对应的象素值,这样就无需对硬盘进行读写操作,可以加快速度,节约内存空间看来要等待绝对高手出现了
页:
[1]