社区
图形处理/算法
帖子详情
建立自己的类库
shushenlw
2009-05-25 03:36:11
刚接触VC,老师让自己做一个DIB类库,说是处理位图的时候要用,不知道如何建立,希望各位帮助,谢谢。
...全文
130
14
打赏
收藏
建立自己的类库
刚接触VC,老师让自己做一个DIB类库,说是处理位图的时候要用,不知道如何建立,希望各位帮助,谢谢。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
14 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
IONPhantom
2009-06-04
打赏
举报
回复
楼上的观点...服了,靠抄就能会吗?抄根本就是不走脑子的活动
Eleven
2009-06-04
打赏
举报
回复
[Quote=引用 13 楼 lambochan 的回复:]
你不抄难道一开始你就会自己编?
估计99%的都是从抄"hello world"开始的..hohoho..
只不过现在进化了些..抄...DIB类.
[/Quote]
说的好听一点那叫借鉴一下
lambochan
2009-06-04
打赏
举报
回复
你不抄难道一开始你就会自己编?
估计99%的都是从抄"hello world"开始的..hohoho..
只不过现在进化了些..抄...DIB类.
lambochan
2009-06-04
打赏
举报
回复
[Quote=引用 10 楼 P_hantom 的回复:]
楼上的观点...服了,靠抄就能会吗?抄根本就是不走脑子的活动
[/Quote]
晕,让你抄1百1千次BITMAPINFOHEADER..你猜你会不会烂熟里面的所有值域.
你抄都不抄听老师讲完就算,你猜你会不会知道里面是什么东西?
注意这个"抄"字..不是"粘贴"..
所以,应该体谅老师的苦衷..
当然,抄都不抄直接down个下来交差那就不在偶说之内了..
lambochan
2009-06-03
打赏
举报
回复
老师做法是正确的,明知你们怎么也写不出(也许连老师自己都写不出),实质上就是叫你们去抄,好过你们连抄都懒得抄..
shushenlw
2009-06-03
打赏
举报
回复
呵呵,看来是的。
IONPhantom
2009-05-30
打赏
举报
回复
刚接触VC就让自己写GDI类库?老师是不是太2了!
BruceLin2008
2009-05-29
打赏
举报
回复
我有完整的代码,要的话给你发一份。iamhycljc@163.com
sld009
2009-05-29
打赏
举报
回复
this->FileName=FileName;
if (Bitmap.bmBits!=NULL)
{
delete[]Bitmap.bmBits;
}
Bitmap.bmBits=NULL;
if (pPixels)
{
delete[]pPixels;
}
pPixels=NULL;
Open(FileName,CFile::modeRead,NULL);
ULONGLONG FileStart=GetPosition();
Read(&FileHeader,sizeof(BITMAPFILEHEADER));
Read(&InfoHeader,sizeof(BITMAPINFOHEADER));
nPixels=InfoHeader.biSizeImage;
Bitmap.bmBits=new BYTE[nPixels];
if (NULL==Bitmap.bmBits)
{
return false;
}
pPixels=new BYTE[nPixels];
if (NULL==pPixels)
{
return false;
}
Seek(FileStart+FileHeader.bfOffBits,CFile::begin);
Read(Bitmap.bmBits,nPixels);
memcpy(pPixels,Bitmap.bmBits,nPixels);
Bitmap.bmWidth=InfoHeader.biWidth;
Bitmap.bmHeight=InfoHeader.biHeight;
Bitmap.bmWidthBytes=InfoHeader.biBitCount/8*Bitmap.bmWidth;
Close();
return true;
打开文件用的 我们上课就用这个
laoma_hbu
2009-05-27
打赏
举报
回复
《Visual C++.NET图像处理编程》作者: 陆宗骐,金登男;出版社:清华大学
书不错,排版太差了,看着不舒服。
shushenlw
2009-05-26
打赏
举报
回复
多谢,不过向世明的那本书我有,但是我照着做出来后开始->打开,然后找一个位图,结果位图不能显示啊。
99
2009-05-25
打赏
举报
回复
faint
不能输入了
.....QQ43248007,给你发一个吧.哈哈
99
2009-05-25
打赏
举报
回复
/////////////////////////////////////////////////////////////////////////////////
//
// Dib.h: interface for the CDib class.
//
////////////////////////////////////////////////////////////////////////////////
// 版权所有(2002)
// Copyright(2002)
// 编写者: 向世明
// Author: Xiang Shiming
#ifndef _CDIB_H
#define _CDIB_H
class CDib : public CObject
{
DECLARE_DYNAMIC(CDib)
protected:
BOOL m_bValid; //是否有效
RGBQUAD* m_pRGBQuad; //RGBQUAD 表项
BYTE* m_pDibData; //位图像素数据
LONG m_nWidth; //宽度
LONG m_nHeight; //高度
BYTE m_nBitCount; //每个像素占有的位数
UINT m_nTotalColors; //颜色总数
char* m_pszFileName;
BITMAPFILEHEADER* m_pBitmapFileHeader;
BITMAPINFOHEADER* m_pBitmapInfoHeader;
BITMAPINFO* m_pBitmapInfo;
HGLOBAL m_hDIB;
public:
CDib();
CDib(const char* pszDibFileName);
~CDib();
int Draw(HDC hdc, int XDest, int YDest, int nDestWidth, int nDestHeight, int XSrc, int YSrc, int nSrcWidth, int nSrcHeight, UINT iUsage, DWORD dwRop);
DWORD GetDdbData32(LPBYTE lpbyDdb32);
DWORD GetDdbData24(LPBYTE lpbyDdb24);
DWORD GetDibWidthBytes(int nWidth, BYTE byBitCount);
BYTE GetBitCount() const;
DWORD GetSize();
LONG GetWidth() const;
LONG GetHeight() const;
UINT GetColorNumber() const;
char* GetFileName() const;
BOOL IsValid() const ;
RGBQUAD* GetRGBQuad() const ;
BYTE* GetDibData() const ;
BITMAPINFO* GetBmpInfo() const;
DWORD GetGrayData(LPBYTE lpdata);
public:
void ClearMemory();
HPALETTE CreateBitmapPalette();
#ifdef _DEBUG
virtual void Dump(CDumpContext& dc) const;
virtual void AssertValid() const;
#endif
protected:
void LoadFile(const char* pszDibFileName);
private:
void Init();
};
#endif
建立
自己的.net
类库
建立
自己的.net
类库
一、打开你的vs.net,新寻一个Class Library工程,这里我们为工程名起为:MyDll。二、给自己的Dll工程加一个强名,步骤如下:1、 点击开始->程序-> Micro Visual Studio.Net -> Micro Visual Studio.Net Tools->Visual Studio .Net Command Prompt
建立
属于自己的
类库
首先打开高级系统设置,然后点进去环境变量,配置系统变量(S)(找高级系统设置去你电脑帐户设置中的系统找)点新建现如图a,最后配置:变量名输入classpath,变量值输入存类的包的地址(像我的就是我Dong包的地址:C:\哥的
类库
javaxu\Hai,记得最后加上这个英文符号‘;写在
类库
的类在最上一行写上类所在的包(像我都写上了package Dong)我有Sum.java文件放在Don(如图c),然后随便找个地方写个程序引用这个类(如图d),最后结果(如图e)和Dong文件多了个Sum.class文件。
arduino学习6——
类库
的
建立
目录编写头文件编写.cpp 文件关键高亮显示添加库
建立
示例程序 以SR04为例编写
类库
: 我们知道,在某些时候我们写的代码应用的时候几乎可以说是重复应用的,每次写的时候几乎一样,我们可以通过建议函数来简化这个过程,但是函数只能在一个文件中应用,那我们想要在其他地方用的时候怎么办呢?这个时候就可以用到
类库
了,arduino自带一些常用的库,我们可以根据自己的需要建议自己的
类库
编写头文件 首先,需要建议一个名为SR04.h的头文件,在SR04.h 文件中需要声明一个SR04超声波类 class SR04{ p
java创建一个自己的
类库
_
建立
并使用自己的
类库
注:这里仅使用了文本编辑器和控制台为了让自己的
类库
具有独一无二的名称,可以学习Java
类库
的做法,使用反转的域名作为类的全局名称,比如我的域名是baixo.cn,则cn.baixo就是我所创建的类的独有的全局名称。如果我想创建一个名为test的
类库
,则可以得到一个包的名称:package cn.baixo.test; //package关键字用来生成包含一组类文件的
类库
现在在这个包下创建自己的类...
ECN-LatencyTolnReporting-14Aug08.pdf
ECN-LatencyTolnReporting-14Aug08.pdf
图形处理/算法
19,464
社区成员
50,678
社区内容
发帖
与我相关
我的任务
图形处理/算法
VC/MFC 图形处理/算法
复制链接
扫一扫
分享
社区描述
VC/MFC 图形处理/算法
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章