CN100412902C - Information Extraction Method of Graphic Image Data - Google Patents
Information Extraction Method of Graphic Image Data Download PDFInfo
- Publication number
- CN100412902C CN100412902C CNB2005100134276A CN200510013427A CN100412902C CN 100412902 C CN100412902 C CN 100412902C CN B2005100134276 A CNB2005100134276 A CN B2005100134276A CN 200510013427 A CN200510013427 A CN 200510013427A CN 100412902 C CN100412902 C CN 100412902C
- Authority
- CN
- China
- Prior art keywords
- coordinate
- data message
- data information
- graph image
- program
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
- 238000000605 extraction Methods 0.000 title abstract description 10
- 238000000034 method Methods 0.000 claims abstract description 35
- 238000013507 mapping Methods 0.000 claims description 9
- 238000006243 chemical reaction Methods 0.000 claims description 4
- 238000012217 deletion Methods 0.000 claims description 4
- 230000037430 deletion Effects 0.000 claims description 4
- 239000000284 extract Substances 0.000 claims description 2
- 241000699666 Mus <mouse, genus> Species 0.000 claims 5
- 230000008878 coupling Effects 0.000 claims 2
- 238000010168 coupling process Methods 0.000 claims 2
- 238000005859 coupling reaction Methods 0.000 claims 2
- 241000699667 Mus spretus Species 0.000 claims 1
- 238000005309 stochastic process Methods 0.000 claims 1
- 238000006467 substitution reaction Methods 0.000 claims 1
- 238000013519 translation Methods 0.000 abstract description 11
- 230000008569 process Effects 0.000 abstract description 8
- 238000005070 sampling Methods 0.000 abstract description 6
- 230000009467 reduction Effects 0.000 abstract description 3
- 230000006870 function Effects 0.000 description 41
- 238000012545 processing Methods 0.000 description 6
- 230000008859 change Effects 0.000 description 4
- 239000003086 colorant Substances 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 239000011800 void material Substances 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 2
- 230000006835 compression Effects 0.000 description 2
- 238000007906 compression Methods 0.000 description 2
- 230000001419 dependent effect Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 239000011159 matrix material Substances 0.000 description 2
- 238000004091 panning Methods 0.000 description 2
- 238000011160 research Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 238000005316 response function Methods 0.000 description 1
- 238000003860 storage Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Landscapes
- Processing Or Creating Images (AREA)
Abstract
一种图形图像数据信息提取方法,将图形图像文件导入(BMP文件,如是纸质文件,扫描生成BMP文件)本程序,显示在计算机屏幕上,用户通过鼠标操作选择需要采取数据信息的位置(取点过程中可随意对图形图像进行缩小、放大和平移),程序自动记录取样点数据信息(屏幕坐标和取样点的其它信息)。取样完成后,程序将屏幕坐标转换成实际坐标。本发明的优点在于:这个工作现在一般是手工完成,而手工操作枯燥、低效、耗时,不精确、出错率高;本发明通过计算机完成,极大地提高提取工作的效率和数据信息精度。实现坐标信息精确提取,保证已取点在随后的图形图像操作中(放大、缩小、平移),与原图上该点的匹配显示,具备用户友好的操作界面。
A method for extracting graphic and image data information, importing graphic and image files (BMP files, such as paper files, scanning to generate BMP files) to this program, displaying on the computer screen, the user selects the position where the data information needs to be taken by mouse operation (take During the pointing process, the graphic image can be reduced, enlarged and moved at will), and the program automatically records the data information of the sampling point (screen coordinates and other information of the sampling point). After the sampling is completed, the program converts the screen coordinates into actual coordinates. The advantage of the present invention is that: this work is generally done manually at present, and manual operation is boring, inefficient, time-consuming, inaccurate, and has a high error rate; the present invention is completed by a computer, which greatly improves the efficiency of extraction work and the accuracy of data information. Accurate extraction of coordinate information is realized to ensure that the selected point is displayed in a matching manner with the point on the original image in subsequent graphic image operations (enlargement, reduction, translation), and has a user-friendly operation interface.
Description
技术领域 technical field
本发明涉及图形图像数据信息提取的方法,特别涉及一种不少于三个已知坐标数据的图形图像进行数据信息提取的方法,在用户通过鼠标选取位置的情况下,程序计算得到该位置坐标。The present invention relates to a method for extracting graphic image data information, in particular to a method for extracting data information from graphic images with no less than three known coordinate data. When the user selects a position with the mouse, the program calculates the position coordinates .
背景技术 Background technique
科研和生产实践工作中,常常需要从图形图像中提取大量数据信息,这个工作现在一般是手工完成,而手工操作枯燥、低效、耗时,不精确、出错率高。本发明设计程序、开发软件,通过计算机完成,极大地提高提取工作的效率和数据信息精度。In scientific research and production practice, it is often necessary to extract a large amount of data information from graphics and images. This work is now generally done manually, and manual operations are boring, inefficient, time-consuming, imprecise, and have a high error rate. The design program and development software of the present invention are completed by a computer, which greatly improves the efficiency of extraction work and the accuracy of data information.
发明内容 Contents of the invention
本发明的目的在于提供这样一种图形图像数据信息提取的方法:将图形图像文件导入(BMP文件,如是纸质文件,扫描生成BMP文件)程序,显示在计算机屏幕上,用户通过鼠标操作选择需要采取数据信息的位置(取点过程中图形图像可随意缩小、放大和平移),软件自动记录取样点数据信息(屏幕坐标和取样点的其它信息)。取样完成后,程序将屏幕坐标转换成实际坐标。The object of the present invention is to provide such a method for graphic image data information extraction: the graphic image file is imported (BMP file, if it is a paper file, scan to generate a BMP file) program, displayed on the computer screen, and the user selects the desired file by mouse operation. The position of the data information is taken (the graphic image can be zoomed out, enlarged and translated at will during the point taking process), and the software automatically records the data information of the sampling point (screen coordinates and other information of the sampling point). After the sampling is completed, the program converts the screen coordinates into actual coordinates.
本发明提出的目的通过以下方案来实现:The object proposed by the present invention is achieved through the following schemes:
一种图形图像数据信息提取方法,用于接收作为提取对象的数据信息的图形图像文件的输入,对数据信息进行提取并给出数据信息的位置的坐标,所述方法包括:A method for extracting graphic and image data information, used to receive the input of a graphic and image file as the data information of the extraction object, extract the data information and provide the coordinates of the position of the data information, the method includes:
a.用鼠标操作选择需要采取数据信息的位置,以及a. Use the mouse to select the position where the data information needs to be taken, and
b.对采取数据信息的位置进行与图形图像的匹配显示、计算采取数据信息的位置的坐标。b. Match and display the location where the data information is taken with the graphic image, and calculate the coordinates of the location where the data information is taken.
对用鼠标操作选择需要采取数据信息的位置采用了这样的方法:用操作DIB的Win32API函数在计算机屏幕上显示带有数据信息的图形图像位图文件,用鼠标操作选择需要采取的数据信息的位置,程序记录该位置。This method is used to select the position where the data information needs to be taken by using the mouse: use the Win32API function of operating DIB to display the graphic image bitmap file with the data information on the computer screen, and use the mouse to select the position where the data information needs to be taken , the program records the position.
对采取数据信息的位置进行与图形图像的匹配显示采用了这样的方法:在所述的程序记录位置时,用到两个二维动态链表,一个记录该位置在位图文件输入时,其对应的图上坐标,随后程序绘制该坐标位置时,计算图上坐标转换后的坐标;另一个链表用于保存。The method of matching and displaying the position of the data information with the graphic image is adopted: when the program records the position, two two-dimensional dynamic linked lists are used, one records the position when the bitmap file is input, and its corresponding The coordinates on the map, and then when the program draws the coordinate position, calculate the coordinates after coordinate conversion on the map; another linked list is used for saving.
计算采取数据信息的位置的坐标采用了这样的方法:所述的在计算机屏幕上显示的带有数据信息的图形图像位图文件的图像上通过鼠标选取三个已知图上坐标的参考点,通过参考点坐标对话框输入实际坐标,则所有采取数据信息的坐标位置的图上坐标和实际坐标的映射关系都满足三个参考点的映射关系。Calculating the coordinates of the position where the data information is taken adopts such a method: on the image of the graphic image bitmap file with the data information displayed on the computer screen, the reference points of the coordinates on the three known maps are selected by the mouse, Input the actual coordinates through the reference point coordinate dialog box, then the mapping relationship between the coordinates on the map and the actual coordinates of all the coordinate positions of the data information will satisfy the mapping relationship of the three reference points.
用户通过鼠标操作选择需要采取的数据信息的位置或将已选择的位置删除是个动态随机过程,程序将已选择的位置的坐标记录于动态二维链表中,实现鼠标操作选择需要采取的数据信息的位置或删除已选择的位置的随机性。It is a dynamic random process that the user selects the position of the data information to be collected or deletes the selected position through the mouse operation. The program records the coordinates of the selected position in the dynamic two-dimensional linked list to realize the selection of the data information to be collected by the mouse operation. Randomizes the position or removes the selected position.
将所述三个参考点的图上及实际X、Y坐标联立,得到包含六个未知系数和六个线性方程的方程组,求解该方程组,得到六个系数,分别代入各数据点的实际坐标与图上坐标的映射关系式中,就能求得每个数据点对应的实际坐标。方程组如下:Combine the graphs of the three reference points and the actual X and Y coordinates to obtain a system of equations comprising six unknown coefficients and six linear equations, solve the system of equations to obtain six coefficients, and substitute them into each data point The actual coordinates corresponding to each data point can be obtained from the mapping relationship between the actual coordinates and the coordinates on the map. The equation set is as follows:
其中(x01,y01)、(x02,y02)、(x03,y03)分别为三个参考点的图上坐标,(x1,y1)、(x2,y2)、(x3,y3)分别为三个参考点的实际坐标,A、B、C、D、L、M为需求解的未知的系数。Among them (x01, y01), (x02, y02), (x03, y03) are the coordinates on the map of the three reference points respectively, and (x1, y1), (x2, y2), (x3, y3) are three The actual coordinates of the reference point, A, B, C, D, L, M are the unknown coefficients to be solved.
所述的图形图像文件为BMP位图文件。The graphic image file is a BMP bitmap file.
本发明的有益效果:Beneficial effects of the present invention:
1、本发明针对在科研和生产实践中,从图形图像中提取数据(信息)的工作极其频繁、工作量极大这一实际情况,采用计算机技术(如C++编程技术),设计开发软件,使用户从过去“手工提取”中解放出来,提高提取工作的效率和数据信息精度。1, the present invention is aimed at in scientific research and production practice, the work of extracting data (information) from graphic image is extremely frequent, this actual situation that workload is very large, adopts computer technology (as C++ programming technology), design and develop software, make Users are freed from the "manual extraction" in the past, improving the efficiency of extraction work and the accuracy of data information.
2、本发明解决对鼠标操作已选择位置在随后的图形图像操作中(放大、缩小、平移),与原图上该位置的匹配显示。2. The present invention solves the problem of matching and displaying the position selected by the mouse operation with the position on the original image in subsequent graphic image operations (enlargement, reduction, translation).
3、将坐标信息精确提取在程序中进行实现,可移植性强。对任何一个包含数据信息的图像文件都可以将其数据提取出来。3. Accurate extraction of coordinate information is implemented in the program, which has strong portability. The data can be extracted from any image file containing data information.
附图说明 Description of drawings
图1是本发明所述方法的流程图。Figure 1 is a flow chart of the method of the present invention.
图2是位图读入及显示程序示意图。Figure 2 is a schematic diagram of the bitmap read-in and display program.
图3是二维动态链表说明图。Fig. 3 is an explanatory diagram of a two-dimensional dynamic linked list.
具体实施方式 Detailed ways
下面结合附图和并非特定的实施例来对本发明作更详尽的说明。The present invention will be described in more detail below in conjunction with the accompanying drawings and non-specific embodiments.
实施例1Example 1
下面将以BMP位图文件为例来对本发明做出更详细的说明。The present invention will be described in more detail below by taking a BMP bitmap file as an example.
Windows操作系统下有两大类位图格式——GDI(Graphics Device Interface,图形设备接口)位图和DIB(Device-Independent Bitmaps,设备无关位图)。在MFC(MicrosoftFoundation Class,微软基本类库)6.0版中,GDI位图对象被封装在CBitmap类中。由于该类使用一种与Windows GDI模块有关的Windows数据结构,因此具有设备相关性。即使程序得到位图数据的一个拷贝,其位(bit)安排仍是依赖于显示硬件的。因此,在同一台计算机中GDI位图可以自由地在不同程序中传输,但由于其设备依赖性,使得其通过磁盘或网络在不同类型计算机之间的传输变得毫无意义。There are two major types of bitmap formats under the Windows operating system - GDI (Graphics Device Interface, graphics device interface) bitmap and DIB (Device-Independent Bitmaps, device-independent bitmap). In MFC (Microsoft Foundation Class, Microsoft Basic Class Library) version 6.0, GDI bitmap objects are encapsulated in the CBitmap class. Because this class uses a Windows data structure related to the Windows GDI module, it is device-dependent. Even if the program gets a copy of the bitmap data, the bit arrangement is still dependent on the display hardware. Therefore, GDI bitmaps can be freely transferred between different programs in the same computer, but their device dependence makes their transfer between different types of computers via disk or network meaningless.
DIB则在程序设计方面提供许多超越GDI位图的优势:DIB本身携带有自己的颜色信息,使颜色调配管理变得更加简单;任何运行Windows操作系统的计算机均可处理存储于BMP文件或可执行文件内部资源中的DIB;尽管TIFF、GIF或JPEG等格式的图像文件在转换后也可以被使用,但却只有采用DIB格式的文件被Win32 API所直接支持;虽然在Win32中允许在不同进程之间通过传递GDI位图句柄到剪贴板进行位图的传递,但在后台所进行的操作却是借助DIB来完成的——将设备相关的GDI位图转换成一个DIB,并将此DIB复制到一段共内存。从中可以明显看出,相对设备独立的DIB较之GDI位图有着明显的优势,因此,本软件图像操作部分的程序实现代码均以DIB作为处理对象。DIB provides many advantages over GDI bitmap in program design: DIB itself carries its own color information, which makes color matching management easier; any computer running Windows operating system can process files stored in BMP or executable DIB in the internal resources of the file; although image files in formats such as TIFF, GIF, or JPEG can also be used after conversion, only files in the DIB format are directly supported by the Win32 API; The bitmap is transferred by passing the GDI bitmap handle to the clipboard, but the operation in the background is done with the help of DIB-converting the device-related GDI bitmap into a DIB and copying the DIB to A shared memory. It can be clearly seen that DIB, which is relatively independent of equipment, has obvious advantages over GDI bitmap. Therefore, the program implementation codes of the image operation part of this software all use DIB as the processing object.
BMP文件是DIB中比较典型的一种,其文件格式可分为两大部分:文件头部分和象素点阵部分。文件头包含DIB的结构数据,并可进一步分为三段。BMP file is a typical one in DIB, and its file format can be divided into two parts: the file header part and the pixel dot matrix part. The file header contains the structural data of the DIB and can be further divided into three sections.
文件头第一部分是位图文件头结构BITMAPFILEHEADER,在wingdi.h中定义如下:The first part of the file header is the bitmap file header structure BITMAPFILEHEADER, which is defined in wingdi.h as follows:
typedef struct tagBITMAPFILEHEADER {//bmfhtypedef struct tagBITMAPFILEHEADER {//bmfh
WORD bfType;WORD bfType;
DWORD bfSize;DWORD bfSize;
WORD bfReserved1;WORD bfReserved1;
WORD bfReserved2;WORD bfReserved2;
DWORD bfOffBits;DWORD bfOffBits;
}BITMAPFILEHEADER;}BITMAPFILEHEADER;
其长度固定为14字节。第一个数据成员bfType固定为0x424D(ASCII码“BM”),用来标识本文件为BMP位图文件。数据成员bfSize记录此位图文件的实际长度。bfReserved1和bfReserved2为保留字,通常为0,一般不予考虑。最后的bfOffBits为位图阵列相对于文件头的偏移距离。Its length is fixed at 14 bytes. The first data member bfType is fixed to 0x424D (ASCII code "BM"), which is used to identify this file as a BMP bitmap file. Data member bfSize records the actual length of this bitmap file. bfReserved1 and bfReserved2 are reserved words, usually 0, and generally not considered. The last bfOffBits is the offset distance of the bitmap array relative to the file header.
第二部分是位图信息头结构BITMAPHEADER,也是在wingdi.h中定义的,其内部成员较多,主要记录DIB的尺寸和颜色格式等信息,完整定义如下:The second part is the bitmap information header structure BITMAPHEADER, which is also defined in wingdi.h. It has many internal members and mainly records information such as the size and color format of the DIB. The complete definition is as follows:
typedef struct tagBITMAPINFOHEADER {//bmihtypedef struct tagBITMAPINFOHEADER {//bmih
DWORD biSizeDWORD biSize
LONG biWidth;LONG biWidth;
LONG biHeight;LONG biHeight;
WORD biPlanes;WORD biPlanes;
WORD biBitCount;WORD biBitCount;
DWORD biCompression;DWORD biCompression;
DWORD biSizeImage;DWORD biSizeImage;
LONG biXPelsPerMeter;LONG biXPelsPerMeter;
LONG biYPelsPerMeter;LONG biYPelsPerMeter;
DWORD biClrUsed;DWORD biClrUsed;
DWORD biClrImportant;DWORD biClrImportant;
}BITMAPINFOHEADER;}BITMAPINFOHEADER;
其中,成员biSize为该结构长度,固定为40字节。biWidth和biHeight分别保存DIB的宽度和高度。biPlanes描述目标设备的位面个数,必须为1。biBitCount记录图像的位深度,可选值为1(单色位图)、4(16色位图)、8(256位图)、16(16位增强色位图)、24(24位真彩色位图)和32(32位真彩色位图)。BiCompression指定图像的压缩格式,有效值分别为BI_RGB、BI_RLE8、BI_RLE4、BI_BITFIELDS和BI_JPEG等,一般情况下置为BI_RGB不压缩模式。成员biSizeImage为位图阵列的大小。biXPelsPerMeter和biYPelsPerMeter指定目标设备的分辨率。biClrUsed指定图像中实际用到的颜色数,如果为零,则使用的颜色与位深度指定的相一致。最后的成员biClrImportant如果非零,则指定图像中相对重要的颜色数。Among them, the member biSize is the length of the structure, which is fixed at 40 bytes. biWidth and biHeight save the width and height of the DIB respectively. biPlanes describes the number of planes of the target device and must be 1. biBitCount records the bit depth of the image, the optional value is 1 (monochrome bitmap), 4 (16-color bitmap), 8 (256 bitmap), 16 (16-bit enhanced color bitmap), 24 (24-bit true color bitmap) and 32 (32-bit true-color bitmap). BiCompression specifies the compression format of the image, and the valid values are BI_RGB, BI_RLE8, BI_RLE4, BI_BITFIELDS, and BI_JPEG, etc. Generally, it is set to BI_RGB without compression mode. The member biSizeImage is the size of the bitmap array. biXPelsPerMeter and biYPelsPerMeter specify the resolution of the target device. biClrUsed specifies the number of colors actually used in the image, if zero, the colors used are consistent with those specified by the bit depth. The last member, biClrImportant, if non-zero, specifies the relative importance of colors in the image.
最后一段用于存放图像的调色板(又称颜色分配表,color table),因此对于不需要调色板支持的16位、24位和32位位深度图像的头文件中将没有该段,在前两段之后直接为象素阵列数据。而对于16位以下的图像,该段为一个长度为biClrUsed的RGBQUAD结构数组。其中RGBQUAD结构定义如下:The last section is used to store the palette of the image (also known as the color allocation table, color table), so there will be no such section in the header file for 16-bit, 24-bit and 32-bit bit depth images that do not require palette support. Immediately after the first two paragraphs is the pixel array data. For images below 16 bits, this segment is an array of RGBQUAD structures with a length of biClrUsed. The RGBQUAD structure is defined as follows:
typedef struct tagRGBQUAD {//rgbqtypedef struct tagRGBQUAD {//rgbq
BYTE rgbBlue;BYTE rgbBlue;
BYTE rgbGreen;BYTE rgbGreen;
BYTE rgbRed;BYTE rgbRed;
BYTE rgbReserved;BYTE rgbReserved;
}RGBQUAD;}RGBQUAD;
结构的前三个成员分别为颜色的蓝、绿、红分量,rgbReserved为保留值,通常为0。The first three members of the structure are the blue, green, and red components of the color, and rgbReserved is a reserved value, usually 0.
在此之后便是图像的象素点阵序列,根据位深度的不同有着不同的定义。对于位深度在16位以下的图像为颜色的索引值;对于16位、24位和32位的则存放着图像实际的R、G、B各分量值。即使是真彩位图,由于位深度的不同其阵列结构也是有区别的。16位位深度的图像采用“565”的组织方式,即以两个字节存放一个RGB单元:RRRRRGGG(高字节)GGGBBBBB(低字节)。24位位深度图像则恰好可以用三个字节存放一个完整的RGB单元,因此在对象素进行操作时,可以很方便地按字节进行处理而不必进行位运算。32位位深度的位图构成原理也比较简单,它是将一个颜色字拓展成一个双字来实现的,比如,上述16位位深度的图像存放有一个完整RGB颜色的两个字节,在转换成32位位深度位图后就被拓展为00000RRRRRR00000 GGGGGG00 000BBBBB。After this is the pixel matrix sequence of the image, which has different definitions according to the bit depth. For images with a bit depth below 16 bits, it is the index value of the color; for 16-bit, 24-bit and 32-bit images, the actual R, G, and B component values of the image are stored. Even if it is a true color bitmap, the array structure is different due to the different bit depth. The 16-bit bit depth image adopts the "565" organization method, that is, stores an RGB unit in two bytes: RRRRRGGG (high byte) GGGBBBBB (low byte). A 24-bit bit depth image can just use three bytes to store a complete RGB unit, so when operating on pixels, it can be conveniently processed by bytes without bit operations. The composition principle of the 32-bit bit depth bitmap is also relatively simple. It is realized by expanding a color word into a double word. For example, the above-mentioned 16-bit bit depth image stores two bytes of a complete RGB color. After converting to a 32-bit bit depth bitmap, it is expanded to 00000RRRRRR00000 GGGGGG00 000BBBBB.
本发明在图像处理部分中,将注意力集中在图像处理的算法实现上,封装Windows系统提供的一些重要的DIB访问函数,建立一个实现DIB主要操作功能的类。在进行图像处理编程时,只需通过该类提供的公有型(public)接口函数调用,即可实现与之相关的功能。In the image processing part, the present invention focuses attention on the algorithm realization of image processing, encapsulates some important DIB access functions provided by the Windows system, and establishes a class to realize the main operation functions of DIB. When performing image processing programming, you only need to call the public interface function provided by this class to realize related functions.
基本函数有五个:SetDIBitsToDevice()、StretchDIBits()、GetDIBits()、CreateDIBitmap()和CreateDIBSection(),分别用于显示打印DIB、拉伸显示DIB、从GDI位图构造DIB、从DIB创建GDI位图以及创建DIB项(一种特殊的DIB)。There are five basic functions: SetDIBitsToDevice(), StretchDIBits(), GetDIBits(), CreateDIBitmap(), and CreateDIBSection(), which are used to display and print DIBs, stretch and display DIBs, construct DIBs from GDI bitmaps, and create GDI bits from DIBs diagrams and create DIB items (a special kind of DIB).
SetDIBitsToDevice()函数负责将DIB直接显示到屏幕或输出到打印机,而不进行任何缩放处理。函数原型在wingdi.h中声明如下:The SetDIBitsToDevice() function is responsible for displaying the DIB directly to the screen or outputting it to the printer without any scaling. The function prototype is declared in wingdi.h as follows:
int SetDIBitsToDevice(int SetDIBitsToDevice(
HDC hdc, //设备上下文句柄HDC hdc, //Device context handle
int XDest, //目的区域左上角X坐标int XDest, //X coordinate of the upper left corner of the destination area
int YDest, //目的区域左上角Y坐标int YDest, //Y coordinate of the upper left corner of the destination area
DWORD dwWidth //源DIB宽度DWORD dwWidth //Source DIB width
DWORD dwHeight, //源DIB高度DWORD dwHeight, //source DIB height
int XSrc, //源DIB左上角X坐标int XSrc, // X coordinate of the upper left corner of the source DIB
int YSrc, //源DIB左上角Y坐标int YSrc, //Y coordinate of the upper left corner of the source DIB
UINT uStarScan, //指定DIB扫描的起始行UINT uStarScan, //Specify the start line of DIB scanning
UINT cScanLines, //指定扫描行数UINT cScanLines, //Specify the number of scan lines
CONST VOID*lpvBits, //指向DIB数据图像的指针CONST VOID*lpvBits, //Pointer to DIB data image
CONST BITMAPINFO*lpbmi, //指向位图信息结构的指针CONST BITMAPINFO*lpbmi, //Pointer to bitmap information structure
UINTfuColorUse //指定使用的是RGB还是调色//板索引UINTfuColorUse // specifies whether to use RGB or color palette // board index
););
拉伸显示函数StretchDIBits()对DIB进行拉伸变换后再显示到显示器或输出到打印机。函数原型如下:The stretch display function StretchDIBits() stretches and transforms the DIB and then displays it on the monitor or outputs it to the printer. The function prototype is as follows:
int StretchDIBits(int StretchDIBits(
HDC hdc, //设备上下文句柄HDC hdc, //Device context handle
int XDest, //目的区域左上角X坐标int XDest, //X coordinate of the upper left corner of the destination area
int YDest, //目的区域左上角Y坐标int YDest, //Y coordinate of the upper left corner of the destination area
int nDestWidth, //目的区域宽度int nDestWidth, //Destination area width
int nDestHeight, //目的区域高度int nDestHeight, //Destination area height
int XSrc, //源DIB左上角X坐标int XSrc, // X coordinate of upper left corner of source DIB
int YSrc, //源DIB左上角Y坐标int YSrc, //Y coordinate of the upper left corner of the source DIB
int nSrcWidth, //源DIB宽度int nSrcWidth, //source DIB width
int nSrcHeight, //源DIB高度int nSrcHeight, //source DIB height
CONST VOID*lpBits, //指向DIB数据图像的指针CONST VOID*lpBits, //Pointer to DIB data image
CONST BITMAPINFO*lpBitsInfo, //指向位图信息结构的指针CONST BITMAPINFO*lpBitsInfo, //Pointer to bitmap information structure
UINT iUsage, //指定使用的是RGB还是调//色板索引UINT iUsage, // specify whether to use RGB or color palette // color palette index
DWROD dwRop //指定绘制方式DWROD dwRop //Specify the drawing method
););
如果参数nSrcWidth和nDestWidth的符号或是参数nSrcHeight和nDestHeight的符号不同,那么函数StretchDIBits()将创建一个原位图的镜像。具体而言,如果只有参数nSrcWidth和nDestWidth的符号不同,将沿X轴创建镜像;类似地,如果只有参数nSrcHeight和nDestHeight的符号不同,将沿Y轴创建镜像。If the signs of the parameters nSrcWidth and nDestWidth or parameters nSrcHeight and nDestHeight are different, the function StretchDIBits() will create a mirror image of the original bitmap. Specifically, if only the signs of the parameters nSrcWidth and nDestWidth are different, a mirror image will be created along the X axis; similarly, if only the signs of the parameters nSrcHeight and nDestHeight are different, a mirror image will be created along the Y axis.
到目前为止,Microsoft一直没有将有关DIB的API函数封装进MFC,这样在进行面向对象(OOP)的程序设计时将十分不便。作者在此部分编程实现时,主要参阅参考文献《数字图像处理学Visual C++实现》(朗锐编著,北京希望电子出版社,2003年1月第1版,ISBN7-89498-026-9)提供的相关程序代码。本发明的软件源程序中附有详细的注释说明。Microsoft提供的MFC封装Windows API,是一个面向对象的封装的C++类库。MFC 6.0版本封装大约200个类,其中一些可以被用户直接使用,而另一些则主要作为用户自己的类的基础类。MFC是一个应用程序的框架结构。它不仅仅是一个类的集合,还帮助定义应用程序的结构并为应用程序处理许多杂务。框架结构提供了抽象功能,它远远地超出Windows API的功能。So far, Microsoft has not encapsulated the API functions related to DIB into MFC, which will be very inconvenient when doing object-oriented (OOP) programming. When the author implements programming in this part, he mainly refers to the reference "Visual C++ Implementation of Digital Image Processing" (edited by Lang Rui, Beijing Hope Electronic Publishing House, first edition in January 2003, ISBN7-89498-026-9) related program code. The software source program of the present invention is accompanied by detailed annotations. The MFC provided by Microsoft encapsulates the Windows API and is an object-oriented encapsulated C++ class library. The MFC 6.0 version encapsulates about 200 classes, some of which can be used directly by users, while others are mainly used as the base classes of users' own classes. MFC is an application framework. More than just a collection of classes, it helps define the structure of the application and handles a lot of chores for the application. Frameworks provide abstraction functionality that goes far beyond the capabilities of the Windows API.
本发明的程序基于MFC类库,调用前述DIB类,即可实现BMP位图的显示;在恰当的消息函数中改变调用DIB类对象函数的参数,实现位图的缩放、平移。在此基础上,编程实现其它操作,如鼠标点击(获取数据信息)、数据信息记录、转换坐标计算、以及已取点在随后的图形图像操作中(放大、缩小、平移),与原图上该点的匹配显示等。The program of the present invention is based on the MFC class library, and the display of the BMP bitmap can be realized by calling the aforementioned DIB class; the parameter of calling the DIB class object function is changed in an appropriate message function to realize the scaling and translation of the bitmap. On this basis, programming realizes other operations, such as mouse click (obtaining data information), data information recording, conversion coordinate calculation, and subsequent graphic image operations (enlargement, reduction, translation) of the acquired points, which are similar to those on the original image. Matches for that point are displayed, etc.
对图形图像数据信息进行提取最终要归结到对BMP位图的处理上来,程序基本功能如下所述:The extraction of graphics and image data information ultimately comes down to the processing of BMP bitmaps. The basic functions of the program are as follows:
在MFC Wizards自动生成的单文档程序中,添加前述DIB类,并在该单文档程序的文档类对象(名为CBMPDoc)中实例化DIB类,对象名为m_DIB。在CBMPDoc类对象的成员函数OnOpenDocument()中调用m_DIB对象的读入DIB文件成员函数,实现该单文档MFC程序中读入位图文件。In the single-document program automatically generated by MFC Wizards, add the aforementioned DIB class, and instantiate the DIB class in the document class object (named CBMPDoc) of the single-document program, and the object name is m_DIB. In the member function OnOpenDocument () of the CBMPDoc class object, call the member function of reading the DIB file of the m_DIB object to realize the reading of the bitmap file in the single-document MFC program.
读入位图文件后,显示工作由MFC CView类的派生类对象CBMPView完成。MFC程序窗口视图区的绘制由CBMPView类对象的成员函数OnDraw()实现。在CBMPView类对象的成员函数OnDraw()中,首先调用CBMPView类对象的成员函数GetDocument(),得到指向CBMPDoc类对象的指针,用该指针指向CBMPDoc对象中的m_DIB对象,再在OnDraw()函数中用指向m_DIB的指针调用DIB类的显示成员函数,即可实现位图的显示。如说明书附图2所示。After reading in the bitmap file, the display work is completed by the derived class object CBMPView of the MFC CView class. The drawing of the view area of the MFC program window is realized by the member function OnDraw() of the CBMPView class object. In the member function OnDraw() of the CBMPView class object, first call the member function GetDocument() of the CBMPView class object to obtain the pointer to the CBMPDoc class object, use the pointer to point to the m_DIB object in the CBMPDoc object, and then in the OnDraw() function Use the pointer to m_DIB to call the display member function of the DIB class to display the bitmap. As shown in Figure 2 of the description.
进行位图的缩放、平移操作时,在MFC程序菜单项中添加新的菜单,并在工具栏里绘制相应新的工具按钮,分别对应缩放因子变量和X、Y轴平移象素变量。仍在CBMPView类对象的OnDraw函数中,改变传入m_DIB的显示函数的参数,则DIB类调用封装的Win32API函数StretchDIB(),实现位图的缩放;或者改变绘制位图的区域的坐标,实现位图的平移。程序及注释如下:When performing bitmap zooming and translation operations, add a new menu in the MFC program menu item, and draw corresponding new tool buttons in the toolbar, corresponding to the zoom factor variable and X, Y axis translation pixel variable respectively. Still in the OnDraw function of the CBMPView class object, change the parameters of the display function passed in to m_DIB, then the DIB class calls the encapsulated Win32API function StretchDIB() to realize the scaling of the bitmap; or change the coordinates of the area where the bitmap is drawn to realize bitmap The panning of the graph. The program and notes are as follows:
用鼠标托拽实现位图的平移操作时,首先定义一个bool型状态变量,当用户点击平移操作的菜单选项或相应工具栏按钮后,该状态量值为true,在CBMPView类对象的消息函数OnLButtonDown()(代表鼠标左键按下)中,记录当前单击点的坐标,并用函数捕捉鼠标的运动(函数的详细情况请见程序清单);按下鼠标左键并且鼠标移动(托拽)过程中,CBMPView类对象的消息函数OnMouseMove()响应该过程,检测是否捕捉鼠标,并由OnLButtonDown()函数中记录的单击点坐标,计算变化的平移距离变量x_move及y_move的值,即时刷新(Invalidate()函数)显示,便能显示位图随鼠标的托拽移动位置;最后,松开鼠标左键,消息函数OnLButtonUp()函数响应该过程,解除捕捉鼠标,完成一次鼠标托拽平移位图的操作。When dragging and dragging the mouse to realize the translation operation of the bitmap, first define a bool state variable. When the user clicks the menu option or the corresponding toolbar button of the translation operation, the value of the state value is true, and the message function OnLButtonDown of the CBMPView class object In () (representing the left mouse button is pressed), record the coordinates of the current click point, and use the function to capture the movement of the mouse (see the program list for details of the function); press the left mouse button and the mouse moves (drag) process Among them, the message function OnMouseMove() of the CBMPView class object responds to this process, detects whether the mouse is captured, and calculates the values of the variable translation distance variables x_move and y_move from the coordinates of the click point recorded in the OnLButtonDown() function, and refreshes them immediately (Invalidate () function) display, it can display the position of the bitmap moving with the dragging of the mouse; finally, release the left mouse button, the message function OnLButtonUp() responds to this process, releases the capture of the mouse, and completes a translation of the bitmap by dragging the mouse operate.
由于用户添加曲线、选择数据点及删除数据点的操作是个动态随机过程,不可能预先知道用户将选取、删除多少个数据点或添加多少条曲线,所以数据点的存储用二维链表来实现,链表结构如说明书附图3所示。Since the operation of adding curves, selecting data points and deleting data points by the user is a dynamic random process, it is impossible to know in advance how many data points the user will select and delete or how many curves will be added, so the storage of data points is realized by a two-dimensional linked list. The linked list structure is shown in Figure 3 of the specification.
链表由类构成,每个结点为一个类对象。该类中包括一个用户自定义类型的数据域data,在本软件中定义为CPoint类型;两个该类的指针,一个指向下一“行”的结点对象,另一个指向下一“列”的结点对象。The linked list is composed of classes, and each node is a class object. This class includes a user-defined type of data field data, which is defined as CPoint type in this software; two pointers of this class, one pointing to the node object of the next "row", and the other pointing to the next "column" The node object.
链表包括表头指针*first,其数据域data置零,“行”指针指向第一“行”,“列”指针(元素指针)指空(NULL);每一行的头结点的数据域也置零,“行”指针指向下一“行”的头结点,元素指针指向该“行”第一个结点;各“行”中所有结点的“行”指针都指空,元素指针指向该“行”下一个结点,数据域存储CPoint类型数据;如果是“行”内最后一个结点,则其“行”、“列”指针都指空;最后一“行”的头结点被指针*cur_row指向,表明该“行”为链表最后一行,该行最后一个结点被指针*cur_ele指向,表明该结点为链表最后一行最后一个结点。The linked list includes the header pointer *first, its data field data is set to zero, the "row" pointer points to the first "row", and the "column" pointer (element pointer) refers to empty (NULL); the data field of the head node of each row also Set to zero, the "row" pointer points to the head node of the next "row", and the element pointer points to the first node of the "row"; the "row" pointers of all nodes in each "row" are empty, and the element pointer Point to the next node of the "row", and the data field stores CPoint type data; if it is the last node in the "row", its "row" and "column" pointers are empty; the header node of the last "row" The point is pointed to by the pointer *cur_row, indicating that the "row" is the last row of the linked list, and the last node of the row is pointed by the pointer *cur_ele, indicating that the node is the last node of the last row of the linked list.
该链表的类定义及注释如下:The class definition and annotations of the linked list are as follows:
基于该二维动态链表,在MFC程序的响应函数中调用链表相应的成员函数,就能动态实现曲线、数据点的添加以及删除操作。Based on the two-dimensional dynamic linked list, calling the corresponding member function of the linked list in the response function of the MFC program can dynamically realize the addition and deletion of curves and data points.
添加曲线时,相当于在二维链表中添加新的“行”;添加数据点时,即在当前“行”中添加新的结点,结点的数据域就是选取的坐标;删除时,由于不可能精确地点击到正好需要删除的点,需要先搜索整个链表,找出数据域距选取点最近的结点,再判定该结点数据域的值与选取的点的坐标是否在一定的范围内,才能最终确定该结点是否为应该删除的结点,若是,删除之,完成删除一个结点的操作,不是,取消操作。When adding a curve, it is equivalent to adding a new "row" in the two-dimensional linked list; when adding a data point, that is, adding a new node in the current "row", and the data field of the node is the selected coordinate; when deleting, because It is impossible to precisely click on the point that needs to be deleted. It is necessary to search the entire linked list first to find the node whose data field is closest to the selected point, and then determine whether the value of the node’s data field and the coordinates of the selected point are within a certain range In order to finally determine whether the node is a node that should be deleted, if so, delete it, and complete the operation of deleting a node, if not, cancel the operation.
为实现已选取的点在位图显示变化时的匹配显示,当对位图进行缩放或平移操作时,显示内容的位置将发生改变,此时,需要使用户选取的数据点(即时显示)同时匹配显示,而不发生“错位”现象。为解决该问题,作者在存储数据点时,实际用到两个“同步”的二维动态链表。In order to realize the matching display of the selected points when the bitmap display changes, when zooming or panning the bitmap, the position of the displayed content will change. At this time, it is necessary to make the data points selected by the user (immediate display) simultaneously Matching display without "misplacement" phenomenon. To solve this problem, the author actually uses two "synchronized" two-dimensional dynamic linked lists when storing data points.
首先有一个开关变量表明进入选择数据点状态,当鼠标左键按下时,就调用选择坐标点的函数,该函数同时更新两个链表,一个名为Current_Points,直接存入当前鼠标单击点的坐标,另一个名为Real_Points,它的值为:First, there is a switch variable that indicates the state of selecting data points. When the left mouse button is pressed, the function of selecting coordinate points is called. This function updates two linked lists at the same time, one named Current_Points, which is directly stored in the current mouse click point. Coordinates, another named Real_Points, its value is:
其中,out()为二维动态链表的成员函数;ccp为当前显示位图的中心坐标(需在OnDraw()函数中对其即时更新);amplifier和m_Rect如前所述。Among them, out() is a member function of the two-dimensional dynamic linked list; ccp is the center coordinate of the currently displayed bitmap (it needs to be updated immediately in the OnDraw() function); amplifier and m_Rect are as mentioned above.
可见,Real_Points实际记录的是选取的数据点在载入位图时,其对应的当时的图上坐标。随后,在OnDraw()函数中绘制这些已选取的坐标点时,只需计算Real_Points转换坐标后的Current_Points的坐标,就能实现所需的匹配显示。It can be seen that what Real_Points actually records is the corresponding coordinates on the map at that time when the selected data point is loaded into the bitmap. Then, when drawing these selected coordinate points in the OnDraw() function, only need to calculate the coordinates of Current_Points after the Real_Points converted coordinates, and the required matching display can be realized.
另外,窗口的大小是可变的,载入位图时,总是让位图中心处于窗口中心。所以,窗口大小发生变化时,Real_Points的值随之发生改变。MFC中有处理窗口改变的消息函数OnSize(),其函数参数就是改变的值。则Real_Points的计算方法为将上述表达式中m_Rect的两个相应的值改为OnSize()函数的两个坐标参数。In addition, the size of the window is variable. When loading the bitmap, the center of the bitmap is always at the center of the window. Therefore, when the window size changes, the value of Real_Points changes accordingly. MFC has a message function OnSize() that handles window changes, and its function parameter is the changed value. Then the calculation method of Real_Points is to change the two corresponding values of m_Rect in the above expression into the two coordinate parameters of the OnSize() function.
实现参考点选取、删除及匹配显示的方法与上述方法一致,甚至更为简单,因为参考点需且仅需三个,所以只需要定义一个一维包含三个元素的数组即可,无需使用二维链表来实现。The method to realize reference point selection, deletion and matching display is the same as the above method, even simpler, because only three reference points are needed, so it is only necessary to define a one-dimensional array containing three elements, no need to use two Dimensional linked list to achieve.
参考点的实际坐标的输入通过一个MFC对话框实现。在MFC中制作一个对话框实例,其中包含EditBox控件,每个控件分别对应一个参考点的X或Y坐标值,记录三个参考点的实际坐标。The input of the actual coordinates of the reference point is realized through an MFC dialog box. Make a dialog instance in MFC, which contains EditBox controls, each control corresponds to the X or Y coordinate value of a reference point, and record the actual coordinates of the three reference points.
由于已知三个参考点的图上坐标(由用户通过鼠标点取)和实际坐标(由用户通过参考点坐标对话框输入),则所有数据点的图上坐标和实际坐标的映射关系都满足三个参考点的映射关系。将三个参考点的图上及实际X、Y坐标联立,得到包含六个未知系数和六个线性方程的方程组,求解该方程组,得到六个系数,分别代入各数据点的实际坐标与图上坐标的映射关系式中,就能求得每个数据点对应的实际坐标。方程组如下:Since the coordinates on the map (taken by the user through the mouse) and actual coordinates (input by the user through the dialog box of reference point coordinates) of the three reference points are known, the mapping relationship between the coordinates on the map and the actual coordinates of all data points satisfies The mapping relationship of the three reference points. Combine the graph and actual X and Y coordinates of the three reference points to obtain a system of equations including six unknown coefficients and six linear equations, solve the system of equations to obtain six coefficients, and substitute them into the actual coordinates of each data point The actual coordinates corresponding to each data point can be obtained from the mapping relationship with the coordinates on the graph. The equation set is as follows:
其中(x01,y01)、(x02,y02)、(x03,y03)分别为三个参考点的图上坐标,(x1,y1)、(x2,y2)、(x3,y3)分别为三个参考点的实际坐标,A、B、C、D、L、M为需求解的未知的系数。Among them (x01, y01), (x02, y02), (x03, y03) are the coordinates on the map of the three reference points respectively, and (x1, y1), (x2, y2), (x3, y3) are three The actual coordinates of the reference point, A, B, C, D, L, M are the unknown coefficients to be solved.
在选择参考点时,最佳情况是所有需要求解的数据点,都处于三个参考点形成的三角形区域的中心,且三角形形状尽量规则,此时求解的数据精度高;若选取的三个参考点共线或近似共线,则三角形面积为0或近似为0,在求解线性方程组时,系数行列式的值就会很小,程序可以根据该行列式的值判定用户选取的参考点的情况,以提醒用户是否重新选取参考点,确保计算数据的精度。When selecting reference points, the best situation is that all data points to be solved are in the center of the triangular area formed by the three reference points, and the shape of the triangle is as regular as possible. At this time, the accuracy of the solved data is high; If the points are collinear or nearly collinear, the area of the triangle is 0 or approximately 0. When solving linear equations, the value of the coefficient determinant will be very small, and the program can determine the value of the reference point selected by the user according to the value of the determinant. To remind the user whether to re-select the reference point to ensure the accuracy of the calculated data.
本发明所述的对图形图像数据信息进行提取的方法,不仅仅限于说明书和实施方式中所列运用,它完全可以被适用于各种适合本发明之领域,对于熟悉本领域的人员而言可容易地实现另外的优点和进行修改,因此在不背离权利要求及等同范围所限定的一般概念的精神和范围的情况下,本发明并不限于特定的细节、代表性的设备和这里示出与描述的图示示例。The method for extracting graphic image data information described in the present invention is not limited to the use listed in the description and the implementation, it can be applied to various fields suitable for the present invention, and can be used by those familiar with the field Additional advantages are readily realized and modifications are readily realized, so the invention is not limited to the specific details, representative apparatus and devices shown and described herein without departing from the spirit and scope of the general concept defined by the claims and equivalents. A graphical example of the description.
Claims (7)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB2005100134276A CN100412902C (en) | 2005-05-09 | 2005-05-09 | Information Extraction Method of Graphic Image Data |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB2005100134276A CN100412902C (en) | 2005-05-09 | 2005-05-09 | Information Extraction Method of Graphic Image Data |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1687966A CN1687966A (en) | 2005-10-26 |
CN100412902C true CN100412902C (en) | 2008-08-20 |
Family
ID=35306007
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB2005100134276A Expired - Fee Related CN100412902C (en) | 2005-05-09 | 2005-05-09 | Information Extraction Method of Graphic Image Data |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN100412902C (en) |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101499247B (en) * | 2008-02-02 | 2010-11-03 | 安凯(广州)微电子技术有限公司 | Liquid crystal display controller and its image data loading method |
CN102185844A (en) * | 2011-04-25 | 2011-09-14 | 苏州阔地网络科技有限公司 | Safe synchronization method and system of electronic whiteboard based on community platform |
CN102137039A (en) * | 2011-04-25 | 2011-07-27 | 苏州阔地网络科技有限公司 | Electric white board synchronous method and system based on community platform |
CN102170442A (en) * | 2011-04-25 | 2011-08-31 | 苏州阔地网络科技有限公司 | Safe synchronization method and system for electronic whiteboard based on community platform |
CN102195980A (en) * | 2011-04-26 | 2011-09-21 | 苏州阔地网络科技有限公司 | Webpage-based electronic whiteboard secure synchronization method and system |
CN102185852A (en) * | 2011-04-26 | 2011-09-14 | 苏州阔地网络科技有限公司 | Electronic whiteboard synchronization method and system based on webpage |
CN102185853A (en) * | 2011-06-16 | 2011-09-14 | 苏州阔地网络科技有限公司 | Electronic whiteboard safety synchronizing method and system based on webpage |
CN107679339B (en) * | 2017-10-20 | 2021-10-19 | 东南大学 | Micro-channel cooling cold plate slotting method |
CN109978904A (en) * | 2019-03-19 | 2019-07-05 | 南开大学 | Emergent aquactic plant growth information extracting method based on image technique |
CN114708342B (en) * | 2022-06-06 | 2022-08-23 | 广东欧谱曼迪科技有限公司 | File conversion method, device, equipment, storage medium and simulation verification method |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002297442A (en) * | 2001-02-13 | 2002-10-11 | Koninkl Philips Electronics Nv | Graphic pattern processing system |
US6573905B1 (en) * | 1999-11-09 | 2003-06-03 | Broadcom Corporation | Video and graphics system with parallel processing of graphics windows |
-
2005
- 2005-05-09 CN CNB2005100134276A patent/CN100412902C/en not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6573905B1 (en) * | 1999-11-09 | 2003-06-03 | Broadcom Corporation | Video and graphics system with parallel processing of graphics windows |
JP2002297442A (en) * | 2001-02-13 | 2002-10-11 | Koninkl Philips Electronics Nv | Graphic pattern processing system |
Non-Patent Citations (2)
Title |
---|
实用化逻辑图快速显示及部分图形管理关键技术的研究. 刘沁楠等.计算机辅助设计与图形学学报,第13卷第6期. 2001 |
实用化逻辑图快速显示及部分图形管理关键技术的研究. 刘沁楠等.计算机辅助设计与图形学学报,第13卷第6期. 2001 * |
Also Published As
Publication number | Publication date |
---|---|
CN1687966A (en) | 2005-10-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102907069B (en) | Method and system for executing graphics applications | |
CN113568995B (en) | Dynamic tile map manufacturing method and tile map system based on search conditions | |
JP5368254B2 (en) | Image file generation device, image processing device, image file generation method, image processing method, and data structure of image file | |
CN100412902C (en) | Information Extraction Method of Graphic Image Data | |
CN108763472A (en) | Three-dimensional data visible apparatus and method | |
CN102081522A (en) | Common charting using shapes | |
JP5508521B2 (en) | Optimizing data visualization platform performance | |
CN105550247A (en) | SVG standard customizable graphic symbol based power system graphic display method | |
CN111596848A (en) | Interface color taking method, device, equipment and storage medium | |
JP2009080573A (en) | Display method | |
CN114443577A (en) | Drawing processing method, device, equipment and storage medium | |
CN116245052A (en) | A drawing migration method, device, equipment and storage medium | |
CN115691772A (en) | Operation visualization system and corresponding computer device and storage medium | |
US20070220438A1 (en) | Icon generating device, computer readable medium storing program for generating icon and method for generating icon | |
JP5296656B2 (en) | Image processing apparatus and image processing method | |
US20020154120A1 (en) | Annotation and application control of general purpose computer documents using annotation peripheral | |
US8438199B1 (en) | System and method for identifying and highlighting a graphic element | |
CN111768470A (en) | Image generation method, apparatus, computer device, and computer-readable storage medium | |
US20080165207A1 (en) | Method and System for Manipulating Graphical Images | |
US6925473B2 (en) | Staged stylization in multiple tiers | |
CN118939894B (en) | WEB display method, device and system for three-dimensional simulation model | |
JP5991365B2 (en) | Form system, information processing apparatus, processing method thereof, and program | |
US20170287099A1 (en) | Method and apparatus for dynamic generation of vector graphics | |
CN114143480A (en) | Chart video generation method, device, device, storage medium and program | |
JP2004233711A (en) | Map data construction device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
C17 | Cessation of patent right | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20080820 Termination date: 20110509 |